知っておくと楽しいニューラルネットワーク
本日ボーナス日!!!!
さいこう!!!!
まえがき
10日目担当の寺元です.
文章を書くのは下手くそで,論文を書くとき日本語がおかしいとよく言われていました.
なので優しい気持ちでよんでください teramoto_toya.icon
昨今「AI,AI」言われていますが,現在AIの基本となっているDeep Learningの基礎であるニューラルネットワークについてお話したいと思います.Deep Learningとか勉強したことがある人は,はじめの方に触りだけ聞いたことがあるようなないようなことを少し詳しく書きます.僕よりもっと詳しい人がいるかもしれませんが,色々意見もらえると喜びます.
正直deep learningは好きではありません.
神経回路網が好きです.
書いててdeep learningのことや人工ニューラルネットワークのことを書くのが面倒になり,タイトル変えました.
書いてて思いましたが多分めちゃくちゃわかりにくいと思います...が少しでも神経回路を好きになってください
はじめに
人間の脳でわかっていてわかっていないこととは,人間の脳はどれくらいわかっているのか.
僕はあまり理解していませんが,基本的にはミクロ的記述はできていると思います.
物理学でいうミクロはボルツマン方程式の理想気体の運動だとするとマクロの記述は理想気体の状態方程式だと思います.
脳の場合ミクロはホジキンスさんのニューロン方程式がありますが,マクロの世界,脳の全体的な記述はまだまだ理解に至っていせん.今回はミクロの世界のニューロンの話を簡単にしつつ,マクロ理解への入り口である初期視覚野について話します.
神経細胞の構造
https://gyazo.com/a2b5a8e1ade93da78396168a3190601c
人間の脳はニューロン(上の変なやつ)が繋がりあった神経回路からできています.
大脳,小脳,皮質などですこし形が違うよ!!気になったら調べてね!動物によっても違うよ!
図の左のアメーバみたいなやつが細胞体でれんこんみたいなやつが軸索といいます.こいつら 興奮すると発火して電気を出します(マジ).この電気をやり取りして情報を伝達しているのだ.れんこんみたいな軸索の役割は信号を早く伝えるためについているが仕組みは忘れましたすみません.
アメーバの先っちょが他のニューロンと繋がているが,微妙に離れていて電気がさきっちょまでくると,いちじくみたいなのが化学物質を出して電気を伝搬します.(少し語弊がある)このとき出る物質にGABA(チョコのお菓子)などがあります.みんあGABA食べると興奮するよ(嘘)そしてこのニューロンはこれら物質があるしきい値に達すると発火します.この声質がdeep learningしている人ならわかる活性化関数です.ニューロンはいろんなニューロンから様々なシナプス結合の強さを持っていいてそれらの加重和がしきい値を超えると発火します.
そしてこのニューロンの状態が興奮しているか 興奮していないかの2状態を取るため0,1で表現できます.
そうそれが人工ニューラルネットワークのはじまりはじまり〜
そしてMcCullochさんとPittsさんが形式ニューロン(マカロック・ピッツモデル)を発表しましたー
まあこの辺は制御の話などを交える面白いがそこまでロマンがありません.
入力も0,1でそれに重みをかけた和の出力も0,1という条件でモデル化したものです.(?)計算機つくれるねって話です.視覚情報処理までいくと非常に面白くなってきます.
ある入力に対し,任意の重みをかけてあげて加重和してあげ閾値処理してあげると任意の出力が得られます.
https://gyazo.com/6545ffad698495ea84a6b36b55396f1c
パーセプトロンと学習
はい!ここでパーセプトロンがでてきます!
形式ニューロンでは任意の重みをかけて,任意の出力を得ますが,値の決め方は手動でした.
そこで若き天才!!イケメン!!ローゼンブラット(普通に今でもかっこいい部屋にポスターで飾りたい)は「人間の赤ちゃんも成長して知識を獲得しているのだし人工ニューロンも学習すべきだ!!(甘利先生)」といったらしく人工ニューロンを学習させて重みを決定しました.
そしてこの人工ニューロンを空間的に並列に,時間的に階層的にたくさん並べることで理論的にな知識をなんでも獲得できると大盛りあがりしたそうな(第一次ニューロンブーム).
そうrandomな中間層を大量にもつとどんなものでも線形分離可能なのである
世間巷で言われている「パーセプトロンはXORみたいな非線形な問題が解けないので衰退した」なんてものは 間違いである.しかしMinsky-Papertはこの中間層を大量に持って最終層だけ学習するのは絶対線形分離できるが,学習がものすごく遅くなるため役に立たない!!!と批判しました.この論文やパーセプトロンの限界を世間がしり第一次ニューロンブームは終了しました.
https://gyazo.com/4bc46c0f4d75b75dc866c8bd986685aa 後ろのやつほしい
多層パーセプトロンと誤差逆伝播法
中間層がランダムならなんでもできるけど,学習がすごい時間かかるので,中間層もランダムではなく学習しましょうとなりました.そこで出てきたのが 誤差逆伝播法(Back Propagation)!!!!(1986)という学習方法.
この学習方法は現在でも主流であまり変化はありません.(自然勾配やNeural Tangent Kernelなど出てきているがまだまだ一般的ではない)
誤差逆伝播法については調べればいっぱいでてくるので省きます.
一つしっておいてほしいのは1986年にBPを巨匠Hinttonが発表しましたが1966に日本人の甘利先生が同じような内容で発表しています.(数式の解釈などは少し違う.甘利先生曰くBPは美しいらしい)
ここで現在でも重要な誤差逆伝播法伝搬方が出てきました.第二次ニューロンブームの始まりです.
このへんの話は飽きてきましたので後日,暇だった追記します.
福島邦彦とネオコグニトロンと視覚野
こっからが書きたかったこと
第二次ニューロンブーム(1980年代)のときに形式ニューロンを重ねただけの単純なニューラルネットワークが横行していたところに,哺乳類の視覚野を参考にした画像に特化した人工ニューラルネットワークを師匠である福島邦彦先生が発表しました.(マジ天才)
その名もネオコグニトロンです.(コグニトロンの2号機なのでネオコグニトロン)現在のDeep Learningの主流であるコンボリューションニューラルネットワーク(CNN)の原型です.(CNNはネオコグニトロンの学習を誤差逆伝播法にしただけ,しかもCNNの前に日本の学会ではあるがネオコグニトロンの誤差逆伝播法の適用は発表している)
ではネオコグニトロンやCNNを学習する上で知っておくべき神経回路の知識を書きます.
この辺はぜんぜん調べても出てこないと思うので有用だと思います.
網膜の情報処理
https://gyazo.com/2764e2e526978ad8dbe219910a1f83bb
皆さん中学のときに習ったと思いますが,眼球はこんな感じです.光がいろんなものを通り網膜に映ることで人は映像を見ることできます.
そこで網膜には光を受けることで発火する細胞が二種類存在します.それが錐体細胞 (コーンセル)と桿体細胞(ロッドセル)です.それぞれ役割が違います.
錐体細胞は色に反応し,桿体細胞は白黒に反応します.しかも錐体細胞は下の図のように中心にしかほとんどなく代替が桿体細胞です.
つまり人間は視野の中心しか色を感じていません!!!!!
実際にVRなんかで情報圧縮するときに視線をモーフィングして中心視野しか色を表示せず,周りは白黒で表示しても違和感がないらしいです.おもしろいですね!!!!
https://gyazo.com/92a3dbd5ad1c3ade91df64d08a88a7b4 https://gyazo.com/bf12578f063cc04d48063690d86bb123
また錐体細胞の色特性の話もおもしろいのですが話しているときりがないので省きます.とりあえずRGBに反応する細胞がいることを覚えておいでください.
そして網膜の細胞が一部に集約され,視神経に繋がります.このつながる点には錐体細胞などは存在しないためみんなのよく知る盲点となります.
そしてここまではよく知られていますが,視細胞から視神経に集約されるときに細胞の数に比べ,神経の数が約100分の1にまで減っています.よく世間では網膜は情報処理しておらずただの入力機器だといわれますがそうではないと僕は思います.神経の数を減らしている分なにかしらの情報圧縮を行っており情報処理をしていると思います.
網膜と初期視覚野(後頭部)をつなぐ外側膝状体
https://gyazo.com/83a23f92371d03a969c3912a87a93f2f
大体ここまでは生物の授業などが好きなら知っていると思います.
網膜の視細胞が次に行き着く先,それが外側膝状体!!!こいつもなかなかおもしろいことをしています.下垂体のあたりにあります.こいつが何をしているかというと,昔の人は頭カッピらいてこの辺の細胞に電極を指しながらいろんな画像を見せてどんな反応があるかを調べました.やってみたかった.
そしてそこで見せた反応は網膜でよく発火する特徴があるとき,それと相反する色や特徴を同時に見せたときに最も発火します.これがなにを言いたいかというと網膜で発火していた単純な色や,白黒の反対という概念みたいなものを学習しているということです.錐体細胞はRGBの色に反応しますが,外側膝状体は別の色空間の色の関係で発火します.例えば青と黄色の二色があるものに発火したりします.この青と黄色の関係は反対色といい人間の知覚でもっとも離れている色の関係です.
デザインを少し知っている人はよく反対色つかいますよね.そう外側膝状体でこういうことが起こっているから注意を引く色関係になっているのです!
RGB色空間ではもっとも離れているのは青に対して,赤か緑です.しかし外側膝状体ではそうではなく青と黄色でもっとも発火します.序盤でかなり説明を省いているので疑問がでるかもしれませんが,抑制と興奮というのがあってだな....めんどくさいので省きます.とりあえずこの辺から面白い.
この色関係を色空間にしたのがマンセル表色系でHSVで色空間です.HSV色空間はこの辺から来ています.
なんかうまく説明できんかったわ.他にもいろいろ機能がありますが大体こんなもん.
ちなみにCNNの提示のそうはこの辺の情報ただの誤差逆伝播法で学習しています.とくに学習則にこういった情報を入れ込んでいるわけではないのに,画像についているラベルの誤差をへらす方向に微分してパラメータ更新しているだけなのにこんな情報を学習しています.それらや,あとで話す構造とCNNを関連付けたのは僕の論文です.来年くらいにニューラルネットワークスとかに載ります.
https://gyazo.com/b24b515328a1a6154fa7bd279be27515
CNNの元!!!V1(初期視覚野)
やっとここまできた.ここまで読んでくれている君は偉い.
こっからネオコグニトロンやCNNの話になってきます.
福島先生は初期視覚野の情報処理を元にネオコグニトロンという人工ニューラルネットワークを発表しました.
では初期視覚野にどんな細胞があるのかお話します.初期視覚野には単純型細胞と複雑型細胞の2種類の細胞が存在します.
単純型細胞は入力にとある一つの特徴が入力されたときに発火して,複雑型細胞だと空間方向のブレにも頑強な発火示します.
これらを計算モデルにしたのが畳み込み層とプーリング層です.多分わからんと思いますはい.すみません.
https://gyazo.com/0a6a4f95264fbbdc29668b84919eeaae
さてここでCNNもネオコグニトロンも単純型細胞と複雑型細胞をモデル化して現在のdeep learningが成り立っています.
しかし初期視覚野この二つの細胞だけでなくもっといろいろな構造が見られます.
それは初期視覚野のカラム構造と方位連続です.単純型細胞などは自分の好んだ特徴によく発火し,いろんな特徴に発火する細胞がいっぱいあります.しかしそれらの細胞はバラバラに配置されているわけでなく,似た特徴に発火する細胞は柱状に配置されています.これを初期視覚野のカラム構造と言います.そしてその柱たちは特異点を中心回転するような構造で配置されていることが知られています.はい.その構造とdeep learningを結びつけたのが僕です.
https://gyazo.com/f2f8d656b90d01257b51945147fbefee
もっと面白い話はありますが,文才もなく簡単にも解説できないので終わります.
終わりに
V2の情報処理やV4などの図地処理の話や錯覚の話などおもしろいのですがめんどくさいので省きます.聞きたかったら聞きに来てください.
ここまでで現在のAIの技術であるDeep Learningに必要な神経回路の知識を述べてきました.
今日書いたのは初歩の初歩ですが,神経回路っておもろいので興味があったら一緒に勉強しましょう.
まだ強化学習や,運動制御の話があるのでそのへんも紹介できればなと思います.
それではわかりにくい文章ですみませんでした.
参考文献
福島邦彦, 「神経回路と情報処理」, 朝倉書店 , 1989
田中宏和, 「計算論的神経科学」, 森北出版, 2019