前回はこちら

 教師あり学習(supervised learning)は、「機械学習といえば教師あり学習」といってもいいくらいの機械学習を代表する一分野です。何かを認識したり、予想したりするために必要な手法です。今回は、いくつかの代表的な教師あり学習アルゴリズムを見ていきましょう。

 既にたびたび説明していますが、教師あり学習はデータと正解のペアを与えて、それをもとに学習する方法です。文字認識(数字の認識)を例に取ってみましょう。以下の図1を見てください。

図1 データと正解のセットからプログラムが学習
図1 データと正解のセットからプログラムが学習
[画像のクリックで拡大表示]

 まず、プログラムに数字とはどのようなものかを教えるためのデータが必要です。いろいろな形の数字の画像をたくさん用意します。図1では3つずつしかありませんが、普通は数百~数万ほど集めます。そして、それぞれの画像に対して、その画像はどの数字に対応しているのかという正解データも用意します。これを教師データと呼びますが、ラベル、教師信号など色々な呼び方があります。

 そしてこのデータとラベルのペアを、教師あり学習をするプログラム(教師あり学習器、あるいは単に学習器)に与えます。学習器の仕事は、このペアをよく観察して共通する特徴を見つけ出す、つまり「こういう特徴のある画像なら、この数字だ」というルールを見つけることです。

 文字認識なら文字の画像、音声認識なら音声、動画認識なら動画と、それぞれの正解を与えれば、基本的にはどのようなものでも学習できます。より正確に言うと、どのようなデータでも、適切に設計された特徴ベクトルに変換できれば、学習することが可能です。なお、学習の結果できあがった入力と出力の関係を、以下ではモデルと呼んでいます。