Kaito Kishi
岡研究室(生命情報学科)
2018-03-29 @機械学習交流会
だが
{
この伝達関数を微分可能な非線形関数に変えて,複数ニューロンからなる層を重ねたものがよく知られる NN
膜電位が徐々に上昇し,閾値に達したら発火する.このときに膜電位の値はリセットされる
Integrate-and-fire で膜電位の漏れを考慮したもの
・どうやって入力する?
・何をもって出力結果とする?
・どうやって学習する?
などなど...
そこで,SNN の教師あり学習の手法を考案したのが,今回紹介する
・
・
・
・
・
・
・
・
・
・
・
・
・
・
・
入力値は常に発火
入力を受けて膜電位が上昇し,閾値を超えたら発火
出力層のうち,スパイク数の最も多いものを出力値と定める
入力履歴.より直近でより多い方が発火する
出力履歴.発火した直後は発火しづらくなる
誤差関数
正則化の項
ただし,
ゆえに,
スパイク数
は層
におけるニューロン数
はそのうちアクティブなニューロン数
ただし,
2 層の SNN では今までの 98.64% を抜き,トップ(98.88%)
※NN では Goodfellow の 99.06%
99.31%
SNN のトップは 99.42% なので,負けてはいるものの,これは 64 のアンサンブル結果なので,単体だったら,92.70% であったので勝ち
従来の SNN は普通の NN で学習させて,これを SNN に変換していた
それに対して,直接スパイク情報から学習できるようにした
従来の NN の資産を有効に活用して,SNN が適している問題を解くことができるのではないだろうか
今回は個人的に教師ありの SNN がほしかったので,誤差逆伝播を用いる論文を紹介したが,脳では STDP を用いているので脳を再現したいならば,そちらをあたるべきと思われる.個人的に今気になっている論文は,
STDP-based spiking deep convolutional neural networks for object recognition
発火すると,その周りのニューロンを抑制する.
→ 出力を際だたせるのに効いていそう
これで重みを一定範囲内に収めようとしている
閾値については,訓練時の順伝播中に徐々に小さくするというもの
これらの正則化により,安定した精度を出せていた
(多分)既に奪われてた...