機械学習の問題設定
基本的に、多くの機械学習手法では、何らかの損失関数を設定し、その期待値を最小化することを目指します。
データからある構造を学習する際には、まず数式でその構造を記述した数理モデル、つまり仮説集合を設定する必要があります。この仮説集合は、統計モデルとも呼ばれます。
機械学習の目標は基本的に、汎化誤差の最小化と定義されます。しかし、未知の確率分布による期待値が含まれているため、実際には計算が不可能です。そのため、何らかの方法でデータを収集し、損失関数の期待値の代わりに経験的平均を用いた訓練誤差(あるいは経験損失)を考慮します。
しかし、訓練誤差の最小化と汎化誤差の最小化の間にはギャップが存在し、単純に訓練誤差を最小化しようとすると、過学習と呼ばれる現象が発生します。過学習とは、観測データに混入した誤差に強く引っ張られ、結果的に汎化誤差が悪化する現象のことです。
つまり、全ての現象を記述できる広範な仮説集合を用意すると、確かに汎用性は高いですが、微小な誤差に過敏に反応し、過学習を引き起こしやすくなります。その代わりに、対象の性質をうまく取り込んだ数理モデルを作り込み、現在興味を持っている現象を的確に捉え、無駄な情報を省くシンプルなモデルを用いることで、過学習を避けることが可能です。機械学習のモデリングの歴史は、統計学と同じく、無駄な複雑さを排除したシンプルなモデルの構築という試みの歴史でもあります。
この問題は、学習理論の観点からはVapnik-Chervonenkis理論によって数理的に説明され、機械学習の指導原理となっています。同様の議論は「no free lunch theorem」としても知られています。また、これはオッカムの剃刀とも表現されます。この原理は実際に、モデル選択規準であるAICやBIC、高次元データ解析やカーネル法などに現れる正則化学習などでも見られます。
過学習の存在は、統計モデリングの重要性を浮き彫りにしています。