1913年、ロシアの数学者マルコフはプーシキンの『エフゲニー・オネーギン』を開き、母音と子音を数え始めた。彼は文学研究をしていたのではない。古い世界を解体していたのだ。次の記号は無から現れるのではなく、前の状態に引き寄せられる。一世紀以上後、LLMは次のトークンを予測するように訓練され、エージェントは次の行動を選択するように訓練される。この目標は退屈に見えるが、言語、知識、推論、行動を極めて密度の高い教師信号へと押し込めている。マルコフはChatGPTを想像しなかったが、彼は現代AIの最小の文法、すなわち状態、遷移、次のステップを残した。
一人の数学者が詩集を開いた
1913年、サンクトペテルブルク。
57歳のロシア人数学者がプーシキンの『エフゲニー・オネーギン』を開いた。
彼は詩を読みに来たのではない。
彼はペンを手に取り、数え始めた。
この文字は母音だ、記録する。次は子音だ、記録する。その次も子音、その次は母音。彼は二万個以上の文字を数え続け、最終的に全く詩的ではない記号の連なりを得た。
もし誰かがそばで見ていたら、気が狂ったと思っただろう。
世界で最も偉大なロシア語詩の一つが、彼の手にかかると、VとCの連なりになった。
しかし彼が本当に関心を持っていたのはプーシキンではなかった。
彼が関心を持っていたのは、より深い問題だ。
次の記号は、前の記号と関係があるのか?
それ以前、確率論で最もよく知られていたのは、コイン投げ、サイコロ振り、玉の抽出だった。これらの問題には共通の仮定がある。各試行は互いに独立している。前回コインが表だったからといって、次にコインを投げる確率が変わることはない。
しかし、言語はそうではない。
もし子音を見たばかりなら、次の文字が母音である確率は高くなる。母音を見たばかりなら、次の文字も母音である確率は低くなるかもしれない。文字は孤立して現れるのではなく、互いに引き合うのだ。
この数学者の名はアンドレイ・マルコフ。
彼は、百余年後に人類が、あらゆるステップで似たようなことを行う機械を作り出すとは思わなかった。
前のシーケンスを見て、次のトークンを予測する。
さらにその先、その機械がツールを使い、コードを修正し、ウェブを閲覧し、コマンドを実行するようになるとは、なおさら思わなかった。
次の文字を予測することから、次の言葉を予測することへ。
次の言葉を予測することから、次の行動を予測することへ。
マルコフは大規模言語モデルを発明したわけでも、エージェントを発明したわけでもない。
しかし、現代AIの多くの場所に、彼の亡霊がいる。
一、古い世界:毎回互いに無関係
まず、コインを思い浮かべてほしい。
あなたはコインを10回投げ、最初の9回はすべて表だった。10回目が表である確率は?
依然として50%だ。
これが独立事象である。
過去に何が起ころうと、次に影響しない。
独立性は美しい。
なぜなら、それによって世界が計算しやすくなるからだ。毎回の試行は最初からやり直しのようなもので、過去を背負う必要がない。確率論初期の多くの定理は、このようなクリーンな仮定の上に成り立っている。
しかし、現実世界がこれほどクリーンなことはめったにない。
今日雨が降れば、明日雨が降る確率は高くなる。
「私は愛」と言った直後なら、次の言葉が「している」である確率は高くなる。
今日株式市場が暴落すれば、明日の寄り付きのセンチメントは何事もなかったかのようにはならない。
プログラムがコンパイルに失敗した直後なら、次の最も合理的な行動は「新機能を書き続ける」ことではなく、「エラーログを読む」ことだ。
現実世界は一枚のコインではない。
現実世界には記憶がある。
マルコフの革命は、ここから始まる。
彼が問うたのは「未来は完全に過去によって決まるのか」ではない。それは運命論の問題だ。
彼が問うたのは、より数学的で、より計算可能な問題だ。
未来は、ある「現在の状態」だけを通じて予測できるのか?
この言葉は素朴に聞こえるが、確率論の方向性を変えた。
二、マルコフ連鎖:過去を現在に押し込む
マルコフ連鎖の核心は、ただ一言だけだ。
次のステップは現在の状態のみに依存し、それ以前の歴史には直接依存しない。
数式で書くと次のようになる。
P(X_{t+1} | X_t, X_{t-1}, X_{t-2}, ...) = P(X_{t+1} | X_t)
言い換えれば:
「今どこにいるか」さえ分かっていれば、歴史全体を暗記しておく必要はない。
これは過去が重要ではないと言っているのではない。
過去はもちろん重要だ。
ただ、過去の影響はすでに「現在の状態」に吸収されているのだ。
あなたがナビゲーションをしているところを想像してほしい。
家を出発し、三本の道を通り、二つの信号を迂回し、最後に交差点に立った。今、あなたは次にどちらに進むべきか決めようとしている。
ナビゲーションにとって最も重要なのは、あなたがさっきどのように迂回してきたかではなく、次の点だ。
- あなたは今どの交差点にいるのか?
- どの方角を向いているのか?
- それぞれの道はどこに通じているのか?
あなたの歴史は、すでに「現在位置」に圧縮されているのだ。
これがマルコフ性の直感である。
マルコフ連鎖は二つの要素から構成される。
| 構成要素 | 意味 | 例 |
|---|---|---|
| 状態 | あなたが今どこにいるか | 晴れ、雨;文字A;ウェブページ;コードリポジトリの現在の状態 |
| 遷移確率 | ある状態から次の状態へ移る確率 | 晴れから雨へ20%;Aの後にBが来る確率5% |
これが最小のシーケンス世界だ。
Shannonが問うたのが「この記号の連なりにはどれだけの情報があるか」であり、Bayesが問うたのが「証拠を見た後、信念はどのように更新されるか」だとすれば、Markovが問うたのはこれだ。
現在に立って、次のステップとして最も可能性が高いものは何か?
これが言語モデルの原初的な問題である。
三、言語はマルコフの川である
あなたはこの半分の文を読んだ。
「今日の天気はとても」
次の言葉は何だろうか?
「良い」「暑い」「寒い」「悪い」「まあまあ」
「量子」「トマト」「ファイルシステム」とは予想しないだろう。
なぜなら、前の言葉がすでに確率分布を絞り込んでいるからだ。
言語はランダムな単語袋ではない。言語は方向性のある川なのだ。
一つの言葉が次の言葉を推し、一つの文が次の文を推す。
初期の言語モデルはまさにこれを行った。
最も単純なのはバイグラムだ。
さらに進むとトライグラムだ。
さらに進むとNグラムだ。
これが初期の自然言語処理の中核ツールだった。
それは非常にマルコフ的だ。
その問題もまた明らかだ。
ウィンドウが短すぎると、遠くの情報を覚えていられない。
「太郎は昨日、借りてきた、表紙が色あせた、古い切符が挟まった本を机の上に置いた。今朝、彼はそれがなくなっていることに気づいた。」
「それ」は何を指すのか?
「本」を指す。
しかし「本」は「それ」から遠く離れている。短いウィンドウのNグラムでは、おそらく忘れてしまっているだろう。
ではウィンドウを長くしたらどうか?
状態の数が爆発的に増える。
語彙サイズ = 100000
バイグラムの状態:100000
トライグラムの状態:100000^2
10グラムの状態:100000^9
これが、言語におけるマルコフ連鎖の最初の壁である。
状態が薄すぎれば忘れる。厚すぎれば爆発する。
その後の深層学習は、本質的にずっとこの問題を解決してきた。
RNNは歴史を隠れ状態に押し込もうとした。
LSTMはこの隠れ状態にゲート制御を加え、あまりに早く忘れるのを防いだ。
Transformerは、非常に長い歴史を広げ、Attentionによって各位置が振り返ることができるようにした。
それらはすべて同じことをしている。
過去を、十分に有用な「現在」へと圧縮すること。
この言葉こそ、マルコフの亡霊が初めて本当に姿を現した場所である。
四、なぜ次の文を予測しないのか?
ここで、ごく自然な疑問が湧く。
人間が話すとき、一つのトークンずつ考えているわけではないのに、なぜAIを訓練するときは次のトークンを予測するのか?
なぜ次の文を予測しないのか?
さらに一歩進んで:
なぜ完全な答え、完全な計画、完全な結論を直接予測しないのか?
もし私が今日の視点から振り返らず、ゼロからAIを設計するとしたら、おそらく私も真っ先に「次のトークンを予測する」ことは思いつかないだろう。
私はまずこう考えるだろう:
- 機械は知識を蓄える必要がある。
- 機械は現在の状態を記録する必要がある。
- 機械は推論ルールを持つ必要がある。
- 機械は計算、推論、予測ができる必要がある。
- 機械は自分が何を知らないかを知っている必要がある。
これらの考えはすべて正しい。
しかし、それらはすぐに、より困難な問題にぶつかるだろう。
これらのものをどう表現するのか?
知識ベースをどう切り分けるのか?
状態変数をどう定義するのか?
ルールは誰が書くのか?
推論はいつ始まり、いつ止まるのか?
世界はあまりに大きい。
神の視点から知能を設計しようとすればするほど、「まず世界をモデル化して明らかにする」というステップで行き詰まりやすくなる。
一方、next-token predictionの賢い点は、まさに最初から私たちに知能全体を明示的に設計することを要求しない点にある。
問題を、極めて小さな動作に絞り込むのだ。
この動作はあまりに小さく、ほとんど退屈に思える。
しかし、工学的に三つの利点がある。
第一に、その教師信号が極めて密であることだ。
一千トークンのテキストは、単なる一つの訓練サンプルではなく、約千個の小問題なのである。
もし「次の文を予測する」に変更したら、教師信号は一気にスパースになる。
一つの文には、等しく合理的な多くの書き方があるかもしれない。
その境界も不安定だ。どこまでが一文か?次の文の長さは?それは回答か、説明か、反問か、それとも沈黙か?
第二に、トークンは組み合わせ可能であることだ。
一文はアトムではない。
それは一つの軌跡なのだ。
「私 → は → この → 問題 → の → 鍵 → は → 状態 → だと → 考える」
各ステップが次のステップを制限している。
各ステップはまた、モデルが前の状態を本当に理解しているかどうかを暴露している。
次の文を予測することが間違っているわけではない。
それは、軌跡全体の中間ステップをすべて隠してしまっているだけなのだ。
第三に、小さなステップの予測は繰り返し修正可能であることだ。
訓練中、モデルは各ステップでフィードバックを得る。
真のトークンが現れたとき、モデルがそれに与えた確率が低ければ、クロスエントロピーによって罰せられる。
これは、文章の最後になって初めて間違いに気づくのではないことを意味する。
モデルはあらゆる位置で問い詰められているのだ。
お前は今、何が起こっているのか本当に分かっているのか?
だから、次のトークンを予測することは、目標が小さいのではない。
教師信号が極めて密なのだ。
それは知能をおもちゃの問題に単純化しているのではない。
あまりに大きな問題を、学習可能な無数の小さなステップに分解しているのだ。
将棋でも同じだ。
もし棋譜の次の一手を予測するモデルを訓練するなら、それは表面的には一手を推測しているに過ぎない。
しかし、十分にうまく推測するには、局面、脅威、先手、後手、形勢、長期的な利益を理解しなければならない。
次の一手は知能のすべてではない。
しかし、次の一手は知能が盤上に見せる最小の断面である。
次のトークンも同じだ。
それは言語のすべてではない。
しかし、それは言語的知能がテキストの中に見せる最小の断面なのだ。
五、退屈な目標がいかにして知能を生み出すのか?
本当に深い部分はここにある。
次のトークン自体に魔法はない。
魔法は、人類が膨大な知的活動の痕跡をすべてテキストとして書き残してきたことにある。
小説は、人間の感情と関係性の圧縮である。
論文は、概念と証拠の圧縮である。
コードは、操作とルールの圧縮である。
教科書は、知識構造の圧縮である。
チャット履歴は、意図、礼儀、誤解、交渉の圧縮である。
インターネットはクリーンな真理のライブラリではない。
しかし、それは巨大な行動の遺跡なのだ。
モデルがこれらのテキストの次のトークンを予測するよう要求されるとき、実際には次のような問いを突きつけられているのだ。
例えば:
「日本の首都は ___」
「東京」と予測するには、知識が必要だ。
「もし A が B より大きく、B が C より大きいなら、A と C の関係は ___」
「AはCより大きい」と予測するには、推論が必要だ。
「def factorial(n):
if n == 0:
return 1
return ___」
「n * factorial(n - 1)」と予測するには、コードパターンと再帰構造が必要だ。
ユーザー:「この文章、きつすぎるから、もっと柔らかく言い換えて。」
アシスタントの回答:「___」
うまく答えるには、意図、口調、社会的文脈を理解する必要がある。
これが、一見退屈な目標が、複雑に見える能力を生み出す理由である。
「次の言葉を予測する」ことが「世界を理解する」ことと本質的に等しいからではない。
そうではなく、実際のコーパスにおいて、次の言葉はしばしば多くの隠れ変数が共同で作用した結果だからだ。
文法、事実、因果、役割、目標、スタイル、文脈、タスク制約、そのすべてがその言葉を出現させようと押している。
モデルが損失を減らしたければ、これらの隠れ変数を状態の中に押し込むことを学ばなければならない。
それは必ずしも人間のように理解しているわけではない。
また、必ずしも信頼できるわけでもない。
しかし、最適化目標から見れば、「学ばなければうまく予測できない」多くの構造を、確かに学ぶことを強いられているのだ。
これは、私たちがnext-token predictionを軽視すべきでない理由も説明している。
それは単なるスローガンではない。
それは、知能の設計問題を表現学習の問題に変換する方法なのだ。
これこそが、現代AIの最も直感に反するところである。
私たちは知能は「知識ベース、ルール、推論エンジン」から始まるべきだと考えていた。
その結果、知能はまず、これ以上ないほど小さな問題から始まったのだ。
次の記号は何か?
そして、十分に大きなデータ、十分に大きなモデル、十分に長い訓練の中で、この小さな問題が、逆に大きな問題を飲み込み始めたのだ。
六、文献にはとうにこの線が埋め込まれていた
この線は、今日になって初めて事後的に説明されたものではない。
多くの文献が、さまざまな場所に手がかりを残している。
マルコフが1913年に『エフゲニー・オネーギン』を研究したとき、彼が行っていたのは現代のNLPではない。
しかし彼は、「テキストは独立した記号の集まりではない」ということを、すでに数学のテーブルに載せていたのだ。
次の文字は前の状態に影響される。
言語は依存関係のある確率過程と見なすことができる。
Shannonが1948年に『通信の数学的理論』を書いたときも、似たような考えを用いていた。
彼は読者に、ゼロ次、一次、二次、さらにはより高次の英語近似を見せた。
次数が高いほど、生成されるテキストは英語らしくなる。
このことは重要だ。
それは、「言語らしさ」というものが、局所的な条件付き確率から徐々に成長しうることを示している。
後に、Nグラム言語モデルはこれを直接工学的に実装した。
これが、言語モデルの初期における最も標準的な形態の一つである。
Bengioらが2003年にニューラル確率的言語モデルを提案した際、従来のNグラムが次元の呪いに直面することを指摘した。
彼らの解決策は、「単語列の確率を予測する」という問題を放棄することではなく、ニューラルネットワークを用いて単語の分散表現を学習し、類似した文脈間での汎化を可能にすることだった。
さらにその後、GPT-2は事態をより率直に述べた。
大規模モデルは単純な目標で訓練される。
そして、大量のウェブページテキスト上で、この目標には自然と、質問応答、翻訳、要約、読解といったタスクの「自然なデモンストレーション」が含まれているのだ。
GPT-3はさらに、モデルとデータを拡大した後、フューショット能力が顕著に向上することを示した。
これは、論文の著者が今日のすべてをとうに予言していたということではない。
より正確に言えば、彼らは同じことを一層ずつ証明してきたのだ。
系列予測は端役ではない。それは言語的知能へと至るメインストリートなのだ。
エージェントの時代になり、別の文献の系譜もここに接続された。
強化学習におけるMDP/POMDPが関心を持つのは次の言葉ではない。それは:
「現在の状態において、どのような行動を取れば、システムをより良い未来へ導けるか?」
かくして、言語モデルという系譜と強化学習という系譜は、エージェントにおいて出会ったのだ。
一つはテキストから世界の影を学ぶことを担当する。
もう一つは、世界の中で次の行動を選択することを担当する。
これが、AIにおけるマルコフ思想の真の影響である。
それは単に「マルコフ連鎖」という公式だけを残したのではない。
それは世界を見る一つの方法を残したのだ。
まず過去の歴史のすべてを問うな。まず、現在の状態が十分に良いか、そして次のステップが何であるべきかを問え。
七、LLMはマルコフ連鎖か?
この質問は間違えやすい。
もしあなたがこう言うなら:
「LLMはマルコフ連鎖だ。」
それは不正確だ。
なぜなら、通常の一次マルコフ連鎖は現在のトークンだけを見るからだ。
P(x_t | x_{t-1})
一方、LLMは文脈全体を見る。
P(x_t | x_1, x_2, ..., x_{t-1})
直前の単語だけを見ているわけではない。
だから、伝統的な意味での「一次単語レベルマルコフ連鎖」ではない。
しかし、もしあなたがこう言うなら:
「LLMとマルコフには関係がない。」
それもまた不正確だ。
LLMの生成方式は、本質的には今なお一歩一歩の条件付き確率分解である。
P(x_1, x_2, ..., x_T) = \prod_{t=1}^{T} P(x_t | x_{<t})
言い換えれば:
LLMは毎ステップ問いかけている。
これまでに生成されたすべてのものに基づいて、次のトークンは何であるべきか?
これはマルコフの精神と高度に一致している。
重要な違いは、「現在の状態」が複雑になったことだ。
一次マルコフ連鎖にとっては:
現在の状態 = 前の単語
Nグラムにとっては:
現在の状態 = 前の n-1 個の単語
Transformerにとっては:
現在の状態 = 文脈全体をAttentionが圧縮した後の隠れ表現
もう少し工学的に言えば:
現在の状態 = トークン + 位置 + 残差ストリーム + KVキャッシュ
これこそが焦点である。
LLMは「状態 → 次のステップ」の枠組みから脱却したわけではない。
それは「状態」を巨大に、連続的に、学習可能にしただけなのだ。
一次マルコフ連鎖の状態は道路標識のようなものだ。
LLMの状態は、自律的に折りたたまれる地図のようなものだ。
前者は「あなたがどの地点に立っているか」を教えるだけだ。
後者は、あなたがこれまで歩いてきた道、道中の標識、タスクの目標、口調、暗黙のルールを、すべて高次元空間へと押し込む。
そして問うのだ。
次はどこへ進む?
これが、マルコフの亡霊が依然としてLLMの中にいると私が言う理由だ。
それはもはや粗末な遷移行列ではない。
それは状態表現を学習する巨大な機械へと変わったのだ。
八、次の言葉から、次の行動へ
もし物語がLLMで終わるなら、マルコフはすでに非常に重要だ。
しかし本当に面白いのはエージェントである。
なぜなら、エージェントは単に次の言葉を予測するだけではないからだ。
それは次の行動を予測しなければならない。
エージェントのループは、通常次のようになる。
これはマルコフ連鎖ではないのか?
少し違う。
より正確に言えば、それはマルコフ決定過程(MDP)に似ている。
通常のマルコフ連鎖には状態遷移しかない。
MDPには、行動と報酬という二つの要素が加わる。
状態 + 行動 → 新しい状態 + 報酬
表で確認しよう。
| MDPの構成要素 | エージェントにおける対応物 |
|---|---|
| 状態 State | 現在の文脈、ファイル内容、ツールの戻り値、タスク目標 |
| 行動 Action | ツールの呼び出し、検索、ファイル編集、テスト実行、ユーザーへの返信 |
| 遷移 Transition | 行動の後に環境がどのように変化するか |
| 報酬 Reward | タスクが完了したか、テストが通過したか、ユーザーが満足したか |
| 方策 Policy | エージェントが次の行動を選択するルール |
厳密に言えば、実際のエージェントは完全な世界の状態を見られないことが多い。
それは一部の観測結果しか見ていない。つまり、ターミナル出力、ウェブページの断片、ファイル内容、ツールの戻り値、ユーザーからの新しい指示。真の世界はそれが見ているものよりも大きい。
そのため、工学的により正確なモデルは部分観測マルコフ決定過程(POMDP)である。
しかし直感は変わらない。
エージェントの文脈とは、それが持つ「現在の世界」に対する信念状態なのだ。
だから、エージェントの核心問題はこれではない。
「次のトークンは何か?」
そうではなく、これだ。
「現在の状態で、目標を進めるために次に何をするのが最も可能性が高いか?」
これが言語モデルから行動モデルへの転換である。
LLMが予測するのはテキストのシーケンスである。
エージェントが予測するのは行動のシーケンスである。
LLM:
テキスト状態 → 次のトークン → 新しいテキスト状態
エージェント:
世界状態 → 次のaction → 新しい世界状態
これが、強化学習が自然に登場する理由でもある。
なぜなら、一度「行動」を持てば、「良い行動」と「悪い行動」の区別に直面せざるを得ないからだ。
ある一文が流暢に繋がったからといって、ツール呼び出しが正しいとは限らない。
ある計画が美しく見えたからといって、実行後に間違ったファイルを削除しないとは限らない。
あるウェブ閲覧動作が合理的に見えたからといって、それが本当に重要な証拠を見つけたとは限らない。
エージェントは紙の上で文章を書いているのではない。
エージェントは環境を変えているのだ。
一度環境を変えれば、世界はあなたに平手打ちを返すか、報酬を与えるかするだろう。
それがMDPの世界である。
九、Claude Codeがなぜマルコフシステムに似ているか
Claude Codeのようなコーディングエージェントを見ると、マルコフの風味はより明らかだ。
例えば、次のようなタスクを受け取ったとき。
「このテスト失敗の問題を修正して。」
それは直接、根拠なく答えを書いたりはしない。
それはラウンドごとに状態を進めていく。
各ステップの行動は、現在の状態に依存している。
そして現在の状態とは、単なるチャット履歴ではない。
それは以下を含む。
ユーザーの目標
コードベースの構造
既読ファイル
コマンド出力
テスト結果
ツール権限
未解決の問題
すでに行った修正
これこそが高次元の状態だ。
Claude Codeが優れているのは、「コードが書ける」という四文字ではない。
より正確に言えば、常に変化する状態空間の中で、次の行動を繰り返し選択できることだ。
これは従来のIDEの自動補完とは異なる。
自動補完が問うのは:
「次の一行のコードは何である可能性が高いか?」
コーディングエージェントが問うのは:
「この目標を達成するために、私は次にどこを見て、どこを修正し、何を実行し、何を検証すべきか?」
これがトークン予測から行動予測への飛躍である。
マルコフ連鎖の影はまだそこにある。
ただ、「状態」が一つの文字から、コードベース全体とタスクの文脈になっただけだ。
「遷移」が、一つの記号が次の記号に続くことから、ファイルを読み、コードを修正し、テストを実行することになった。
「確率」が、一枚の小さな遷移表から、高次元空間における大規模モデルの判断になったのだ。
十、マルコフ性の罠
ここに至るまで、マルコフは万能の鍵のように見える。
しかし、それには罠もある。
罠はあの言葉の中にある。
次のステップは現在の状態のみに依存する。
問題はこれだ。
あなたの現在の状態は十分か?
もし状態が薄すぎれば、重要な歴史を忘れてしまうだろう。
例えば、カスタマーサービスエージェントが、ユーザーの最後の一文だけを状態としている場合だ。
ユーザー:「じゃあ、さっきの案で行こう。」
もし「さっきの案」が何だったかを忘れてしまったら、もうおしまいだ。
もし状態が厚すぎれば、計算が追いつかないだろう。
インターネット全体、コードベース全体、すべての会話履歴、すべてのツール出力を状態に詰め込めば、理論上はもちろん最善だ。
しかし、コンテキストウィンドウ、アテンションコスト、検索品質、ノイズ干渉が、あなたを共に打ちのめすだろう。
だから、現代のAIシステムが本当に難しいのは、状態設計なのである。
どの歴史を必ず保持しなければならないか?
どれを圧縮できるか?
どれを検索すべきか?
どれを必ず忘れなければならないか?
どれを長期記憶に書き込むか?
どれを現在のコンテキストにだけ置くか?
これが、RAG、Memory、Context Engineering、Agent Stateといった概念が重要になる理由である。
現在流行しているOpenClawのようなパーソナルエージェントや、OpenAI Agents SDKで強調されているモデルネイティブハーネスも、同じ問題に答えている。
表面的には、それらはツール、ブラウザ、ターミナル、ファイルシステム、長期記憶、権限境界を追加している。
より低レイヤーで見れば、それらはモデルが毎ステップ見て、操作でき、制約を受けることができる世界を構築しているのだ。
つまり、こう問うているのである。
次の行動が起こる前に、システムはモデルに何を渡すべきか?
それらはすべて、同じ問題の周りを回っている。
モデルが正しい次のステップを踏めるように、十分に良い「現在」をどう構築するか?
この言葉は「プロンプトの書き方」よりもレイヤーが低い。
プロンプトは状態の一部に過ぎない。
ツールの戻り値は状態の一部である。
ファイルシステムは状態の一部である。
ユーザーの目標は状態の一部である。
過去の意思決定もまた、状態の一部なのである。
エージェント工学の中核は、whileループを書き出すことではない。
whileループは簡単だ。
難しいのは、各ループの開始時に、モデルが手にする「現在の状態」が一体どのようなものか、ということだ。
十一、三つの伏線がついに繋がった
さて、ここまで書いてきたいくつかの線をまとめよう。
Shannonは言った。
理解とは圧縮である。
Bayesは言った。
学習とは信念を更新することである。
Markovは言った。
知的エージェントは常に現在に立って、次のステップを予測しなければならない。
この三つの言葉を合わせると、LLMとエージェントの骨格になる。
Shannon:
歴史を構造へと圧縮する。
Bayes:
新しい証拠を見て分布を更新する。
Markov:
現在の状態に基づいて次のステップを選択する。
LLMがテキストを生成するとき、この三つのことが同時に起こっている。
エージェントが行動するときも、この三つのことが同時に起こっている。
だから、マルコフは「確率論の読み物」という孤立したテーマではない。
それは私たちのAI理解フレームワーク全体における、三本目の柱なのだ。
Shannonは私たちに「情報」の目を与えた。
Bayesは私たちに「学習」の目を与えた。
Markovは私たちに「過程」の目を与えた。
Markovなしでは、「次の言葉を予測する」ことがなぜ言語能力を育むのかを理解するのは難しい。
また、エージェントの本質が一連のツールではなく、絶えず展開する行動の軌跡であることを理解するのも難しいだろう。
十二、彼が考えもしなかったこと
再びプーシキンに立ち返ろう。
マルコフが母音と子音を数えていたとき、彼が気にかけていたのは、確率論における非常に技術的な問題だった。
独立性の仮定は緩和できるのか?
彼が証明したかったのは、変数間に依存関係があっても、ある種の極限定理は依然として成り立つということだ。
これは非常に狭く聞こえる。
世界を変えるような問題には、ほとんど思えないほどに。
しかし、多くの偉大な思想は、現れた当初はみなそうなのだ。
Shannonは当初、電話線でどうやって信号を送るかという問題を解決していた。
Bayesは当初、確率論の遺稿にある逆問題を解決していた。
Markovは当初、プーシキンの詩の母音と子音を数えていた。
彼らは誰も「AIを発明」していたわけではない。
しかし彼らは皆、AIに礎の一つを与えたのだ。
マルコフが残した礎は、六文字に凝縮できる。
状態が次のステップを決める。
もちろん、この言葉は注意深く理解されねばならない。
運命がすでに書かれていると言っているのではない。
未来に自由がないと言っているのでもない。
そうではなく、もし機械に時間の中で行動させたいなら、機械がその状態から次のステップを導き出せるような、一つの状態を与えなければならない、と言っているのだ。
これが、テキスト補完からコードエージェントへ、チャットボットから自動運転へ、ゲームAIからロボット制御へと至る、すべてにおいて避けて通れないものなのである。
知能は静的なものではない。
知能は常に時間の中で展開する。
そして、知能が時間の中で展開する限り、マルコフの亡霊はそこにいる。
彼はあらゆる「次のステップ」の背後に立っている。
主要参考文献と発展資料
- A. A. Markov, Extension of the limit theorems of probability theory to a sum of variables connected in a chain, 1906
- A. A. Markov, An Example of Statistical Investigation of the Text Eugene Onegin Concerning the Connection of Samples in Chains, 1913
- Claude Shannon, A Mathematical Theory of Communication, 1948
- Richard Bellman, Dynamic Programming, 1957
- Daniel Jurafsky and James H. Martin, Speech and Language Processing
- Yoshua Bengio, Réjean Ducharme, Pascal Vincent, Christian Jauvin, A Neural Probabilistic Language Model, 2003
- Andrej Karpathy, The Unreasonable Effectiveness of Recurrent Neural Networks, 2015
- OpenAI, Better Language Models and Their Implications, 2019
- OpenAI, Language Models are Few-Shot Learners, 2020
- Richard Sutton and Andrew Barto, Reinforcement Learning: An Introduction, 2nd edition, 2018