10.8K Views
May 10, 22
スライド概要
大学院で使っているニューラルネットワークについての資料です.パーセプトロンまで書かれています.
ニューラルネットワークの 歴史と手法1 パーセプトロンまで 公立小松大学 藤田 一寿 Ver. 20240901 かなりマニアックな部分があります. 必ず元論文をチェックしましょう!!
神経科学 人工ニューラルネットワーク ネットワーク化 神経細胞(ニューロン) 脳 解剖学的知見に基 づき精密に脳をモ デル化した実用的 な人工ニューラル ネットワークはあ るだろうか.機能 をモデル化したも のはたくさんある だろう. 人工ニューラル ネットワーク 数理モデル化 𝑓(𝒘𝑇 ⋅ 𝒙) 人工ニューロン ネットワーク化 人工ニューラル ネットワーク 人工ニューロンを組み合わせ(ネットワーク化し),様々な機能を実現したものを人工ニューラルネットワークと呼ぶ. かつては,人工ニューロンは神経細胞を数理モデル化したもので,ネットワークの構造も脳を意識しており,人工ニューラルネッ トワークは神経科学のと言えた.しかし,現在の人工ニューラルネットワークは神経細胞や脳の数理モデルから乖離しており,表 面上は脳と関係ない.表面上関係ないが,学習機械として共通する理論や性質があるのかもしれない.
よく言われるニューラルネットワークの歴史 • 1943年McCullochとPittsによりニューロンモデルが提案される. • 1957年Rosenblattがパーセプトロン(ニューラルネットワーク)を発表する. • 1969年MinskyとPapertがパーセプトロンが線形分離不可能な問題が解けないことを示し,ニューラ ルネットワークの研究が下火になる. • 1986年Backpropagationによりパーセプトロンの多層化が容易にできるようになり,線形分離不可能 な問題を解けるようになる. • 性能の頭打ち,サポートベクターマシンなどの他の手法の発展によりニューラルネットワークの研究 が下火になる. • 2012年深層ニューラルネットワークが画像識別のコンペで優勝し深層ニューラルネットワークが注 目される. ニューラルネッ トワークブーム 1950 1960 1957,1958 パーセプトロン 1943 McCulloch-Pitts model ニューラルネット ワークブーム 冬の時代 1970 1969 Minsky and Papert Perceptrons 1973 SOM 1980 1990 2000 1986 1989 LeNet Backpropagation 1980 Neocognitron 1983 Kohonen’s SOM ニューラルネット ワークブーム(深 層学習ブーム) 冬の時代 1995 Support vector machine 2010 2020 2012 AlexNet
神経科学の萌芽
ゴルジ染色(黒い反応) 1873年 • ゴルジが発明した神経細胞の染色方法 • この染色法により脳の内部構造の理解が深まった. 海馬のスケッチ(Golgi, 1886) 元の文献をチェックしていない.
ニューロン 1891年,シナプス 1897 • Waldeyere-Heartzが独立した神経単位をニューロン,ニューロンとニューロ ンのつなぎ目をシナプスと命名した.
Neuron doctrine(ニューロン説)(1880s,1890s年) • Cajal(カハール)らが提唱した脳の構造の考え方. • 脳は独立したニューロン(神経細胞)からなる. Cajalによる海馬のスケッチ Cajal • シナプス間隙が電子顕微鏡により確認され,Neuron doctrineが正しいことが分かっ た (Birks et al., 1960). • 一方ゴルジはReticular theory(網状説)を提唱した. • 脳全体が合胞体(syncytium)であり、共通の細胞質を持つ連続した組織の塊である (Gazzaniga MS et al., 2013). • 前述シナプス間隙があったため,Reticular theorは間違いであったことが分かった. • しかし,電気シナプスはギャップジャンクションで細胞膜がつながっているので Reticular theoryも正しいと言えるのでは? • つまり,生物は単純ではないようです. 元の文献をチェックしていない.
Receptive field(受容野)(1906年) • 一つのニューロンが受け持つ空間範囲のこと. • この考え方は畳み込みニューラルネットワークニューラルネットワークの畳み 込みに対応する. • 脳の視覚処理のRetinotopic mapに対応. • 畳み込みニューラルネットワークにも第1次視覚野に見られるガボールフィルタ様の 受容野が現れる. 例 体性感覚野では,体表面の特定の場所に対応し たニューロンがある(Somatotopic map). ニューロンの位置は体の場所と対応している. (内川恵二編,聴覚・触覚・前庭感覚) Penfield and Rasmussen, 1950の文献の図の改変 初期の受容野の論文Sherrington, C S (1906); Hartline (1938) 元の文献を詳しくチェックしていない
All or none law (全か無かの法則) (1914年) • 全か無かの法則 • ニューロンは閾値未満の刺激では活動電位を発生させず,閾値を超えた刺激は,そ の全てが同じ振幅の活動電位を発生させる(カンデル神経科学). • 単純化すると,ニューロンは入力が閾値を超えると1を出力し,そうでなければ0を出力する. 入力 出力 活動電位の最大値 入力の閾値 t0 入力が閾値を超えたら1を出力をするという現象はステップ関数で表現できる. 活性化関数でよく用いられるシグモイド関数は,その値を確率として捉えると入力が小さ いと発火率が低く,入力が大きいと発火率が高いことを表していると言える(発火とはニ ューロンが活動電位を発すること).ここでの発火率はニューロン単体のものとも解釈で きるが,ニューロン集団のものだとも解釈することもできる. それではReLUはどのように解釈すればよいのだろうか? t0 time 入力が閾値をこえるとニューロンは活動電位を発する. 活動電位の大きさは一定である. この図は単純化のため活動電位(膜電位)を線で表現し ているが,実際の膜電位変化は幅を持っている. 実際のニューロンのダイナミクスはAll or non lawで表現できるほど単純ではない. Adrian E. D. (1914). The all-or-none principle in nerve. The Journal of physiology, 47(6), 460–474. 元の文献を詳しくチェックしていない.
まとめ • 脳は神経細胞(ニューロン)からなることが分かった. • 脳の構造が分かり始めた. • ニューロンの応答の規則が分かり始めた.
神経科学の理論的研究の始ま り
線形閾値素子
神経細胞の信号伝達 シナプス前活動電位 シナプス後電位が誘発され続 けると,いずれ閾値を超え, 活動電位を発する. シナプス前 ニューロン 膜電位 閾値ℎ 𝑉 𝑡 シナプス後 ニューロン シナプス 前活動電 位 興奮性シ ナプス後 電位 活動電位により,次のニ ューロンに信号が伝わる . 𝑉 シナプスに活動電位が到達すると,シナプ ス前部から神経伝達物質は放出され ,シナプ ス後部でそれを受け取り,シナプス後電位 (postsynaptic potential: PSP)が発生する. 発生するシナプス後電位の大きさはシナプ Figure 10-7 Synaptic transmission at chemical synapses involves several steps. An action potential arriving at the terminal of a presynaptic axon causes スの強度(重み,荷重)に依存する. voltage-gated Ca channels at the active zone to open. The influx of Ca produces a high concentration of Ca near the active zone, which in turn causes vesicles 2+ 2+ 2+ (Kandel, Principals of Neuroscience) containing neurotransmitter to fuse with the presynaptic cell membrane and release their contents into the synaptic cleft (a pro cess termed exocytosis). The released neurotransmitter molecules then diffuse across the synaptic cleft and bind to specific receptors on the post-synaptic membrane. These receptors cause ion channels to open (or close), thereby changing the membrane conductance and membrane potential of the postsynaptic cell. The complex process of chemical synaptic transmission is responsible for the delay between action potentials in the pre- and post-synaptic cells compared with the virtually instantan eous transmission of signals at electrical 𝑡 ニューロン
神経細胞の数理モデル化 シナプス前ニューロン1 シナプス前ニューロン1が発火するとスパイクがニューロンに向かう. この場合,ニューロン1の出力𝑥1 を1とする.逆に発火していなければ 𝑥1 = 0となる. 発火したら 𝑥1 = 1 そうでなければ 𝑥1 = 0 ニューロンは閾値ℎを持つ. シナプス前ニューロン2 𝑥2 𝑤1 ℎ 𝑧が閾値を超えたら活動電位を発するので1を出力する. そうでなければ0を出力する.これはステップ関数 𝑓 𝑎 − ℎ で表せる. 出力 𝑥3 シナプス前ニューロン3 ニューロンには入力𝑥1 が直接入力されない.シナプス 𝑤1 を介してニューロンに入る.シナプスは入力に対 し積の形で作用する.結果として,ニューロンはシナ プス前ニューロン1から 𝑤1 𝑥1 の入力を受ける(シナプス後電位が発生する). ニューロン 𝑧 𝑦 𝑓(⋅) ニューロンは複数の神経細胞から入力を受ける. 入力の総和𝑎は, 𝑎 = 𝑤𝑖 𝑥𝑖 𝑖 と書ける.𝑎を前活性(pre-activation)という.
線形閾値素子(Linear threshold unit) • 線形閾値素子は図に示すニューロンの数 理モデルである. 閾値 入力 𝑥1 出力 • 入力𝑥𝑖 がニューロンに伝わる強さ 𝑤𝑖 を重 𝑥2 み,結合荷重,シナプス荷重などと言う. • 入力𝑥𝑖 と重み𝑤𝑖 をかけたものの総和が閾 値ℎを超えたら,ニューロンは1を出力す る. • PSP (Post-synaptic potential)の蓄積の結果, 膜電位が閾値を超えるとスパイクが発生する現 象をモデル化したとも言える(右下図). ℎ 𝑤1 𝑤𝑖 𝑥𝑖 𝑤2 𝑥3 𝑖 𝑤3 EPSP(興奮性PSP)により脱分極した 膜電位が閾値を超えると発火する. シナプス前ニューロンからスパイクが到 達するとEPSPが発生する. (Gerstner and Kistler, Spiking neuron models) 𝑦 閾値を超えたら1を出力 そうでなければ0を出力 結合荷重 • この閾値処理はAll or None law (全か無かの法 則)に基づく. 現代人の立場からMcCulloch-Pittsのニューロンモデルを書き直したものと言え るだろう.このスライドの記述は生物よりに書いている. 𝑓(⋅)
線形閾値素子(Linear threshold unit) • 入力を 𝑥𝑖 ,重みを 𝑤𝑖 ,ℎを閾値とすると前活性𝑎とニューロンの出力(活性)𝑦 は次のように書ける. • 𝑎 = σ𝑖 𝑤𝑖 𝑥𝑖 • 𝑦 =𝑓 𝑎−ℎ • 𝑓(⋅)は活性化関数である.活性化関数にステップ関数を使用した場合, 𝑓(𝑎)は次 のように書ける. 閾値 入力 1 • 𝑓 𝑎 =ቊ 0 𝑥1 if 𝑎 > 0 otherwise 𝑥2 活性化関数 𝑥3 0 𝑎 𝑤𝑖 𝑥𝑖 𝑤2 𝑓(𝑎) ℎ 𝑤1 𝑓(⋅) 出力 𝑦 𝑖 𝑤3 重み 閾値を超えたら1を出力 そうでなければ0を出力
AND演算を実現する • AND演算を実現するために図のような2入力1出力のネットワークを考える. • 𝑤1 = 𝑤2 = 1, ℎ = 1.5とすると,入力と出力の関係は次のように書ける. • 𝑦 = 𝑓(𝑥1 + 𝑥2 − 1.5) • この式はAND演算を実現している. • 重みや閾値を人間の決め打ちではなく自動で決めたい!! 𝑥1 0 0 1 1 AND演算 𝑥2 𝑦 0 0 1 0 0 0 1 1 ネットワーク 入力 𝑥1 𝑤1 𝑦 𝑥2 𝑤2 ネットワークの各数値 𝑥1 𝑥2 𝑥1 + 𝑥2 − 1.5 𝑦 0 0 −1.5 0 0 1 −0.5 0 1 0 −0.5 0 1 1 0.5 1
McCullochとPittsのニューラ ルネットワークモデル
McCulloch-Pitts neuron neural network model (1943年) • McCullochとPittsは1946年の論文でニューラルネットワークで様々な論理演算ができるといってい る. • 閾値論理素子の提案 • 神経細胞は論理計算を行える. • McCulloch-Pittsのneuron model • ニューラルネットワークの提案 • 様々な論理演算をするネットワークを構築することができる. • McCullochとPittsの論文に記載されている前提条件 • ニューロンの活動は全か無かの法則に従う. • ニューロンを興奮させるためには、ある期間内に一定の数のシナプスが興奮していなければならない.この数は 以前の活動やニューロン上の位置に依存しない. • 神経系の中で唯一の重要な遅延はシナプスの遅延である. • 抑制性シナプスの活動は,その時点でのニューロンの興奮を絶対に阻止する. • ネットワークの構造は時間とともに変化しない. (McCulloch and Pitts 1943) 分かりにくい論文
前提条件に対する私見 • McCullochとPittsの論文に記載されている前提条件 • ニューロンの活動は全か無かの法則に従う. • この考え方に基づいて活性化関数にステップ関数やシグモイド関数が採用されている. • ニューロンを興奮させるためには、ある期間内に一定の数のシナプスが興奮していなければなら ない.この数は以前の活動やニューロン上の位置に依存しない. • 現在のニューラルネットワークでも,ニューロンの応答の履歴はそのニューロンの応答に影響を与えない (フィードバックとして間接的に影響を受ける場合はあるだろうが). • 現在のニューラルネットワークでも,シナプスの位置を考慮しない • 神経系の中で唯一の重要な遅延はシナプスの遅延である. • シナプスの遅延は現在のニューラルネットワークでは考慮されていないが,リカレント構造で遅延を実現し ている. • しかし,ここで言う遅延は各ニューロン(各層)の処理を逐次的に行うといった意味にもとれる.現在の ニューラルネットワークもその考え方で動いている. • 抑制性シナプスの活動は,その時点でのニューロンの興奮を絶対に阻止する. • 現在のニューラルネットワークでは興奮性と抑制性のシナプスの区別をつけていない. • ネットの構造は時間とともに変化しない. • これも現在のニューラルネットワークにつながる考え方だろう. • 学習のときは変化するが,実際に利用するときはシナプス荷重を変化させない.
McCulloch-Pitts neural network model McCullochとPittsによる様々なネットワーク. これらはすべて対応する論理計算が存在する. Kleene によるニューラルネットワークによる論理計 算の例. 黒丸は興奮,白丸は抑制性結合を表す. P三角の中の数字は閾値を表す. つまり,J, K, Lが発火し,M, Nが発火しなければPは 発火するネットワークである. これを論理式になおすと ഥ ⋅𝑁 ഥ 𝑃 =𝐽⋅𝐾⋅𝐿⋅𝑀 となる. (Kleene, 1951) (McCulloch and Pitts, 1943)
McCulloch-Pitts neural network model • McCullochとPittsの研究から,神経細胞が論理素 子であると考えれば,論理素子で実現できるあら ゆる計算を脳が行うことができると考えることも できる. • ニューラルネットワークでNAND回路も実装可能な ので,ニューラルネットワークであらゆる論理回路 が当然実現可能だろう. • この研究の段階ですでに,時間遅れ,フィードバ ック接続など考えられている.この考えは後のリ カレントネットワークで開花する. (McCulloch and Pitts, 1943)
Hebbian learning(ヘブ学習)(1949年) • Hebbが提案した脳の学習の理論 • シナプス前ニューロンが繰り返し発火し,シナプス後ニューロンの発火を助け たとき,そのシナプスは成長する. ニューロンの応答 ニューロンの応答 time time 学習によりシナプスが成長する. ニューロンの応答 time Hebbの本では,当時おばあさん細胞説とpopulation codingが議論されていて,population codingが 主流であると述べている.Hebbはおばあさん細胞説に基づき議論している.なかなか面白い. ニューロンの応答 time (Hebb, 1949)
線形閾値素子を用い自動で目的の演算を実現するには • ニューロン(線形閾値素子)を組み合わせる(ネットワーク化)することで,様 々な計算が出来るかもしれないことが分かった. • 線形閾値素子の接続の重みを変えることで,線形閾値素子の演算能力が変わる. • つまり,ネットワークにさせたい演算に合わせて重みの変更(シナプスの学習) を行えば良い. • しかし,どのように学習すればネットワークに意図した演算をさせることができ るだろうか?
ニューラルネットワーク研究 の隆盛と冬の時代
よく見るパーセプトロンの説 明
分類問題 • データをクラスに分ける問題 学習 判断 未知のデータ 2 2 2 1 2 1 2 1 2 2 2 1 2 2 2 1 ラベル付きデータ(答え がついているデータ)を 用意する. 三角データにクラス1,丸データにクラス2と いうラベルが付いている. 1 2 1 1 2 1 ラベルがついているデ ータを分けるための線 (決定境界)を見つけ る. 学習により習得した決 定境界を使い,未知の データを分ける. 用意された三角データと丸データをそれぞれ1と2のラベル を付けられる線を見つける.データの場所が線の左ならクラ ス1,右ならクラス2に分類される. 未知のデータを入力し,クラス分けする(ラベルを 付ける).ネットワークは未知のデータが線より左 なら1,右なら2のラベルを付ける.
AND演算と分類 • AND演算は2つの入力から1つの出力を得ている. • 2つ入力する数値があることは,入力は2つの数値を持った何か,すなわち2次元の ベクトルであると言える • また,出力は2次元ベクトルについたラベルであると考えられる. • つまり,AND演算は入力をラベル0とラベル1に分ける問題だと言える. • ニューラルネットワークはAND演算が解ける. • ニューラルネットワークはデータを分ける線を引いてAND演算を解いている. AND演算 𝑥1 0 0 1 1 𝑥2 0 1 0 1 𝑦 0 0 0 1 𝑥1と𝑥2の2つの値が入力 𝑦は出力 (0, 1) 0 1 (1, 1) (0, 0) 0 0 (1, 0) 機械学習では入力ベクトルに 0か1かのラベルを付ける. ラベルをつけるために,デー タを分ける線を学習により求 める必要がある. データとなる数値が𝒙 = (𝑥1, 𝑥2)のベクトル 𝑦はラベル
パーセプトロンの簡単な紹介 • パーセプトロンは心理学者Rosenblattが開発した学習が可能なニューラルネッ トワーク(1957, 1958)である. • パーセプトロンは2層のニューラルネットワークで,それらの重みは教師あり 学習により最適化する(答えと出力を比べ,それの結果を用い重みを学習す る) . • 分類問題がとける(データを分ける線を見つけられる).
パーセプトロンの簡単な説明 • 2クラス問題が解ける(ラベルが2種類のみ) . • 入力層と出力層からなるニューラルネットワークである. • 入力層は入力の値そのものを出力層のニューロンに送る. • 出力層は閾値素子である. 出力層 入力層 x0 w0 w1 y 出力 x1 wi xi 入力ベクトル 𝒙 = 𝑥0 , 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑁 𝑇 重みベクトル 𝒘 = 𝑤0 , 𝑤1 , … , 𝑤𝑖 , … , 𝑤𝑁 𝑇
パーセプトロンの数式表現 • 入力ベクトルを𝒙 = 𝑥0 , 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑁 𝑇 とする. パーセプトロンは,入力ベクトルと重みベクトルの内積 (wTx = w x cos θ)が正か負かを基準に,入力ベクト ルを分ける.言い換えれば,入力ベクトルと重みベクト ルがおおよそ同じ方向を向いている(入力ベクトルが重 みベクトルに対し,±90度)かどうか調べている. • ただし𝑥0 = 1である.𝑤0 𝑥0 をバイアスという. • 重みベクトルを𝒘 = 𝑤0 , 𝑤1, … , 𝑤𝑖 , … , 𝑤𝑁 𝑇 とする. 一般化線形モデル 𝑤と𝑥の掛け算の和を非線形活性化関数で変換しているモ デル. • 次の一般化線形モデルを構成する. • 𝑦 = 𝑓 σ𝑁 𝑖=0 𝑤𝑖 𝑥𝑖 入力層 出力層 = 𝑓(𝒘𝑇 ⋅ 𝒙) • ここで非線形活性関数𝑓(⋅)を 𝑥0 𝑤0 𝑤1 1 if 𝑢 ≥ 0 • 𝑓 𝑢 =ቊ −1 otherwise • とする.これをステップ関数と呼ぶ. 𝑦 出力 𝑥1 𝑤𝑖 𝑥𝑖 入力ベクトル 𝒙 = 𝑥0 , 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑁 𝑇 重みベクトル 𝒘 = 𝑤0 , 𝑥1 , … , 𝑤𝑖 , … , 𝑤𝑁 𝑇
パーセプトロンの学習 • パーセプトロンでは,学習により出力と𝑡を一致させることが目的となる. • データ点𝒙𝑛 に対し,ラベル𝑡𝑛 が付属するとする.𝑡𝑛 ∈ {−1,1}である. • 例えば,データ点がクラス𝐶1 に所属するとき𝑡𝑛 = 1,クラス𝐶2 に所属するとき𝑡𝑛 = − 1とする. • あるデータ点𝒙𝑛 を入力したとき,出力がラベルと一致しなければ次の式で重 みを更新する. 入力層 出力層 • 𝒘 ← 𝒘 + 𝜆𝒙𝑛 𝑡𝑛 𝑥0 • 𝜆は学習率である. 更新式は次のように次のような意味を持つ.𝑡𝑛 = 1のときは,𝒘を 𝒙𝑛 に少し向 ける. 𝑡𝑛 = −1のときは,𝒘を少し𝒙𝑛 の反対に向ける. また,𝜆は小さな数値である.𝜆があるため1回の学習で 𝒘が大きく変化しない. 𝜆の値が大き場合,𝒘が更新のたび大きく変わってしまう.これは,1回の学習 ごとに入力に対し過剰に適応してしまうことを意味するだろう.つまり, 最適 な𝒘 がいつまでも求まらない可能性が高くなる.また,最適な𝒘が求まってい たとしても,次の学習で最適な𝒘から大きくずれる可能性が高くなる. 𝑤0 𝑦 𝑤1 出力 𝑥1 𝑤𝑖 𝑥𝑖 重みベクトル 𝒘 = 𝑤0 , 𝑥1 , … , 𝑤𝑖 , … , 𝑤𝑁 𝑇 入力ベクトル𝒙 = 𝑥0 , 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑁 𝑇
重み修正の様子 1. 出力を1でなければならないところ を−1になってしまったため,𝒘に 𝜆𝒙を足した. 2. 決定境界が更新された. 3. 出力を1でなければならないところ を−1になってしまったため,𝒘に 𝜆𝒙を足した. 4. 決定境界が更新された.その結果, 赤丸と青丸が境界で正しく区分け された. 1 2 3 4
パーセプトロン規準と更新式 • パーセプトロンでは正しく分類された場合誤差を0とし,誤分類された入力𝒙𝑛 に対 しては−𝒘𝑇 𝒙𝑛 𝑡𝑛 の最小化を試みる. • つまり,誤差の総和は • 𝐸𝑃 𝒘 = − σ𝑛∈𝑀 𝒘T𝒙𝑛 𝑡𝑛 • これをパーセプトロン規準という.𝑀は誤分類された入力の集合を表す. • これの𝒘についての微分をとると • ∇𝐸𝑃 𝒘 = − σ𝑛∈𝑀 𝒙𝑛 𝑡𝑛 • 勾配法を用いてパーセプトロン規準を最小にする𝒘を求める.各ステップでデータ 点が一つしか手に入らないため ∇𝐸𝑝 𝒘 = −𝒙𝑛 𝑡𝑛 となる.よって • 𝒘𝑛𝑒𝑤 = 𝒘 − 𝜆∇𝐸𝑃 𝒘 = 𝒘 + 𝜆𝒙𝑛 𝑡𝑛 • となり,先の更新式が得られる.
パーセプトロンの学習例 • 入力層は3つのユニット,出力層は1つのユニットで構成されるネットワーク を考える. • このネットワークでAND演算を実現してみよう. ネットワークに覚えさせる入 出力の関係(AND演算) x0 x1 x2 t 1 0 0 -1 1 0 1 -1 1 1 0 -1 1 1 1 1 ここではTrueを1,Falseを-1としている. 出力層 入力層 x0 w0 y x1 w1 wi xi 出力
パーセプトロンの学習例 • 初期値:𝑤0 = 0, 𝑤1 = 1, 𝑤2 = 1, 𝜆 = 0.5とする. • このとき,出力は𝑦 = 𝑓(𝑥1 + 𝑥2 )と書ける. • ネットワークにそれぞれの入力を代入してみる. • 𝑥0 = 1, 𝑥1 = 0, 𝑥2 = 0を入力すると,𝑦 = 1となり不正解 • 𝒘 + 𝜆𝒙𝑡 = 0,1,1 + 0.5 × 1,0,0 × −1 = (−0.5, 1, 1) • この学習により,出力は次のようになる. • 𝑦 = 𝑓(−0.5𝑥0 + 𝑥1 + 𝑥2 )
パーセプトロンの学習例 • 𝑦 = 𝑓(−0.5𝑥0 + 𝑥1 + 𝑥2 ) • 𝑥0 = 1, 𝑥1 = 0, 𝑥2 = 1を入力すると,𝑦 = 1となり不正解なので学習する. • 𝒘 + 𝜆𝒙𝑡 = −0.5,1,1 + 0.5 × 1,0,1 × −1 = (−1, 1, 0.5) • この学習により,出力は次のようになる. • 𝑦 = 𝑓(−𝑥0 + 𝑥1 + 0.5𝑥2 )
パーセプトロンの学習例 • 𝑦 = 𝑓(−𝑥0 + 𝑥1 + 0.5𝑥2 ) • 𝑥0 = 1, 𝑥1 = 1, 𝑥2 = 0を入力すると,𝑦 = 1となり不正解なので学習する. • 𝒘 + 𝜆𝒙𝑡 = −1,1,0.5 + 0.5 × 1,1,0 × −1 = (−1.5, 0.5, 0.5) • この学習により,出力は次のようになる. • 𝑦 = 𝑓(−1.5𝑥0 + 0.5𝑥1 + 0.5𝑥2)
パーセプトロンの学習例 • 𝑦 = 𝑓(−1.5𝑥0 + 0.5𝑥1 + 0.5𝑥2) • 𝑥0 = 1, 𝑥1 = 1, 𝑥2 = 1を入力すると,𝑦 = −1となり不正解なので学習する. • 𝒘 + 𝜆𝒙𝑡 = −1.5,0.5,0.5 + 0.5 × 1,1,1 × 1 = (−1, 1, 1) • この学習により,出力は次のようになる. • 𝑦 = 𝑓(−𝑥0 + 𝑥1 + 𝑥2)
パーセプトロンの学習例 • 𝑦 = 𝑓(−𝑥0 + 𝑥1 + 𝑥2) • 𝑥0 = 1, 𝑥1 = 0, 𝑥2 = 0を入力すると,𝑦 = −1となり正解 • 𝑥0 = 1, 𝑥1 = 0, 𝑥2 = 1を入力すると,𝑦 = 1となり不正解なので学習する. • 𝒘 + 𝜆𝒙𝑡 = −1,1,1 + 0.5 × 1,0,1 × −1 = (−1.5, 1, 0.5) • この学習により,出力は次のようになる. • 𝑦 = 𝑓(−1.5𝑥0 + 𝑥1 + 0.5𝑥2)
パーセプトロンの学習例 • 𝑦 = 𝑓(−1.5𝑥0 + 𝑥1 + 0.5𝑥2) • 𝑥0 = 1, 𝑥1 = 1, 𝑥2 = 0を入力すると,𝑦 = −1となり正解 • 𝑥0 = 1, 𝑥1 = 1, 𝑥2 = 1を入力すると,𝑦 = 1となり正解 • 𝑥0 = 1, 𝑥1 = 0, 𝑥2 = 0を入力すると,𝑦 = −1となり正解 • 𝑥0 = 1, 𝑥1 = 0, 𝑥2 = 1を入力すると,𝑦 = −1となり正解 • よって,すべての入力に対し正解したので学習を終了する. 出力層 入力層 x0 AND演算ができ るニューラルネッ トワーク x1 xi 𝑤0 = −1.5 𝑤1 = 1 y 𝑤2 = 0.5 出力
よく言われるパーセプトロンの欠点 • 線形分離不可能な問題(直線で分けられない問題)は解けない. • 例:XOR演算が解けない • これは2層のパーセプトロンの問題である. • 活性化関数(Activation function)の連続関数化とBackpropagationによりパーセプトロン の多層化が可能となり解消したと言われる. • MinskyとPapertによる指摘によりニューラルネットワークブームが終わった と言われることが多い. XOR演算 AND演算 (0, 1) 0 1 (1, 1) (0, 1) 1 0 (1, 1) (0, 0) 0 0 (1, 0) (0, 0) 0 1 (1, 0) ANDの場合,直線で分けられる(線形分離可能). 入力を座標,出力を白黒(それぞれ0,1に対応)で 表現している. XORの場合,直線で分けられない(線形分離不可能). MinskyとPapertのPerceptronsでは,パーセプトロンはx=yを判別す ることができないことを示している.
Rosenblattのパーセプトロン
Rosenblatt (1958) のパーセプトロン • 4層もしくは3層構造である. • ランダム接続を持つ. • 受容野構造を持つ. • 層内,層間の抑制性結合を持つ. • フィードバック接続を持つ. • 脳のモデルでもあり,並列計算機でもある. • フィードフォワード学習である(Rosenblatt, 1962). • 誤差のバックプロパゲーションも考えている(Rosenblatt, 1962). • これらを見ると,かなり先進的なモデルであったことが伺える.
パーセプトロンのネットワーク構造 • Rossenblatt, 1958で提案されたパーセプトロンは4層で構成される. • 閾値素子で構成される(all-or-nothing rule). • Retina (S-points)の出力はAIに送られる.興奮性と抑制性の接続を想定している.AIはRetinaに受容野を持ち,重み はある点を中心に指数関数的に減衰する.AIは省略される事がある. • AIとAIIはランダムに接続している. • AIIとRはランダムに接続している.接続は相互接続(フィードフォワードとフィードバック)である.
Rossenblattのsimple perceptron (1958) • Rossenblattは3層のパーセプトロンも提案している. • RossenblattもMinskyとPapertも基本的に3層のパーセプトロンについて議論 している. モデル図.点線は抑制性接続. Rossenblatt曰くベン図.白丸は抑制性接続.色付きの領域はR1が応答 したときに活性化するunitsのセット. A-unitはそれぞれランダムにretinaに接続している. ランダム接続は,輪郭線というより同期領域を捉える(Rossenblattは時間変化も考慮している). 抑制性接続により,R1が応答した場合,R2に関連するunitsのセットの応答は抑えられる. 学習するためには,A-unitか接続を変更する必要がある.
Rossenblattのパーセプトロンではランダム接続がある. • RetinaとA-unitsはランダムに接続している. • ランダム接続には含蓄がある.
ランダム接続の含蓄(役割) • 2層のパーセプトロンは線形分離可能な問題しか解けない. このスライドでは入力層も1層と して考え,パーセプトロンを2層 としている. • 線形分離不可能な問題を解くにはどうすればよいか? • 入力をどうにか変形して線形分離可能にする. • ランダム接続で入力を変換し,偶然線形分離可能な形になることを期待する. S-units A-units x0 ランダム接続で変換 R-units 出力 x1 y xi ランダム接続で変換 入力 線形分離不可能 A-unitsの出力 線形分離可能になるかも あくまでも概念図 です.
ランダム接続の含蓄(受容野) • 入力の特徴を捉える特別な接続(受容野)を考えることもできる. • 特別な接続を作るのは難しい.一方で,ランダム接続を作るのは簡単である( Minsky and Papert, 1968). • 畳み込みニューラルネットワークは,学習により局所特徴を捉える特別な接続を作 ることができる. 極端な例を考えると,S-unitsとA-unitsの接 続を文字の形にしてしまえば,A-unitsは文字 それぞれの文字に対応して応答する.Xの形 の接続を持つA-unitはXのみに応答する.しか し,そのような接続では,文字の大きさが変 わると対応できない. MinskyとPapertはS-unitsとA-unitsの接続 について色々考察している. 受容野 (Minsky and Papert, 1968)
ランダム接続の含蓄(深い多層パーセプトロン) • 通常,層間の接続はランダムな値で初期化される. • ランダムなネットワークは,入力を何らかのパターンに変換する. • 深いネットワークでは,入力層に近いランダムなネットワークが入力を変換し,そのランダムネット ワークの出力パターンを出力層に近いネットワークが学習するという現象が起こる. • ランダムネットワークの出力パターンを用いればデータを識別できてしまうため,入力に近い層は学 習する必要がない. • つまり,深い多層パーセプトロンではランダムネットワークと識別ネットワークの2重構造になる. • この構造は,Rosenblattのパーセプトロンと同じである. • 以上のような現象が起こるため,無闇にネットワークを深くしてもランダムネットワークが大きくな るだけで意味がないかもしれない. ランダムな値に初期化 入力 ランダムな値のまま 出力 入力 学習が進む 出力 学習 出力層に近いネットワークがランダムネットワークで変換されたパターンを覚える.
ランダム接続の含蓄(結局運次第か) • パーセプトロンの識別能力はランダム接続で入力の特徴を捉えられるかどうか で決まる.つまり,運次第ということである. • ニューラルネットワークの能力は運次第であるという考え方は,深層ニューラ ルネットワークにも当てはまるかもしれない. • 深層ニューラルネットワークでは,当たりのランダムな接続が存在し,当たりの接 続を探しそれを学習すれば高性能になるという,宝くじ仮説というものもある (Frankle and Carbin, 2019).(この説明は不正確なため元論文をチェックしよう)
ランダム接続の含蓄(Liquid state machine) • ランダム接続を持つニューラルネットワークは現在でも研究されている. • Rosenblattのパーセプトロンは層間をランダムに接続した. • 現在よく研究されているランダム接続を持つニューラルネットワークは,層内の接続が ランダムであるニューラルネットワークである. • Liquid state machine (Maass, 2002), Echo state network (Jaeger, 2001; 2002),リザーバーコ ンピューティング • Rosenblattはパーセプトロンで時系列を学習させることに限界を感じていたようだ( Rosenblatt, 1958).しかし,Liquid state machineなどでは層内接続をランダムにし接 続間の信号伝達に時間遅れを入れることで,時系列の特徴を捉えることを可能にしてい る. • Rosenblattは惜しい所まで来ていた. liquid or reserver 入力 出力
フィードバック接続 • A層とR層にフィードバック接続がある. • これは,現在のリカレントニューラルネットワーク(RNN)に繋がる. • RNNは時系列を学習できるニューラルネットワークである. • RNNは信号処理や自然言語処理などで活用できる. • Rosenblattはパーセプトロンで時系列を学習させることの限界をRosenblatt, 1958の まとめで述べている. • Rosenblattのパーセプトロンが連続時間であることが処理を難しくしているのだろ うか?
パーセプトロンの学習 • RosenblattのNeurodynamicsに書かれている学習 • Hebbian learningを採用している. • α-system reinforcementの例 • ユニットiが活性化したとき,それと接続するユニットjとの間の重みは次の式で更新される. • Δ𝑤𝑖𝑗 = 𝜂 𝑤𝑖𝑗 i j • MinskyとPepertのPerceptronsに書かれている学習の1例 • 今Percetronの学習として伝わっている,学習手法が書かれている.
パーセプトロンは脳型ニューラルネットワークである. • Rossenblattも脳の生理学的,解剖学的知見に基づきパーセプトロンを作成,考 察している. • 連続時間を考慮したモデル. • そもそものニューラルネットワークは脳のニューラルネットワークのモデルで あった. • 時代が進むにつれニューラルネットワークが人工ニューラルネットワークになった.
パーセプトロンは並列計算をするコンピュータである • パーセプトロンは並列計算をするコンピュータも目指している. • コンピュータの歴史 • 1946年 ENIAC • 1951年 UNIVAC 1 汎用コンピュータ • 1952年 IBM701 商用科学技術計算機 Mark 1 perceptron • 1954年 IBM704 • Rosenblattはまず,これを使ってパーセプトロンを動かす. • 後にパーセプトロンをハード的に実装したMark 1 perceptronを作る. • ランダム接続を前提としているから正確な配線が必要なかった. • 重みはボリューム(potentiometer)で実装され,その重みはモーターで自動的に変えられる. • 1956年 FORTRAN プログラミング言語 • 1961年 IBM7030 • 1964年 System/360 メインフレーム おまけ コンピュータの計算力が低い時代,シミュレーションはコンピュー タを使うのではなく電気回路でやっていた(数理モデルを等価回路 に置き換え,実際にその電気回路を組み,その回路に電流を流すこ とで数理モデルを解く).
Rosenblattのc-system • Rosenblattの開発したc-systemは畳み込みニューラルネットワークの元祖と 呼べるかもしれない. (Rosenblatt, 1967)
よく言われるニューラルネットワークの冬の時代 • パーセプトロンの当時,ニューラルネットワークがブームになったと言われている. • しかし,MinskyとPaperのPerceptronsという書籍で,パーセプトロンの限界が示さ れた(パーセプトロンは線形分離不可能な問題が解けない)ため,ニューラルネット ワークの研究が下火になり,冬の時代が訪れたと言われている. • 本当にそうなのだろうか? • 彼らは多層のパーセプトロンに対しても制限があると間違った推測した.そのため,ニュー ラルネットワークへの熱意が下がり,1970 年代から1980 年代初頭にかけてニューラル ネッ トワークに対する関心と資金が不足する原因となった(Bishop and Bishop, 2023). • そのわりにはIvakhnenkoの多層ニューラルネットワーク(1971)やvon der Marlsberg(1973) ,Amari(1980),Kohonen(1983)の自己組織化マップ,FukushimaのNeocognitoron(1980) ,HopfieldのHopfield network(1982)などニューラルネットワークの重要な研究が冬の時代 に行われている.
なぜニューラルネットワークの冬の時代が来たのか • MinskyとPapertのPerceptronsによりこれまでの多くの研究が徒労であること が分かった. • Perceptronsの改訂版で述べている. • Perceptronsでは,Perceptronに対し様々な考察をしている. • 彼らはPerceptronではなく,研究者を痛烈に批判している. • 彼らはPerceptronに敬意を払っている.本の中であつかう計算アルゴリズムを Perceptronとあえて言っているのは敬意から. • MinskyとPapertが十分Perceptronを調べた. • 麻生, 1988はMinskyとPapertが区切りをつけたと述べている.
なぜニューラルネットワークの冬の時代が来たのか • 並列処理から逐次処理へ (甘利, 1985) • Perceptronはアナログ並列計算機. • 計算量が膨大問題 (Minsky and Papert, 1969; 甘利ら, 2002)
ニューラルネットワークの歴史を振り返る • 第一次ニューラルネットワークブーム(今のようなコンピュータは無いよ) • Perceptron • 冬の時代 • 興味がニューラルネットワークから離れる • ノイマン型コンピュータの登場 • 並列処理から逐次処理へ (甘利 1985) • 計算量が膨大問題 (甘利 2002) • 予算削減(Bishop and Bishop, 2023) • 簡単にパーセプトロンマシーンを作れるか?(私見) • 第二次ニューラルネットワークブーム • Backpropagation • 神経科学からの離脱 (Crick 1988) • ニューラルネットワークから人工ニューラルネットワークになる(私見). • 冬の時代 • 人工ニューラルネットワークから機械学習へ興味が移行した(私見). • • 人工ニューラルネットワークが機械学習に取り込まれる(私見). SVMなど学習手法の選択肢が増える(私見). • 第三次ニューラルネットワークブーム • データ量,コンピュータの計算力の増大,開発プラットフォームの整備
神経科学も含めたニューラルネットワークの歴史 • 1873年 ゴルジ染色 • 1987年 Neuron doctrine 脳の構造が見えた 脳は独立したニューロン からなる ニューロンの応答規則が 少し分かった • 1906年 Receptive field • 1914年 All or none law • 1943年 McCulloch-Pitts model • 1957年 Perceptron • 1968年 Primary visual cortex ニューラルネットワーク は計算ができるようだ 1層のニューラルネット ワークの学習ができる 第1次視覚野の情報処理 が分かった • 1980年 Neocognitron • 1986年 Backpropagation, Autoencoder, Recurrent network • 1989年 LeNet • 1997年 LSTM • 2002年 Liquid state machine • 2006年 Deep belief network • 2012年 Alexnet • 2017年 Transformer 詳しい年表はQiitaにあります.https://qiita.com/KazuhisaFujita/items/b40f2363558c373bde55 畳み込みニューラルネッ トワークの元祖登場 多層のニューラルネット ワークの学習ができた 深層学習がすごいことが 知られた 大規模言語モデルの基礎 技術ができた