はじめに
ML を学ぶことは、単に成績を上げることだけではありません。トレーニング セットには強いが、新しいデータには弱いモデルは、実用化の準備ができていないモデルです。この記事は、非常に特殊な兆候で過学習と過小学習を特定するのに役立ちます。
レッスンの目標
- 過剰適合と過小適合を区別します。
- トレーニング スコアと検証スコアを一緒に読み取る方法を理解します。
- モデルが正しく学習できなかった場合に対処するためのチェックリストがあります。
アンダーフィッティングとは何ですか?
モデルが単純すぎる場合、または特徴が貧弱すぎる場合にアンダーフィッティングが発生し、トレーニング セットであっても信号を十分に学習できなくなります。
過学習とは何ですか?
モデルが実際の信号とトレーニング セットの固有のノイズの両方を学習すると、過学習が発生します。
典型的な兆候:
- トレインスコアは非常に高いです。
- 検証スコアが明らかに低い。
- スプリットを変更するたびに、結果は大きく変動します。
実用的な方法で対処する方法
アンダーフィッティングの場合: 便利な機能を追加し、より強力なモデルを使用し、反復アルゴリズムの場合はより長くトレーニングします。
過学習の場合: モデルの複雑さを軽減し、正則化を追加し、データを増加するか、相互検証を使用します。
学習曲線
学習曲線は、データを増やすとモデルが改善される可能性が高いことを示しています。これは推測よりも診断に適した方法です。
よくある間違い
- 適切な検証が行われないまま、モデルの複雑さが絶えず増加します。
- 何度も実行して、最適な分割を選択します。
- テスト セットに基づいて機能を修正します。
練習問題を練習する
- 複雑さを増す 3 つのモデルをトレーニングします。
- トレーニング スコアと検証スコアを記録します。
- どのモデルが過小適合であるか、どのモデルが過適合であるか、どのモデルが最も合理的であるかの結論。
完了基準
- 2 つの概念を日常用語で説明します。
- トレーニングと検証の違いを読み取る方法を理解します。
- 各状況に対して少なくとも 2 つの解決策を提案します。
段階的に練習する (上級)
- 複雑さを増しながら 3 つのモデルをトレーニングします。
- 各モデルのトレーニング/検証スコアを収集します。
- トレーニングデータの量に応じて学習曲線を描きます。
- 正則化するか、モデルの深さを減らしてみます。
- 編集前後の変更を記録します。
アーティファクトを送信する必要があります
- 学習曲線グラフ。 ・調整前後の比較表。
- 次のプロジェクトに適用されるオーバーフィッティング決定のチェックリスト。
セルフテストの質問
- アンダーフィットとオーバーフィットを最もよく区別する兆候はどれですか?
- なぜデータが増えると過剰学習が減るのでしょうか?
- モデルの複雑さを軽減することが最も合理的な選択となるのはどのような場合ですか?