LLMのMTPについて

AI実装検定のご案内

LLMにおけるMTPとは、一般的に「Multi-Token Prediction」の略で、複数トークン予測と訳されます。

従来のLLMでは、現在までの文脈をもとに、基本的に次の1トークンを予測する「Next-Token Prediction」が用いられています。

一方、MTPでは、次の1トークンだけでなく、そのさらに先にある複数の未来トークンも学習対象に含めます。

たとえば、通常のNext-Token Predictionでは、

「東京は日本の」

という入力に対して、

「首都」

という次の1トークンを予測します。

その後、「東京は日本の首都」という文脈を使って、さらに次のトークンを予測します。

これに対してMTPでは、概念的には以下のように複数の未来トークンを予測します。

現在位置
↓
t+1
t+2
t+3
...

ただし、MTPの具体的な実装方法はモデルによって異なります。

複数の出力ヘッドを使って未来のトークンを予測する方式もあれば、DeepSeek-V3のように、追加のMTPモジュールを逐次的に接続する方式もあります。

目次

従来のNext-Token Predictionとの違い

Next-Token Predictionでは次の1トークンを予測する

一般的な自己回帰型LLMは、Next-Token Predictionを基本として学習します。

たとえば、

吾輩は

という入力が与えられた場合、

を予測します。

その後、

吾輩は猫

という新しい入力に対して、

を予測します。

このように、1トークンずつ順番に予測を繰り返して文章を生成します。

MTPではさらに先の未来も予測する

MTPでは、現在の位置から複数の未来トークンを予測対象にします。

概念的には、

入力:「吾輩は」

1トークン先 → 「猫」
2トークン先 → 「で」
3トークン先 → 「ある」

というイメージです。

数学的に表すと、Next-Token Predictionでは主に、xt+1x_{t+1}

を予測します。

MTPでは、xt+1,xt+2,,xt+kx_{t+1}, x_{t+2}, \dots, x_{t+k}

のように、複数の未来トークンを学習対象に加えます。

MTPが注目される理由

学習信号を増やせる

MTPの大きな特徴は、1つの文脈から得られる学習信号を増やせることです。

通常のNext-Token Predictionでは、

現在位置 → 次の1トークン

という学習が中心です。

MTPでは、

現在位置 → t+1
現在位置 → t+2
現在位置 → t+3

というように、複数の未来位置に対する予測損失を利用できます。

そのため、同じ学習データから、より高密度な教師信号を与えられる可能性があります。

DeepSeek-V3の技術報告でも、MTPによって学習信号を高密度化することが目的の一つとして説明されています。

将来のトークンも意識した内部表現を学習できる可能性がある

Next-Token Predictionでは、直接的には次の1トークンを正しく予測することが学習目標になります。

MTPでは、そのさらに先のトークンも予測しなければなりません。

そのため、モデルは直後のトークンだけでなく、その後の展開にも役立つ内部表現を学習するよう促される可能性があります。

これはしばしば「先を読む」「先を見据える」と説明されますが、人間のように明示的な計画を立てているという意味ではありません。

より正確には、将来の複数トークンを予測しやすい内部表現を形成するよう学習目標が設計されていると考えるのが適切です。

MTPの代表的な実装方法

複数の予測ヘッドを使用する方式

MTPの代表的な研究では、Transformer本体で得られた内部表現に対して、複数の予測ヘッドを接続する方式があります。

概念的には次のようになります。

                 ┌→ Head 1 → t+1
入力 → Transformer├→ Head 2 → t+2
                 ├→ Head 3 → t+3
                 └→ Head 4 → t+4

それぞれのヘッドが、異なる未来位置のトークンを予測します。

この方式では、同じTransformerの内部表現を利用しながら、複数の未来トークンについて学習できます。

すべてのMTPが並列予測とは限らない

ただし、MTPは「複数の独立したヘッドを並べる方式」だけを指すものではありません。

DeepSeek-V3では、単純な独立ヘッド方式とは異なり、MTPモジュールを逐次的に接続する設計が採用されています。

そのため、MTPは、

「次の1トークンだけではなく、さらに先の未来トークンも予測対象にする手法」

と広く捉える方が正確です。

DeepSeek-V3におけるMTPの仕組み

DeepSeek-V3では逐次型MTPが採用されている

DeepSeek-V3では、未来のトークンを単純に独立予測するのではなく、前段階の内部表現を利用しながら次の未来トークンを予測する構造が採用されています。

概念的には、

Main Model
↓
次のトークンを予測
↓
内部状態
+
対応するトークンEmbedding
↓
MTP Module
↓
さらに次のトークンを予測

という構造です。

前段階で得られた情報を次のMTPモジュールへ渡すことで、トークン間の因果関係を維持しながら予測を行います。

DeepSeek-V3ではMTP Depthは1

