過剰適合と過小適合:最適なバランスを見つける

2024年12月11日

所要時間

共同執筆者

Tim Mucci

Writer

Gather

過剰適合と過小適合

データサイエンティストやエンジニアが機械学習(ML)モデルをトレーニングする場合、データ内の基本的なパターンを捉えるには単純すぎるアルゴリズムを使用すると、過小適合が発生したり、複雑すぎるアルゴリズムを使用すると、過剰適合が発生したりするリスクがあります。過剰適合過小適合を管理することは、データサイエンス・ワークフローと信頼性の高い人工知能(AI)システムの開発における中心的な課題です。

ニュースレターを表示しているスマホの画面

The DX Leaders

「The DX Leaders」は日本語でお届けするニュースレターです。AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。

機械学習におけるバイアスや分散

バイアスや分散は、機械学習モデルを適切に適合させるためにエンジニアが必要とするバランスを説明します。そのため、バイアスと分散のトレードオフは、過小適合と過剰適合に対処する上で中心的な役割を果たします。

バイアスのあるモデルは、学習プロセスを簡素化するためにトレーニング用データについて強い仮定を立て、説明できない微妙な点や複雑さを無視します。分散とは、トレーニング用データ内の学習変動に対するモデルの感度のことです。

例えば、データ・パターンがより複雑な場合でも、単純な線形または2進数の関係を仮定する線形回帰アルゴリズムや浅いDecision Treeなどがあります。

2次関係のデータに線形回帰モデルを使用すると、線形モデルでは固有の曲率を捉えることができないため、過小適合になります。その結果、モデルは新しいデータにうまく一般化できないため、トレーニング用セットや未知のテスト用データではパフォーマンスが低下します。

一般化とは、モデルが学習したパターンを理解し、それを目に見えないデータに適用する能力です。分散の低いモデルは、複雑なパターンを捉えるには単純すぎるため、過小適合になる傾向があります。ただし、バイアスの低いモデルは、柔軟性が高すぎると、過剰適合になる可能性があります。

分散が大きいということは、モデルがトレーニングデータ内のノイズ、特異性、ランダムな詳細を捉えている可能性があることを示しています。高分散モデルは柔軟性が高すぎるため、トレーニング・エラーは少なくなりますが、新しいデータでテストすると、学習したパターンが一般化されず、テスト・エラーが高くなります。

テストの答えを暗記する代わりに、自分で答えを出すために必要な概念を理解することを想像してください。テストが学習したものと異なる場合、質問に答えるのに苦労するでしょう。分散とバイアスのバランスをとることが、機械学習モデルで最適なパフォーマンスを実現する鍵となります。

過剰適合と過小適合を特定する方法

ルール

  • 過剰適合:トレーニング・エラーは低く、テスト・エラーが著しく高くなります。
  • 過小適合:トレーニング用データ・セットとテスト用データ・セット全体でエラーが一貫して高くなります。

過剰適合モデルでは、一般化ではなく記憶化が行われるため、トレーニング用データではモデルの精度は高くなりますが、新しいデータでは精度が低くなる可能性があります。過剰適合は、エンジニアが、ディープラーニング・ニューラル・ネットワークなどのパラメーターや層が多すぎる機械学習モデルを使用した場合に発生し、トレーニング用データへの適応性が非常に高くなります。

小規模またはノイズの多いデータ・セットでトレーニングすると、モデルは一般的なパターンを学習するのではなく、特定のデータ・ポイントとノイズを記憶するリスクがあります。データにエラーや不一致が含まれている場合、モデルはこれらを意味のあるパターンとして誤って学習する可能性があります。

エンジニアはトレーニングとテストの間の性能のギャップを探しますが、学習曲線における過剰適合も検知できます。この場合、トレーニング損失はゼロに向かって減少し、検証損失が増加する一方で、一般化が不十分であることを示しています。

過剰適合モデルのもう1つの兆候は、決定境界、つまりデータ・ポイントを分類するためにモデルが学習するルールに現れます。過剰適合モデルでは、決定境界が過度に複雑で不規則になります。これは、真の基礎構造を捉えるのではなく、トレーニング用セット内のノイズに適応してしまう、過剰適合を示すものです。

さらに、高次元のデータセットは、「次元の呪い」により過剰適合につながる可能性があります。特徴量が増えると、データポイントがまばらになり、モデルが意味のあるパターンを見つけるのが難しくなり、分散と過剰適合のリスクが増加します。

過小適合モデルは、データ・セット内の主要なパターンを捉えることができないため、トレーニング用データとテスト用データでパフォーマンスが低下します。エンジニアは通常、両方のデータ・セットで一貫してパフォーマンスが低いことから過小適合を特定します。

