教師あり学習

教師あり学習とは

コンピューター自体が指標を見つけ出す教師なし学習に対して、事前に与えられた指標をもとに学習を行う手法の事を教師あり学習といいます。
典型的なものとして挙げられるのが、回帰問題とクラス分類問題があり、入力事例から出力を直接予測するのを回帰といい、クラスと呼ばれるグループに分けていくのをクラス分類といいます。

回帰の例としては、明日の気温は何度か? 日経平均株価はいくらか?などのように数値化されるもので、クラス分類の例は、迷惑メールかどうか?といった2値ないし複数値に判定されるものとなります。

教師あり学習での代表的な手法についていくつか例を挙げます。


サポートベクターマシン(SVM)

クラスの数が2つである問題に用いられる線形分類器であり、1つのクラスの全てのデータ点を、他のクラスの全てのデータ点から分離する、最適な超平面を見つけてデータを分類します。

ここでいう「最適な」 超平面とは、22つのクラス間に最大のマージンをもつ超平面のことです。マージンとは、超平面に平行し、超平面とその間にデータ点のない最大幅の平面とでできる間のことを意味します。

「サポートベクター」は、分離超平面に最も近いデータ点であり、マージン幅限界の超平面上にあります。
最近では、当初難しかった非線形のパターンにも対応できるようになり注目を集めています。


ベイジアンフィルタ

単純ベイズ分類器を応用したもので、対象となるデータを解析・学習し分類する為のフィルタの事を言います。
初期状態でも、ある程度の振り分けはできるように初期設定されていますが、対象となるデータが増えると精度が高くなるといった特徴を持つため、迷惑メールフィルタなどにも利用されています。

従来はキーワード指定によるフィルタが主流でしたが、対象データの内容をフィルタが学習して自動的に分類することで、ユーザーが煩雑なキーワード指定を行う必要が無いために、初心者でも扱えるといった利点もあります。


決定木

木構造のクラス分類のためのモデルで、ルートノードから比較を開始します。
各ノードには条件があり、対象との比較によってたどるべき子ノードが決まり、子ノードでもさらに分岐を繰り返しながら、最終的に葉ノードにたどり着くと、その対象が分類されるべきクラスが分かるという仕組みになっています。

決定木の利点としては、学習が高速であり、規則を人間が見やすいという点がありますが、予測精度はそれほど良くないといわれています。
決定木を生成するアルゴリズムとしては、ID3、C4.5、CART 、CHAIDなどが主に用いられており、それぞれ特徴の違った生成方法をとります。

ROC曲線

様々な手法で決定木を生成しますが、それらは実際どれくらい正しい結果を出しているかを比較する方法として、ROC曲線と呼ばれる曲線で表現することができます。
もともとは、第二次大戦中に米国のレーダーの研究から生まれた方法で、

  • 出力の正例(True)
  • 負例(False)
  • 判別結果の陰性(Negative)
  • 陽性(Positive)

で表現される組み合わせを表(混同行列)として作成したもので、感度、特異度などを算出してこれらをプロットします。一般的には感度と特異度の範囲は0~1の範囲で表現されるので、この曲線の下側の領域面積(AUC)が0,9以上あれば精度が高いということが言えます。

ホールドアウト検証

過学習を防ぐ方法として、データセットを2つに分け、訓練データとテストデータとし、テストデータは学習には使わず、検証のみに使用するという方法で、テストデータに使われるのは全データの3分の1以下の場合が多い。

ほかにも、K分割交差検証、leave-one-out交差検証(LOOCV)などといった検証法があり、それぞれ特徴がある為、データ数、情報の種類等様々な条件によって使用されるべき検証法は違ってきます。


ニューラルネットワーク

コンピュータで神経細胞(脳)の動きを再現しようとしたもので、別の神経細胞から受け取った信号を次の神経細胞へ伝達するという仕組みを数理モデルとし、複数つなぎ構成されたネットワークです。
ニューラルネットワークの源流である単純パーセプトロンでは、活性化関数にステップ関数を使用していることで線形の分離しかできなかったのに対し、活性化関数にシグモイド関数などとソフトマックス関数を使用することで、クラスの数が2つまたは複数の分類を導き出す事ができます。