

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 進階模型建置組態
<a name="canvas-advanced-settings"></a>

Amazon SageMaker Canvas 支援您可以在建置模型時設定的各種進階設定。以下頁面列出所有進階設定，以及有關其選項和組態的其他資訊。

**注意**  
目前僅數值、分類和時間序列預測模型類型支援下列進階設定。

## 進階數值和分類預測模型設定
<a name="canvas-advanced-settings-predictive"></a>

Canvas 支援下列數值和分類預測模型類型的進階設定。

### 目標指標
<a name="canvas-advanced-settings-predictive-obj-metric"></a>

目標指標是您想要 Canvas 在建置您模型時最佳化的指標。如果您未選取指標，Canvas 預設會為您選擇一個指標。如需可用指標的描述，請參閱[指標參考](canvas-metrics.md)。

### 訓練模式
<a name="canvas-advanced-settings-predictive-method"></a>

Canvas 可以根據資料集大小自動選取訓練方法，也可以手動選取訓練方法。下列訓練方法可供您選擇：
+ **整合** - SageMaker AI 利用 AutoGluon 程式庫來訓練數個基礎模型。為了找到適合您的資料集最佳組合，整合模式會以不同的模型與中繼參數設定來執行 5–10 次試驗。然後，會使用堆疊整合方法合併這些模型，以建立最佳的預測模型。如需表格式資料整合模式支援的演算法清單，請參閱下列[演算法](#canvas-advanced-settings-predictive-algos)一節。
+ **超參數最佳化 (HPO)** - SageMaker AI 在您的資料集執行訓練任務時，使用 Bayesian 最佳化或多逼真度最佳化調整超參數，找到模型的最佳版本。HPO 模式選擇與您的資料集最相關的演算法，並選擇最佳的超參數範圍來調整您的模型。若要調整模型，HPO 模式最多可執行 100 次試驗 (預設值)，以尋找所選範圍內的最佳超參數設定。如果您的資料集大小小於 100 MB，SageMaker AI 會使用 Bayesian 最佳化。如果您的資料集大於 100 MB，SageMaker AI 會選擇多逼真度最佳化。

  如需表格式資料 HPO 模式支援的演算法清單，請參閱下列[演算法](#canvas-advanced-settings-predictive-algos)一節。
+ **自動** - SageMaker AI 會根據您的資料集大小自動選擇整合模式或 HPO 模式。如果您的資料集大於 100 MB，SageMaker AI 會選擇 HPO。否則，它會選擇整合模式。

### 演算法
<a name="canvas-advanced-settings-predictive-algos"></a>

在**整合模式**下，Canvas 支援以下機器學習演算法：
+ [LightGbM](https://docs.aws.amazon.com/sagemaker/latest/dg/lightgbm.html)–使用具有梯度提升的樹型演算法的最佳化架構。該演算法使用在廣度而非深度上生長的樹，並且針對速度進行了高度最佳化。
+ [CatBoost](https://docs.aws.amazon.com/sagemaker/latest/dg/catboost.html)–使用樹型演算法與梯度提升的架構。針對處理分類變數進行最佳化。
+ [XGBoost](https://docs.aws.amazon.com/sagemaker/latest/dg/xgboost.html)–使用樹型演算法與梯度提升的架構，深度增長，而不是廣度。
+ [隨機樹系](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html)–在資料的隨機子樣本使用多個決策樹並進行取代的樹型演算法。這些樹在每個層級被分成最佳節點。每棵樹的決策被平均在一起，以防止過度學習並改善預測。
+ [Extra Tree](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.ExtraTreesClassifier.html#sklearn.ensemble.ExtraTreesClassifier)–在整個資料集使用多個決策樹的樹型演算法。樹在每個層級隨機分割。對每棵樹的決定進行平均，以防止過度學習並改善預測。與隨機樹系演算法相比，額外的樹會增加一定程度的隨機化。
+ [線性模型](https://scikit-learn.org/stable/modules/classes.html#module-sklearn.linear_model)–使用線性方程式對觀測資料中兩個變數之間關係進行建模的架構。
+ 神經網路火炬 – 使用 [Pytorch](https://pytorch.org/) 實作的神經網路模型。
+ 神經網路 fast.ai–使用 [fast.ai](https://www.fast.ai/) 實作的神經網路模型。

在 **HPO 模式**下，Canvas 支援下列機器學習演算法：
+ [XGBoost](https://docs.aws.amazon.com/sagemaker/latest/dg/xgboost.html)–藉由結合一組較簡單且較脆弱的模型之預估值集合來嘗試精確預測目標變數的監督式學習演算法。
+ 深度學習演算法–多層感知器 (MLP) 和前饋人工神經網路。此演算法可以處理不可線性分隔的資料。

### 資料分割
<a name="canvas-advanced-settings-predictive-split"></a>

您可以選擇指定如何在訓練集 (用於建置模型的資料集部分) 與驗證集 (用於驗證模型正確性的資料集部分) 之間分割資料集。例如，常見的分割比率是 80% 訓練和 20% 驗證，其中 80% 資料用於建置模型，而 20% 是為了測量模型效能而保留的。如果您未指定自訂比率，則 Canvas 會自動分割您的資料集。

### 候選項目數上限
<a name="canvas-advanced-settings-predictive-candidates"></a>

**注意**  
這項功能僅適用於 HPO 訓練模式。

您可以指定 Canvas 在建置您模型時產生的模型候選項目數量上限。我們建議您使用預設的候選項目數量，也就是 100，來建置最正確的模型。您可以指定的數量上限為 250。減少模型候選項目的數量可能會影響您模型的正確性。

### 任務執行時間上限
<a name="canvas-advanced-settings-predictive-runtime"></a>

您可以指定任務執行時間上限，或 Canvas 建置您模型所花費的時間上限。在時間限制之後，Canvas 會停止建置並選取最佳模型候選項目。

您可以指定的時間上限是 720 小時。強烈建議您將任務執行時間上限保留在 30 分鐘以上，以確保 Canvas 有足夠的時間產生模型候選項目並完成建置模型。

## 進階時間序列預測模型設定
<a name="canvas-advanced-settings-time-series"></a>

對於時間序列預測模型，Canvas 支援目標指標，如上節所列。

時間序列預測模型也支援下列進階設定：

### 演算法選擇
<a name="canvas-advanced-settings-time-series-algos"></a>

當您建置時間序列預測模型時，Canvas 會使用統計和機器學習演算法的*整合* (或組合) 來提供高度正確的時間序列預測。根據預設，Canvas 會根據資料集中的時間序列，選取所有可用演算法的最佳組合。不過，您可以選擇指定一或多個演算法，以用於預測模型。在此情況下，Canvas 只會使用您選取的演算法來決定最佳混合。如果您不確定要選取哪個演算法訓練模型，建議您選擇所有可用的演算法。

**注意**  
只有標準建置才支援演算法選擇。如果您未在進階設定中選取任何演算法，則 SageMaker AI 預設會執行快速建置，並使用單一樹狀學習演算法訓練模型候選項目。如需快速建置與標準建置之間差異的詳細資訊，請參閱[自訂模型的運作方式](canvas-build-model.md)。

Canvas 支援下列時間序列預測演算法：
+ [ 自動迴歸整合移動平均 (ARIMA)](https://en.wikipedia.org/wiki/Autoregressive_integrated_moving_average) - 一種簡單的隨機時間序列模型，使用統計分析來解譯資料並做出未來的預測。此演算法適用於時間序列少於 100 個的簡單資料集。
+ [ 卷積神經網路 - 分位數迴歸 (CNN-QR)](https://docs.aws.amazon.com/forecast/latest/dg/aws-forecast-algo-cnnqr.html) - 一種專屬的監督式學習演算法，可從大型時間序列集合中訓練一個全域模型，並使用分位數解碼器進行預測。CNN-QR 最適用於包含數百個時間序列的大型資料集。
+ [ DeepAR\$1](https://docs.aws.amazon.com/forecast/latest/dg/aws-forecast-recipe-deeparplus.html) - 一種專屬的監督式學習演算法，用於使用遞迴神經網絡 (RNN) 來預測純量時間序列，在所有時間序列中共同訓練單一模型。DeepAR A\$1 最適合包含數百個特徵時間序列的大型資料集。
+ [ 非參數時間序列 (NPTS)](https://docs.aws.amazon.com/forecast/latest/dg/aws-forecast-recipe-npts.html) - 可擴展的機率基準預測器，透過從過去的觀察值中取樣來預測指定時間序列的未來值分佈。NPTS 在處理稀疏或間歇性時間序列時非常有用 (例如，預測時間序列有許多 0 或計數低的個別項目的需求)。
+ [指數平滑法 (ETS)](https://en.wikipedia.org/wiki/Exponential_smoothing) - 一種預測方法，其產生的預測是過去觀察值的加權平均值，其中較舊觀察值的權重呈指數減少。該演算法對於少於 100 個時間序列的簡單資料集以及具有季節性模式的資料集很有用。
+ [Prophet](https://facebook.github.io/prophet/) – 一種附加迴歸模型，最適合具有強烈季節性效果和數個季節歷史資料的時間序列。此演算法適用於其非線性成長趨勢接近限制的資料集。

### 預測分位數
<a name="canvas-advanced-settings-time-series-quantiles"></a>

對於時間序列預測，SageMaker AI 會使用您的目標時間序列訓練 6 個模型候選項目。然後，SageMaker AI 會使用堆疊整合方法來結合這些模型，為指定的目標指標建立最佳預測模型。每個預測模型都會透過在 P1 與 P99 之間的分位數產生預測來產生機率預測。這些分位數用於解釋預測的不確定性。根據預設，會針對 0.1 (`p10`)、0.5 (`p50`) 與 0.9 (`p90`) 產生預測。您可以選擇透過 0.01 或更高的增量，從 0.01 (`p1`) 到 0.99 (`p99`) 指定最多五個自己的分位數。