“サポートベクターマシンとは,1995年に,AT&TのV.Vapnikによって統計的学習理論の枠組みで提案された学習機械のことである”
Support Vector Machine
画像の顔認識について調べていたら出てきたもの。人間が見たり聞いたりして物事を認識するのを機械にもやらせてしまおうというものっぽい。OpenCV もこれの一種なのかな?
認識ってのは、簡単に言うとパターン識別だと思います。パターンを定義してしまえば、機械は高速な計算が得意なので、認識を素早く完了できそうな気はしますね。
しかし、問題はパターンの定義なんです。人間同士なら “目が二つあって、鼻があって、口があって・・・” なんて言葉でも伝えることができます。でも機械に伝えるには、目が何なのか、鼻がなんなのか、事細かに伝えていかなければなりません。そして少しでも違えば、機械は認識できなくなってしまいます。
そこで、認識パターンの学習モデルが研究されているらしく、サポートベクターマシンというのは、その成果のひとつのようです。
はて、サポートベクターマシンの目的は分かりましたが、これはなんなんでしょう。どのようにパターンを解析しているのか。そもそもサポートベクターってなんなんだ。
リンク先の説明では、平面上の二種類の点を分類する際の説明が書かれています。サポートベクターってのは特徴点の集合を決定する境界のようですね。これはこれですごい。アンケートを取って地図上で分布を示す際には重宝するかも。でも、そこじゃない。
このような計算がパターン認識、特に顔認識のような複雑な解析にどのように利用されているのかが理解できない。たぶん、しっかり勉強しないと理解できないんだろうけど。
“400次元特徴空間上での画像識別が出来ました”
顔識別できました – momo_dev(k.kinukawa)の日記
って書いてる人もいるし。400次元てなんだよ。
とりあえずは OpenCV を色々試して、計算アルゴリズムは後回しにしようか・・・。