DeepSeek-V3のMTP設計自体は、複数のMTPモジュールを連結できるよう一般化されています。

しかし、実際のDeepSeek-V3ではMTP Depthは1に設定されています。

つまり、

Main Model → 次の1トークン
MTP Module → さらに次の1トークン

という構造です。

そのため、DeepSeek-V3について「次の2トークンを予測する」と表現されることがあります。

ただし、これはMTPモジュールだけで2つの追加トークンを予測するという意味ではありません。

通常のMain Modelによる1トークン予測と、MTP Moduleによる追加1トークン予測を合わせて、次の2トークンまで扱うという意味です。

MTPのメリット

学習効率を高められる可能性がある

MTPでは、同じ文脈から複数の未来位置に対する予測損失を得られます。

そのため、Next-Token Predictionのみの場合と比べて、学習信号をより高密度にできます。

結果として、学習データをより効率的に利用できる可能性があります。

ただし、MTPを導入すれば必ずすべてのモデルで性能が向上するわけではありません。

効果はモデルサイズ、データセット、予測深度、損失関数、アーキテクチャなどによって異なります。

モデル性能の向上につながる可能性がある

MTPは推論高速化のためだけに使用される技術ではありません。

学習時に将来の複数トークンを予測させることで、モデル本体の表現学習が改善される可能性があります。

DeepSeek-V3でも、推論時にMTPモジュールを使用しない場合であっても、MTPを用いて学習したことによる性能向上が確認されています。

この点からも、MTPは単なる推論高速化用モジュールではなく、学習方法としても重要な技術だといえます。

MTPと推論高速化の関係

通常のLLMは1トークンずつ生成する

一般的な自己回帰型LLMでは、基本的に1トークンずつ生成処理を進めます。

token 1を生成
↓
次のForward処理
↓
token 2を生成
↓
次のForward処理
↓
token 3を生成

この逐次性は、LLMの推論速度を制限する要因の一つです。

モデルが非常に大きくなるほど、トークンごとのForward処理に必要な計算量も増えます。

MTPでは未来トークンの候補を先に作れる

MTPを利用すると、現在位置から複数の未来トークン候補を作れる場合があります。

たとえば、

The capital of Japan is

という入力に対して、

Tokyo .

といった未来トークン候補を先に用意できます。

ただし、ここで重要なのは、MTPが予測したトークンがそのまま確定するとは限らないことです。

予測された未来トークンは、推論高速化に利用する場合、基本的には候補として扱われます。

MTPとSpeculative Decodingの関係

Speculative Decodingとは

Speculative Decodingは、日本語では投機的デコーディングなどと呼ばれます。

通常のLLMより軽量な仕組みなどを使って先に未来のトークン候補を生成し、その候補をターゲットモデルでまとめて検証することで推論を高速化する手法です。

MTPは、この未来トークン候補を生成する仕組みとして利用できます。

概念的には、

MTP
↓
複数の未来トークン候補を生成
↓
Target Model
↓
候補をまとめて検証
↓
受理されたトークンを確定

という流れになります。

MTPの予測結果がそのまま採用されるわけではない

MTPが複数の未来トークンを生成したとしても、それらがすべてそのまま採用されるわけではありません。

ターゲットモデル側で候補を検証し、受理できるものだけを使用します。

そのため、

MTPで4トークンを予測
=
必ず4トークンを一度に確定

ではありません。

どれだけ多くの候補トークンが受理されるかによって、実際の高速化効果は変わります。

Acceptance Rateが重要になる

Speculative Decodingでは、候補トークンのAcceptance Rate、つまり受理率が重要です。

MTPが高精度な未来トークンを予測できれば、多くの候補をまとめて採用できます。

一方、候補が頻繁に却下されれば、大きな高速化効果を得にくくなります。

DeepSeek-V3では、追加予測するトークンについて高いAcceptance Rateが報告されており、MTPをSpeculative Decodingへ利用できることが示されています。

ただし、実際の速度向上率はGPU、推論エンジン、バッチサイズ、出力内容、モデル構成などによって変わります。

MTPは完全な並列文章生成ではない

自己回帰構造そのものがなくなるわけではない

MTPについて、

「複数のトークンを一度に生成できるなら、LLMを完全に並列化できるのではないか」

と考えることがあります。

しかし、MTPを採用したからといって、自己回帰型LLMの因果構造がなくなるわけではありません。

文章生成では依然として、

前の文脈
↓
次のトークン
↓
さらに次のトークン

という依存関係があります。

MTPはその構造を完全に取り除くのではなく、未来を先読みすることで逐次生成の一部を効率化する技術と考えると分かりやすいでしょう。

MTPのデメリットや課題

遠い未来ほど予測が難しくなりやすい

一般的に、現在位置から遠い未来ほど予測の不確実性は高くなります。

例えば、

私は今日

