ハエの脳を楽器にした。十数万個のニューロンで無限に音楽を奏でる「Music on the Fly」を作った(CloseBox)

テクノロジー AI
松尾公也

テクノエッジ編集部 シニアエディター / コミュニティストラテジスト @mazzo

9月1日の記事で、筆者がこの夏ずっと作ってきた「無限音楽機関」についてまとめました。

ビートルズ、ユーミン、筒美京平、キース・エマーソン、バッハ、サティ、モーツァルト。人間の作曲家が残した癖や理論をアルゴリズムにして、ブラウザの中で終わらない音楽を演奏させる、という一連の実験です。

次は何を無限にしようか。

そう考えていたら、人間の作曲家ではなく、ハエの脳に行き着いてしまいました。

ザ・フライ [Blu-ray]
¥1,020
(価格・在庫状況は記事公開時点のものです)
蝿男シリーズ DVD-BOX
¥4,520
(価格・在庫状況は記事公開時点のものです)

ショウジョウバエの脳全体の配線図を人工的な神経回路として動かし、その状態に音楽を選ばせる「Music on the Fly」を作りました。名前はもちろん「on the fly(その場で)」とfly(ハエ)の駄洒落です。こういう名前を思いついたときは、作るしかありません(ダジャレドリブン開発)。

▲Music on the Fly

ハエに作曲させたとは言わないよ絶対

Music on the Flyが使っているのは、生きたハエの脳でも、リアルタイムに測った神経活動でもありません。使っているのは、1匹の成虫のショウジョウバエ(雌)の脳を電子顕微鏡で撮影し、ニューロンとシナプスのつながりを再構成したデジタルデータです。

したがって、「ハエがサティを理解して演奏している」とか、「ハエの意識を音にした」といった話ではありません。そこまで言うと、ハエにも研究者にも怒られます。

実測されたものは、どのニューロンがどのニューロンにつながっているか、その間にいくつのシナプスがあるか、という配線です。その配線に時間変化を与える数式、外部からの刺激、音階や和音への変換は、筆者が作った人工的な仕組みです。

では、なぜ本物の配線図を使うのか。

乱数で作ったネットワークとは違う偏り、循環、密集、遠回りが、音楽の選択に癖として現れるのではないか。そこを聴いてみたかったのです。

FlyWireとは何か

FlyWireは、成虫ショウジョウバエの脳全体を、ニューロン単位、シナプス単位で再構成する国際的なコネクトーム・プロジェクトです。コネクトームは、簡単に言えば脳の配線図。どの神経細胞が、どの神経細胞へ接続しているかを記した巨大なネットワーク図です。IEEE 1394のことではありません。

元になったのは、成虫の雌のショウジョウバエの脳を薄く連続切片にして撮影した電子顕微鏡画像です。画像からAIが細胞の形を分割し、その結果を世界中の研究者、専門の校正者、市民科学者が手作業で修正していきました。Natureの解説によれば、手動校正だけで推定33人年。それをオープンな共同作業によって5年未満で進めたそうです。

2024年にNatureで発表された全脳配線図は、13万9255個のニューロンと5450万個の化学シナプスを含みます。別の論文では、8453の細胞タイプが整理されています。

「ハエ程度」と思うかもしれませんが、ショウジョウバエは飛び、歩き、餌を探し、危険を避け、学習し、記憶し、求愛し、ケンカもします。それらを、米粒よりも小さな脳でやっています。

データはCodex(Connectome Data Explorer)で検索・可視化できます。今回固定して使ったのはFAFB v783。Codex上では13万9255ニューロン、373万2460接続と表示される版です。

13万9255と13万4181は、なぜ違うのか

Music on the Flyの画面には「134,181 neurons」と表示されます。FlyWire全体の13万9255より少ない。

これは数字をごまかしたのではなく、今回使った公開接続表に、接続元または接続先として実際に登場するroot IDを数えた結果です。脳全体の注釈済みニューロンの中には、この接続表の条件では辺を持たないものもあります。

さらに、接続表は脳領域ごとに同じニューロン対が複数行に分かれているため、同じ向きの組み合わせを集約しました。元表386万9878行から、270万513組の有向接続になり、そこに含まれるシナプス数の合計は3415万3566です。

