これからスパイキングニューラルネットワークを始める人へ3 : シナプスについて
スパイキングニューラルネットワークについて日本語の資料が少ないと思ったので、あんまり詳しくない人に向けて関連情報をまとめてみようかと思います。(説明の記事はいっぱいあるけど、実践的な内容が少ない)
なるべく簡単にまとめようと思いますが難しかったらコメントくだせぇ。
この記事だけでも、内容がわかるようにはしてますが、一応前回からの続きです。↓
これからスパイキングニューラルネットワークを始める人へ2 : ニューロンモデルの実装 - オープンメモ置き場
※注意:この記事は公開しながら編集していますので、ところどころ変かもしれないですが、よろしくです。
シナプスってなんだ
シナプスはニューロンとニューロンの接続部分です。あなたが思うよりふわっとした存在かも知れません。ただの接続部位ですから。
ニューロンは他のニューロンと信号のやりとりをしていると言われており、そのやりとりがまさに行われている場所がシナプスなのです。
あるシナプスに対して、そのシナプスを通じて信号を送るニューロンをシナプス前細胞、信号を受け取るニューロンをシナプス後細胞と呼びます。自分はそれぞれ、プリシナプティックニューロンとポストシナプティックニューロンと呼んでいます。
ここら辺は人に口で伝えるときには苦労します。シナプスが隙間の概念であることが原因ですかね。
前とか後ろとか自分でもこんがらがってくると思うので、しっかり覚えといてください。
シナプスはその特性によって主に2種類に分けられます。それが、化学シナプスと電気シナプスです。2つが混在する混合シナプスってのもあるらしいですけど、それは正直あまり出てこないのでよくわからないです。
電気シナプス
電気シナプスはギャップジャンクションとも呼ばれます。
ニューロン同士がくっついているイメージで、穴みたいな感じだと思うと分かりやすいです。
方向無しにニューロン同士の信号のやりとりが行われますので、シナプス前細胞とかの考え方は適応されないです。たぶん。高速な伝達が行われるとか特徴があるらしいですが、学習とかの話をしているときには無視をされがちです。
人間とかの脊椎動物の脳にはあんまりないことと、可塑性がない(?)ことが原因かと思います。
無脊椎動物の線虫とかの神経系のシミュレーションなど、どちらかと言うと生物学的に妥当なモデルであることが求められているときに登場する感じですかね。
電気シナプスの名前の通りニューロン同士の膜電位が直接影響しあいます。
まぁ存在だけ覚えておいてください。
シナプス可塑性!
というわけで、シナプスにはいくつか種類があるらしいんですが、シミュレーションするのは化学シナプスです。
以下、シナプスと言うときは全部化学シナプスです。
まず、シナプスは可塑性を持ちます。
可塑性とは難しい言い方をしてるだけで、変化することと、その変化した結果が変わらず保存されることを意味します。
シナプスはニューロンの間をつないでいます。
そして、シナプスを通って、電流が流れることで、ニューロン同士の信号のやりとりが行われます。
この電流の強さはシナプスの結合強度、つまりそのシナプスがどれだけ2つのニューロンを強く結び付けているかで変化します。
この結合強度の変化が可塑性と呼ばれるものです。
結合強度が変化する、可塑性はその時間的な特性で2種類存在します。
それが、長期可塑性(Long term plasticity と短期可塑性(Short term plasticity)です。
順番に説明していきます。
長期可塑性
長期可塑性は、結合強度の変化が長い時間保持される可塑性です。
シミュレーションでは、変化がなければ、ずっと変わりません。
「学習」とか、言うときは全部これです。つまり、変化したら変化しっぱなしです。
短期可塑性
ヘブ則
学習法則の分類 - 何を変数として扱うか
レート
電圧
タイミング
波形
- LCP
- STDP