という文脈から次の1トークンを予測する場合と、10トークン先の内容を正確に予測する場合では、後者の方が難しくなります。

そのため、単純にMTPの予測深度を増やせば増やすほど性能が良くなるわけではありません。

予測深度を大きくしすぎると、追加トークンの予測精度が低下する可能性があります。

計算量やモデル構造が増える

MTPを導入するためには、追加の出力ヘッドやMTPモジュールが必要になる場合があります。

そのため、学習時の計算量やメモリ使用量が増加する可能性があります。

重要なのは、

「追加コストよりも、学習効率や推論効率の向上が大きいか」

というバランスです。

MTPを簡単に例えると

MTPは、文章を書くときの「先読み」に例えることができます。

Next-Token Predictionでは、

先生:
「次の1文字だけ考えてください」

生徒:
「東」

先生:
「では、その次は?」

生徒:
「京」

というように、目の前の1トークンずつ考えます。

MTPでは、

先生:
「少し先まで考えてください」

生徒:
「東京は」

というように、複数の未来トークンを考えます。

ただし、実際のLLMでは単純に未来の単語をまとめて確定しているわけではありません。

特に推論高速化へ利用する場合は、先読みした候補をターゲットモデルで検証する処理が必要です。

MTPが近年重要になっている理由

近年のLLMは大規模化が進み、モデル性能だけでなく推論コストも非常に重要になっています。

LLMサービスでは、

  • Tokens Per Second
  • 推論レイテンシ
  • GPU使用量
  • メモリ使用量
  • 1リクエストあたりの計算コスト

などが重要な指標になります。

モデルが巨大になるほど、1トークン生成するだけでも多くの計算が必要です。

そこで、MTPを活用して未来トークンを先読みし、Speculative Decodingと組み合わせて複数トークンを効率的に処理できれば、LLMサービス全体の推論効率を高められる可能性があります。

そのためMTPは、

「モデルの学習効率を改善する技術」

であると同時に、

「高速推論にも応用できる技術」

として注目されています。

MTPと関連技術の違い

MTPとSpeculative Decodingの違い

MTPとSpeculative Decodingは同じものではありません。

MTPは、

「未来の複数トークンを予測する仕組み」

です。

一方、Speculative Decodingは、

「先に生成した未来トークン候補をターゲットモデルで効率的に検証する推論方法」

です。

したがって、

MTP
↓
未来トークン候補を作る

Speculative Decoding
↓
候補を検証して効率的に採用する

という関係だと考えると理解しやすいでしょう。

MTPとMoEは目的が異なる

MoEはMixture of Expertsの略で、複数のExpertネットワークのうち必要なものだけを利用することで、モデル容量を増やしながら計算量を抑える仕組みです。

一方、MTPは未来の複数トークンを予測対象にする技術です。

そのため、

MoE
→ モデル内部の計算を効率化する

MTP
→ 複数の未来トークンを予測する

という違いがあります。

DeepSeek-V3では、MoEとMTPの両方が採用されています。

MTPについて理解しておきたいポイント

MTPについて特に重要なのは、次の点です。

MTPは、Multi-Token Predictionの略で、次の1トークンだけではなく、さらに先の未来トークンも予測対象にする技術です。

ただし、すべてのMTPが複数トークンを完全に並列予測するわけではありません。

複数ヘッド方式もあれば、DeepSeek-V3のような逐次的なMTPモジュール方式もあります。

また、MTPは単なる高速化技術ではありません。

学習時の教師信号を高密度化し、モデル本体の性能改善につながる可能性があります。

さらに、推論時にはSpeculative Decodingと組み合わせることで、未来トークンを先読みし、自己回帰生成のボトルネックを軽減できる可能性があります。

まとめ

LLMにおけるMTPとは、通常のNext-Token Predictionのように直後の1トークンだけを予測するのではなく、さらに先の複数の未来トークンも学習対象に含める技術です。

MTPを導入することで、同じテキストから得られる学習信号を増やし、将来のトークン予測にも役立つ内部表現の学習を促せる可能性があります。

また、推論時にはMTPによって未来トークン候補を生成し、Speculative Decodingと組み合わせて検証することで、複数トークンを効率的に処理できる場合があります。

ただし、MTPが予測した複数トークンが無条件ですべて採用されるわけではありません。

実際の高速化効果は、未来トークンの予測精度やAcceptance Rate、推論環境などに左右されます。

DeepSeek-V3では逐次型のMTP構造が採用されており、実際のMTP Depthは1です。

そのため、Main Modelによる次トークン予測に加え、MTP Moduleによってさらに1つ先のトークンを予測する構造になっています。

MTPは、単なる「複数トークンを一度に出す技術」ではなく、LLMの学習効率・モデル性能・推論速度の3つに関係する重要な技術として理解するとよいでしょう。

以上、LLMのMTPについてでした。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次