みなさんこんにちは。僕は18歳のインディー開発者で、言語モデリングのためにスパイキングニューラルネットワーク(SNNs)をいろいろ試しています。SpikeBERTのような多くの論文では、ランダム初期化から1B+のSNNを直接学習しようとしても、勾配消失のためにうまくいかないと述べられているので、通常はANNからSNNへの変換や蒸留を行います。スパイク領域だけで純粋に収束させることができないかを確かめたかったんです。財布が文字通り空だったので27kステップで止めざるを得なかったのですが、損失は4.4まで収束しました。
起きた中で一番面白かったことはこちらです:
- 大幅なスパース性: 約93%のスパース性を維持しています。トークンごとに発火するのは全ニューロンのうち約7%だけです。密なモデルと比べて、推論時のメモリコストが非常に安いです。
- クロスリンガルな創発: 約25Kステップあたりで、データセットの混合で明示的に狙って重み付けされていなかったにもかかわらず、構造的に正しいロシア語の文章をランダムに生成し始めました。
- メモリ・ルーティングのシフト: アーキテクチャを600Mを超えて1Bまでスケールしたところ、モデルは自発的に、その活性ルーティングの39%を永続メモリ・モジュールへシフトしました。基本的に、大規模になるほどメモリの価値が高いことを自分で学んだようです。
制限(正直に言うと):
文章生成はまだぎこちなく、GPT-2のような流暢さには程遠いです。損失(4.4)は高めで、主に長く学習できなかったためです。ただ、1Bの純粋SNNがランダム初期化から収束し得ることを示すのは、確かなマイルストーンのように感じます。
これは、厳しめの技術的フィードバックが欲しいから共有しています。
- ここにニューロモーフィック・ハードウェアの経験がある人はいますか? Loihiにこういったアーキテクチャはうまくマッピングできそうでしょうか?
- SNNの損失をもっと下げる方法や、サロゲート勾配をさらに安定化させるコツがあれば、ぜひ教えてください。
コード、アーキテクチャの詳細、そして12GBのフル学習チェックポイント(重み+オプティマイザ状態)は僕のGitHubにあります。
[link] [comments]




