アンダーフィッティングとはデータ・モデルが入出力変数の関係を正確に取り込めず、トレーニング・セットと未知のデータの両方で高いエラー率を生成するデータサイエンスのシナリオです。 これは、モデルが単純すぎる場合に発生し、モデルがより多くのトレーニング時間、より多くの入力機能、またはより少ない正則化を必要とする結果である可能性があります。 オーバーフィッティング同様、モデルがアンダーフィッティングの場合、データ内で主要な傾向を確立できず、トレーニング・エラーやモデルのパフォーマンス低下を招きます。 新しいデータへモデルをうまく汎用化できない場合、分類または予測タスクに活用することができません。 新しいデータへモデルを汎用化することで、私たちは、最終的に機械学習アルゴリズムを毎日使用して予測を行い、データの分類をすることが可能となります。
バイアスが高くてバリアンスが小さいことが、アンダーフィッティングであることをよく示しています。 このパターンはトレーニング・データセットを使用しているときに見られるため、通常、アンダーフィッティング・モデルよりもオーバーフィッティング・モデルの方が簡単に識別できます。
Watson Studio
IBM Cloud Pak for Data
簡単に言えば、オーバーフィッティングはアンダーフィッティングとは正反対であり、モデルが過度にトレーニングされている場合やモデルに複雑性が多すぎる場合に発生し、結果としてテスト・データのエラー率が高くなります。 モデルのオーバーフィッティングは、アンダーフィッティングよりも一般的であり、通常、「早期停止」と呼ばれるプロセスを通じてオーバーフィッティングを回避するためにアンダーフィッティングは発生します。
トレーニング不足であったり複雑性の不足でアンダーフィッティングになった場合は、論理的な予防策は、トレーニング期間を延長するか、関連性の高い情報を追加することなどが挙げられます。 ただし、モデルのトレーニングが多すぎたり、モデルに追加した機能が多すぎたりすると、モデルがオーバーフィッティングし、バイアスは低くなりますが、差異は大きくなります(つまり、バイアスと差異のトレードオフ)。 このシナリオでは、統計モデルがトレーニング・データにあまりにもフィットしすぎているため、新しいデータ・ポイントにうまく汎用化できません。 決定木やk近傍法など一部のタイプのモデルは、他のタイプよりもオーバーフィッティングしやすいことに注意することが重要です。
オーバーフィッティングの特定はアンダーフィッティングよりも難しい場合があります。なぜならアンダーフィッティングとは異なり、オーバーフィッティングされたモデルではトレーニング・データが高い精度で実行されるためです。 アルゴリズムの精度を評価するためにK-分割交差検証と呼ばれる手法がよく用いられます。
K-分割交差検証では、データをK個の同じサイズのサブセットに分割します。これは「分割」とも呼ばれます。 分割したk-foldの一つはホールドアウト・セットまたは検証セットとも呼ばれるテスト・データとして、残りはトレーニング・データとしての役割を持ちます。 このプロセスを各foldがホールドアウトfoldとしての役割を持つまで繰り返します。 各評価の後、スコアを記録してすべての反復が完了すると、スコアが平均化されてモデル全体のパフォーマンスが評価されます。
モデルが適合する際の理想的なシナリオは、オーバーフィッティングとアンダーフィッティングのバランスを見つけることです。 両方の「スイート・スポット」を特定することで機械学習のモデルは精度の高い予測を行うことができます。
トレーニング・セットに基づいてアンダーフィッティングを検出できるので、開始時に入出力変数の間の主要な関連を確立するのに役立ちます。 適切なモデルの複雑性を維持することにより、アンダーフィッティングをを回避し、より精度の高い予測を行うことができます。 以下は、アンダーフィッティングを削減するために使用できるいくつかのテクニックです。
正則化は通常、より大きな係数を持つ入力パラメーターにペナルティを適用することにより、モデルとのバリアンスを削減するために使用されます。 L1正則化、ラッソ正則化、ドロップアウトなど、モデル内のノイズと外れ値を削減するのに役立つさまざまな方法があります。 ただし、データの特徴が均一になりすぎると、モデルは主要な傾向を識別できなくなり、アンダーフィッティングになります。 正則化の量を減少させることにより、モデルに複雑性とバリエーションが一層加わり、モデルのトレーニングを成功さすことができます。
前述したように、トレーニングの停止が早すぎるとアンダーフィッティングモデルになる可能性があります。 したがって、トレーニングの所要時間を延長することによって、それを回避することができます。 ただし、オーバートレーニングと、それに続くオーバーフィッティングを認識することが重要です。 2つのシナリオのバランスを見つけることが鍵となります。
どのモデルでも、固有の機能を使用して特定の結果を決定します。 十分な予測機能が存在しない場合は、より多くの機能またはより重要な機能を導入する必要があります。 たとえば、ニューラル・ネットワークでは、隠れニューロンを加算したり、ランダム・フォレストでは、決定木を追加できます。 このプロセスによりモデルに複雑性がさらに注入され、もっと良いトレーニング結果が生まれます。
AIモデルを構築、実行、管理します。 オープンソース・コードやビジュアル・モデリングを使用して、任意のクラウド上でデータを準備し、モデルを構築できます。 結果の予測と最適化を行うこともできます。
IBM Cloud Pak for Dataは、オープンで拡張可能なデータ・プラットフォームで、データ・ファブリックを提供し、任意のクラウド上ですべてのデータを、AIおよび分析用に使用できるようにします。