LLMの確率計算の基本

【 -LLMの確率計算の基本 】

先のセッションでは、Bradleyの2025年の論文の前半部分の中心的な内容である「命題 1」の証明の概略を述べましたが、その細部は省略していました。

このセッションでは、「命題 1」の証明に必要なLLMの確率計算の基本を確認したいと思います。証明は次のセッションで行います。

「命題 1」は、次のことを主張しています。

命題1.言語Lにおける未完成テキストxが与えられたとき、関数𝜋(−│𝑥) |_𝑇(𝑥) は入力xの終端状態上の確率質量関数である。

【  基本的な用語の確認 】

「命題 1」に出てくる基本的な言葉の意味を確認しておきましょう。ここでは、次のような用語の意味を確認します。特に「確率質量関数」では、具体的な例をいくつかあげておきました。

 ・未完成テキスト
 ・完成テキスト
 ・終端状態集合 𝑇(𝑥)
 ・確率質量関数

 ・カテゴリーLのオブジェク𝑜𝑏(𝐿)
 ・カテゴリーLの射 x → y
 ・部分カテゴリー 𝐿_𝑥

【 確率分布𝑝_𝑥( −|𝑥 )の生成と その分布の下でのサンプリング 】

・LLMは、テキスト 𝑥 が与えられた時、次に出現するトークンを予測する確率分布 𝑝_𝑥( −|𝑥 )を生成します。
・LLMは、一つのトークン 𝑎 を選んで𝑥に追加して、テキストを一つ分延長して 𝑥𝑎にします。
・このとき、𝑥の後ろに一つのトークン𝑎が追加される確率は、𝑝_𝑥( a|𝑥 )になります。

【 Next Token 確率 𝑝_x( a|x ) 】

テキスト x が与えられた時、次に出現するトークンを予測する確率分布 𝑝_x( −|x) を、Next Token 確率分布といいます。

この分布の下でaをサンプリングして、テキストxの次のトークンがaとなることを表す確率𝑝_x( a|x )  を「Next Token 確率」と呼びます。

定義 2 の𝜋(y|𝑥) の定義は、もし、 x→yであるyが、xにk個のトークンを追加したものなら、その値は、k個の Next Token 確率の積で定義されるということです。

【 パス確率 𝜋(y|𝑥)と Next Token 確率 𝑝(𝑎|𝑥) 】

x, y, zが x → y → z を満たす3つの文字列であるとしましょう。この時、次のように記述ができます。

𝑥 = ⊥𝑎_1⋯𝑎_t 
𝑦 = ⊥𝑎_1⋯𝑎_t 𝑎_(𝑡+1)⋯𝑎_(t+𝑘)
𝑧 = ⊥𝑎_1⋯𝑎_𝑡 𝑎_(𝑡+1)⋯𝑎_(t+𝑘) 𝑎_(t+𝑘+1)⋯𝑎_(𝑡+𝑘+𝑘’)

文字列 x は、t個のトークンからなり、
文字列 y は、文字列 x の後ろにk個のトークンを追加したもので、
文字列 z は、文字列 y の後ろにk’個のトークンを追加したものです。

関数 𝜋(y|𝑥)でも 𝜋(z|𝑥)でも、関数𝜋は、 x → y → z を満たす任意の長さの文字列間の関係を表現できます。

ただ、 Next Token 確率を表す 𝑝(𝑎│𝑥)は、xの長さは、任意ですが、aは必ず一つのトークンでなければなりません。

実は、「命題 1」の証明ができれば、関数 𝜋(y|𝑥) は、「プロンプト文字列 x が与えられた時、LLMの出力がyとなる確率」として解釈できるのですが、それはこれからの課題です。

「命題 1」の証明後には、𝜋(y|𝑥)で表される確率を、「パス確率」と呼ぶことがあります。

【 文字列の分解とパス確率 𝜋(𝑥𝑎│𝑥)の展開 】

「パス確率」という考えを使うと、next token 確率と合わせて、次のような導出ができるようになります。

いま、文字列aが、m個のトークンからできているとします。この文字列の最後のトークンをa’’とし、その前のm-1個のトークンからできている文字列をa’ として文字列aを𝑎’𝑎’’に分解します。

  𝑎 = 𝑎’𝑎’’
  𝑎 ∈ 𝐴^𝑚 = 𝐴^(𝑚−1)×𝐴,
  a’ ∈ 𝐴^(𝑚 −1), a’’∈ A

この時、
  𝜋(𝑥𝑎│𝑥) = 𝜋( 𝑥𝑎'𝑎′′│𝑥 ) = 𝜋(𝑥𝑎′│𝑥) ⋅𝑝(𝑎′′│𝑥𝑎′ )
が成り立ちます。

𝜋(𝑥𝑎′│𝑥)は、プロンプト x から中間テキスト xa' までのパス確率です。
𝑝(𝑎′′│𝑥𝑎′ )は、テキスト xa' が与えられたときの、次のトークンとして a'' が生成されるnext token確率です。

ここでは、パス確率ということばを使っていますが、 𝜋(𝑥𝑎│𝑥) が確率質量関数であるという証明されるべき事実を利用しているわけではありません。定義 2 のm-1個のnext token確率の積を、 𝜋(𝑥𝑎^′│𝑥)とみなしているだけです。

----------------------------

まとめページ「LLMのマグニチュード論」
https://www.marulabo.net/docs/llm1bradley2/

ムービーの再生リスト「LLMのマグニチュード論  -- エピソード」
https://www.youtube.com/playlist?list=PLQIrJ0f9gMcMjv25F7mabNGdzKUVt-2CZ

本日のムービーのpdf 「 LLMの確率計算の基本 」
https://drive.google.com/file/d/182D1nhVmjk6stoKjQ2Q0VwmxB_PrgZn2/view?usp=sharing

本日のムービー「  LLMの確率計算の基本 」
https://youtu.be/7KJeDC482AI?list=PLQIrJ0f9gMcMjv25F7mabNGdzKUVt-2CZ

コメント

このブログの人気の投稿

初めにことばありき

密度行列とは何か?

「複雑性理論」は「複雑系」の議論とは別のものです