視覚野のモデル
これは 人工知能アドベントカレンダー の18日目の記事です。
今日からは、脳の代表的な部位に対して、いかにして計算機で再現するかといった部分を見ていきます。
視覚野を再現するには
視覚野の働きを再現するときの主な方針としては、以下のようなものが挙げられることが多いようです。
- レチノトピーを再現
- 階層的な特徴抽出
- スパースネス
言うまでもなく、この3つで視覚野のすべてを説明できるわけではありませんが、概ね悪く無い結果が得られるので方針としては悪くありません。
視覚野のおさらい
まず動物(主に哺乳類)の視覚野をおさらいしましょう。アドベントカレンダーでは7日目で扱いました。必要に応じて併せてご覧ください。
特に大事なのは、特定の視覚刺激にだけ反応するコラムという構造が集まっていること、隣のコラムは少しだけ違う刺激によく反応する、言い換えると似たような処理をするコラムが集まっているということがまず挙げられます。
一次視覚野のコラム構造(再掲)
もう一つは、このようなコラムの集合がさらにひとかたまり(領野)となっていて、各領野は階層的な処理をしているということです。
腹側皮質視覚路の図(再掲)
V1(一次視覚野)では単純な線にしか反応せず、あるコラムは水平な線、そのすぐ近くのコラムはたとえば10度傾いた線、遠くにあるコラムは90度傾いた垂直な線に強く反応する、といった具合です(下図)*1。V2ではV1から入力を受けて、線の組み合わせ、つまりL字型の模様(コーナー)とか、もう少し複雑な例だと渦巻きのような形に反応するコラムがあります。
特定の刺激にのみ強く反応するニューロンの様子(再掲、Hubel, 1968)
IT野になるとさらに複雑な刺激に反応するコラムが現れ、たとえば手ならどのような角度で見ても、実写でもイラストでもとにかく手であれば反応するものや、顔に反応するものが現れます。このように、視覚野は低次の領野では単純な図形しか処理できませんが、これを繰り返していくことで少しずつ複雑なものが認識できるような階層構造になっています*2。
レチノトピーの再現
レチノトピーや方位選択性をもった処理をコンピュータで再現するにはどうしたらいいのでしょうか。実は視覚野はかなり古くから研究されていることもあって、コンピュータで再現する(ことによってなにか有益なことに役立てる)アプローチも活発に研究されてきました。
たとえば、一次視覚野の反応はガボール(Gabor)関数でとてもよく近似できることが1987年には既にわかっていました*3。
1982 年にも Kohonen が Self Organizing Map (自己組織化写像、SOM) を提案しました。これは一次視覚野を観察して得られた知識から、大幅な簡略化を加えつつも自己組織的に脳のコラム構造のようなものを生成できます。また、SOMは入力として画像でも音声でも与えることができ、次元数が多くても良いので制限が少なく、かつわかりやすいモデルです。
他にも、Yangqing Jia と Sergey Karayev が提案した Self-Organizing Sparse Codes では、SOMを改良して一次視覚野に似たマップを得ることができています。
Self-Organizing Sparse Codes に画像を学習させた結果。エッジに特異的に反応するようなコラム(SOMの場合はノードと呼ぶ)が得られており、かつ物理的に近くにあるノードは似たような画像によく反応するようになっている(Yangqing, 2010)
他の手法としては、Topographic Independent Component Analysis (Topographic ICA, TICA) が挙げられます*4。
TICAによって得られたマップ。先ほど同様、エッジに特異的に反応するノード(Gaborフィルタで近似できる)が得られており、かつ近くのノードは似た刺激に反応する。
スパースネス
スパースコーディング(sparse coding) と呼ばれる方法が見つかってからは、この考えが非常に重要であることがわかって様々なところで使われるようになりました。神経科学でもそうですし、Deep Learningでも使われているこの概念について簡単に説明します。
スパースとは少数である、疎であるという意味ですが、ここでいうスパースコーディングは、なるべく少ない数の神経細胞の活動によって、なるべくたくさんの信号をなるべく正確に表現できるようにする、ということです。
下の図を見てください。左上は自然画像(写真)です。ここから、今まで見てきたエッジに反応するコラム構造のようなものを得ます(図右上、ここではこれを辞書と呼ぶ)。さて、次に図下段の一番左にある模様を再現したいとします。スパースコーディングでは、なるべく少ない辞書の組み合わせでこれを再現しようとします。ここでは、3つの辞書*5を選んできて足すことで近似できます。
スパースコーディング*6
なぜわざわざそんなことをするのでしょうか?たとえば、フーリエ変換やウェーブレット変換と呼ばれる手法でも、画像をたくさんの要素(波)に分解して、それを組み合わせて任意の画像を表現するということは行われます。しかも、こちらのほうがたくさんの基底を組み合わせてなるべく正確に表現しようとします。正確に表現できるならそれに越したことはないように思えますが、なぜスパースコーディングがそんなに重要なのでしょうか。
これにはいくつかの理由があります。ひとつは、脳の神経細胞数は有限なため、なるべく少ない神経細胞で様々な情報を表現できるようにしたほうが得だということです。極稀にしか使わないような専用の神経細胞を大事にとっておくよりは、たとえ少し精度が落ちてもあらゆるシーンで利用可能な反応的な神経細胞を用意しておいたほうが良いというわけです。もうひとつの理由は、どの情報も少数の神経細胞の発火で表現できるのですから、当然省エネになります。これは生存する上で非常に大切です。いくらパワフルな処理が可能でも、エネルギーの供給ができなければ餓死してしまいます。
最後の理由は、複雑な情報をより明確な形で表現できるということです。どのような情報でも少数の神経細胞しか発火しないということは、ある種の情報抽出ができているということですから、一見複雑に見える入力からその本質的な部分を取り出していると考えることができ、そうすると階層的な情報処理にも役立ちます*7 *8。
階層的な情報処理
ここまでアドベントカレンダーを見てきた方にとっては、既にDeep Learningで階層的な情報抽出・情報処理がいかに大事かは既におわかりかと思います。
段階的に情報を処理することによって、ネットワーク全体の能力をフルに使うことができるのです。実はスパースコーディングはこの段階的な処理に欠かせない概念で、Deep Learningの発展にも大きな役割を果たしました。この辺りの話は、過去のアドベントカレンダーを参照してください。
また、そもそも少しくらいコラム構造が正確な働きをしていなくても、階層的な構造をしているということ自体が視覚の認識において非常に重要な役割を果たしていることがわかっています*9。つまり、単に性能アップのために多層にする、というわけではなく、情報処理の観点から多層化は必須の存在であるといえそうです。
まとめ
今回は視覚野のモデルについて、現在研究されている部分を広く浅く紹介しました。視覚野、特にV1については完璧には程遠いにしろそれなりに近い結果が得られるモデルができていることや、Deep Learningの成功によって遠回りではありますが実践的な裏付けもされてきています。視覚野で得られた知見を活かすことで他の領野の機能を模倣する、というアプローチも十分ありえます。今後も活発な研究がなされる分野です。
*1:なぜ近くのコラムは似ている入力に反応するのか、という点については、回転や平行移動に対して頑健な処理を行うためだと考えられている。たとえば、V1の超複雑型細胞は、受容野のどの場所に線が提示されても、その線の傾きさえ合っていれば反応する。この超複雑型細胞の働きは、ある特定の場所のコラムの入力を束ねることで実現できる
*2:Quiroga RQ, Reddy L, Kreiman G, Koch C, Fried I. Invariant visual representation by single neurons in the human brain, Nature. 2005 Jun 23;435(7045):1102-7.
*3:Judson P. Jones and Larry A. Palmer, An Evaluation of the Two-Dimensional Gabor Filter Model of Simple Receptive Fields in Cat Striate Cortex, Journal of Neurophysiology, Vol. 58(6), pp. 1233–1258, 1987.
*4:Aapo Hyvärinen, Patrik O. Hoyer, and Mika Inki, Topographic Independent Component Analysis, Neural Computation 13(7):1527-1558, 2001
*5:正確には基底と呼ばれるもの
*6:Yu an Ng. Feature learning for image classification, ECCV10 のスライド
*7:Vinje WE, Gallant JL. Sparse coding and decorrelation in primary visual cortex during natural vision. Science. 2000 Feb 18;287(5456):1273-6.
*8:Olshausen BA, Field DJ. Sparse coding of sensory inputs. Curr Opin Neurobiol. 2004 Aug;14(4):481-7.
*9:A Saxe, PW Koh, Z Chen, M Bhand, B Suresh, AY Ng, On random weights and unsupervised feature learning, ICML2010