回答:
私は最も簡単な方法で答えようとします。これらの問題にはそれぞれ独自の主な原因があります。
オーバーフィッティング:データはノイズが多いため、現実からの逸脱がいくつかあり(測定誤差、影響力のあるランダムな要因、観測されていない変数、ゴミの相関関係のため)、説明要因との真の関係を確認するのが難しくなります。また、通常は完全ではありません(すべての例はありません)。
例として、私が男の子と女の子を身長に基づいて分類しようとしているとしましょう。なぜなら、それが私が彼らについて持っている唯一の情報だからです。男の子は女の子よりも平均的に背が高いにもかかわらず、重複する領域が非常に大きいため、そのような情報だけでは男の子を完全に分離することは不可能です。データの密度に応じて、十分に複雑なモデルは、トレーニングで理論的に可能なよりも、このタスクでより良い成功率を達成できる可能性がありますなぜなら、いくつかのポイントが単独で独立することを可能にする境界を描くことができるからです。そのため、身長が2.04メートルで女性である場合、モデルはその領域の周りに小さな円を描くことができます。つまり、身長2.04メートルのランダムな人が女性である可能性が最も高いことを意味します。
そのすべての根本的な理由は、トレーニングデータを信頼しすぎていることです(そして、この例では、モデルは、身長2.04の男性はいないので、女性のみが可能であると言っています)。
アンダーフィッティングは反対の問題であり、モデルはデータの実際の複雑さ(つまり、データの非ランダムな変化)を認識できません。モデルは、ノイズが実際よりも大きいと想定しているため、あまりにも単純な形状を使用しています。そのため、何らかの理由でデータセットに男の子よりも女の子が多い場合、モデルはそれらをすべて女の子のように分類できます。
この場合、モデルはデータを十分に信頼していなかったため、偏差はすべてノイズであると想定していました(そして、この例では、モデルは男の子が単に存在しないと想定しています)。
一番下の行は、これらの問題に直面しているということです:
オーバーフィッティングとは、モデルがモデル化する変数を元のデータで非常にうまく推定するが、新しいデータセット(ホールドアウト、相互検証、予測など)ではうまく推定できない場合です。モデル内の変数または推定量が多すぎる(ダミー変数など)ため、モデルが元のデータのノイズに敏感になりすぎます。元のデータのノイズに過剰適合した結果、モデルの予測が不十分になります。
アンダーフィッティングとは、モデルが元のデータまたは新しいデータのいずれかで変数を適切に推定しない場合です。モデルには、従属変数の動作をより適切に推定および予測するために必要ないくつかの変数が欠落しています。
オーバーフィッティングとアンダーフィッティングのバランスを取ることは難しく、明確なフィニッシュラインがない場合があります。計量経済学の時系列のモデリングでは、この問題は、モデル内の変数の数をそれぞれ減らし、係数の感度を減らすことにより、過剰適合を減らすことに特に対応する正則化モデル(LASSO、Ridge Regression、Elastic-Net)でかなりよく解決されますデータ、またはその両方の組み合わせ。
おそらくあなたの研究中に次の方程式に出くわしました:
Error = IrreducibleError + Bias² + Variance
。
モデルのトレーニングでこれら2つの問題に直面するのはなぜですか?
学習問題自体は、基本的にバイアスと分散の間のトレードオフです。
オーバーフィットとアンダーフィットの主な理由は何ですか?
ショート:ノイズ。
長い:還元不可能なエラー:データの測定エラー/変動、およびモデルで表現できないターゲット関数の部分。ターゲット変数の再測定または仮説空間の変更(つまり、異なるモデルの選択)により、このコンポーネントが変更されます。
編集(他の回答にリンクする):複雑さが変化するため、パフォーマンスをモデル化します。
ここで、errorDは分布D全体の誤差です(実際にはテストセットで推定)。
オーバーフィッティングとアンダーフィッティングは、仮説モデルによるデータの説明が基本的に不十分であり、データの説明過剰または説明不足のモデルと見なすことができます。これは、データの説明に使用されるモデルとデータを生成するモデルとの関係によって作成されます。説明しようとする試みでは、基礎となるモデルにアクセスできないため、判断は別の要因である不確実性またはエラーバーによって導かれます。
すべての分散を適合させるために、複雑すぎるモデルを使用する場合、過剰適合です。これは、モデルの選択において自由な支配権を持ち、エラーバーを非常に重要視することによって作成されます(または、すべての変動性を説明しようとしますが、これは同じです)。データを説明するには単純すぎるモデルに自分自身を制限し、エラーバーに十分な重要性を割り当てない(または変動を説明しない)場合、不十分です。
どうすればこれら2つを回避できますか?情報に裏付けられたモデル(データからではなく、問題の事前知識から派生)および意味のある不確実性。
簡単に言えば、過剰適合は、トレーニングデータセットに表示されるパターンの結果として表示されますが、母集団全体には存在しません(それらは運が悪かったように見えます)単純なモデル(たとえば、線形回帰を考えてください)検出できるパターンの数が少ないため、サンプルにランダムに表示される可能性のあるパターンの可能性もそれほど大きくありません。この例は、100個のサンプルを取得した母集団で1,000,000個の変数の相関を調べようとすると発生する場合があります。一部の機能は、互いに完全に独立しているにもかかわらず、ランダムに巨大なサンプル相関を示す場合があります
オーバーフィッティングのもう1つの理由は、バイアスサンプリングです(サンプルが実際にランダムではないため、「サンプル偽パターン」が存在します)。たとえば、ある種のキノコの平均サイズを調べて、そこに出て自然界でそれらを見つける場合、あなたはそれを過大評価する可能性があります(大きなキノコは見つけやすいです)
一方、アンダーフィッティングは非常に単純な現象です。これは、2つの非常に基本的なことを意味します。A)モデルが人口パターンを学習するのに十分なデータがないか、B)モデルがそれを反映するほど強力ではありません。
短い答え:
オーバーフィットの主な理由は、小さなトレーニングセットがある場合に複雑なモデルを使用することです。
アンダーフィットの主な理由は、単純すぎてトレーニングセットでうまく機能しないモデルを使用していることです。
- 大容量のモデルは、テストセットで十分に機能しないトレーニングセットのプロパティを記憶することでオーバーフィットする可能性があります。
-ディープラーニングの本、グッドフェロー他
機械学習の目標は、テストデータで同様に実行されることを期待して、トレーニングセットでモデルをトレーニングすることです。しかし、トレーニングセットで優れたパフォーマンスを得ることは、常にテストセットで優れたパフォーマンスに変換されますか?トレーニングデータが限られているため、そうはなりません。データが限られている場合、モデルはその限られたトレーニングセットで機能するパターンを見つけることがありますが、それらのパターンは他のケース(テストセットなど)に一般化されません。これは次のいずれかの方法で解決できます。
A-モデルに大きなトレーニングセットを提供して、トレーニングセットに任意のパターンが含まれる可能性を減らします。
B-モデルがトレーニングセット内の任意のパターンを見つけられないように、より単純なモデルを使用する。より複雑なモデルでは、より複雑なパターンを見つけることができるため、トレーニングセットが任意のパターンを含まないようにするために、より多くのデータが必要です。
(たとえば、トラックから船を検出するモデルを教えて、それぞれの画像が10個あると想像してください。画像内の船のほとんどが水中にある場合、モデルは青い背景の写真を船として分類することを学習します。船の外観を学習する代わりに、今では、10,000個の船とトラックの画像がある場合、トレーニングセットにはさまざまな背景の船とトラックが含まれている可能性が高く、モデルは青色の背景だけに依存できなくなります。
モデルがトレーニングセットで十分に低いエラー値を取得できない場合、アンダーフィットが発生します。
容量の少ないモデルは、トレーニングセットに合わせるのに苦労する場合があります。
-ディープラーニングの本、グッドフェロー他
モデルがトレーニングセットを学習するのに十分ではない場合、つまりモデルが単純すぎる場合にアンダーフィットが発生します。問題の解決を開始するときはいつでも、少なくともトレーニングセットで良好なパフォーマンスを得ることができるモデルが必要です。その後、過剰適合を減らすことを考え始めます。一般に、アンダーフィットの解決策は非常に単純です。より複雑なモデルを使用します。
仮説/モデル方程式がある例を考えてみましょう。
y=q*X+c,
ここで、X =機能リスト、y =ラベル、qとcはトレーニングする必要がある係数です。
そのような場合に十分大きい係数値を考え出し、そのような場合に特徴値(X)の抑制を開始すると、X値に関係なく常にyの定数値を取得します。これは、高度にバイアスされたモデルまたはアンダーフィットモデルと呼ばれます。
別の複雑な仮説の例を考えてみましょう。
y=q*X+r*sqr(X)+s*cube(X)+c, where q,r,s and c are the coefficients.
最適な係数値を特定した後、トレーニングデータで最小の損失を取得できる可能性があります。モデルが非常に複雑で緊密に結合されており、トレーニングデータと非常にうまく動作するためです。一方、見えないデータでは、かなり逆の結果を得ることができます。これは、高度分散モデルまたは過適合モデルと呼ばれます。
バイアスモデルでは、モデル選択の複雑さがさらに必要になりますが、モデルの分散が大きくなると、モデル選択の複雑さが低下します。正則化手法は、適切なレベルのモデルの複雑さを特定するのに役立ち、この手法により、両方の問題を克服できます。