過学習: L2 正則化

L2 正則化は一般的な正則化指標で、次の式を使用します。

$$L_2\text{ regularization } = {w_1^2 + w_2^2 + ... + w_n^2}$$

たとえば、次の表は、6 つの重みを持つモデルの L2 正則化の計算を示しています。

値の二乗
w1 0.2 0.04
w2 -0.5 0.25
w3 5.0 25.0
w4 -1.2 1.44
w5 0.3 0.09
w6 -0.1 0.01
    26.83 = 合計

0 に近い重みは L2 正規化にあまり影響しませんが、重みが大きいと大きな影響を与える可能性があります。たとえば、上記の計算では、

  • 1 つの重み(w3)が複雑性の合計の約 93% を占めています。
  • 他の 5 つの重みは、合計複雑性の約 7% を占めるだけです。

L2 正則化は重みを 0 に近づけますが、重みを完全に 0 にすることは決してありません。

演習: 理解度を確認する

モデルのトレーニング中に L2 正則化を使用すると、通常、モデルの全体的な複雑さはどうなりますか。
システムの全体的な複雑さは低下する可能性があります。
L2 正則化では重みが 0 に近づくため、全体的な複雑さは低下する可能性があります。
モデルの全体的な複雑さはおそらく一定のままです。
可能性は非常に低い。
モデルの全体的な複雑さが増す可能性があります。
可能性は低い。L2 正規化は、重みを 0 に近づけることを目的としています。
モデルのトレーニング中に L2 正則化を使用すると、一部の特徴がモデルから削除されます。
正しい
L2 正則化では一部の重みが非常に小さくなることがありますが、重みがゼロになることはありません。したがって、すべての特徴は引き続きモデルに貢献します。
False
L2 正則化では、重みがゼロになることはありません。

正則化率(lambda)

前述のように、トレーニングでは損失と複雑さの組み合わせを最小限に抑えようとします。

$$\text{minimize(loss} + \text{ complexity)}$$

モデル デベロッパーは、モデルの複雑さがモデル トレーニングに与える全体的な影響を調整するために、その値に正規化率と呼ばれるスカラー値を乗算します。通常、ギリシャ文字のラムダは正則化率を表します。

つまり、モデル デベロッパーは次のことを目標としています。

$$\text{minimize(loss} + \lambda \text{ complexity)}$$

高い正則化率:

  • 正則化の影響を強め、過剰適合の可能性を低減します。
  • 次の特性を持つモデル重みのヒストグラムが生成される傾向があります。
    • 正規分布
    • 平均重量が 0 である。

低い正規化率:

  • 正則化の影響が低下し、過剰適合の可能性が高くなります。
  • フラットな分布のモデル重みのヒストグラムが生成される傾向があります。

たとえば、高い正則化率のモデル重みのヒストグラムは図 18 のようになります。

図 18. 平均がゼロで正規分布のモデルの重みのヒストグラム。
図 18. 高い正則化率の重みヒストグラム。平均は 0 です。正規分布。

 

一方、正則化率が低いと、図 19 に示すように、ヒストグラムが平坦になる傾向があります。

図 19. フラット分布と正規分布の中間にある平均がゼロのモデルの重みのヒストグラム。
図 19. 低い正則化率の重みヒストグラム。平均はゼロの場合もあれば、ゼロでない場合もあります。

 

正則化率の選択

理想的な正則化率は、これまでにない新しいデータに適切に一般化されるモデルを生成します。残念ながら、この理想的な値はデータに依存するため、 チューニング。

早期停止: 複雑さベースの正規化の代替手段

早期停止は、複雑さの計算を伴わない正規化方法です。代わりに、早期停止とは、モデルが完全に収束する前にトレーニングを終了することを意味します。たとえば、検証セットの損失曲線が増加し始めたら(勾配が正になったら)、トレーニングを終了します。

通常、早期停止はトレーニング損失を増加させますが、テスト損失を低減することもあります。

早期停止は迅速な正則化方法ですが、最適な方法とは限りません。得られたモデルは、理想的な正則化率で徹底的にトレーニングされたモデルほど優れている可能性はほとんどありません。

学習率と正則化率のバランスを見つける

学習率と正則化率は、重みを反対方向に引っ張る傾向があります。学習率が高いと、重みがゼロから離れ、正則化率が高いと重みがゼロに近づきます。

学習率に対して正則化率が高い場合、弱い重みにより、予測が不正確なモデルが生成される傾向があります。逆に、正則化率に対して学習率が高い場合、重みが強くなり、過学習モデルが生成される傾向があります。

目標は、学習率と正則化率のバランスを見つけることです。これは難しい場合があります。最悪の場合、このバランスを見つけた後で、最終的に学習率を変更しなければならないことがあります。また、学習率を変更する場合は、再度最適な正則化率を見つける必要があります。