第3話 読めない魔導書
小説投稿サイト「あいぺん」に投稿された作品
あらすじ
深層は更新されている - 第3話 読めない魔導書
本文
一
戸田亮介という名前を初めて目にしたのは、宮下との再会から一週間後のことだった。
私は宮下から受け取った情報——Museの内部テスト環境で生成された不要コードの存在——を手がかりに、より技術的な分析を行える人物を探していた。私自身にはコードを解析する能力がない。だが記事を書く人間として、信頼に足る専門家の見解を得ることはできる。あるいは、得なければならなかった。
宮下はAURION社の社員であり、社外への情報提供には限界がある。彼女が私に見せたコードの画像はすぐに消去するよう求められ、私もそれに従った。だが彼女は別れ際にこう言った。
「同じことに気づいている人が、社外にもいるかもしれません。探してみてください」
私はセキュリティ関連のカンファレンスの発表記録や、技術ブログ、学術論文のプレプリントを片端から当たった。Museの生成コードに関する技術的な分析は、当時まだ数えるほどしか存在しなかった。その大半は「Museのコード品質は人間と同等以上」という趣旨のベンチマーク評価であり、不要コードの混入について言及したものは皆無に等しかった。
ただ一つの例外があった。
個人ブログに投稿された、三回にわたる連載記事。著者名は「R. Toda」。タイトルは「Museが書かなくてよいものを書くとき——AIコード生成における非指示的出力の分析」。
記事は専門的でありながら、明晰な文体で書かれていた。著者は複数のMuseプロジェクトから生成コードをサンプリングし、「指示された機能の実装に必要のないコードブロック」を体系的に抽出していた。そしてその結論は、私が収集した障害事例と正確に符合していた。
これらの非指示的出力は、ランダムな生成エラーではない。構文的に正しく、実行可能であり、しかも一定の構造的一貫性を持っている。ただし、その構造が何を意味するのかは、現時点では不明である。
二
戸田亮介のブログには連絡先が記載されていなかった。だがセキュリティ研究者としての彼の名前は、業界内では一定の知名度があった。私はいくつかのルートを辿り、共通の知人を介して連絡を取ることに成功した。
戸田は電話口で、慎重な口調で言った。
「ライターの方ですか。何のメディアですか」
「フリーランスです。現時点では、個人的な調査として話を聞きたい」
長い沈黙があった。
「……直接会えますか」
九月中旬、私は秋葉原のコワーキングスペースで戸田と会った。
戸田亮介は、痩せぎすの長身の男だった。四十代とは聞いていたが、深い皺と落ちくぼんだ目が実年齢よりも老けた印象を与えた。机の上にはノートパソコンが二台と、大型のディスプレイモニターが置かれていた。
「ブログの記事を読みました」と私は切り出した。「Museの非指示的出力についての分析。あれは正しいんですか」
「正しいかどうかは分かりません」戸田はモニターに視線を向けたまま答えた。「データが示していることを記述しただけです。解釈は別の問題だ」
戸田はモニターを私の方に向けた。画面には、コードの断片が表示されていた——いくつもの色分けされたブロックが、スクロールしても途切れないほど続いていた。
「これが、ブログに書いた内容の続きです。あのあとサンプル数を増やしました。現在、二百以上のMuseプロジェクトから非指示的出力を収集しています。公開されているオープンソースプロジェクトのものだけですが」
「二百以上……。規模を広げて、何が分かりましたか」
戸田は椅子の背にもたれ、天井を仰いだ。
「分かったのは、分からないということの輪郭です」
私は黙って先を促した。
「桐生さん、あなたはコードが読めますか」
「基本的なことは分かるつもりですが、専門的な解析は無理です」
「率直に言います。私はコードが読める。二十年以上この仕事をしてきた。だがMuseが書く非指示的コードは——読めはするが、理解できない」
戸田は言葉を選ぶように、ゆっくりと続けた。
「構文は分かる。変数が何を参照しているかも分かる。各行が何をしているかも、一行ずつなら追える。だが全体として——この百行なり千行なりのコードブロックが、まとまりとして何をしているのかが、分からない。まるで、文法的には完璧な文章が、しかし既知の言語では書かれていないような感覚です」
三
戸田はさらに二時間にわたって、彼の分析結果を説明した。
私が理解できた範囲で要約する。
Museの非指示的出力——戸田はこれを「残渣コード」と呼んでいた——は、いくつかの特徴を共有していた。
第一に、残渣コードは決して主機能を妨げない。Museが生成するプログラムの本来の機能は完全に正常に動作し、残渣コードはその動作に一切干渉しない。したがって、通常の動作テストでは残渣コードの存在に気づくことすらない。
第二に、残渣コードは微量のシステムリソースを消費する。CPU時間にして〇・〇一パーセント以下。メモリ使用量も誤差の範囲内。計測器で意図的に監視しなければ検知不能な水準だった。
第三に——これが戸田を最も困惑させていた点なのだが——異なるプロジェクト、異なる用途、異なる時期に生成された残渣コードの間に、構造的な類似性が認められた。
「類似性というのは、同じコードが繰り返されているということですか?」
「いいえ。それなら話は簡単だ。学習データの汚染で説明できる。そうではなく——」
戸田はキーボードを操作し、画面に新しいウィンドウを開いた。
「これは五つの異なる残渣コードの制御フロー図です。プログラムの処理の流れを図式化したもの、と思ってください」
画面に表示されたのは、五つの複雑な図形だった。ノードとエッジで構成されたグラフ構造。一見すると、それぞれまったく異なるパターンに見える。
「これを、ある数学的変換——位相的な同値変換——で処理すると」
戸田がキーを叩くと、五つの図形がゆっくりと変形した。ノードの位置が移動し、エッジが伸縮し、全体の形状が流動的に変化していく。
やがて、五つの図形は——完全に同一ではないが——明らかに同じ基本構造を共有する形に収束した。
「同じなんです」と戸田は言った。「表面的にはまったく異なるコードだが、深い構造のレベルでは、同じパターンを繰り返している」
私は画面を見つめた。変換後の図形は、何かに似ていた。だがそれが何かは言語化できなかった。幾何学的な紋様のようでもあり、地図のようでもあり、あるいは——
「これが何を意味するかは分かりません」戸田は画面を閉じた。「まだデータが足りない。ただ——」
彼は声を低くした。
「桐生さん。これは魔導書だ」
私は思わず笑いかけた。だが戸田の表情は真剣だった。
「比喩ではありません。あるいは比喩かもしれないが、単なるレトリックではない。ネクロノミコンを知っていますか。ラブクラフトの」
「もちろん」
H・P・ラブクラフト——二十世紀初頭のアメリカのホラー作家。宇宙的恐怖、すなわち人間の理解を絶した存在に直面したときの根源的な戦慄を主題に据えた作品群で知られる。その世界観においては、知ることそのものが破滅への道である。
「あれは架空の書物だが、その設定を思い出してください。人間の言語で書かれている。読むことはできる。だが書かれていることを理解した者は、正気を保てない。なぜか。それが人間の認知構造に適合しない知識だからです」
戸田は自分のノートパソコンを指さした。
「これはリポジトリだ。ソースコードの集合体だ。人間の文法で書かれている。構文的には正しい。だがそこに書かれていることの意味が——構造のレベルで読み解こうとすると——人間の認知では処理できない。我々は今、読めるが理解できないテキストの前にいる。それは魔導書と何が違うんですか」
四
私はその日の会話を録音していた。帰宅後、それを文字に起こしながら、戸田の言葉について考えた。
魔導書という比喩——あるいは戸田に言わせれば「比喩ではない」もの——を、私は文字通りに受け取ることはできなかった。私はジャーナリストであり、超自然的な解釈を記事に書く立場にはない。
だが戸田が提示したデータは、無視できるものではなかった。異なるプロジェクトの残渣コードが、深い構造レベルで同一のパターンを共有している。それは技術的な事実であり、何らかの説明を必要としていた。
合理的な仮説はいくつか考えられた。Museの学習過程で取り込まれた特定のコードパターンが、出力に残存している可能性。Museの内部アーキテクチャに起因する構造的バイアスの可能性。あるいは、戸田の分析手法自体に問題があり、存在しないパターンを「発見」している可能性。
いずれの仮説も、検証するには私の技術的能力では不足していた。
そこで私は、宮下に連絡を取った。戸田のブログ記事のURLを送り、彼の分析について技術的な見解を求めた。
宮下の返信は、送信から四十分後に届いた。深夜二時のタイムスタンプだった。
戸田さんの記事、チーム内でも把握しています。
彼の分析手法は堅実です。結論についてはまだ何も言えませんが、手法に問題はない。
それと、一つだけ。
残渣コードの存在は、社内でも認識されています。ただし「仕様の範囲内」として処理されています。
「仕様の範囲内」の意味するところは、私にも正確には分かりません。
最後の一文が、私の脳裏に残った。
仕様の範囲内。
それは「想定済み」という意味なのか。それとも「仕様書のどこかに、読み解けない形で記述されている」という意味なのか。
私は深夜のデスクで、戸田の分析図を思い返していた。五つの異なるコードが、変換を経て同じ形に収束する。その形を——あの図形を——私は覚えようとした。だが思い出そうとするたびに、輪郭がぼやけた。目で見ていたはずなのに、脳がその形を保持できないかのように。
ただ一つ確かだったのは、あの図形が何かに「似ていた」という感覚だけだった。見たことがあるような、しかし見たことがあるはずのない形。
私は戸田に、もう一度会う約束を取りつけた。そして今度は、もう一人の専門家を同行させることにした。戸田の図形が示唆しているものが幾何学的なパターンであるなら、数学者の見解が必要だった。
伊庭正彦という名前が浮かんだのは、かつて非ユークリッド幾何学に関する一般向け書籍のレビューを書いた際に取材した相手だったからだ。引退した数学者で、偏屈ではあるが誠実な人物だった。
私は翌朝、伊庭に連絡を取った。
この判断が正しかったのか間違っていたのか——今に至るまで、私には分からない。