FLMとは?神経接続型LLMのアーキテクチャ

Fly Language Model(FLM)は、既存のLLM「LiquidAI LFM2.5-1.2B-Instruct」に、ショウジョウバエの神経回路網データ「MaleCNS v1.0 connectome」を接続したパブリックチャットボットです。開発者によると、これは「世界初のFly Language Model」であり、「GPF(Generative Pre-trained Fly)」というアーキテクチャに基づいているとされています。 (出典)

FLMは、LLMのバックボーン(約12億パラメータ)は凍結したまま、ショウジョウバエの全166,700個のニューロンと25,582,938本のシナプス接続を模倣したグラフを「リザーバーコンピューター」として結合しています。このシステムは、トークン埋め込みを128チャンネルに圧縮し、各ニューロンノードにランダムな符号で1チャンネルを供給します。グラフ全体は特定の活性化関数で更新され、その状態が訓練された約27万パラメータの「リードアウト」層を通じてLLMの出力に寄与する仕組みです。

個人的には、この「リザーバーコンピューター」の概念は、古典的なニューラルネットワークの手法がLLMとどのように統合されるのか、非常に興味深いと感じますね。Pythonバインディングがあるのは試しやすい点です。

FLMは、ショウジョウバエの全神経回路網を既存のLLMに接続する革新的な試みですが、その効果はまだ検証段階にあります。

パフォーマンス検証:期待外れの結末

FLMの開発チームは、SmolTalkの対話データセット(1,236ターゲットトークン)を用いて、モデルの性能を評価しました。比較されたのは、凍結されたバックボーン単体、フライリードアウト(FLM)、そしてフライグラフを含まないダイレクトインプットリードアウトの3つの条件です。

結果は以下の通りです。(出典)

Condition NLL (nats/token)
Frozen backbone 1.381995
Fly readout 1.359816 ± 0.000110
Direct-input readout 1.359328 ± 0.000108
Relabeled, no refit 1.381265 ± 0.000802
No edges 1.381995

この結果を見ると、フライリードアウトは凍結バックボーンに比べてわずかに改善が見られます(0.0222 nats/tokenの改善、perplexity 3.98から3.90)。しかし、驚くべきことに、ショウジョウバエの神経回路網を含まないダイレクトインプットコントロールの方が、フライリードアウトよりもさらに優れた性能を示しました。具体的には、ダイレクトインプットコントロールがフライリードアウトよりも0.000488 nats/token優れており、統計的にもフライ特有のゲインは確認されなかったとのことです。

これはかなり衝撃的な結果だと感じます。生命体の構造を模倣すれば必ずしも性能が向上するわけではない、ということを示唆しているように思えますね。

ソースコードと利用可能性

FLMは nftechie/flm リポジトリでMITライセンスの下に公開されており、Python 3.12(macOSまたはLinux、MPS、CUDA、またはCPU)でローカルに実行可能です。APIキーは不要です。これは開発者にとって非常に魅力的な点ではないでしょうか。

すぐにでも自分の環境で試せるというのは、オープンソースコミュニティへの大きな貢献だと感じます。自宅のRTX 3090搭載PCでも動くか試してみたいですね。

FLMはMITライセンスで公開されており、ローカル環境で手軽に試すことができます。