機械学習におけるバイアスと分散のトレードオフをマスターしよう。モデルのパフォーマンスを最適化するために、精度と汎化のバランスを取るテクニックを学びます!
バイアスと分散のトレードオフは、教師あり機械学習(ML)における中心的な概念であり、訓練されたデータだけでなく、新しい未知のデータに対しても優れた性能を発揮するモデルを構築するという課題を扱う。この概念は、モデルが犯しうる2種類のエラー、すなわち、過度に単純化された仮定によるエラー(バイアス)と、学習データに対する過度の感受性によるエラー(分散)の間に内在する緊張関係を表している。良い汎化を達成するには、これら2つの誤差のバランスを注意深く見つける必要があります。
バイアスとは、複雑な現実の問題をより単純なモデルで近似することによって生じる誤差のことである。バイアスが高いモデルは、データについて強い仮定を置き、潜在的に複雑なパターンを無視します。これはアンダーフィッティングにつながる可能性があり、モデルがデータの根本的な傾向を捉えることができず、トレーニングデータとテストデータの両方でパフォーマンスが低下します。例えば、単純な線形回帰を使用して高度に湾曲した関係をモデル化しようとすると、バイアスが高くなる可能性が高いです。バイアスを減らすには、多くの場合、ディープラーニング(DL)に見られるより洗練されたアルゴリズムを使用したり、特徴エンジニアリングによってより関連性の高い特徴を追加したりするなど、モデルの複雑性を高める必要があります。
分散とは、モデルが訓練データに存在するノイズを含む特定の揺らぎに対して敏感すぎるために生じる誤差のことである。分散が大きいモデルは訓練データを学習しすぎるため、一般的なパターンを学習するのではなく、基本的に記憶してしまいます。これはオーバーフィッティングを引き起こし、モデルは訓練データに対しては非常に優れた性能を発揮するが、新しい未知のデータに対しては汎化することを学んでいないため性能が低下する。多くのパラメータを持つディープニューラルネットワーク(NN)や高次多項式回帰のような複雑なモデルは、分散が大きくなりやすい。分散を減らすテクニックとしては、モデルを単純化する、より多様なトレーニング・データを収集する(「データ収集とアノテーション」ガイドを参照)、正則化のような手法を使用する、などがあります。
バイアスと分散のトレードオフの核心は、モデルの複雑さに関するバイアスと分散の間の逆相関です。モデルをより複雑にしてバイアスを減らすと(例えば、ニューラルネットワークにレイヤーを追加する)、一般的に分散が増えます。逆に、分散を減らすためにモデルを単純化すると、バイアスが増加することがよくあります。理想的なモデルは、未知のデータに対して、総誤差(バイアス、分散、および不可逆誤差の組み合わせ)を最小化するスイートスポットを見つける。この概念は、「統計的学習の要素」などのテキストで詳しく説明されているように、統計的学習において基礎となるものである。
バイアスと分散のトレードオフをうまく管理することは、効果的なMLモデルを開発する鍵である。いくつかのテクニックが役立ちます:
バイアスと分散のトレードオフを、AIで議論される他のタイプのバイアスと区別することは極めて重要である:
Bias-Varianceトレードオフが複雑さと汎化に関連するモデル誤差の統計的性質(Accuracyや mAPのようなメトリクスに影響する)に焦点を当てるのに対して、AI Bias、Dataset Bias、Algorithmic Biasは公平性、衡平性、代表性の問題に関係する。トレードオフに対処することは予測パフォーマンスを最適化することを目的とし(YOLO Performance Metricsガイドを参照)、他のバイアスに対処することは倫理的で公平な結果を保証することを目的とする。Ultralytics HUBのようなツールは、データセットとトレーニングプロセス(クラウドトレーニング)の管理を支援し、パフォーマンスと潜在的なデータ問題の両方に関連する側面の監視に間接的に役立ちます。