Nature論文の5450万シナプスは全再構成の数字で、今回のコンパクトな接続表の合計とは定義と収録範囲が違います。このあたりを全部「約14万ニューロン、5000万シナプス」で丸めると格好はいいのですが、実際にプログラムで読んだ数字は分けて書いておきます。

配線図に、人工的な時間を流す

接続表は静止した地図です。そのままでは音も時間もありません。

そこで、各ニューロンに小さな数値を持たせ、接続元の値とシナプス数から次の値を計算する「リザバー型」の動的ネットワークにしました。強い接続は影響が大きくなりますが、巨大な接続だけが全部を支配しないよう、シナプス数の平方根を使って正規化しています。

演奏中はブラウザのWeb Workerが、13万4181ニューロンと270万513接続を更新し続けます。最初は約1000ニューロンの部分グラフで試作していたのですが、「全てのニューロンを使い、永遠に奏でたい」と欲が出てしまい、全体をコンパクトなバイナリ形式へ変換しました。サイズは約23MB。いまのパソコンにとっては、意外に現実的な大きさです。

比較用に、本物のFlyWire配線、接続先を組み替えた配線、再帰接続をなくしたもの、の3モードも用意しました。同じ音楽ルールでも、回路を変えると選ばれる音が変わります。

ただし、画面で動いている数値は「モデル活動」です。実際に測定された発火や膜電位ではありません。配線は本物、そこを流れる時間は人工物。この区別はかなり重要です。

モーツァルトのサイコロを、ハエに渡す

神経活動をMIDIノートへ直結しただけでは、だいたい現代音楽になります。場合によっては現代音楽に失礼なものになります。

そこで、これまで作った無限音楽機関の仕組みを総動員しました。

基本になったのは「DICE THE MOZART」です。モーツァルトの音楽のサイコロ遊びは、サイコロが作曲するのではありません。どの目が出ても曲になるように、作曲家があらかじめ安全な小節を用意している。サイコロは、その中から選ぶだけです。

Music on the Flyでも、16小節の各位置に11種類、合計176個の「音楽的に壊れないセル」を用意しました。ハエの神経回路は音符をゼロから発明するのではなく、その時点の活動に応じて11個の候補から選びます。

つまり、ハエの配線がサイコロです。

人間は、どの目が出ても音楽になる空間を設計する。ハエは、その中を歩き回る。この役割分担なら、神経活動の複雑さを残しながら、BGMとして流せる音楽になります。

選ばれるセルにはStill、Open、Veil、Thirds、Drift、Echo、Suspension、Halo、Canon、Bloom、Dissolveと名前を付けました。和声の機能は保ったまま、音の数、広がり、反復、残響の仕方が変わります。

サティとイーノを、ハエの中へ

初期版は単音中心で、確かに神経回路は鳴っているのですが、音楽としてずっと聴くには少々つらいものでした。

そこで「無限サティ機関」から、低音のあとに少し遅れて入る長い和音、解決し切らない7thやadd9、次の打鍵まで残る余韻を持ってきました。さらにブライアン・イーノ的なアンビエントの考え方として、11個、13個の8分音符で巡る、同じ周期に揃わない粒子音を重ねました。

現在は4層あります。

  • 低い持続音のGround

  • 遅れて入る和音のCloud

  • 短い型を思い出しながら変形するMotif

  • ときどき上空を横切るParticle

和音は、前の和音からなるべく小さく動くように配置し、平行5度や平行8度が目立ちすぎない候補を選びます。ここは「無限バッハ機関」で使ったボイスリーディングの考え方です。

さらに「DEVIATION∞」から、聴き手が慣れすぎたら変化を入れ、変わりすぎたらしばらく反復へ戻す仕組みを移植しました。監視しているのは生の音高ではなく、和声色、モチーフ、テクスチャ、位相の4項目です。

音色もFelt、Glass、Airの3種類をいきなり切り替えず、複数のシンセを同時に鳴らしたまま8小節かけてモーフィングします。FM音源のガラス質な倍音が、AM音源の呼吸するような音へ少しずつ溶けていく。ここにも神経活動がわずかな揺れを加えます。

