機械学習とは、人間が脳内で行っている学習能力と同じような機能をコンピュータで実現する、人工知能の手法の一つです。
ある事象に関するデータを反復的に学習することで、それらのデータの中にパターンを発見します。そして学習によって得られたパターンを新たなデータに当てはめることで、予測することが可能になります。
人手によるプログラミングで実装するアルゴリズムと違って、大量なデータを用意することができれば自動的にシステムを開発することが可能なため、さまざまな分野で応用することができます。
機械学習について、アーサー・サミュエルは1959年に「明示的にプログラムしなくても学習する能力をコンピュータに与える研究分野」と定義しています。
機械学習が注目されるようになった要因としては、利用可能なデータ量が急速に増大したことと、コンピュータの処理能力が向上したことが挙げられます。
その結果、大量の複雑なデータを分析して、より正確な結果を迅速に提供するモデルを自動的に短時間で生成することが可能になりました。
データマイニングとの関係
似たような用語に「データマイニング」がありますが、機械学習とデータマイニングとでは目的が異なります。
機械学習の目的は、既知のデータから学んだ特徴に基づいて、新たなデータについての「予測」を行うことにあります。
一方で、データマイニングはデータに含まれる未知の特徴を探し出すことにあります。そのため、データマイニングの技法を機械学習に応用するという関係にあります。特にこの学習法を「教師なし学習」と読んでいます。
機械学習のアルゴリズム
機械学習のアルゴリズムには、教師あり学習、教師なし学習、半教師あり学習、強化学習、トランスダクション、マルチタスク学習などがあります。
教師あり学習では、入力と出力を合わせたデータセットを最初に用意して、それを使って学習します。「分類」や「予測」といった課題に利用されたりします。
一方、教師なし学習では入力のみのデータセットを用意して学習します。正解となる出力は与えられず、「データの構造」を学習します。「クラスタリング」や「次元削減」といった課題に利用されます。
強化学習では、試行錯誤を通じて「価値を最大化するような行動」を学習します。教師なし学習と似ていますが、より広い意味での「価値」を最大化するための行動を学習していきます。
出典・参考