パターン認識という学問
計算機アルゴリズムを通じて、データの中の規則性を自動的に見つけ出し、さらにその規則性を使ってデータを異なるカテゴリに分類する、というデータ処理を行う
素直な方法
- 人力による識別ルールの作成
- ヒューリスティクスを編み出す
ただし、こういった方法ではあらかじめ作らなくてはいけないルールの数を爆発的に増やさなくてはならなかったり、例外が起きたときのルールも爆発的に増えてしまいます。
パターン認識での方法
- 訓練集合(training set)
の入力
により関数のパラメータを更新し、出力(target vector)
となるような関数
を作る
- テスト集合(test set)の入力
に対して出力
が予測(prediction)できるようになる
処理の手順
- 入力データに対する前処理(preprocessing)あるいは特徴抽出(feature extraction)を行う(次元削減とか)
- 訓練集合の入力
と目標ベクトル
を対応付ける関数
の導出
- 関数
によりテスト集合
の目標ベクトル
を予測
パターン認識の扱う問題の種類
大きく分けて
- 教師あり学習(supervised learning):訓練データが、入力ベクトル
と目標ベクトル
の事例で構成される場合
- 教師なし学習(unsupervised learning):訓練データが、入力ベクトル
のみで構成される(それらに対応する目標ベクトルが存在しない)場合
に分けることができます。
このほかに
- 半教師あり学習(semi-supervised learning):訓練データの中に、目標ベクトルがない事例も含まれる場合
- 強化学習(reinforcement learning):最適な出力は事例として与えられず、与えられた状況下で、報酬を最大化するように学習を行う場合
などもあります。
教師あり学習
教師あり学習には、大きく分けて2つの場合があり、
- クラス分類(classification):各入力ベクトルを離散カテゴリの一つに割り当てる場合
- 回帰(regression):各入力ベクトルに対し、一つあるいは複数の連続値を与える場合
教師なし学習
教師なし学習には
- クラスタリング(clustering):類似した事例のグループを見つけること
- 密度推定(density estimation):入力空間におけるデータの分布を求めること
などがあります。
パターン認識を学ぶのに必要な知識
- 微分積分学
- 線形代数学
は基本として、
- 確率論
- 決定理論
- 情報理論
の知識が必須です。
(言葉だけだと分かりづらいので、図とかTeXとかで更新予定です)