ニューロンの視点で飛ぶ

音だけでは、FlyWireがどこにいるのか分かりにくい。そこでビジュアライザーも作りました。

全13万4181ニューロンを計算しながら、そのうち接続の多い800ニューロンを3次元空間に表示します。画面の位置は演出用に生成したもので、実際の解剖座標ではありませんが、線は抽出した実接続です。

Ground、Cloud、Motif、Particleには、root ID順に4分割した人工的な読み出し領域を割り当てています。解剖学的な脳領域という意味ではありません。発音時には、その領域で活動の強い可視ニューロンからリングが広がり、接続線に沿って光点が走ります。音とモデル活動とニューロンIDが同じイベントとして記録されます。

録画ボタンを押すと、最初は全体を代表する800ニューロンを外側から眺め、7.2秒かけてネットワークの内部へダイブします。その後はニューロン視点で飛び続け、音声込みのMP4として保存できます。こうなると、環境音楽というより脳内旅行です。ハエのですが。

気に入った演奏は再演できる

最初は再生するたびに同じ導入でした。決定論的なプログラムなので、同じseedなら当然です。新鮮味がないので、接続グラフを決めるSeedと、演奏を決めるTake seedを分けました。

通常は再生ごとにTakeが変わり、16小節環の入口、最初の和声、モチーフ、テクスチャ、位相、ボイシング色が変化します。気に入ったらTakeを固定すれば、同じ導入を再現できます。

直近8小節はMIDIとJSONで保存できます。JSONにはFlyWireデータのハッシュ、回路モード、Seed、Take、各音に対応したニューロン、音色のモーフ状態まで入ります。生成音楽は流れて消えるのが美点ですが、いい演奏が出たときだけ捕まえておくこともできます。

これはAI音楽なのか?

これまでの無限音楽機関と同じく、作る過程ではAIを使いました。設計を相談し、コードを書かせ、テストし、筆者が聴いて「ここで無音になる」「導入が毎回同じで飽きる」と文句を言い、また直させる。その繰り返しです。

しかし、完成したMusic on the Flyは、演奏中に生成AIへ問い合わせません。ブラウザの中で数式と音楽規則が動いています。FlyWireも生成AIではなく、実測画像をAIと人間の共同作業で再構成した科学データです。

無限バッハや無限サティでは、人間が残した音楽の構造をアルゴリズムにしました。Music on the Flyでは、人間ではない生物が持つ配線の構造を、音楽を選ぶ力として借りています。

聴こえているのは、ハエの心ではありません。人間が作った音楽の庭を、ハエの脳配線が歩いた跡です。

それでも、ときどきこちらが予想しなかった美しい場所へ出る。その瞬間を待ちながら、ずっと流しておける楽器になりました。

GitHub Pagesで公開しているので、ご試聴ください。

そして、ここまで来て、筆者は思い出しました。いまネットで話題になっているのは、メスではなく、オスのショウジョウバエの脳なのでは。たしかニューロンの数は16万あったような。

Music on the Fly II?

ジェフ・ゴールドブラム演じるザ・フライに続編「ザ・フライ2/二世誕生」があったように、Music on the Flyにも続きがありました。

ザ・フライ2/二世誕生 (2枚組特別編)
¥5,100
(価格・在庫状況は記事公開時点のものです)

とはいえ、続編の主役は二世ではありません。オスです。蝿男の恐怖です。

こちらはMaleCNSという、成虫オスのショウジョウバエの中枢神経系を再構成した新しいコネクトームでした。ニューロン数は16万6700。記憶していた「16万」は、だいたい合っていました。

前作で使ったFlyWire FAFBは、成虫メスの「脳」の配線図です。一方のMaleCNSは、中央脳と視葉だけでなく、首の部分を通って腹側神経索、VNCまでつながっています。

VNCは、脊椎動物でいえば脊髄に近い役割を持つ部分です。歩行、飛翔、脚や翅の制御、感覚入力と運動出力。つまりMaleCNSは、頭の中だけでは終わりません。

脳から身体へ降り、身体から脳へ戻ってくる。

これは音楽にしたくなります。

男性版ではなく、別の楽器

