避免過度配適

訓練 BigQuery ML 模型時,常見的陷阱是過度擬合。如果模型過度符合訓練資料,就會發生過度配適情形,導致模型無法準確預測新資料。BigQuery ML 支援兩種避免過度訓練的方法:提早中止訓練正規化

如要瞭解如何修改下列選項,請參閱CREATE MODEL陳述式

提早中止訓練

在 BigQuery ML 中,防止過度訓練的預設選項是提早中止訓練。啟用提早中止訓練功能後,系統會在訓練期間監控保留資料損失,一旦最新疊代的損失改善幅度低於門檻,就會停止訓練。由於訓練期間不會使用保留資料,因此這類資料可做為模型在新資料上的損失估計值。early_stopmin_rel_progressdata_split_methoddata_split_eval_fraction 選項可控制提早中止訓練的行為。

正則化

正則化可避免模型權重過大,防止模型過度配適訓練資料。BigQuery ML 支援兩種方法來控制模型權重的大小:L1 正規化L2 正規化

根據預設,l1_regl2_reg 的值為零,這會停用正規化。在某些資料集中,為 l1_regl2_reg 設定正值,可提升訓練模型在新資料上的成效。通常需要透過試誤法,才能找出最佳的正規化參數值,而且一般會實驗幾個數量級的值 (例如 0.01、0.1、1、10 和 100)。

以下提供使用正規化的通用建議:

  • 如果您正在實驗正規化參數,請嘗試停用提早中止訓練功能,清楚瞭解正規化的效果。

  • 如果特徵數量相較於訓練集大小較多,請嘗試使用較大的正規化參數值。如果每個特徵的觀察結果很少,過度擬合的風險就會更高。

  • 如果您擔心許多特徵可能與預測標籤無關,請嘗試將 l1_reg 設為大於 l2_reg 的值,反之亦然。有理論證據顯示,當許多特徵不相關時,L1 正則化效果較佳。

L1 正則化的另一項優點是,它會將許多模型權重設為零,有助於找出最相關的特徵,並訓練精簡模型。

後續步驟