🔥

ついにSNNで言語モデルを開発開始!DNNより42倍効率的でノイズに強かった!

に公開

はじめに

以前、脳モデルで「スパイク数と膜電位の両方を使うと正答率が爆上がりした」という発見をしました。

https://zenn.dev/cell_activation/articles/74f80235070fae

今回はこのアイデアを言語モデルに適用してみました!

結果:SNNはDNNより42倍エネルギー効率が良く、ノイズにも強かった!


この研究の背景

言語モデルとは

「次の文字を予測する」タスクです。

入力: "The quick brown fo"
出力: "x" (確率が高い)

これができると、文章生成、翻訳、要約など様々なタスクに使えます。

なぜSNNで言語モデル?

従来のLLM SNN言語モデル
GPUで大量の電力を消費 ニューロモルフィックチップで省電力
データセンター必須 エッジデバイスで動く可能性
環境負荷が高い 脳並みの効率を目指せる

私の仮説

以前の発見では、スパイク数だけでなく膜電位も使うことで正答率が大幅に向上しました。

これを言語モデルにも適用すれば、同じ効果が得られるはず!

従来のSNN読み出し

# スパイク数(発火回数)だけで判断
next_char_prob = W @ spike_count

私のアプローチ(Hybrid)

# スパイク数 + 膜電位の両方を使用
next_char_prob = W_spike @ spike_count + W_membrane @ membrane_potential

実験設定

モデル

モデル 説明
SNN スパイキングニューラルネットワーク(LIFニューロン)
DNN 通常のディープニューラルネットワーク(tanh活性化)
LSTM Long Short-Term Memory(記憶が得意)

データ

  • 英語テキスト約23,000文字
  • 文字レベル予測(vocab size = 128)

実験1:精度比較

結果

モデル 精度 Perplexity 演算数
SNN-300 10.24% 28.20 93.85M
DNN-300 15.22% 46.27 5,885M
LSTM-300 18.77% 41.28 23,542M

考察

  • 精度: LSTM > DNN > SNN
  • 演算数: SNN << DNN << LSTM

精度だけ見るとSNNは劣っているように見えますが...


実験2:エネルギー効率 🏆

精度あたりの演算数で比較すると

モデル 効率 (精度/百万演算)
SNN-300 0.1091
DNN-300 0.0026
LSTM-300 0.0008

発見: SNNはDNNの42倍効率的!

→ 同じ精度を出すのに必要な計算量が42分の1!

なぜ?

  1. スパース計算:発火したニューロンだけが計算に参加
  2. イベント駆動:常時計算が不要
  3. 加算中心:乗算より電力消費が少ない

実験3:ノイズ耐性 🏆

入力にノイズを加えたらどうなる?

モデル 0%ノイズ 30%ノイズ 劣化
SNN-500 8.67% 8.80% -0.13%
DNN-500 10.83% 7.77% +3.06% ⚠️
LSTM-300 18.77% 17.71% +1.05%

発見: SNNはノイズがあっても精度が落ちない!

むしろ微増している!

なぜ?

  1. 閾値機構:小さなノイズはスパイクに変換されない
  2. 膜電位の平滑化:短期ノイズを吸収
  3. カオス的柔軟性:ノイズを学習に活用

なぜ「スパイク+膜電位」が効くのか

情報量の比較

情報源 値の範囲 特徴
スパイク数 離散(0, 1, 2, ...) デジタル的
膜電位 連続(-70 ~ -50 mV) アナログ的

両方使うメリット

スパイク数 = 33回
膜電位A = -51 mV (もうすぐ発火しそう!)
膜電位B = -68 mV (まだまだ静か)

同じスパイク数でも、膜電位を見れば「勢い」が分かる!


まとめ

今回分かったこと

  1. SNNはDNNの42倍エネルギー効率が良い

    • ニューロモルフィックチップでの実用性
  2. SNNはノイズに強い

    • 30%ノイズでも精度が落ちない
    • IoT/エッジデバイスでの実用性
  3. スパイク+膜電位のハイブリッドが有効

    • 以前の脳モデルでの発見が言語モデルでも確認

今後の展望

  • 🔬 Penn Treebankなど標準ベンチマークでの検証
  • 🔋 実際のニューロモルフィックチップでの測定
  • 📝 arXiv論文投稿

論文(ワーキングペーパー)

Zenodoで公開中:
https://doi.org/10.5281/zenodo.18288582

現時点での検証結果でも十分に論文化できると考え、アップしました!

  • 新規性:SNN言語モデル自体が珍しい
  • 独自性:スパイク+膜電位アプローチ
  • 実用性:エネルギー効率とノイズ耐性

ソースコード

GitHubで公開予定!

https://github.com/hafufu-stack/snn-language-model


最後まで読んでいただきありがとうございました!

質問やフィードバックがあれば、コメントでお待ちしています!🧠✨

Discussion