読者です 読者をやめる 読者になる 読者になる

オモンパカリスト

深層学習、計算論的神経科学に興味あります

生物学的にもっともらしい深層学習に向けて。

ことのいきさつ

Deep Learning(以下、深層学習)が流行ってる。
僕自身、これには本当に興味深々で、去年から勉強を重ねた。
深層学習は、ニューラルネットワーク(多層パーセプロトン)をより深く多層にしたモデルで、
脳の神経回路を模倣したその形の人工知能的な感じと、
実際に囲碁AIだったり強力な画像処理で2012年あたりから
ぐんぐん実績をあげてきた。

これにはとても魅力に感じ、勉強して知見を深めていった。

「人間の脳を模したニューラルネットワーク
という触れ込みだけど、じゃぁ実際どれくらい人間の脳に近いのか?
という疑問を持った。

そして、僕自身、学部の4年生になり研究室に配属された。
その研究室では、「新型ニューロンモデルの提案」に力を入れていた。

これには、自学で深層学習を身につけてきた僕は驚いた。
実は、全く気にしてなかったんだけど、今流行りの深層学習のほうは、
McCulloh&Pittzモデルというf(Wx + b)、簡易的なモデルが前提だった。
これは、実際の脳のニューロンモデルに比べりゃかなり簡易的。
それに比べて研究室が提案している新型ニューロンモデルは、樹状突起を考慮したより実際のニューロンに近い形。
それが良いかどうかはともかく、気づきを得た。

流行りの深層学習のアプローチ

整理すると、 今流行ってる深層学習の構成は、
ニューロンモデルはMcCulloh&Pittzモデル(簡易的)で、
それを多層につみあげ(多層パーセプトロン)、順伝播、確率勾配降下法(SGDなど)をし、
上の層の誤差信号を用いて下の層へ誤差伝播法(Back Propagation)を施す。
そして、深層になればなるほどBPの勾配消失問題が発生してしまうので、
DropOutや、ReLUを用いたりして、工夫に工夫をしてタスク解決の精度をあげている。

これは、機械学習の道具としてニューラルネットワークが、進化の道を辿った結果だ。
とくに、誤差伝播法(BP)。これは連鎖律を利用した線形計算アルゴリズムで、
人間が考えたウマい計算方法だ。
これが主力となって、軸となって、そこから工夫をして今のAIタスク実現を成功させている。

実際の脳との違い

でも、機械学習としてニューラルネットワークという方法は進化を遂げてきた。
だけど、個人的には矛盾を感じる。
「脳を模した、ってのは結構違ってくるな」
と思った。
神経科学に足を踏み入れてみて、いろいろ脳について調べてるうちに、
深層学習の現状のアプローチは、どこか妥当性に欠ける気がしてきた。

ntddk.github.io

調べてみたら、とても良い記事を見つけた。

この記事にあるように、以前から紹介してる「深層学習」青本紫本はとにかく今の流行りを抑えている。
ただ、計算論的神経科学の知見からはズレていってる気がする。
僕の興味は、どっちかというと「脳」を模した「人工知能」が実現できるか否かなので、
そのズレていったブレイクスルーには少しモチベが上がらない。

生物学的妥当性のある深層学習に向けて

誤差逆伝播法は脳にはない。じゃあどうするか。
ぼくらの大先生、BengioがTarget Propagationを考えた。 個人的にかなりキテる。まだ日本語の記事があまり見かけないけど、
Target Propagationは中々良いんじゃないか。とワクワクしてる。モチベ急上昇。

というわけで今、Target Propagationもといその改良版のDifference Target Propagationの論文を精読している。

少し、気になるのはここ近年で現れたChainerやTensorflowなどのNNフレームワーク
Chainerしか触ってないけど、ほとんどのフレームワーク誤差逆伝播法をマストアイテムにしている。
しかしtarget propagationは、つまりこれを禁じ手にしている。
なので、フレームワーク選びはもう一度ふりだしになるし、
クラッチで実装するスキルを身につけることが必然的だと言える。

とにかく、今後は計算論的神経科学の知見を無視できないと思うから、
ここらで誤差逆伝播という常識を変える、新しい手法を理解していく必要があると思った。