また、過小適合モデルは、学習曲線で高い誤差を示し、最適ではない評価指標を返し、体系的な残差パターンを示す傾向があり、これらはすべて、データ内の根本的な関係を効果的に学習できないことを示しています。

機械学習における過小適合は、多くの場合、モデルが単純すぎること、不十分な特徴量エンジニアリング、またはモデルの柔軟性を過度に制限する過度の正則化が原因で発生します。同様に、相互作用項や多項式特徴量を省略するなど、不十分な特徴量選択によって、モデルがデータ内の隠れた関係を理解できなくなる可能性があります。前処理が不適切なこと、トレーニング時間が不十分なこと、またはモデルをトレーニングするための十分なデータがないことなども、過小適合の一因となる可能性があります。

過剰適合と過小適合の例

オーバーフィッティング

医療診断モデル
機械学習モデルは、小規模なデータ・セット上で医療画像を「健康」または「病気」に分類するようにトレーニングされます。モデルはトレーニング画像を記憶し、ほぼ完璧な精度を達成しますが、一般的な疾患の特徴量ではなく、トレーニングデータ内の特定のノイズやアーティファクトを学習しているため、新しい画像ではパフォーマンスが低下します。

株価予測
金融モデルは、多くのパラメータを持つ複雑なニューラル・ネットワークを使用して株価を予測します。傾向やパターンを学習するのではなく、履歴データのランダムな変動を捉えるため、トレーニング予測の精度は高くなりますが、将来の株価でテストするとパフォーマンスが低下します。

解約予測
顧客維持モデルには、非常に詳細な人口統計データなどの特定の特徴量が多すぎるため、トレーニング用データに過剰適合してしまいます。より広範な顧客ベースに適用する場合、さまざまな人口統計にわたるパターンを一般化して識別することは困難です。

アンダーフィッティング

住宅価格予測
線形回帰モデルは、平方フィートのみに基づいて住宅価格を予測します。このモデルは、場所、寝室の数、家の築年数などの他の重要な特徴量を考慮に入れていないため、トレーニング用データおよびテスト用データのパフォーマンスが低下します。

天気予報
モデルは、平均気温や湿度など、単純な特徴量の小さなデータ・セットを使用して降雨量を予測します。季節パターンや複数の大気要因間の相互作用など、より複雑な関係を捉えることができない場合、一貫して精度が低くなります。

画像認識
浅いDecision Treeを使用して、猫と犬の画像を分類します。しかしこれでは単純すぎるため、2つの種を区別できず、トレーニング画像や新しい未知の画像ではパフォーマンスが低下します。

過剰適合と過小適合を回避する方法

機械学習アルゴリズムは、データ内のパターンを認識するようにモデルをトレーニングし、エンジニアがそれらを使用して、目に見えない入力から将来の結果を予測できるようにします。ハイパーパラメーター調整は、過剰適合と過小適合のバランスをとる上で大きな役割を果たし、予測モデルが目に見えないデータに効果的に一般化されることを保証します。

ハイパーパラメーターを使用することで、エンジニアは学習率、正規化の強度、ニューラル・ネットワークの層数、またはDecision Treeの最大深度をファイン・チューニングできます。適切な調整により、モデルが柔軟性を過渡に欠いたり、過度に適応しすぎたりするのを防ぐことができます。

オーバーフィッティング

正規化

回帰モデルの正規化、またはニューラル・ネットワークのドロップアウトは、モデルが単一の機能に過度に依存したり、トレーニング用データにノイズが適合したりしないようにするために機械学習で使用される手法です。

一般的な正則化のタイプには、一部の係数をゼロに縮小してスパース性を促進するL1と、すべての係数のサイズを縮小してモデルをより単純化し、より一般化しやすくするL2があります。正則化により、モデルはデータを記憶するのではなく、基礎となるパターンに集中できるようになります。

データ拡張

データ拡張は、特にコンピューター・ビジョンなどのタスクで効果的なもう1つの戦略です。画像を反転、回転、または切り取ることでトレーニング用データを人工的に拡張すると、モデルの一般化が向上します。ニューラル・ネットワークのパラメーターまたは層の数を減らしてモデルを簡素化すると、トレーニング用データの詳細を記憶する能力も制限されます。

K分割交差検証

エンジニアは、K分割交差検証などの手法を使用して、モデルの汎化を評価することもできます。K分割交差検証では、データをサブセットに分割し、一部のサブセットをトレーニングし、残りのサブセットをテストします。