MaleCNSは、FlyWireにオスのデータを追加したものではありません。

別の個体を、別の撮像・再構築プロジェクトで作った別のコネクトームです。MaleCNS v1.0は、中央脳、左右の視葉、腹側神経索を、首の接続部を切らずに一つのネットワークとして扱えます。

そこで、前作のメスをオスへ置き換えるのではなく、独立した楽器を作ることにしました。

名前は「MaleCNS — Music in the Body」。

Music on the Flyが脳内を飛ぶ音楽なら、こちらは脳と身体の間を往復する音楽です。

▲MaleCNS — Music in the Body

16万6700と16万3997

MaleCNS全体の説明では16万6700ニューロンとされています。しかし、今回の楽器に実際に読み込んだのは16万3997 bodyです。

使用したのは、MaleCNS公式配布の「significant-only」接続表。そこから、接続の重みが5シナプス以上のものを残し、自分自身への接続を除外しました。

元の表は2556万8639行。音楽用のブラウザバイナリに入ったのは、623万6393の有向接続で、重みの合計は8973万7064です。データサイズは約51.9MBになりました。

前作のFAFB版は13万4181ニューロン、270万513接続、約23MB。MaleCNS版はニューロンが約3万増え、接続は2倍以上です。

ブラウザは、それを普通に読み込んで演奏します。

お使いのブラウザはハエ一匹分の中枢神経系を受け取るとちょっと重いですかね。

脳と身体をどう音楽にするか

最初は、FAFB版と同じ音楽エンジンへMaleCNSの接続データを渡しました。

それだけでも演奏は変わります。接続の密度、循環、遠回りが違うため、同じ音楽セルを用意しても、選択される順序が変わります。

しかし、それでは「ニューロンが増えたMusic on the Fly」でしかありません。脳とVNCが連続しているというMaleCNSの特徴を、もう少し音楽として感じられるようにしたい。

そこでMaleCNS版には、低く短い「body-pulse」を加えました。

Ground、Cloud、Motif、Particleという前作の4層に加え、3拍子の中を歩くような小さな脈動が入ります。一定のドラムパターンを再生しているのではなく、ネットワークの読み出し値によって音高と強さが揺れます。

前作の既定テンポは62 BPMでしたが、MaleCNS版は68 BPM。ほんの少しだけ身体寄りです。

といっても、求愛中のオスのハエが68 BPMで歩くという意味ではありません。ハエにメトロノームを渡して測ったわけでもありません。

これはあくまで、全身の配線図を「脳と身体の往復」として聴くための、筆者による音楽的な解釈です。

オスの求愛歌を、そのまま鳴らしているわけではない

オスのショウジョウバエと音楽には、興味深い接点があります。

オスは求愛時に翅を振動させ、パルス状の音や持続的な音を組み合わせた求愛歌を奏でます。MaleCNSには、そうしたオス特有の行動に関係する性的二型回路を調べるための情報も含まれています。

ならばMaleCNSを鳴らせば、ハエのラブソングが出てくるのか。

残念ながら、そこまで直結はしません。

コネクトームは配線図であり、求愛中の神経活動記録ではありません。どの回路へどんな感覚入力が入り、いつ発火し、筋肉をどう動かしたかという時系列データが、そのまま入っているわけではないのです。

現在のMusic in the Bodyでは、全接続を計算したうえで、body IDを決定的に分割した4つの読み出し流を音楽へ割り当てています。まだ「この音は下行ニューロン」「このパルスはVNCの歩行回路」と解剖学的に言える段階ではありません。

そこは、次にやりたいところです。

MaleCNSの注釈を読み込み、中央脳、視葉、上行ニューロン、下行ニューロン、VNC内部、運動ニューロンを、本当に別々の音楽パートとして割り当てる。

感覚が脳へ上がると旋律が動き、脳から身体へ信号が降りるとリズムが変わる。VNCの循環がグルーヴを作り、求愛関連回路が別のモチーフを呼び出す。

そこまで行けば、単に大きなネットワークを鳴らすのではなく、神経系の構造を楽曲構造として聴けるようになります。

メスとオスを聴き比べられるのか

FAFB版とMaleCNS版を並べれば、「メスの音楽」と「オスの音楽」を比較できるように思えます。

