培訓參數 - Amazon Machine Learning

我們不再更新 Amazon Machine Learning 服務或接受新使用者。本文件適用於現有使用者,但我們不再對其進行更新。如需詳細資訊,請參閱什麼是 Amazon Machine Learning

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

培訓參數

亞馬遜 ML 學習算法接受參數,稱為超級參數或訓練參數,可讓您控制所產生的模型品質。取決於超級參數,Amazon ML 會自動選擇設定或是提供超級參數的靜態預設值。雖然預設超級參數設定通常可產生有用的模型,但您仍可以透過變更超級參數值來改善模型的預測效能。以下章節描述常見的超級參數與線性模型的學習演算法相關聯,例如 Amazon ML 所建立的模型。

學習率

學習率是用於隨機漸層下降 (SGD) 演算法的常數值。學習率會影響演算法達到 (收斂至) 最佳權重的速度。SGD 演算法會針對它看到的每個資料範例,對線性模型的權重進行更新。這些更新的大小都由學習率控制。學習率太大,可能會阻止權重接近最佳解決方案。值太小又會導致演算法需要許多傳遞才能接近最佳權重。

在 Amazon ML 中,學習率是根據您的資料自動選取。

模型大小

如果您有許多輸入特徵,資料中的可能模式數會導致大型模型。大型模型擁有實際影響,例如在訓練和產生預測結果時需要更多的 RAM 來保有模型。在 Amazon ML 中,您可以使用 L1 正規化或透過指定大小上限來具體限制模型大小,以降低模型大小。請注意,如果您將模型大小降低太多,可能會降低模型的預測能力。

如需預設模型大小的詳細資訊,請參閱培訓參數:類型和預設值。如需正規化的詳細資訊,請參閱正規化

通過次數

SGD 演算法會循序傳遞訓練資料。Number of passes 參數控制演算法傳遞訓練資料的通過次數。更多次傳遞可產生更符合資料的模型 (如果學習率不會太大),但優點會隨著通過次數的增加而減少。對於較小的資料集,您可以大幅增加通過次數,如此可讓學習演算法有效地更密切符合資料。對於非常大的資料集,單次通過可能已足夠。

如需預設通過次數的詳細資訊,請參閱培訓參數:類型和預設值

資料隨機播放

在 Amazon ML 中,您必須隨機播放資料,因為 SGD 演算法會受到訓練資料的列順序影響。隨機播放訓練資料可產生較佳的 ML 模型,因為如此可協助 SGD 演算法避免產生最適合它看到的第一個資料類型、但不適合完整資料的解決方案。隨機播放會混合資料順序,讓 SGD 演算法不會連續遇到單一資料類型的太多觀察值。如果它只看到單一資料類型的許多連續權重更新,演算法可能無法更正新資料類型的模型權重,因為更新可能會太大。此外,未隨機呈現資料時,演算法將難以為所有資料類型快速找到最佳解決方案;在某些情況下,演算法可能永遠找不到最佳解決方案。隨機播放訓練資料有助於演算法更快收斂至最佳解決方案。

例如,假設您想要訓練 ML 模型預測產品類型,而您的訓練資料包含電影、玩具和電動遊戲產品類型。如果您在上傳資料至 Amazon S3 之前依產品類型資料欄排序資料,則演算法會依產品類型字母順序查看資料。演算法會先看到所有的電影資料,因此您的 ML 模型開始學習電影的模式。接著,當您的模型遇到玩具的資料,演算法進行的每次更新都會讓演算法更符合玩具產品類型的模型,即使這些更新會降低符合電影的模式。這樣從電影突然切換到玩具類型,會產生不了解如何準確預測產品類型的模式。

如需預設隨機播放類型的詳細資訊,請參閱培訓參數:類型和預設值

正規化

正規化會透過懲罰極端加權值,有助於避免線性模型過度擬合訓練資料範例 (也就是死記模式而非對其進行一般化)。L1 正規化可以將具有極小權重的特徵權重推送為零,以有效降低模型中使用的特徵數目。因此,L1 正規化會產生稀疏模型,並降低模型的雜訊量。L2 正規化可產生較小的整體加權值,並在輸入特徵之間有高相互關聯性時穩定加權。您可以使用 Regularization typeRegularization amount 參數控制套用的 L1 或 L2 正規化量。極大的正則化值可能導致所有特徵具有零加權,使得模型無法學習模式。

如需預設正則化值的詳細資訊,請參閱培訓參數:類型和預設值