ゼロから学ぶスパイキングニューラルネットワーク Spiking Neural Networks from Scratch

B!

2. 前提知識としての神経細胞

SNNについて考える前に,神経細胞の構造とその挙動について少し詳しくならないといけません.

生物が苦手な方もいらっしゃると思いますが,私もそうなので安心してください.

最低限の知識を,わかりやすく解説していきます.

2-1. 神経細胞の構造

まずは神経細胞の構造を見てみましょう.

神経細胞

大きく見て,4つのパーツに分かれます.

  • 細胞体  ... 細胞としての処理が行われるところ
  • 樹状突起 ... 他の神経細胞から信号を受け取る
  • 軸索   ... 神経細胞の信号出力を行う部位
  • シナプス ... 軸索と他細胞の樹状突起との結合部位

この中で特に大事なのは,細胞体とシナプスです.

細胞体では入力された信号を処理し,出力する信号を生成するまでの過程を担っています.

シナプスでは,他細胞との結合強度を調整することで記憶の素過程を作ることをしています..

さて,この神経細胞の内部ではどのような処理がなされているのでしょうか?

2-2. 膜電位とスパイク

細胞体は細胞膜(Cell Membrane)と呼ばれる膜によって核が覆われています.

この細胞膜を簡単に示すと以下の図のような構造になっています.

細胞膜

細胞膜内にはカリウムイオンが多く存在し,細胞膜外にはナトリウムイオンが多く存在します.

したがって,細胞膜の内外では電位差があります.

この電位差を膜電位(Membrane potential)と呼び,何も入力がない状態では約-65mV程度で落ち着いています.

さらにこの電位を,静止膜電位(Resting potential)と言います.

このとき,他の神経細胞から何かしら入力があると,ナトリウムイオンチャネルがわずかに開き,膜電位は上昇します.

時間が経つと,再び静止膜電位に落ち着くのですが...

膜電位は一度上昇するが

さらなる入力があり,膜電位がある閾値を超えた時,ナトリウムイオンはさらに細胞膜内に流入し膜電位は急激に上昇しやがて正の電位に達するのです.

これを脱分極と言い,ニューロンは発火した(fire)とも言います.

また,そのときの膜電位は活動電位(Action potential)とも言い,トゲ状の膜電位はスパイク(Spike)と呼ばれます.

スパイク

上の図では軸が適当ですが,発火閾値は大体-50mV ~ -40mV程度なので,とてもミクロな世界での事象であることがわかります.

脱分極後は,イオンは戻り静止膜電位に向かって戻っていきます.

これを過分極と言います.

この際,その勢いで静止膜電位より小さな電位になりますが,この脱分極から過分極の間は不応期(Refractory period)と呼ばれ,いかなる入力にも反応しない期間になります.

この不応期は大体3ms前後だと言われています.

不応期

ここまでが,SNNを学ぶ上での最低限の知識になります.

全てを今理解しなくとも,なんとなくこれらのことを頭に入れておいてください.

2-3. モデル化する上で大事なこと

以上の神経細胞の構造や挙動を,数理モデルに落しこむ際に何が大事なのでしょうか?

また,通常のANNで扱われるニューロンモデルとは何が違うのでしょうか?

まず,大きく違う点は何を情報とするかです.

通常のANNでは,画素値などの実数値が情報でしたので,神経細胞も「膜電位の大きさが重要」と思うかもしれません.

が,神経細胞の情報とはスパイクの有無・発生頻度だと言われています.

つまり,発火したか否かを示す{0,1}情報を時間次元に並べたデジタル信号で神経細胞は情報のやりとりを行なっています.

このデジタル信号はスパイク(発火)の有無を並べたものなので,スパイク列(Spike Train)と表現したりします.

また,スパイク生成に重要な膜電位の挙動をどのように数理モデルに落とし込むかもとても重要です.