大脳皮質と deep learning の類似点と相違点
脳とdeep learning のアーキテクチャには共通の特徴が多くありますが、
脳にはあるのに現在(2012年時点)の deep learning にはない重要な特徴もあります。
その中には deep learning の性能をさらに向上させる
有望なヒントが含まれているのではないかと思います。
そこで、大脳皮質と deep learning の類似点と相違点を簡単にまとめてみました。
特に「脳は上の層ほど発火がスパース」「脳はあまり深くなくむしろ横に広い」
「脳では領野ごとに強い個性がある」といった特徴は、
重要なのではないかと思います。
◆ 大脳皮質に見られる「深いネットワーク」
大脳皮質の視覚野(腹側経路と背側経路)、聴覚野、体性感覚野、運動野には
「深いネットワーク」の構造が見られる。
これらの領域における主な領野の階層構造を
[Felleman and Essen 1991] の図などを見ながら
おおざっぱにまとめると以下のようなかんじ。
・視覚野 腹側経路(what pathway)
V1→V2→V4→PIT→CIT→AIT
・視覚野 背側経路(where pathway)
V1→V2→MT・MIP→MST・LIP
・聴覚野
一次→二次→三次聴覚野
・体性感覚野
3野→1野→2野→5野→SII→7b(?)
・運動野
M1→SMA・PM→DLPFC
・なお、ヒトの言語野については階層性はない。言語に関わるのは
ブローカー野(44野、45野)、
ウェルニッケ野(22野の一部)、
縁上回(40野)。
これらはそれぞれ全く異なる機能を受け持ち、
どれが上位でどれが下位というわけではない。
◆ 大脳皮質と deep learning の類似点
・上の層のニューロンほどより多くの感覚器からの情報を統合した応答をする。
(上の層ほど広い「受容野」を持つ。)
・上の層のニューロンほど応答する刺激はより複雑になる。
例えば視覚であれば、一番下の層では線分の傾き、1つ上の層では単純な形、
もっと上の層では特定の複雑な形に対してニューロンが応答する。
・上の層のニューロンほどより抽象的な情報を表現する。
ノイズ、小さな変形、物体の向き、照明条件などの不要な情報は
上の層に行くほど捨てられる。
・ max-pooling を行う。
HMAX モデルと呼ばれる脳の視覚野のモデルや、
一部の deep learning のシステムでは、
下の層のいくつかのニューロンの中から最大の値を持つものを受け取るという
処理をすることで刺激の変形に対する不変性を実現している。
・教師なし学習を行う。
大脳皮質は教師なし学習を行っていると考えられている。
旧来の3層パーセプトロンは教師あり学習を行うニューラルネットだが、
deep learning においては pre-training において教師なし学習を行う。
・下の層から回路が完成する。
deep learning の pre-training は下の層から順に教師なし学習で
ネットワークを初期化することで、局所解・過適合を防ぐ。
大脳皮質においては、髄鞘化とよばれる神経線維の変化が
低次の領野から前頭葉に向かって進み、
すべての部位で髄鞘化が完成するのは10歳前後とのこと。
・双方向の結合がある。
大脳皮質において上下関係にある領野どうしは、必ず双方向の結合を持っている。
下から上へは感覚器から入った情報が流れる。
上から下へは文脈や過去の経験からの予測の情報が流れるのではないかと
言われている。
deep learning で使われる auto-encoder は、
認識結果から出力を再構成する能力を持っており、
これは大脳皮質が持つ予測能力と似ている。
・学習器が大規模になるほど入力データの前処理が単純。
以前は研究者が行っていた特徴抽出の設計を、
deep learning では生データからの学習で置き換えることで性能を向上させた。
生物の進化でも似たことが起きている。
カエルの網膜は複雑な情報処理を行っており、
例えば黒い影が迫ってくるような状況も検出できる。
(参考: http://www.biophys.jp/dl/journal/47-6.pdf の p.357 。)
ウサギなどの網膜はそこまで高度ではないが方位選択性は持っている。
視覚の発達したネコ・サル・ヒトなどの網膜は、方位選択性を持ってない。
このように脳の視覚情報処理能力が高いほど、網膜の処理は単純になる傾向がある。
運動についても、サルやヒトの複雑で精緻な手の動きには、
おそらく脊髄や脳幹よりも大脳皮質の関与が大きいだろう。
(この傾向は、人工知能不可能論の1つモラベックのパラドックスに対する
反論になっている。
モラベックは、感覚と運動の機構は長い進化の末に
非常に複雑なものになったと予想したのかもしれない。
しかし実際には逆で、進化の結果むしろ単純化したのである。
これまで機械に苦手だった感覚と運動の処理は、
今やデータからの学習により実現可能になり、
もはや不可能論の根拠ではなくなったのである。)
◆ 大脳皮質と現在の deep learning の相違点
・上の層ほど発火がスパース。
一般に deep learning では上の層ほどニューロンの数が少なくなっている。
ところが脳の場合、上の領野ほどニューロン数が少ないわけではなく、
むしろ少し多くなる傾向があるように見える。
その代わり、脳では上の領野ほどニューロンの発火はスパースになる傾向がある。
脳においても上の層に行くにつれノイズや不要な情報が捨てられるはずだが、
それを上回る比率で過完備基底によるスパース表現に変換されるのだと思う。
なぜわざわざ過完備基底で表現するのかといえば、
これは私の想像だが、
より多くの信号源の選択肢を持たせた方が
「真の信号源」によりよくフィットできて、
生成モデルの近似能力が増すのではないだろうか。
・脳は実はそれほど深くない。むしろ横に広い。
大脳皮質で見られる領野の階層構造は、
多めに数えても10層以内。
ヒトはサルよりもニューロンの数が10倍多いが、
それでも領野の階層の深さはあまり変わらない。
その代わりに、各領野の面積が広くなっている。
おそらく deep learning においても層の深さをやみくもに深くしても意味がなく、
それよりも幅を広くする方が性能向上に貢献するかもしれない。
ニューラルネットにおいて、ニューロンの数を増やすと、
結合の数と計算量の O(n^2) での爆発、過適合、
など様々な問題が出てくるので、これらに対処する必要がある。
発火のスパース性、結合のスパース性など、様々な正則化の工夫を駆使する
必要があるだろう。
・脳では、領野ごとに個性がある。
領野の性質は視覚野と運動野については特によく調べられているが、
各領野が表現する情報は、非常に個性が強い。
大脳皮質は領野によらず似た解剖学的構造を持つことから、
どの領野も同じアルゴリズムで動作すると推測される。
にも関わらず領野ごとの個性の違いが出る要因としては以下の2つが考えられる。
領野ごとに他の領野や感覚入力との接続関係が異なる。
領野ごとにハイパパラメタの値が異なる。
特に、統合する入力の種類の違いは、領野の個性を大きく変えるだろう。
視覚野の背側経路のMIPとLIPという領野の例を説明する。
MIPには網膜座標を使って視覚刺激の位置を表現するニューロンが存在する。
その上位にあるLIPでは視線の向きによらない頭部座標で
位置を表現するニューロンが存在する。
この違いは、現在の視線の向きを知るための眼球の筋肉からの感覚情報が
MIPには入力しておらずLIPには入力しているから生じるのではないかと
私は想像している。
最適な領野のネットワーク、最適な領野ごとのハイパパラメタの値は、
進化によって獲得された、外界にたいする事前知識である。
よい事前知識が作り込まれていれば、そうでないよりも性能が上がる。
deep learning においても、学習されるべき情報に関する事前知識を
積極的に作りこむべきである。
例えば脳の視覚野がやっているように、
物体の視覚刺激が「位置によらない形」と「形によらない位置」という
独立成分に分解できるという事前知識を作り込むと、
認識精度向上に役立つかもしれない。
・文脈情報の利用。
脳は時間的・空間的な文脈の情報を用いて認識精度を上げている。
例えば、画像全体を見渡して照明条件を推測して個々の物体の色を補正したり、
文章全体から内容が属する分野を推測して個々の単語の認識精度向上に利用したりする。
認識を feedforward の処理だけで行うシステムにはこの機能はない。
・動的計画法を使った高速な認識。
いくつかの研究は、大脳皮質が確率伝播法のような
認識アルゴリズムを用いていることを示唆している。
確率伝播法は動的計画法を原理としており、
ネットワークの形がある条件を満たしていれば
非常に高速に厳密解を計算できるアルゴリズムである。
動的計画法は、勾配法やMCMCより速くよい解に収束する可能性がある。
なお現在の多くの deep learning のアルゴリズムでは、
そもそも認識の際には最適化問題を解かず、feedforward の処理だけですませている。
・視線移動。
脳の視覚野では階層的な処理に加えて、
視線移動による逐次的な情報の蓄積にもとづいて物体認識を行っていると
思われる。
人間が無意識に視線を向けやすい「目立つ場所」とは、
周りとは違った特徴を持った情報量の多い場所らしい。
SIFT 特徴量を使った一般物体認識では、キーポイント候補点の絞り込みを
行っているが(参考 藤吉弘亘「一般物体認識のための局所特徴量」 Figure 5)
脳はこれとかなり似たことを動的にやっていることになる。
一方 deep learning による一般物体認識ではこのようなことは
まだやられていないと思う。
画像の中の重要そうな場所を重点的に処理するようにすれば、
認識性能が上がるか計算量を減らせる可能性があるだろう。
・局所的な平行移動以外に対する不変性。
たたみ込みニューラルネットワークでは、部分サンプリング層によって
特徴の局所的な平行移動に対する不変性の機能を直接作り込んでいる。
しかし例えば、
顔による個人識別の場合、顔のパーツの相対的位置は重要な特徴であるため、
局所的な平行移動に対する不変性はかえって識別精度を落とすのではないか?
逆に、眼鏡の有無やひげの濃さなどは個人識別の際に無視する必要があるが、
これらに対する不変性はたたみ込みニューラルネットワークには作り込まれていない。
脳は高い性能で個人識別をこなすのだから、直接的な作り込みではなく、
学習によって柔軟に不変性を獲得する機構を持っているのではないだろうか。
・層を超えた接続。
deep learning では隣り合った層どうししか結合を持たないが、
脳では1〜2層飛び越えた結合もけっこうある。
その機能的意味は不明。
単に領野の損傷に備えた耐故障性のための機構なのかもしれない。
層を飛び越えた結合があれば、ある領野が損傷してもそれなりに動作を続けられる。
(微小脳梗塞は発生頻度が高いが自覚症状が軽いことが多い。
層を超えた接続がけっこう効いているのかも??)
あるいは、広い範囲からの特徴を収束させることで、
位置不変性の非常に強い認識の機構を実現しているのかもしれない。
・感覚野では上の領野ほどIII層は厚くII・IV層は薄く、
運動野を含む前頭葉では逆に、
上の層ほどIII層は薄くII・IV層は厚い傾向がある(?)。
参考:下記ページの FIG. 12-3 を見るとそのように見える(?)。
「第12章.大脳皮質The Cerebral Cortex」
一般にこのような傾向が本当にあるのはよくわからないが、仮にあるとして、
BESOM モデルを前提に意味を解釈してみる。
BESOM モデルでは、
II・IV層はそれぞれトップダウン・ボトムアップの入力に対して
max 演算する場所である。
III層は複数の親ノードと子ノードからの情報を統合する場所である。
たたみ込みニューラルネットとの対応で言うと、
IV層は部分サンプリング層に、III層はたたみ込み層に近い。
これらを前提にすると、脳の感覚野では、
上の層ほど、部分サンプリング層への入力の数は少なく、
たたみ込み層への入力の数は多い、
下の層はその逆、という解釈になる。
もしこれが本当ならば、
局所的な変形に対する不変性の処理は下の層においてより重要で、
複数の特徴の統合は上の層においてより重要、ということになる。
◆さいごに
大脳皮質と現在の deep learning との類似点と相違点を述べたが、
deep learning が完全に大脳皮質の機能をまねられるようになっても、
それだけでただちに人間のような知能ができるわけではない。
脳には大脳皮質以外にも基底核、海馬、扁桃体、小脳といった重要な組織があり、
解明が進んでいるこれらの計算論的モデルと、
大脳皮質の視覚野、運動野、言語野などのモデルとを統合し、
脳全体のモデルを構築する必要がある。
詳しくは下記ページを参照されたい。
全脳アーキテクチャ解明に向けて
コメント、質問などお待ちしております。
一杉裕志のページ