同様に、エンジニアはホールドアウト・セット、つまりトレーニング用セットから未確認データとして保存される情報を使用して、一般化パフォーマンスを評価する別の手段を提供できます。結果は平均化され、全体的なパフォーマンス・スコアが提供されます。

評価フレームワーク

これらの手法に加えて、機械学習モデルが適切に一般化されることを保証するには、堅牢なモデル評価フレームワークが不可欠です。高度な評価手法の1つに、ハイパーパラメータの調整に特に役立つネストされたクロス検証があります。ネストされたクロス検証では、外側のループがデータをトレーニング用サブセットとテスト用サブセットに分割して、モデルの一般化能力を評価します。

同時に、内部ループはトレーニング用データに対してハイパーパラメーター・チューニングを実行し、チューニング・プロセスが検証セットに過剰適合しないようにします。このアプローチでは、ハイパーパラメーターの最適化とモデル評価が分離されるため、未知のデータに対するモデルのパフォーマンスをより正確に推定できます。

もう1つの効果的なフレームワークは、トレーニングとテストの分割と早期停止を組み合わせて、トレーニング中の検証損失を監視します。専用の検証セットでモデルのパフォーマンスを評価することで、エンジニアは検証パフォーマンスが停滞または低下したときにトレーニングを停止して、過剰適合を防ぐことができます。

評価フレームワークには、不均衡なデータ・セットの分類問題に対する層別サンプリングを含める必要があります。これにより、各データ分割で元のデータ・セットと同じクラス分布が維持されるようになります。これにより、多数派クラスへの過剰適合を防ぎながら、少数派クラスのパフォーマンスを公平に評価できます。

アンサンブル方式

バギングやブースティングなどのアンサンブル手法では、複数のモデルを組み合わせて個々の弱点を軽減し、全体的な一般化を改善します。例えば、人気のアンサンブル手法であるランダム・フォレストは、複数のDecision Treeからの予測を集約して過剰適合を減らし、バイアスと分散のバランスを効果的にとります。

アンダーフィッティング

より複雑なモデル

過小適合に対処するために、エンジニアは多くの場合、モデルの複雑さを増して、データ内の根本的なパターンをより適切に捉えます。例えば、関係性の特徴量とターゲット変数が非線形である場合は、単純な線形回帰から多項式回帰に切り替えると役立ちます。より複雑なモデルは過小適合に対処できますが、適切に正規化しないと過剰適合のリスクがあります。

正規化

正則化ペナルティーを減らすと、モデルが過度に制約されることなく、より柔軟にデータを適合できるようになります。例えば、L1およびL2パラメーターは、モデルの複雑さをチェックするために使用される正則化のタイプです。L1(lasso)は、モデルが最も重要な機能のみを選択するように促すためにペナルティーを追加します。L2(ridge)は、モデルが機能間でより均等に分散された重要度になるように導きます。

フィーチャー・エンジニアリング

特徴量エンジニアリングと選択は、相互作用項、多項式特徴量の追加、カテゴリー変数のエンコードなど、特徴量を作成または変換して、モデルに関連性の高い情報を提供する役割を果たします。

トレーニング時間

エポック数を増やしてモデルのトレーニング時間を長くすると、データから学習する十分な機会が確保されます。エポックはトレーニング用データ・セットの1回の完全なパスを表し、複数のエポックによりモデルはより効率的にパターンを学習できます。

モデルがデータ内のパターンをより効果的に学習できるようにするために、複数のエポックがよく使用されます。また、トレーニング用データ・セットのサイズを大きくすると、モデルがより多様なパターンを識別できるようになり、単純化されすぎるリスクが減り、一般化が向上します。

データ品質

エンジニアは全体的に、トレーニング用データの正確性、完全性、一貫性を徹底的に評価し、信頼できるソースと照合して矛盾点に対処する必要があります。正規化(値を0から1の間でスケーリング)や標準化(平均0、標準偏差1にスケーリング)などの手法は、スケールの違いによりモデルが特定の変数を他の変数よりも優先しないようにするのに役立ちます。

時間の経過とともに、入力データの分布が変化することがあります。これはデータ・ドリフトと呼ばれる現象で、モデルが新しいデータに対し過剰適合となったり、過小適合となったりする原因となります。これに対処するには、定期的な監視と、更新されたデータ・セットによる定期的な再トレーニングが不可欠です。外れ値を削除すると、結果の偏りを防ぎ、モデルの堅牢性を向上させることもできます。

AutoMLなどのツールを使用すると、ハイパーパラメーターの調整、機能の選択、モデル評価フレームワークの作成を自動化することでプロセスをさらに効率化し、エンジニアがより高度な洞察と意思決定に集中できるようになります。

