AI 101
オーバーフィッティングとは?
オーバーフィッティングとは?
ニューラル ネットワークをトレーニングするときは、過剰適合を避ける必要があります。 オーバーフィット これは、機械学習と統計の問題であり、モデルがトレーニング データセットのパターンを学習しすぎて、トレーニング データセットを完全に説明できますが、その予測力を他のデータ セットに一般化できません。
別の言い方をすると、過学習モデルの場合、トレーニング データセットでは非常に高い精度が示されることがよくありますが、収集され、将来モデルで実行されるデータでは精度が低くなります。 これは過学習の簡単な定義ですが、過学習の概念をさらに詳しく見てみましょう。 過剰適合がどのように発生するのか、またそれを回避する方法を見てみましょう。
「フィット」とアンダーフィッティングを理解する
アンダーフィッティングと「フィット」 オーバーフィッティングについて議論するときは一般的にこう言います。モデルをトレーニングするときは、データセット内のアイテムを記述する特徴に基づいて、そのアイテムの性質やクラスを予測できるフレームワークを開発しようとします。モデルはデータセット内のパターンを説明し、このパターンに基づいて将来のデータ ポイントのクラスを予測できる必要があります。モデルがトレーニング セットの特徴間の関係をよりよく説明するほど、モデルはより「適合」します。

青い線は適合が不十分なモデルによる予測を表し、緑色の線はより適合したモデルを表します。 写真: Pep Roca、ウィキメディア コモンズ経由、CC BY SA 3.0、(https://commons.wikimedia.org/wiki/File:Reg_ls_curvil%C3%ADnia.svg)
トレーニング データの特徴間の関係をうまく説明できず、将来のデータ例を正確に分類できないモデルは、トレーニング データに十分適合していません。特徴とラベルの実際の交差点に対して、十分適合していないモデルの予測関係をグラフ化すると、予測は的外れになります。トレーニング セットの実際の値にラベルをつけたグラフがあるとすると、ひどく十分適合していないモデルは、ほとんどのデータ ポイントを大幅に見逃すことになります。より適合性の高いモデルは、データ ポイントの中心を通るパスを切り、個々のデータ ポイントは予測値からわずかにずれるだけになる可能性があります。
アンダーフィッティングは、正確なモデルを作成するのに十分なデータがない場合、または非線形データを使用して線形モデルを設計しようとしている場合によく発生します。 多くの場合、より多くのトレーニング データやより多くの機能が、アンダーフィッティングの軽減に役立ちます。
では、なぜトレーニング データのすべての点を完全に説明するモデルを作成しないのでしょうか? 確かに完璧な精度が望ましいのでしょうか? トレーニング データのパターンを学習しすぎたモデルを作成すると、過学習が発生します。 トレーニング データ セットと、モデルを通じて実行するその他の将来のデータセットは、まったく同じではありません。 これらは多くの点で非常に似ていると思われますが、重要な点でも異なります。 したがって、トレーニング データセットを完全に説明するモデルを設計すると、他のデータセットにうまく一般化できない特徴間の関係に関する理論が得られることになります。
過学習について理解する
過学習は、モデルがトレーニング データセット内の詳細を学習しすぎると発生し、外部データで予測が行われるときにモデルに問題が発生します。これは、モデルがデータセットの特徴を学習するだけでなく、ランダムな変動やランダムな変動も学習するときに発生する可能性があります。 ノイズ データセット内で、これらのランダム/重要でない出来事を重視します。
非線形モデルを使用すると、データ特徴を学習する際の柔軟性が高まるため、過学習が発生する可能性が高くなります。 ノンパラメトリック機械学習アルゴリズムには、多くの場合、データに対するモデルの感度を制限するために適用できるさまざまなパラメーターと手法があり、それによって過剰適合を軽減します。 例として、 デシジョンツリーモデル は過学習に対して非常に敏感ですが、枝刈りと呼ばれる手法を使用して、モデルが学習した詳細の一部をランダムに削除できます。
モデルの予測を X 軸と Y 軸にグラフ化すると、前後にジグザグに動く予測線が表示されます。これは、モデルがデータセット内のすべての点を一致させようとしすぎたという事実を反映しています。その説明。
過学習の制御
モデルをトレーニングするときは、モデルがエラーを起こさないことが理想です。 モデルのパフォーマンスがトレーニング データセット内のすべてのデータ ポイントで正しい予測を行う方向に収束すると、適合性が向上します。 適合度が高いモデルは、過剰適合することなくトレーニング データセットのほぼすべてを説明できます。
モデルがトレーニングされると、時間の経過とともにパフォーマンスが向上します。 モデルのエラー率はトレーニング時間が経過するにつれて減少しますが、減少するのは特定の点までです。 テスト セットでのモデルのパフォーマンスが再び上昇し始めるポイントは、通常、過剰適合が発生しているポイントです。 モデルに最適な適合を得るには、誤差が再び増加し始める前に、トレーニング セットの損失が最も低い時点でモデルのトレーニングを停止する必要があります。 トレーニング時間全体にわたるモデルのパフォーマンスをグラフ化し、損失が最小になったときにトレーニングを停止することで、最適な停止ポイントを確認できます。 ただし、この過学習制御方法のリスクの XNUMX つは、テストのパフォーマンスに基づいてトレーニングのエンドポイントを指定すると、テスト データがトレーニング手順にある程度含まれるようになり、純粋に「手付かずの」データとしてのステータスが失われることです。
過学習に対抗する方法はいくつかあります。 過学習を軽減する XNUMX つの方法は、モデルの精度を推定することによって機能するリサンプリング戦術を使用することです。 を使用することもできます テスト セットに加えてデータセットを追加し、テスト データセットの代わりに検証セットに対してトレーニング精度をプロットします。 これにより、テスト データセットが見えなくなります。 一般的なリサンプリング方法は、K 分割交差検証です。 この手法を使用すると、データをモデルのトレーニング対象となるサブセットに分割し、サブセット上のモデルのパフォーマンスを分析して、モデルが外部データに対してどのようにパフォーマンスを発揮するかを推定できます。
相互検証の利用は、目に見えないデータでモデルの精度を推定する最良の方法の XNUMX つであり、検証データセットと組み合わせることで、多くの場合、過剰適合を最小限に抑えることができます。