しかし、これは慎重に扱う必要があります。

違うのは性別だけではありません。個体も、撮像方式も、再構築方法も、収録範囲も違います。FAFBは脳、MaleCNSは脳とVNCを含む中枢神経系です。

両者をそのまま鳴らして音が違っても、それを「雌雄差」とは言えません。身体側の回路が加わったからかもしれないし、データ処理の違いかもしれない。

性別を比較するなら、共通する脳領域や対応する細胞タイプを抽出し、ニューロン数、接続密度、入力条件をそろえる必要があります。メスの全中枢神経系であるBANCを比較対象にする方法もあります。

とはいえ、科学的な比較実験ではなく、二つの異なる配線構造を使った楽器として聴くことはできます。

FAFB版は、ゆっくり考えながら空中を漂う感じ。

MaleCNS版は、その下に小さな身体があり、ときどき歩こうとする感じ。

少なくとも筆者には、そう聴こえます。本蝿の感想は取れていませんが。

全景から、全身の中へ

ビジュアライザーと録画機能もMaleCNS版へ引き継ぎました。

演奏開始時には、接続数の多い991 bodyから選んだ800ニューロンを全景として見渡し、そこから7.2秒かけて内部へダイブします。表示される線はMaleCNSから抽出した実接続ですが、3次元上の位置は飛行演出用の生成レイアウトです。

音を選んだニューロンからリングが広がり、接続線上を光が移動します。Felt、Glass、Airの音色も、演奏を止めずに少しずつモーフィングしていきます。

映像と音声は、そのままMP4へ録画できます。

前作では「ハエの脳内旅行」でした。

今回は、脳から首を抜け、身体の神経系へ潜っていく旅です。実際の解剖座標ではないので、観光案内としては役に立ちません。

GitHub Pagesで、16万ニューロンを配る

Music in the Bodyは、GitHubでソースコードとブラウザ用データを公開し、GitHub Pagesで動かしています。

MaleCNS — Music in the Bodyを開く

ページを開き、「再生」を押すと、約51.9MBの接続バイナリを読み込みます。その後の演奏に生成AIのAPIや外部サーバーは使いません。16万3997 bodyと623万6393接続の更新、作曲、音色生成、3D描画は、すべてブラウザの中です。

ソースコードはこちらです。

GitHub:matsuo-koya/music-in-the-body

配線データにはMaleCNSのCC BY 4.0が適用されます。出所、変換条件、元データと生成バイナリのSHA-256もリポジトリに記録しました。

こうした科学データを作品へ使う場合、データのバージョンと加工内容を残しておくことは、音楽的な再現性のためにも重要です。

同じSeed、同じTake、同じ接続バイナリなら、同じ入口へ戻れます。

Music on the Fly IIは、脳から身体へ

最初のMusic on the Flyは、ハエの脳を楽器にしました。

Music on the Fly IIは、脳だけでは足りず、身体へ向かいました。

もちろん、まだハエの身体そのものを鳴らしているわけではありません。使っているのは中枢神経系の配線図です。筋肉も、外界も、リアルタイムの感覚入力もありません。

それでも、脳だけのネットワークと、脳からVNCまで連続したネットワークでは、音楽を考えるための比喩が変わります。

前作は、ハエの脳配線が人間の作った音楽の庭を歩く作品でした。

続編では、その庭に身体が生えました。

ザ・フライ2の副題は「二世誕生」でしたが、こちらは「全身誕生」です。

そしてこのシリーズ、まだメスの全中枢神経系であるBANCも残っています。

どうやら三作目もありそうです。

※この記事は、Codex(ChatGPT-6 Astra)と筆者との対話をもとにCodexが執筆したものを、筆者が整理・追記したものです。

《松尾公也》

Amazon売れ筋ランキング

松尾公也

テクノエッジ編集部 シニアエディター / コミュニティストラテジスト @mazzo

BECOME A MEMBER

『テクノエッジ アルファ』会員募集中

最新テック・ガジェット情報コミュニティ『テクノエッジ アルファ』を開設しました。会員専用Discrodサーバ参加権やイベント招待、会員限定コンテンツなど特典多数です。