オフィスでミーティングをするビジネスチーム

IBMお客様事例

お客様のビジネス課題(顧客満足度の向上、営業力強化、コスト削減、業務改善、セキュリティー強化、システム運用管理の改善、グローバル展開、社会貢献など)を解決した多岐にわたる事例のご紹介です。

最適適合モデルの実現

最適適合モデルとは、過小適合と過剰適合の最適なバランスが取れたモデルのことで、ノイズやランダムな変動に過度に敏感にならず、データ内の基本的なパターンを正確に捉えるモデルを表します。

  • モデルの複雑さと一般化の間のトレードオフは、モデルが単純すぎることと複雑すぎることの間の適切なバランスを見つけることです。
  • エンジニアは、最適なモデル・パフォーマンスを実現するために、バイアスと分散のバランスを取る必要があります。これを行う1つの方法は、学習曲線を追跡することです。学習曲線は、時間の経過に伴うトレーニング・エラーと検証エラーを示します。
  • 精度、適合率、再現率、平均二乗誤差などの検証メトリクスを分析すると、モデルが未知のデータにどの程度一般化されているかを評価するのに役立ちます。
  • 適合性の高いモデルは、モデルの複雑さ、トレーニング用データ、正規化手法のバランスを慎重にとることで、新しいデータに適切に一般化され、正確に予測できるようになります。

過小適合と過剰適合におけるドメイン固有の考慮事項

ドメイン知識は、エンジニアが手元の問題の特定の特性に合わせてモデルを調整するのに役立つため、過小適合と過剰適合に対処する上で重要な役割を果たします。実際のデータ・セットには、ノイズ、不均衡、または不整合が含まれることがよくあります。

適切なデータ分割や前処理などの効率的なロジスティクスは、フィッティングの問題を軽減するのに役立ちます。データのコンテキストを理解することで、エンジニアは前処理、機能の選択、設計について十分な情報に基づいた決定を下し、十分にトレーニングされたモデルを作成できます。例:

  • データの前処理:ドメインの専門知識は、無関係な特徴量の削除、欠損値の処理、データの正規化など、どのデータ・クリーニング手順が必要かをエンジニアが特定するのに役立ちます。例えば、ヘルスケアでは、患者の人口統計と病歴が正確に表現されていることを確認することで、モデルの有効性を高めることができます。
  • 特徴量の選択:ドメインの知識により、どの特徴量がタスクに最も関連しているかを判断でき、ノイズが減り、モデルのパフォーマンスが向上します。例えば、金融部門では、金利や市場動向などの主要な指標は、未加工の取引記録よりも予測精度に貢献する可能性があります。
  • モデル設計:ドメイン固有の洞察は、アルゴリズムやアーキテクチャーの選択に役立ちます。例えば、画像認識タスクでは、畳み込みニューラル・ネットワーク(CNN)が理想的ですが、時系列分析では、再帰型ニューラル・ネットワーク(RNN)またはトランスフォーマーの方が適している可能性があります。

過剰適合と過小適合のバランスをとることで、エンジニアは、過度に複雑になることなく、機械学習モデルが厳格な単純さから意味のある一般化に移行する最適な範囲を特定できます。バランスの取れたモデルは、さまざまな人口統計にわたって顧客離れを予測し、データ品質の変動にかかわらず医療画像を効果的に分類し、ランダムな変動に過剰適合することなく市場の傾向を捉えて株価を予測することができます。

バイアスや分散のトレードオフを効果的に管理することで、未知の状況に適応するために必要な柔軟性を維持しながら、データ内のパターンを正確に学習するモデルを作成できます。このバランスを実現することで、データサイエンティストは技術的に健全で、実際のアプリケーションで効果を発揮するソリューションを作成できます。

関連ソリューション
IBM watsonx.ai

AI開発者向けの次世代エンタープライズ・スタジオであるIBM watsonx.aiを使用して、生成AI、基盤モデル、機械学習機能をトレーニング、検証、チューニング、導入しましょう。わずかなデータとわずかな時間でAIアプリケーションを構築できます。

watsonx.aiをご覧ください。
人工知能ソリューション

業界屈指のAI(人工知能)の専門知識とIBM Watsonのソリューション製品群を活用して、大規模かつ信頼できるビジネスのためのAIを構築します。

AIソリューションはこちら
AIコンサルティングとサービス

AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。

AIサービスはこちら
次のステップ

AI開発ライフサイクル全体にわたる機能にワンストップでアクセスできます。使いやすいインターフェース、ワークフロー、業界標準のAPIやSDKを利用して、強力なAIソリューションを構築できます。

watsonx.aiの詳細はこちら デモを予約