訓練模式與演算法支援 - Amazon SageMaker

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

訓練模式與演算法支援

Autopilot 支援不同的訓練模式及演算法來解決機器學習問題、報告品質以及目標指標,並在需要時自動使用交叉驗證。

訓練模式

SageMaker Autopilot 可以根據資料集大小自動選取訓練方法,也可以手動選取。選擇如下:

  • 組裝 – Autopilot 使用AutoGluon程式庫來訓練數個基本模型。為了找到適合您的資料集最佳組合,整合模式會以不同的模型與中繼參數設定來執行 10 次試驗。然後,Autopilot 會使用堆疊整合方法結合這些模型,以建立最佳的預測模型。如需 Autopilot 在表格式資料的整合模式下支援的演算法清單,請參閱下列演算法支援區段。

  • 超參數最佳化 (HPO) – Autopilot 透過在資料集上執行訓練任務時,使用貝氏最佳化或多保真度最佳化來調校超參數,以尋找模型的最佳版本。HPO 模式會選取與資料集最相關的演算法,並選取超參數的最佳範圍來調整模型。若要調整模型,HPO模式最多會執行 100 次試驗 (預設),以尋找所選範圍內的最佳超參數設定。如果您的資料集大小小於 100 MB,Autopilot 將使用 Bayesian 最佳化。如果您的資料集大於 100 MB,Autopilot 會選擇多逼真度最佳化。

    在多逼真度最佳化中,指標會持續從訓練容器中發出。針對選取的目標指標,效能不佳的試驗會提早停止。執行良好的試驗會分配更多資源。

    如需 Autopilot 在 HPO 模式下支援的演算法清單,請參閱下列演算法支援一節。

  • Auto – Autopilot 會根據資料集大小自動選擇整合模式或 HPO 模式。如果您的資料集大於 100 MB,Autopilot 會選擇 HPO。否則,它會選擇整合模式。在下列情況下,Autopilot 可能無法讀取您的資料集大小。

    • 如果您啟用虛擬私有雲端 (VPC) 模式,對於 AutoML 任務,但包含資料集的 S3 儲存貯體僅允許從 存取 VPC。

    • 資料集的輸入 S3DataTypeManifestFile

    • 輸入的 S3Uri 包含超過 1000 個項目。

    如果 Autopilot 無法讀取資料集大小,則會預設為選擇HPO模式。

注意

若要取得最佳執行期與效能,請針對小於 100 MB 的資料集使用整合訓練模式。

演算法支援

HPO 模式 中,Autopilot 支援下列類型的機器學習演算法:

  • 線性學習器–可以解決分類或迴歸問題的監督式學習演算法。

  • XGBoost – 一種監督式學習演算法,透過結合一組更簡單且較弱模型的估算集合,嘗試準確預測目標變數。

  • 深度學習演算法 – 多層感知器 (MLP) 和前饋人工神經網路。此演算法可以處理不可線性分隔的資料。

注意

您不需要指定用於處理機器學習問題的演算法。Autopilot 會自動選擇合適的算法進行訓練。

整合模式下,Autopilot 支援以下類型的機器學習演算法:

  • LightGBM – 最佳化架構,使用以樹為基礎的演算法進行梯度提升。該演算法使用在廣度而非深度上生長的樹,並且針對速度進行了高度最佳化。

  • CatBoost – 使用以樹為基礎的演算法進行梯度提升的架構。針對處理分類變數進行最佳化。

  • XGBoost – 使用樹狀演算法的架構,具有梯度提升功能,可深入成長,而非廣度。

  • 隨機樹系–在資料的隨機子樣本使用多個決策樹並進行取代的樹型演算法。這些樹在每個層級被分成最佳節點。每棵樹的決策被平均在一起,以防止過度學習並改善預測。

  • Extra Tree–在整個資料集使用多個決策樹的樹型演算法。樹在每個層級隨機分割。對每棵樹的決定進行平均,以防止過度學習並改善預測。與隨機樹系演算法相比,額外的樹會增加一定程度的隨機化。

  • 線性模型–使用線性方程式對觀測資料中兩個變數之間關係進行建模的架構。

  • 神經網路火炬 – 使用 Pytorch 實作的神經網路模型。

  • 神經網路 fast.ai–使用 fast.ai 實作的神經網路模型。