[PRML] 1. データに潜むパターンを見つけ出す。

パターン認識という学問

計算機アルゴリズムを通じて、データの中の規則性を自動的に見つけ出し、さらにその規則性を使ってデータを異なるカテゴリに分類する、というデータ処理を行う

素直な方法

  • 人力による識別ルールの作成
  • ヒューリスティクスを編み出す

ただし、こういった方法ではあらかじめ作らなくてはいけないルールの数を爆発的に増やさなくてはならなかったり、例外が起きたときのルールも爆発的に増えてしまいます。

パターン認識での方法

  • 訓練集合(training set) \{{\mathbf x}_1,\ldots, {\mathbf x}_N\} の入力 {\mathbf x_i} により関数のパラメータを更新し、出力(target vector) {\mathbf t_i} となるような関数 {\mathbf t} = y({\mathbf x}) を作る
  • テスト集合(test set)の入力 {\mathbf x}_j に対して出力 {\mathbf t}_j  が予測(prediction)できるようになる

処理の手順

  1. 入力データに対する前処理(preprocessing)あるいは特徴抽出(feature extraction)を行う(次元削減とか)
  2. 訓練集合の入力 {\mathbf x} と目標ベクトル {\mathbf t} を対応付ける関数 y の導出
  3. 関数 y によりテスト集合 {\mathbf x'} の目標ベクトル {\mathbf t'} を予測

パターン認識の扱う問題の種類
大きく分けて

  1. 教師あり学習(supervised learning):訓練データが、入力ベクトル {\mathbf x} と目標ベクトル {\mathbf t} の事例で構成される場合
  2. 教師なし学習(unsupervised learning):訓練データが、入力ベクトル {\mathbf x} のみで構成される(それらに対応する目標ベクトルが存在しない)場合

に分けることができます。
このほかに

  • 半教師あり学習(semi-supervised learning):訓練データの中に、目標ベクトルがない事例も含まれる場合
  • 強化学習(reinforcement learning):最適な出力は事例として与えられず、与えられた状況下で、報酬を最大化するように学習を行う場合

などもあります。

教師あり学習
教師あり学習には、大きく分けて2つの場合があり、

  1. クラス分類(classification):各入力ベクトルを離散カテゴリの一つに割り当てる場合
  2. 回帰(regression):各入力ベクトルに対し、一つあるいは複数の連続値を与える場合

教師なし学習
教師なし学習には

  • クラスタリング(clustering):類似した事例のグループを見つけること
  • 密度推定(density estimation):入力空間におけるデータの分布を求めること

などがあります。

パターン認識を学ぶのに必要な知識

  • 微分積分学
  • 線形代数学

は基本として、

  • 確率論
  • 決定理論
  • 情報理論

の知識が必須です。

(言葉だけだと分かりづらいので、図とかTeXとかで更新予定です)