weight decayとL2正則化の違い
重要な微妙な違いを学びます
「weight decayとL2正則化の違い」はCoddyKit上の無料Deep Learning Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDeep Learning Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Deep Learning Academyコースには全4レッスンが含まれています。
このレッスンの一部はまだ翻訳されておらず、英語で表示されています。
Keep Weights Small
Big weights often mean an overfit model. Both weight decay and L2 regularization push weights toward zero so the network stays simpler.
L2 Adds to the Loss
L2 regularization adds a penalty term, the sum of squared weights, straight into the loss. Minimizing loss then also means shrinking the weights.
loss = data_loss + lam * (w ** 2).sum()Decay Shrinks Directly
Weight decay skips the loss and instead multiplies each weight by a number slightly under one every step. It shrinks weights before the gradient update.
w = w - lr * grad - lr * wd * wSame Thing for SGD
With plain SGD, the two are mathematically identical. The L2 penalty's gradient is exactly the decay term, so it makes no practical difference.
Adam Breaks the Tie
The catch appears with Adam. Its per-weight scaling divides the L2 gradient unevenly, so L2 and true weight decay stop being equal.
Why It Distorts
Adam shrinks weights with large gradients less and small ones more. Folded-in L2 inherits that bias, weakening the regularization where you need it.
Decoupling Is the Fix
AdamW applies decoupled weight decay, shrinking every weight by the same fraction independent of its gradient. That restores honest regularization.
Set It in PyTorch
The weight_decay argument controls the strength. In AdamW it is true decoupled decay, the behavior you usually want.
opt = torch.optim.AdamW(model.parameters(), lr=1e-3, weight_decay=0.01)Pick a Strength
Values like 0.01 or 0.0001 are typical. Too much decay underfits; too little lets weights grow and overfit. Tune it like any hyperparameter.
Spare the Biases
It is common to skip decay on bias and norm parameters. Shrinking them rarely helps and can quietly hurt how the model trains.
The Takeaway
With SGD, reach for either name freely. With adaptive optimizers, prefer AdamW so your weight decay actually behaves as designed.
Quick Check
Test when the two truly diverge.
Recap
L2 adds a penalty to the loss; weight decay shrinks weights directly. They match under SGD but split under Adam, which is why AdamW decouples decay. 🪶
よくある質問
「weight decayとL2正則化の違い」レッスンは無料ですか?
はい。「weight decayとL2正則化の違い」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Deep Learning Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Deep Learning Academyコースには全4レッスンが含まれています。
「weight decayとL2正則化の違い」で何を学びますか?
重要な微妙な違いを学びます ブラウザで直接実行するハンズオンコードでDeep Learning Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Deep Learning Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのDeep Learning Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「weight decayとL2正則化の違い」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このDeep Learning Academyレッスンでコードを書いて実行できますか?
はい。すべてのDeep Learning Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- モメンタム付きSGD
- AdamとAdamWを理解する
- weight decayとL2正則化の違い
- 学習率スケジュールとウォームアップ