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

オモンパカリスト

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

実際の脳と深層学習

この記事の読み方

田舎の国立大の学部4年生が調べたことを書いてる。
見当違いなバカ考察も含まれている恐れあり。
すべてを鵜呑みにせず疑って読んでいただきたい。

近況

就活も終わってこの頃、研究に身を乗り出してる。
ていってもまだテーマも決まらず(やばい)、ニューラルネットワーク、深層学習をテーマに
近年バズってるこの分野について調べたり勉強をしている。

(ちなみに来年から仕事にするWeb系の開発については全く手をつけていない。
モチベがかなり研究に傾いてる。一度時間作ってRails 5触らないとな。)

さて研究分野の調査についてはこのブログで何度も稚拙な文章ながら記事にしてきた。
Deep Learningとは何か、をスタートにいろいろと知見を増やしていき、
生物学的にもっともらしい深層学習に向けて
に雑感を書きなぐった。

そして生物学的に、神経科学的に、できる限り脳の模倣に成功した
汎用性のあるニューラルネットワークができるようになれたら良いな、と
思いつつ脳の仕組みをちょっとずつ勉強したり、
今日もまたBengio(Deep Learningの大家)の英語で書かれた論文に四苦八苦している。

BengioはarXivに取り組んでる研究を投稿するっぽいからブクマ。
http://arxiv.org/find/cs/1/au:+Bengio_Y/0/1/0/all/0/1

やってるandやっていきたいリスト:

  • Bengioあたりの論文を読んで今の深層学習状況を学ぶ
  • Theanoを書く(結局Bengioの論文を実装するならTheanoが良い気がした。Chainerは離れることにした)
  • 脳の勉強(教授に頼んで脳の計算論を発注したのにまだ手元に届かない)

勉強になるサイト:

  • Deep Learning
    • 今日見つけた。これ無料でBengioが執筆中の教材をpdf閲覧できるっぽい。全編英語なので英語の勉強にもなる。
  • Machine Learning - coursera
    • 機械学習のビデオ講座サイト。全然手を付けられてない。
  • EMANの量子力学
    • 脳の機能解明も、行き着いた先は、量子論の確率的解釈とか外せなさそうなんだよな。しらんけど。やっぱこのあたりは数学的理解をしたい。

勉強していきたいこと:
ニューロンはMcCulloh&Pittzモデル以外を使いたいから、実際の脳と妥当性があるモデルを勉強していきたい。
きっと確率論が絡んでくるだろうから(量子力学だって結局そうっぽいし。。)
確率周りマジで勉強しないとな。
機械学習ってより計算論的神経科学のほうが脳との妥当性があるわけだからそっちの知見も学ぶ必要がある。
でも超難しいだろうからとりあえずまずは「脳の計算論」読みたい。早く届けや。

ニューラルネットの歴史的背景

今のDeep Learningでは誤差勾配の計算に誤差逆伝播法(Back Propagation)が主流としてある。
このアルゴリズムが学習を可能にしているのは事実だが
同時にニューラルネットを深層にすればするほど
学習を不可能にしてしまう問題を抱えていた→勾配消失問題

この問題がネックとなりニューラルネットワークにおけるこの分野は下火を辿った。
ってのが少し昔の話。

今はそれを解決してどんどん深層なニューラルネットワークを構築できるようになり
色んなタスク(画像認識、自然言語処理など)をスゴい精度で成功している。
それがDeep Learningというワケ。

誤差逆伝播

今の深層学習(Deep Learning)は、
誤差逆伝播法(Back Propagation)が使われてる。

BackPropに関してはこのノートが良い:

誤差逆伝播法のノート - Qiita

(損失関数と誤差関数は同じloss functionの訳)

しかし4層以上の深いニューラルネットに構成すると、
Back Propagationでは勾配消失問題を起こしてしまう。
それらの解決に活性化関数にReLUを用いることと、
DropOutが深層学習実現の工夫としてある。

実際の脳

実際の脳では誤差逆伝播法は使われていない。
というのはわかる。

Bengioが発表したTarget Propagation(Back Propagationの代替案)の論文 Difference Target Propagationにおいて、
6つの理由でBack Propagationが生物学的妥当性がないと言ってる。
(訳したかったけど全部はわからんかった)
(題名のDifference Target PropagationというアルゴリズムはTarget Propagetionの線形補佐した強化版にあたる)

  1. 生物学的なニューロンは線形及び非線形な操作をするのに対し、BPは純粋に線形であること
  2. 順伝播経路はBPによる信用割当を伝達するために使用された場合、対応する順伝播の計算で使用された非線形性の導関数の正確な知識を必要とする。
  3. 同様にこれらの順伝播経路はフィードフォワード接続の正確な対象重みを使用する必要がある
  4. 本当のニューロンは二値(バイナリ)通信(おそらく確率論的)
  5. 計算は正確にFFとBP間で交互にクロックされなければならないであろう
  6. これの出力対象は不透明。

はーーー英語わかんねーーーー

それに対しTarget Propagation及びその拡張版のDifference Propagationはこの生物学的妥当性をクリアしている、という論文ぽい。

長くなったので今日はここまでにします。