@legend2489

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

学習損失は減少するのに検証損失が増加し続ける — DropoutとL2正則化を追加しても改善しない

問題:

  • 学習損失(training loss)はエポックを重ねるごとに着実に減少
  • 検証損失(validation loss)は最初は減少するものの、約10エポック後から増加し始める
  • 学習精度は約95%に達するが、検証精度は約70%で頭打ちになる

すでに試したこと:

  • 全結合層の後にDropout(p=0.5)を追加
  • オプティマイザにL2正則化(weight decay 1e-4)を設定
  • データ拡張(ランダム反転、回転、色調変化)を実施
  • モデルの複雑さを削減(畳み込み層を減らした)

これらを行っても、学習と検証のパフォーマンスの差は完全には縮まりませんでした。

環境:

  • フレームワーク: PyTorch 2.x
  • オプティマイザ: Adam, lr=1e-3
  • バッチサイズ: 32
  • データセットサイズ: 約5000枚(比較的小規模)

質問:
データセットサイズが比較的小さいことを考慮すると、この問題はデータ拡張の不足、学習率スケジューリングの誤り、またはこのデータセット規模に対してまだ複雑すぎるアーキテクチャのいずれに起因する可能性が高いでしょうか? 実際の原因を特定するために役立つデバッグ手法(学習曲線の分析、特徴量の可視化など)があれば教えていただきたいです。

0 likes

No Answers yet.

Your answer might help someone💌