機器學習之簡化正則化:Lambda

Lois發表於2020-06-21

模型開發者通過以下方式來調整正則化的整體的影響:用正則化項的值乘以名為lambda ( 又稱為 正則化率 ) 的標量。也就是說, 模型開發者會執行以下運算:

minimize (Loss(Data|Model) + \lambda complexity(Model))

執行 L_2正則化對模型具有以下影響

  • 是權重值接近於 0 (但並非正好為 0 )
  • 使權重的平均值接近於0,且成正態( 鐘形曲線或高斯曲線 )分佈。
    增加 lambda 值將增強正則化效果。例如, lambda 值較高的權重直方圖可能會如圖 2 所示
    圖 2.權重直方圖
    降低 lambda 的值往往會得出比較平緩的直方圖, 如圖 3 所示

    圖 3.較低的 lambda 值得出的權重直方圖。
    在選擇 lambda 值時, 目標是在簡單化和訓練資料擬合之間達到適當的平衡:
  • 如果您的 lambda 值過高, 則模型會非常簡單, 但是您將面臨資料欠擬合的風險。您的模型將無法從訓練資料中獲得足夠的資訊來做出有用的預測
  • 如果您的 lambda 值過低, 則模型比較複雜, 並且您將面臨資料過擬合的風險。您的模型將因獲得過多訓練資料特點方面的資訊而無法泛化到新資料。
    注意:將 lambda 設為 0 可徹底取消正則化。在這種情況下, 訓練的唯一目的將是最小化損失, 而這樣做將會使過擬合的風險達到最高。
    理想的 lambda 值生成的模型可以很好地泛化到以前未見過的資料。遺憾的是,理想的 lambda 值取決於資料,因此您需要手動或自動進行一些調整。
本作品採用《CC 協議》,轉載必須註明作者和本文連結

Hacking

相關文章