Continuous Speculative Decoding for Autoregressive Image Generation
Zili Wang1,2
Robert Zhang3
Kun Ding1,2
Qi Yang1,2
Fei Li4
Shiming Xiang1,2
1 University of Chinese Academy of Sciences, China
2 Institute of Automation, Chinese Academy of Sciences, China
3 Independent Researcher 4 China Tower Corporation Limited
Abstract 連続値自己回帰(AR)画像生成モデルは、離散トークンモデルと比較して顕著な優位性を示し、優れた再構成品質と高い生成忠実度を実証している。しかしながら、自己回帰フレームワークの計算要求により、推論に大きなオーバーヘッドが生じる。大規模言語モデル(LLM)の高速化に投機的デコーディングが効果的であることが証明されているが、連続値視覚自己回帰モデルへの適応はまだ探求されていない。
本稿では、投機的デコーディングアルゴリズムを離散トークンから連続空間へと一般化する。出力分布の本質的な特性を分析することで、このようなモデルで一般的な拡散分布に適した受理基準を確立する。投機的デコーディングの出力分布に生じる不整合を克服するために、我々は雑音除去軌道の整列とトークンの事前充填手法を導入する。さらに、棄却フェーズにおけるサンプリングが困難な分布を特定する。この問題を緩和するために、我々は適切な上限を持つ慎重な受理棄却サンプリング法を提案し、複雑な積分を回避する。
実験結果は、我々の連続投機的デコーディングが、出力分布を維持しながら、既存のモデルで顕著な2.33 × 2.33\times 2.33 × 倍の高速化を達成することを示している。コードは以下で公開予定である:https://github.com/MarkXCloud/CSpD
1 Introduction
自己回帰(AR)モデルは、画像生成タスクにおいて顕著な優位性を示してきた [39 , 38 , 7 , 10 , 30 , 20 , 45 , 4 , 36 ] 。これらは、以前に生成されたトークンに基づいて次のトークンを順次予測する。一般的に、入力画像はベクトル量子化(VQ)を通じてピクセル空間から離散トークン空間に変換され、その後ARモデルが分類タスクとして次のトークンを予測する。このアプローチは画像生成において大きな可能性を示してきた。しかし、VQ操作は訓練中の不安定性を引き起こし、画像の微妙な詳細を捉えるには不十分である可能性がある [45 , 26 ] 。
最近、別のアプローチとして、拡散モデル [15 , 28 ] を使用して視覚トークンを連続分布に埋め込む方法が提案されている [37 , 21 , 41 ] 。次のトークン予測は、自己回帰モデルの出力によって条件付けられた除ノイズプロセスを通じて行われる。これらは離散ベクトル量子化に関連する問題を軽減するだけでなく、より高品質な画像の生成を可能にする [13 , 11 ] 。
図2 :
離散値と連続値の投機的デコーディングの比較。離散モデルは出力確率を便利に計算し、修正された分布からサンプリングすることができる。対照的に、連続モデルでは確率の計算方法を決定する必要があり、ドラフトおよびターゲット出力分布を介して修正された分布からサンプリングすることはしばしばより困難である。
しかしながら、自己回帰モデルの推論は、逐次的なデコーディングのため遅く、コストがかかる。LLMにおける投機的デコーディング [19 , 5 ] は、ドラフトと検証を通じて推論コストを削減することを目的としている。これには、小規模なドラフトモデルがドラフトトークンの列 p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) を生成することが含まれる。その後、より精度の高いターゲットモデル q ( x ) 𝑞 𝑥 q(x) italic_q ( italic_x ) が各トークンを検証し、受け入れるか拒否するかを決定し、新しいトークンを再サンプリングする。
しかしながら、投機的デコーディングは連続値の自己回帰モデルには適用されていない。
最近の研究 [35 , 16 ] では離散トークンに導入されているが、連続確率密度関数(PDF)への適用は実現可能ではない。図 2 に示すように、以下の課題が生じる。
a) 連続的な状況では、ドラフトとターゲット分布 q ( x ) 𝑞 𝑥 q(x) italic_q ( italic_x ) と p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) のPDFをどのように計算するか、そして検証のための受け入れ基準(p ( x ) / q ( x ) 𝑝 𝑥 𝑞 𝑥 p(x)/q(x) italic_p ( italic_x ) / italic_q ( italic_x ) と呼ばれる)をどのように計算するかを確立する必要がある。さらに、ドラフトとターゲットの出力間には明確な不一致が存在し、投機的デコーディング中の受け入れ率が低くなる。
b) 拒否後の再サンプリング段階では、修正された分布からサンプリングして新しいトークンを生成しなければならない。しかし、この分布は複雑な積分を含むため、解析的な形式を導出し、直接サンプリングすることが困難である。
この目的のため、我々は連続的投機的デコーディング を導入する。これは投機的デコーディングアルゴリズムを連続トークン空間に拡張した初めての手法である。受理基準p ( x ) / q ( x ) 𝑝 𝑥 𝑞 𝑥 p(x)/q(x) italic_p ( italic_x ) / italic_q ( italic_x ) を確立するために、出力端での拡散プロセスの包括的な分析を通じて、2つのPDFを得るための適切な計算方法を導出する。出力の一貫性を向上させるために、ドラフトモデルとターゲットモデルの出力分布を整合させる雑音除去軌道アラインメントを導入する。また、自己回帰プロセスにおける不整合性に対しては、初期の受理率の低さの問題を緩和し、推論速度を損なうことなく全体的な受理率を向上させるトークン事前充填戦略を導入する。棄却とリサンプリングの段階では、解析的な形式を持たない修正されたPDFに対して受理棄却サンプリング[2 ] を採用する。適切な上限を設定することで、複雑な積分を回避し、修正された分布のサンプリングを簡略化することに成功した。従来の投機的デコーディングと同様に、これらの構成の下で、本手法は投機的デコーディングプロセスの出力分布がターゲットモデル単独の場合と一致することを保証する。
我々の連続的投機的デコーディングフレームワークは、追加の訓練手順、モデルアーキテクチャの変更、または出力分布の変更を必要とせずに、既存の連続値視覚自己回帰モデルにシームレスに統合できる。
広範な実験により、定性的および定量的評価を通じて本アルゴリズムの有効性を実証する。さらに、様々な構成のオープンソースMARモデル[21 ] における実行時間の改善を測定し比較する。また、ImageNet 256 × 256 256 256 256\times 256 256 × 256 生成におけるFréchet Inception Distance (FID) [14 ] とInception Score (IS) [31 ] を用いたパフォーマンス指標も報告する。図1 に示すように、本稿の連続的投機的デコーディングアルゴリズムは、元の生成品質を大きく維持しながら、最大2.33 × 2.33\times 2.33 × の顕著な推論速度向上を達成する。
我々の貢献は以下のように要約できる:
•
我々は、投機的デコーディングを連続空間に拡張し、連続値の自己回帰型画像生成に適応させた最初の研究である。
•
我々は、連続確率密度関数に適した受理基準を確立し、解析的な形式を持たない修正された分布の受容棄却サンプリングを通じて、積分を必要としないサンプリング方法を確立した。
•
我々は、分布を整合させるためのデノイジング軌道整合と、初期ステップの低い受理率の問題に対処するためのトークン事前充填法を導出した。
•
追加の訓練、モデルアーキテクチャの修正、または出力分布の変更なしに、我々の手法は2.33 × 2.33\times 2.33 × の高速化を達成し、同等の画質を実現した。
図3 :
我々が提案する連続投機的デコーディングの概要。連続投機的デコーディングは、連続自己回帰モデルの拡散モデル成分を活用する。トークン1 ∼ 3 similar-to 1 3 1\sim 3 1 ∼ 3 は接頭トークンであり、トークンx 𝑥 x italic_x が検証対象である。ドラフトモデルとターゲットモデルから確率密度値を取得し比較した後、q ( x ) < p ( x ) 𝑞 𝑥 𝑝 𝑥 q(x)<p(x) italic_q ( italic_x ) < italic_p ( italic_x ) であれば、x 𝑥 x italic_x が受理される。そうでない場合、x 𝑥 x italic_x は確率1 − p ( x ) q ( x ) 1 𝑝 𝑥 𝑞 𝑥 1-\frac{p(x)}{q(x)} 1 - divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG で棄却され、その後、修正された分布から受容棄却サンプリングを通じてx ′ superscript 𝑥 ′ x^{\prime} italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT を得る。
2 Related Work
2.1 Autoregressive Image Generation
自己回帰(AR)モデルは次のトークン予測に用いられ、画像生成において重要な応用がある。
初期の研究 [12 , 38 , 39 , 7 , 29 , 6 , 9 ] では、CNN [38 , 7 ] 、RNN [39 ] 、Transformer [29 , 6 , 9 ] を用いてピクセルシーケンスレベルでの自己回帰型画像予測を行っている。
LLMに触発され、その後の研究 [40 , 10 , 30 , 43 ] では、画像生成を離散トークン分類として捉えている。これに基づき、マスク生成モデル [3 , 20 , 4 ] はランダムマスキングを通じて生成モデルを訓練する。
VAR [36 ] は自己回帰パラダイムを次のスケール予測に修正し、予測のスケールを徐々に増加させる。自己回帰言語モデルと同様に、離散トークン予測を通じたAR画像生成は、テキスト条件付き画像生成にスケーラブルである [44 , 24 , 33 , 46 ] 。しかし、離散画像トークナイザーの訓練は困難であり、詳細な視覚情報を伝達する能力が制限される可能性がある [45 , 26 ] 。GIVT [37 ] はガウス混合モデルを通じて連続トークンを表現する。MAR [21 ] とDisCo-Diff [41 ] は自己回帰モデルによって条件付けられた拡散プロセス [15 , 28 ] を通じてトークンを生成する。拡散プロセスを用いた視覚ARモデルもテキスト条件付き画像生成へのスケーラビリティを示している [11 ] 。DART [13 ] は画像全体のノイズ除去プロセス内で自己回帰ステップを実行する。HART [34 ] は離散トークンと連続トークナイザーを用いて画像を生成し、離散トークンの分類と原始的な視覚トークンと離散トークン間の残差のノイズ除去を行う。RAR [47 ] は双方向コンテキスト学習を改善するためにランダム化された置換目的関数を採用している。しかし、自己回帰モデルは推論のオーバーヘッドが大きいという問題がある。ステップバイステップの生成により推論速度が低下する。
2.2 Speculative Decoding
投機的デコーディング [19 , 5 ] は、ドラフトモデルをターゲットモデルで検証することにより、ロスレスな加速を実現する。これに続き、先行研究は主にドラフトモデルのオーバーヘッド削減とドラフトモデルとターゲットモデル間の一貫性強化に焦点を当てている。
SpecInfer [27 ] は複数の小規模ドラフトモデルを採用し、それらの予測をツリー構造に集約して、ツリーベースの並列デコーディングによって検証する。
Medusa [1 ] は、元のLLMの特徴を使用し、別の分類ヘッドセットを訓練することで複数のドラフトを予測する。その後、これらのドラフトはツリーアテンションによって検証される。
Eagle [22 , 23 ] は、特徴の不確実性問題に対処するため、トークンレベルではなく特徴レベルでの予測を通じてドラフトの精度を向上させる。
ヤコビ反復法もデコーディングプロセスにおける推論オーバーヘッドの削減に使用される [32 , 49 , 48 , 18 ] 。
Online Speculative Decoding [25 ] とDistillSpec [50 ] は、より多くの訓練によってドラフトモデルの出力をターゲットモデルと整合させる。
投機的デコーディングは理論的にはロスレスな加速を達成できるが、より大きな高速化率の下では生成品質が影響を受ける可能性がある。BiLD [17 ] はより緩和された受け入れ条件を提案している。さらに、ターゲットモデルのファインチューニングも生成品質を向上させることができる [1 , 18 , 42 ] 。
投機的デコーディングは、離散トークンを使用する視覚ARモデルに直接適用できる。SJD [35 ] は、画像生成の多様性を維持しながら、投機的デコーディングを追加することでヤコビ反復プロセスを改善する。LANTERN [16 ] は分布の曖昧さに着目し、緩和を用いてより柔軟な候補トークンを追加し、高い画質を維持する。これらの研究は視覚的自己回帰モデルの高速化に大きく貢献している。しかし、これらは主に離散トークンに焦点を当てており、連続空間については探求していない。対照的に、我々の研究は連続出力空間におけるARモデルでの投機的デコーディングを実証している。
3 Methodology
3.1 Preliminaries
LLMの実践において、投機的デコーディングは出力分布q ( x ) 𝑞 𝑥 q(x) italic_q ( italic_x ) を持つドラフトモデルM q subscript 𝑀 𝑞 M_{q} italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT と、出力分布p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) を持つターゲットモデルM p subscript 𝑀 𝑝 M_{p} italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT を利用する。
まず、ドラフトモデルはx ∼ q ( x ) similar-to 𝑥 𝑞 𝑥 x\sim q(x) italic_x ∼ italic_q ( italic_x ) をサンプリングしてドラフトトークンを予測する。次に、ターゲットモデルはこれらのトークンを並行して検証し、p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) を出力する。p ( x ) q ( x ) > 1 𝑝 𝑥 𝑞 𝑥 1 \frac{p(x)}{q(x)}>1 divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG > 1 の場合、ドラフトトークンは受け入れられる。そうでない場合、確率1 − p ( x ) q ( x ) 1 𝑝 𝑥 𝑞 𝑥 1-\frac{p(x)}{q(x)} 1 - divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG でトークンを棄却し、修正された分布p ′ ( x ) = n o r m ( m a x ( 0 , p ( x ) − q ( x ) ) = m a x ( 0 , p ( x ) − q ( x ) ∑ x ′ m a x ( 0 , p ( x ′ ) − q ( x ′ ) ) p^{\prime}(x)=norm(max(0,p(x)-q(x))=\frac{max(0,p(x)-q(x)}{\sum_{x^{\prime}}%
max(0,p({x^{\prime}})-q({x^{\prime}}))} italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) = italic_n italic_o italic_r italic_m ( italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_m italic_a italic_x ( 0 , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) - italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ) end_ARG からx 𝑥 x italic_x を再サンプリングする。この手順により、投機的デコーディングはターゲットモデルとして元の出力分布x ∼ p ( x ) similar-to 𝑥 𝑝 𝑥 x\sim p(x) italic_x ∼ italic_p ( italic_x ) を保持する。
投機的デコーディングの先行研究では、モデルの出力は離散分布に従っていた。しかし、MARのような連続値の視覚的ARモデル[21 ] は、連続分布からサンプリングしてトークンを生成する。この違いにより、投機的デコーディングを直接適用することができない。
本節では、図3 に示すように、連続値の視覚的ARモデルの文脈における投機的デコーディングについて詳述する。連続的投機的デコーディングのより詳細な証明と正確性については、補足資料に記載されている。
3.2 How to determine the acceptance criterion by draft and target distributions?
離散的な状況とは異なり、連続空間におけるp ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) はx 𝑥 x italic_x の確率密度関数(PDF)を表す。我々の目標は、我々のアルゴリズムを通じてPDF p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) と同じ分布を維持することである。したがって、ドラフトと目標出力分布のPDFの比率を受理基準として直接得ることができる。つまり、p ( x ) q ( x ) > 1 𝑝 𝑥 𝑞 𝑥 1 \frac{p(x)}{q(x)}>1 divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG > 1 であれば、ドラフトトークンは受理される。そうでない場合、確率1 − p ( x ) q ( x ) 1 𝑝 𝑥 𝑞 𝑥 1-\frac{p(x)}{q(x)} 1 - divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG でトークンを棄却する。次のステップはp ( x ) q ( x ) 𝑝 𝑥 𝑞 𝑥 \frac{p(x)}{q(x)} divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG を計算することである。
連続自己回帰モデルの出力分布は通常、DDPM[15 ] によって決定される拡散過程を介して得られるため、トークンx = x 0 𝑥 subscript 𝑥 0 x=x_{0} italic_x = italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT をサンプリングするには、逆拡散(ノイズ除去)過程を通じてp ( x 0 | x T ) 𝑝 conditional subscript 𝑥 0 subscript 𝑥 𝑇 p(x_{0}|x_{T}) italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) をサンプリングする。ここで、x T subscript 𝑥 𝑇 x_{T} italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT はガウシアンノイズである。ノイズ除去過程の優れた特性は、サンプリング過程がマルコフ連鎖であることである。我々は以下を通じてp ( x ) q ( x ) 𝑝 𝑥 𝑞 𝑥 \frac{p(x)}{q(x)} divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG を計算できる:
p ( x 0 | x T ) q ( x 0 | x T ) = p ( x T ) ∏ t = 1 T p ( x t − 1 | x t ) q ( x T ) ∏ t = 1 T q ( x t − 1 | x t ) , 𝑝 conditional subscript 𝑥 0 subscript 𝑥 𝑇 𝑞 conditional subscript 𝑥 0 subscript 𝑥 𝑇 𝑝 subscript 𝑥 𝑇 superscript subscript product 𝑡 1 𝑇 𝑝 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 𝑞 subscript 𝑥 𝑇 superscript subscript product 𝑡 1 𝑇 𝑞 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 \frac{p(x_{0}|x_{T})}{q(x_{0}|x_{T})}=\frac{p(x_{T})\prod_{t=1}^{T}p(x_{t-1}|x%
_{t})}{q(x_{T})\prod_{t=1}^{T}q(x_{t-1}|x_{t})}, divide start_ARG italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) end_ARG start_ARG italic_q ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) end_ARG = divide start_ARG italic_p ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) ∏ start_POSTSUBSCRIPT italic_t = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_p ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) end_ARG start_ARG italic_q ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) ∏ start_POSTSUBSCRIPT italic_t = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_q ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) end_ARG ,
(1)
ここで、条件付き確率分布p ( x t − 1 | x t ) 𝑝 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 p(x_{t-1}|x_{t}) italic_p ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) はニューラルネットワークθ 𝜃 \theta italic_θ によってガウス分布として近似される[28 ] :
p θ ( x t − 1 | x t ) = 𝒩 ( x t − 1 ; μ θ ( x t , t ) , Σ θ ( x t , t ) ) , subscript 𝑝 𝜃 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 𝒩 subscript 𝑥 𝑡 1 subscript 𝜇 𝜃 subscript 𝑥 𝑡 𝑡 subscript Σ 𝜃 subscript 𝑥 𝑡 𝑡
p_{\theta}(x_{t-1}|x_{t})=\mathcal{N}(x_{t-1};\mu_{\theta}(x_{t},t),\Sigma_{%
\theta}(x_{t},t)), italic_p start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) = caligraphic_N ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT ; italic_μ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT , italic_t ) , roman_Σ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT , italic_t ) ) ,
(2)
ここで、μ θ subscript 𝜇 𝜃 \mu_{\theta} italic_μ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT とΣ θ subscript Σ 𝜃 \Sigma_{\theta} roman_Σ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT はθ 𝜃 \theta italic_θ によって予測される平均と分散である。しかし、ドラフトモデルと目標モデルの違いにより、ノイズ除去過程に大きな不整合が存在する。図4 に示すように、ドラフトモデルと目標モデルのノイズ除去軌跡は異なる出力に分岐し、明確に異なる最終生成分布をもたらす—整合性の欠如は極めて低い受理確率をもたらす。
図4 :
ノイズ除去軌跡の整列の図示。ノイズ除去過程は、徐々にノイズを除去することでノイズ分布をデータ分布にマッピングする。これらのノイズ除去ステップは軌跡を生成する。整列された軌跡は類似した出力分布をもたらし、整列されていない軌跡はより異なる分布を生成する。
我々は、ノイズ除去軌跡によって生成される分布の整合性を高めるために、ノイズ除去軌跡整列戦略を提案する。この整列により、両モデルが各ノイズ除去ステップで標準ガウス分布ε t ∼ 𝒩 ( 0 , I ) similar-to subscript 𝜀 𝑡 𝒩 0 I \varepsilon_{t}\sim\mathcal{N}(0,\text{I}) italic_ε start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ∼ caligraphic_N ( 0 , I ) から同じサンプリングポイントを使用し、各x t − 1 = Σ θ ( x t , t ) ⋅ ε t + μ θ ( x t , t ) subscript 𝑥 𝑡 1 ⋅ subscript Σ 𝜃 subscript 𝑥 𝑡 𝑡 subscript 𝜀 𝑡 subscript 𝜇 𝜃 subscript 𝑥 𝑡 𝑡 x_{t-1}=\sqrt{\Sigma_{\theta}(x_{t},t)}\cdot\varepsilon_{t}+\mu_{\theta}(x_{t}%
,t) italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT = square-root start_ARG roman_Σ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT , italic_t ) end_ARG ⋅ italic_ε start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT , italic_t ) を再パラメータ化することで、最終的な出力分布を一貫したトレンドに向けて整列させる。ガウス分布の再パラメータ化の特性により、以下が成り立つ:
p ( x t − 1 | x t ) = 1 | Σ θ ( x t , t ) | p ( ε t ) . 𝑝 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 1 subscript Σ 𝜃 subscript 𝑥 𝑡 𝑡 𝑝 subscript 𝜀 𝑡 p(x_{t-1}|x_{t})=\frac{1}{\sqrt{|\Sigma_{\theta}(x_{t},t)|}}p(\varepsilon_{t}). italic_p ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) = divide start_ARG 1 end_ARG start_ARG square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT , italic_t ) | end_ARG end_ARG italic_p ( italic_ε start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) .
(3)
これに基づき、整列は後続の計算を簡略化できる。Σ t q subscript superscript Σ 𝑞 𝑡 \Sigma^{q}_{t} roman_Σ start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT とΣ t p subscript superscript Σ 𝑝 𝑡 \Sigma^{p}_{t} roman_Σ start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT をタイムステップt 𝑡 t italic_t におけるドラフトモデルと目標モデルの分散とする。p θ ( x t − 1 p | x t p ) / q θ ( x t − 1 q | x t q ) = | Σ t q | / | Σ t p | subscript 𝑝 𝜃 conditional subscript superscript 𝑥 𝑝 𝑡 1 subscript superscript 𝑥 𝑝 𝑡 subscript 𝑞 𝜃 conditional subscript superscript 𝑥 𝑞 𝑡 1 subscript superscript 𝑥 𝑞 𝑡 subscript superscript Σ 𝑞 𝑡 subscript superscript Σ 𝑝 𝑡 p_{\theta}(x^{p}_{t-1}|x^{p}_{t})/q_{\theta}(x^{q}_{t-1}|x^{q}_{t})=\sqrt{|%
\Sigma^{q}_{t}|}/\sqrt{|\Sigma^{p}_{t}|} italic_p start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) / italic_q start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) = square-root start_ARG | roman_Σ start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | end_ARG / square-root start_ARG | roman_Σ start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | end_ARG とp ( x T ) = q ( x T ) 𝑝 subscript 𝑥 𝑇 𝑞 subscript 𝑥 𝑇 p(x_{T})=q(x_{T}) italic_p ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) = italic_q ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) であることに注意し、以下のように定義する:
Σ = ∏ t = 2 T | Σ t q | / ∏ t = 2 T | Σ t p | . Σ superscript subscript product 𝑡 2 𝑇 subscript superscript Σ 𝑞 𝑡 superscript subscript product 𝑡 2 𝑇 subscript superscript Σ 𝑝 𝑡 \Sigma=\prod_{t=2}^{T}\sqrt{|\Sigma^{q}_{t}|}/\prod_{t=2}^{T}\sqrt{|\Sigma^{p}%
_{t}|}. roman_Σ = ∏ start_POSTSUBSCRIPT italic_t = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | end_ARG / ∏ start_POSTSUBSCRIPT italic_t = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | end_ARG .
(4)
式(1 )に代入すると:
p ( x 0 | x T ) q ( x 0 | x T ) = Σ ⋅ p θ ( x 0 | x 1 p ) q θ ( x 0 | x 1 q ) . 𝑝 conditional subscript 𝑥 0 subscript 𝑥 𝑇 𝑞 conditional subscript 𝑥 0 subscript 𝑥 𝑇 ⋅ Σ subscript 𝑝 𝜃 conditional subscript 𝑥 0 subscript superscript 𝑥 𝑝 1 subscript 𝑞 𝜃 conditional subscript 𝑥 0 subscript superscript 𝑥 𝑞 1 \frac{p(x_{0}|x_{T})}{q(x_{0}|x_{T})}=\Sigma\cdot\frac{p_{\theta}(x_{0}|x^{p}_%
{1})}{q_{\theta}(x_{0}|x^{q}_{1})}. divide start_ARG italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) end_ARG start_ARG italic_q ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) end_ARG = roman_Σ ⋅ divide start_ARG italic_p start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG start_ARG italic_q start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG .
(5)
自己回帰ステップにも不整合が存在する。ドラフトモデルによって生成される初期の自己回帰ステップのトークンは、より低い受理率を持つ。これについてはアブレーション研究で議論する。この現象は、異なるプレフィックス埋め込みに起因する可能性がある。異なるサイズのMARモデルは、それぞれ独自の学習可能なプレフィックス埋め込みを持つ[21 ] 。当然、これらのモデルの自己回帰予測は、異なるプレフィックス条件を持つため diverge する。
この問題に対処するため、我々は自己回帰生成中に目標モデルからトークンの一部(例えば5 % percent 5 5\% 5 % )を事前に埋めることを提案し、比較的一貫したプレフィックスを得る。この事前埋め込みは推論速度を損なわない。なぜなら、低い受理率での投機的デコーディングは、目標モデル単独で実行されるステップバイステップのデコーディングと機能的に同等だからである[19 ] 。さらに、事前埋め込みは自己回帰生成のより良い開始点を確立し、それによって全体的な受理率を向上させる。
最後に、最後のノイズ除去ステップのガウス分布と、前のステップに沿った分散の累積積を使用してp ( x ) / q ( x ) 𝑝 𝑥 𝑞 𝑥 p(x)/q(x) italic_p ( italic_x ) / italic_q ( italic_x ) を計算できる。
3.3 How to resample a new token from the modified distribution after x 𝑥 x italic_x is rejected?
ドラフトモデルからのサンプルが棄却された場合、我々はLLMsにおいて修正された分布p ′ ( x ) = n o r m ( m a x ( 0 , p ( x ) − q ( x ) ) ) superscript 𝑝 ′ 𝑥 𝑛 𝑜 𝑟 𝑚 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 p^{\prime}(x)=norm(max(0,p(x)-q(x))) italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) = italic_n italic_o italic_r italic_m ( italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) ) から新しいトークンを再サンプリングする。この分布は離散的であるため、サンプリングが容易である。しかし、連続空間では修正された分布を得ることが困難であり、サンプリング操作も難しい。p ′ ( x ) = m a x ( 0 , p ( x ) − q ( x ) ∑ x ′ m a x ( 0 , p ( x ′ ) − q ( x ′ ) ) p^{\prime}(x)=\frac{max(0,p(x)-q(x)}{\sum_{x^{\prime}}max(0,p({x^{\prime}})-q(%
{x^{\prime}}))} italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_m italic_a italic_x ( 0 , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) - italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ) end_ARG であることに注意すると、我々はこの式を連続値のPDFに変換して以下を得る:
p ′ ( x ) = m a x ( 0 , p ( x ) − q ( x ) ) ∫ x ′ m a x ( 0 , p ( x ′ ) − q ( x ′ ) ) 𝑑 x ′ . superscript 𝑝 ′ 𝑥 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 subscript superscript 𝑥 ′ 𝑚 𝑎 𝑥 0 𝑝 superscript 𝑥 ′ 𝑞 superscript 𝑥 ′ differential-d superscript 𝑥 ′ p^{\prime}(x)=\frac{max(0,p(x)-q(x))}{\int_{x^{\prime}}max(0,p(x^{\prime})-q(x%
^{\prime}))dx^{\prime}}. italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) end_ARG start_ARG ∫ start_POSTSUBSCRIPT italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_m italic_a italic_x ( 0 , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) - italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ) italic_d italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_ARG .
(6)
式(6 )は、ターゲットモデルとドラフトモデルの差の正の部分のみを残した正規化された分布を表している。この分布の関数曲線を図5 に示す。この式から、正規化因子の積分のため、我々はこの分布の厳密な表現を計算することができず、したがって直接サンプリングすることもできない。
式(6 )からのサンプリング方法を導出するために、我々はp ′ ( x ) superscript 𝑝 ′ 𝑥 p^{\prime}(x) italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) に対して受容棄却サンプリング[2 ] を採用する。具体的には、提案分布として容易にサンプリングできるターゲットモデル分布p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) からサンプリングする。そして、閾値α s subscript 𝛼 𝑠 \alpha_{s} italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT を計算する:
α s = p ′ ( x ) M ⋅ p ( x ) , subscript 𝛼 𝑠 superscript 𝑝 ′ 𝑥 ⋅ 𝑀 𝑝 𝑥 \alpha_{s}=\frac{p^{\prime}(x)}{M\!\cdot\!p(x)}, italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT = divide start_ARG italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) end_ARG start_ARG italic_M ⋅ italic_p ( italic_x ) end_ARG ,
(7)
ここで、M 𝑀 M italic_M は任意のx 𝑥 x italic_x に対してM ⋅ p ( x ) ≥ p ′ ( x ) ⋅ 𝑀 𝑝 𝑥 superscript 𝑝 ′ 𝑥 M\!\cdot\!p(x)\geq p^{\prime}(x) italic_M ⋅ italic_p ( italic_x ) ≥ italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) が成り立つ上限因子である。M 𝑀 M italic_M は受容棄却サンプリングの正確性を保証する[2 ] 。
その後、我々はϵ ∼ U ( 0 , 1 ) similar-to italic-ϵ 𝑈 0 1 \epsilon\sim U(0,1) italic_ϵ ∼ italic_U ( 0 , 1 ) をサンプリングする。ϵ < α s italic-ϵ subscript 𝛼 𝑠 \epsilon<\alpha_{s} italic_ϵ < italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT であれば提案分布からのサンプルを受け入れる。そうでなければ、それを棄却し、別のx 𝑥 x italic_x を再サンプリングする。このサンプリングアプローチは修正された分布からのサンプリングと等価である[2 ] 。
上限M 𝑀 M italic_M はサンプリングの質に影響を与えるため、適切に決定されるべきであることに注意する。Z = ∫ x m a x ( 0 , p ( x ) − q ( x ) ) 𝑑 x 𝑍 subscript 𝑥 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 differential-d 𝑥 Z=\int_{x}max(0,p(x)-q(x))dx italic_Z = ∫ start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) italic_d italic_x が与えられたとき、以下を考える:
p ′ ( x ) = m a x ( 0 , p ( x ) − q ( x ) ) Z . superscript 𝑝 ′ 𝑥 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 𝑍 p^{\prime}(x)=\frac{max(0,p(x)-q(x))}{Z}. italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) end_ARG start_ARG italic_Z end_ARG .
(8)
p ( x ) − q ( x ) ≥ 0 𝑝 𝑥 𝑞 𝑥 0 p(x)-q(x)\geq 0 italic_p ( italic_x ) - italic_q ( italic_x ) ≥ 0 が与えられたとき、我々は以下を得る:
p ( x ) − q ( x ) Z ≤ p ( x ) Z ↦ M ⋅ p ( x ) . 𝑝 𝑥 𝑞 𝑥 𝑍 𝑝 𝑥 𝑍 maps-to ⋅ 𝑀 𝑝 𝑥 \frac{p(x)-q(x)}{Z}\leq\frac{p(x)}{Z}\mapsto M\!\cdot\!p(x). divide start_ARG italic_p ( italic_x ) - italic_q ( italic_x ) end_ARG start_ARG italic_Z end_ARG ≤ divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_Z end_ARG ↦ italic_M ⋅ italic_p ( italic_x ) .
(9)
したがって、我々はM := 1 / Z assign 𝑀 1 𝑍 M\vcentcolon=1/Z italic_M := 1 / italic_Z を上限として設定できる。しかし、Z 𝑍 Z italic_Z の計算にはまだm a x ( 0 , p ( x ) − q ( x ) ) 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 max(0,p(x)-q(x)) italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) の積分が必要である。全空間にわたる積分を行うと、追加の複雑な計算と潜在的な誤差が導入される。そこで、我々は式(7 )にM = 1 / Z 𝑀 1 𝑍 M=1/Z italic_M = 1 / italic_Z を代入して以下を得る:
α s = m a x ( 0 , p ( x ) − q ( x ) ) / Z p ( x ) / Z = m a x ( 0 , p ( x ) − q ( x ) ) p ( x ) . subscript 𝛼 𝑠 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 𝑍 𝑝 𝑥 𝑍 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 𝑝 𝑥 \alpha_{s}\!\!=\!\!\frac{max(0,p(x)\!\!-\!\!q(x))/Z}{p(x)/Z}\!\!=\!\!\frac{max%
(0,p(x)\!\!-\!\!q(x))}{p(x)}. italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) / italic_Z end_ARG start_ARG italic_p ( italic_x ) / italic_Z end_ARG = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) end_ARG start_ARG italic_p ( italic_x ) end_ARG .
(10)
式(10 )は、M = 1 / Z 𝑀 1 𝑍 M=1/Z italic_M = 1 / italic_Z を用いることで、2つのPDFによってα s subscript 𝛼 𝑠 \alpha_{s} italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT を直接計算できることを示している。
積分Z 𝑍 Z italic_Z の計算を回避でき、計算の複雑さを減らしつつ結果の正確性を維持できる。
α s subscript 𝛼 𝑠 \alpha_{s} italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT を計算するために、我々は式(5 )を代入して以下を得る:
α s = m a x ( 0 , Σ ⋅ p θ ( x 0 | x 1 p ) − q θ ( x 0 | x 1 q ) ) Σ ⋅ p θ ( x 0 | x 1 p ) . subscript 𝛼 𝑠 𝑚 𝑎 𝑥 0 ⋅ Σ subscript 𝑝 𝜃 conditional subscript 𝑥 0 subscript superscript 𝑥 𝑝 1 subscript 𝑞 𝜃 conditional subscript 𝑥 0 subscript superscript 𝑥 𝑞 1 ⋅ Σ subscript 𝑝 𝜃 conditional subscript 𝑥 0 subscript superscript 𝑥 𝑝 1 \alpha_{s}=\frac{max(0,\Sigma\cdot p_{\theta}(x_{0}|x^{p}_{1})-q_{\theta}(x_{0%
}|x^{q}_{1}))}{\Sigma\cdot p_{\theta}(x_{0}|x^{p}_{1})}. italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT = divide start_ARG italic_m italic_a italic_x ( 0 , roman_Σ ⋅ italic_p start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - italic_q start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) end_ARG start_ARG roman_Σ ⋅ italic_p start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG .
(11)
図5 :
修正された分布(非正規化)の図示。破線はドラフトモデルとターゲットモデルの出力分布を表し、赤い領域は修正された分布を示す。この領域の積分は計算が困難であり、解析的な表現が得られないため、サンプリングが複雑になる。
したがって、我々はターゲット分布からサンプリングし、α s subscript 𝛼 𝑠 \alpha_{s} italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT を計算し、ϵ ∼ U ( 0 , 1 ) similar-to italic-ϵ 𝑈 0 1 \epsilon\sim U(0,1) italic_ϵ ∼ italic_U ( 0 , 1 ) で棄却することで、元の修正された分布からのサンプリングをシミュレートすることができる。
4 Experiment
図6 :
定性的結果。MARを用いた連続的推論デコーディングで生成された画像を示す。
M p subscript 𝑀 𝑝 M_{p} italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT
M q subscript 𝑀 𝑞 M_{q} italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT
γ 𝛾 \gamma italic_γ
α 𝛼 \alpha italic_α
Speedup ratio
bs=1
bs=8
bs=128
bs=256
MAR- L
MAR- B
32
0.26
1.18× \times ×
1.21× \times ×
1.44× \times ×
1.49× \times ×
MAR- L
MAR- B
16
0.31
1.10 × \times ×
1.17 × \times ×
1.39 × \times ×
1.42 × \times ×
MAR- L
MAR- B
8
0.36
1.05 × \times ×
1.12 × \times ×
1.29 × \times ×
1.32 × \times ×
MAR- L
MAR- B
4
0.39
1.01 × \times ×
1.00 × \times ×
1.13 × \times ×
1.15 × \times ×
MAR- H
MAR- B
32
0.19
1.44× \times ×
1.61× \times ×
2.17× \times ×
2.33× \times ×
MAR- H
MAR- L
32
0.18
1.26 × \times ×
1.34 × \times ×
1.47 × \times ×
1.53 × \times ×
MAR- H
MAR- B
16
0.26
1.37 × \times ×
1.51 × \times ×
2.07 × \times ×
2.20 × \times ×
MAR- H
MAR- L
16
0.24
1.24 × \times ×
1.29 × \times ×
1.41 × \times ×
1.46 × \times ×
MAR- H
MAR- B
8
0.27
1.26 × \times ×
1.44 × \times ×
1.88 × \times ×
1.96 × \times ×
MAR- H
MAR- L
8
0.28
1.11 × \times ×
1.21 × \times ×
1.32 × \times ×
1.33 × \times ×
MAR- H
MAR- B
4
0.30
1.11 × \times ×
1.20 × \times ×
1.56 × \times ×
1.62 × \times ×
MAR- H
MAR- L
4
0.30
1.00 × \times ×
1.03 × \times ×
1.15 × \times ×
1.18 × \times ×
表1: 異なるモデルサイズ、ドラフト数、バッチサイズにおけるMAR [21 ] の速度向上率の結果。bsはバッチサイズを指す。各設定の受理率 α 𝛼 \alpha italic_α も表示されている。
4.1 Implementation Details
我々は、オープンソースの連続値視覚自己回帰モデルMAR [21 ] を用いて、ImageNet [8 ] 256 × 256 256 256 256\times 256 256 × 256 生成に関する実験を体系的に行った。利用可能なオープンソースモデルが限られているため、ドラフトモデルとしてMAR-B(208M)とMAR-L(479M)を、ターゲットモデルとしてMAR-LとMAR-H(943M)を評価した。我々は公式の事前学習済みチェックポイントを使用した。FID [14 ] とIS [31 ] 、および単一のNVIDIA A100 GPUでの実行時間の速度向上率を報告する。ランタイム設定は厳密に規定された構成 [21 ] に準拠している。より詳細なアブレーション研究と定量的結果は補足資料に記載されている。
表2: ImageNet 256 × 256 256 256 256\times 256 256 × 256 の無条件および条件付き生成におけるFIDとISの比較評価。連続的推論デコーディングは、合理的な範囲内で性能を維持しつつ加速を実現している。
4.2 Main Results
Speedup results.
表1 は、異なるバッチサイズにおける高速化率を示しており、ドラフト数は8 8 8 8 から32 32 32 32 の範囲で、全体の受理率も併せて示している。バッチサイズが大きくなるにつれて、投機的デコーディングの効果が顕著になる。元のモデルと比較して、我々のアプローチは最大で2.33 × 2.33\times 2.33 × の加速を達成している。オープンソースのモデルが限られているため、現在のドラフトモデルとターゲットモデルの規模の差は大きくない(208M対943M)。規模の差が大きくなるにつれて、加速効果はさらに顕著になると予想され、さらなる改善の可能性を示唆している。
Quantitative results.
我々の連続的投機的デコーディングと元のMARモデルのクラス条件付きおよび無条件のFIDとIS指標を表2 に示す。複数回の反復実験を通じて、評価性能は一貫して許容範囲内に収まっている。これらの結果は我々の理論的分析の妥当性を確認し、我々のアルゴリズムがターゲットの出力分布を効果的に維持していることを示している。結果として、生成された出力の品質は保たれており、これについては後続のセクションでさらに議論する。さらに、これらの特性は我々のアルゴリズムを効率的かつ信頼性の高いモデル推論のための堅牢なソリューションとして確立している。
図7 :
定性的比較結果。様々なドラフト長γ 𝛾 \gamma italic_γ でアルゴリズムを使用して生成された画像を示す。
Qualitative results.
我々の手法による画像生成の品質を示すために、図6 および7 に示すようなより多くの可視化結果を提示する。図6 は主要な生成結果を示している。図7 は、自己回帰ステップ256 256 256 256 の元のMAR-Hの結果と、様々なドラフト長γ 𝛾 \gamma italic_γ の結果を比較している。2.33 × 2.33\times 2.33 × までの大幅な加速に加えて、我々の手法は生成された画像の品質を主に維持しており、これは我々の理論的証明と一致している。
図8 :
異なるドラフト数における受理率。ドラフト数が増えるにつれて受理率が低下する。
4.3 Ablation Study
Effectiveness of Draft & Verification.
純粋なドラフトモデルを使用した生成プロセスと、ドラフト&検証パラダイムを使用した生成プロセスの比較結果を図9 に示す。検証フェーズでは、ドラフト内の最適でないトークン生成品質を示す領域が体系的に特定され、より高品質なトークンに置き換えられる。この方法論は、全体的な構成の整合性を維持するだけでなく、生成された出力の豊かさと詳細さを大幅に向上させる。
図9 :
純粋なドラフト(左)と検証済み(右)の生成結果の比較。拒否されたトークンの領域がおおまかにマークされている。
M p subscript 𝑀 𝑝 M_{p} italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT
M q subscript 𝑀 𝑞 M_{q} italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT
γ 𝛾 \gamma italic_γ
α 𝛼 \alpha italic_α
w/o align
w/ align
MAR- L
MAR- B
32
0.10
0.34
MAR- L
MAR- B
16
0.12
0.37
MAR- L
MAR- B
8
0.12
0.39
MAR- L
MAR- B
4
0.13
0.37
MAR- H
MAR- B
32
0.07
0.30
MAR- H
MAR- L
32
0.06
0.33
MAR- H
MAR- B
16
0.07
0.33
MAR- H
MAR- L
16
0.08
0.35
MAR- H
MAR- B
8
0.13
0.31
MAR- H
MAR- L
8
0.12
0.34
MAR- H
MAR- B
4
0.14
0.32
MAR- H
MAR- L
4
0.12
0.34
表3: ノイズ除去軌道アライメントの有無による受容率の影響に関するアブレーション実験。
The α 𝛼 \alpha italic_α vs. γ 𝛾 \gamma italic_γ .
受容率とドラフトの長さの関係を図8 に示す。ドラフトの長さが増加するにつれて、受容率は低下する傾向がある。この観察は、より長いドラフトが推論のオーバーヘッドを大幅に軽減できる一方で、ドラフトモデル自体の能力によって本質的に制約されていることを示唆している。結果として、ドラフトトークンの数の増加は、ターゲットモデルの分布からのより大きな偏差と関連し、最終的には受容率の低下につながる。
Effectiveness of trajectory alignment.
表3 は、ランダムにサンプリングされた軌道と我々のアライメントされた軌道の受容率を示している。ノイズ除去軌道アライメントは、ドラフトとターゲット出力分布間の一貫性を向上させ、それにより受容率を高め、p ( x ) / q ( x ) 𝑝 𝑥 𝑞 𝑥 p(x)/q(x) italic_p ( italic_x ) / italic_q ( italic_x ) の計算を簡素化する。図10 は、アライメントの有無による生成画像を示している。アライメントが全体的な品質に与える影響は無視できるように見える。対照的に、完全にランダムなサンプリングは、異なる出力分布のために、より低い受容率につながる。
図10 :
ノイズ除去軌道アライメントなし(上)とあり(下)の例。アライメント後、生成された画像は変形とアーティファクトが減少し、より高品質を達成している。
M p subscript 𝑀 𝑝 M_{p} italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT
M q subscript 𝑀 𝑞 M_{q} italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT
γ 𝛾 \gamma italic_γ
α 𝛼 \alpha italic_α /Speed
0 % percent 0 0\% 0 %
5 % percent 5 5\% 5 %
15 % percent 15 15\% 15 %
MAR- L
MAR- B
32
0.27/ 1.24 × \times ×
0.34/1.22 × \times ×
0.37 /1.21 × \times ×
MAR- L
MAR- B
16
0.35/ 1.19 × \times ×
0.37/ 1.19 × \times ×
0.38 /1.17 × \times ×
MAR- L
MAR- B
8
0.35/ 1.14 × \times ×
0.39 /1.13 × \times ×
0.39 /1.12 × \times ×
MAR- L
MAR- B
4
0.32/ 1.04 × \times ×
0.37/1.02 × \times ×
0.39 /1.00 × \times ×
MAR- H
MAR- B
32
0.25/ 1.63 × \times ×
0.30/ 1.63 × \times ×
0.33 /1.61 × \times ×
MAR- H
MAR- L
32
0.24/ 1.36 × \times ×
0.33 /1.35 × \times ×
0.32/1.34 × \times ×
MAR- H
MAR- B
16
0.32/1.53 × \times ×
0.33/ 1.52 × \times ×
0.34 /1.51 × \times ×
MAR- H
MAR- L
16
0.34/ 1.32 × \times ×
0.35 /1.29 × \times ×
0.35 /1.29 × \times ×
MAR- H
MAR- B
8
0.33/ 1.47 × \times ×
0.31/ 1.47 × \times ×
0.34 /1.44 × \times ×
MAR- H
MAR- L
8
0.34/ 1.21 × \times ×
0.34/ 1.21 × \times ×
0.35 /1.21 × \times ×
MAR- H
MAR- B
4
0.31/ 1.21 × \times ×
0.32/ 1.21 × \times ×
0.34 /1.20 × \times ×
MAR- H
MAR- L
4
0.31/ 1.05 × \times ×
0.34 /1.03 × \times ×
0.34 /1.03 × \times ×
表4: 事前充填率に関するアブレーション実験。実験設定は表1 と同じである。下線 は最高の高速化を示す。太字 は最高のα 𝛼 \alpha italic_α を意味する。
Influence of pre-filled tokens.
0 % percent 0 0\% 0 % 、5 % percent 5 5\% 5 % 、および15 % percent 15 15\% 15 % における事前充填率のアブレーション実験を図11 に示す。事前充填は、自己回帰サンプリングの初期段階で観察される低い受容率を補償し、表4 に示すように全体的な受容率を向上させることができる。さらに、図12 は異なる事前充填率での可視化を示している。特に、ドラフトとターゲットモデルの間の不一致により、0 % percent 0 0\% 0 % の事前充填では特定のアーティファクトと画質の低下が生じる。しかし、ターゲットモデルからの適度な割合の事前充填トークンを導入することで、これらのアーティファクトを効果的に軽減している。事前充填率が増加するにつれて、このアプローチによってもたらされる利点は逓減傾向を示す。
図11 :
異なる事前充填率におけるステップごとの受容α 𝛼 \alpha italic_α 。ステップごとの受容率は1000サンプルで平均化されている。
図12 :
異なるトークン事前充填割合における画像生成品質の比較。
5 Conclusion
我々は、投機的デコーディングを連続値の視覚的自己回帰モデルに適応させる新しいアプローチを探究した。
連続空間におけるアルゴリズムの適用を妨げる重要な課題を分析した。そのために、受理基準を確立した。さらに、拡散と自己回帰プロセスにおける受理率を向上させるために、ノイズ除去軌道の整列とトークンの事前充填を行った。解析的な形式を持たない修正された分布からのサンプリングの問題は、適切に定義された上限を用いた受理棄却サンプリングによって解決された。
我々の連続的投機的デコーディングは、出力分布と高い生成忠実度を維持しながら、最大で2.33 × 2.33\times 2.33 × の高速化を達成した。
本稿が、視覚およびその他の領域における連続値自己回帰モデルを用いた推論加速に関して、さらなる思考と洞察を提供することを期待する。
References
Cai et al. [2024]
Tianle Cai, Yuhong Li, Zhengyang Geng, Hongwu Peng, Jason D Lee, Deming Chen, and Tri Dao.
Medusa: Simple llm inference acceleration framework with multiple decoding heads.
arXiv preprint arXiv:2401.10774 , 2024.
Casella et al. [2004]
George Casella, Christian P Robert, and Martin T Wells.
Generalized accept-reject sampling schemes.
Lecture notes-monograph series , pages 342–347, 2004.
Chang et al. [2022]
Huiwen Chang, Han Zhang, Lu Jiang, Ce Liu, and William T Freeman.
Maskgit: Masked generative image transformer.
In Proceedings of the IEEE/CVF conference on Computer Vision and Pattern Recognition , pages 11315–11325, 2022.
Chang et al. [2023]
Huiwen Chang, Han Zhang, Jarred Barber, AJ Maschinot, Jose Lezama, Lu Jiang, Ming-Hsuan Yang, Kevin Murphy, William T Freeman, Michael Rubinstein, et al.
Muse: Text-to-image generation via masked generative transformers.
arXiv preprint arXiv:2301.00704 , 2023.
Chen et al. [2023]
Charlie Chen, Sebastian Borgeaud, Geoffrey Irving, Jean-Baptiste Lespiau, Laurent Sifre, and John Jumper.
Accelerating large language model decoding with speculative sampling.
arXiv preprint arXiv:2302.01318 , 2023.
Chen et al. [2020]
Mark Chen, Alec Radford, Rewon Child, Jeffrey Wu, Heewoo Jun, David Luan, and Ilya Sutskever.
Generative pretraining from pixels.
In International Conference on Machine Learning , pages 1691–1703. PMLR, 2020.
Chen et al. [2018]
Xi Chen, Nikhil Mishra, Mostafa Rohaninejad, and Pieter Abbeel.
Pixelsnail: An improved autoregressive generative model.
In International Conference on Machine Learning , pages 864–872. PMLR, 2018.
Deng et al. [2009]
Jia Deng, Wei Dong, Richard Socher, Li-Jia Li, Kai Li, and Li Fei-Fei.
Imagenet: A large-scale hierarchical image database.
In 2009 IEEE conference on Computer Vision and Pattern Recognition , pages 248–255. Ieee, 2009.
Ding et al. [2021]
Ming Ding, Zhuoyi Yang, Wenyi Hong, Wendi Zheng, Chang Zhou, Da Yin, Junyang Lin, Xu Zou, Zhou Shao, Hongxia Yang, et al.
Cogview: Mastering text-to-image generation via transformers.
Advances in Neural Information Processing Systems , 34:19822–19835, 2021.
Esser et al. [2021]
Patrick Esser, Robin Rombach, and Bjorn Ommer.
Taming transformers for high-resolution image synthesis.
In Proceedings of the IEEE/CVF conference on Computer Vision and Pattern Recognition , pages 12873–12883, 2021.
Fan et al. [2024]
Lijie Fan, Tianhong Li, Siyang Qin, Yuanzhen Li, Chen Sun, Michael Rubinstein, Deqing Sun, Kaiming He, and Yonglong Tian.
Fluid: Scaling autoregressive text-to-image generative models with continuous tokens.
arXiv preprint arXiv:2410.13863 , 2024.
Gregor et al. [2014]
Karol Gregor, Ivo Danihelka, Andriy Mnih, Charles Blundell, and Daan Wierstra.
Deep autoregressive networks.
In International Conference on Machine Learning , pages 1242–1250. PMLR, 2014.
Gu et al. [2024]
Jiatao Gu, Yuyang Wang, Yizhe Zhang, Qihang Zhang, Dinghuai Zhang, Navdeep Jaitly, Josh Susskind, and Shuangfei Zhai.
Dart: Denoising autoregressive transformer for scalable text-to-image generation.
arXiv preprint arXiv:2410.08159 , 2024.
Heusel et al. [2017]
Martin Heusel, Hubert Ramsauer, Thomas Unterthiner, Bernhard Nessler, and Sepp Hochreiter.
Gans trained by a two time-scale update rule converge to a local nash equilibrium.
Advances in Neural Information Processing Systems , 30, 2017.
Ho et al. [2020]
Jonathan Ho, Ajay Jain, and Pieter Abbeel.
Denoising diffusion probabilistic models.
Advances in Neural Information Processing Systems , 33:6840–6851, 2020.
Jang et al. [2024]
Doohyuk Jang, Sihwan Park, June Yong Yang, Yeonsung Jung, Jihun Yun, Souvik Kundu, Sung-Yub Kim, and Eunho Yang.
Lantern: Accelerating visual autoregressive models with relaxed speculative decoding.
arXiv preprint arXiv:2410.03355 , 2024.
Kim et al. [2024]
Sehoon Kim, Karttikeya Mangalam, Suhong Moon, Jitendra Malik, Michael W Mahoney, Amir Gholami, and Kurt Keutzer.
Speculative decoding with big little decoder.
Advances in Neural Information Processing Systems , 36, 2024.
Kou et al. [2024]
Siqi Kou, Lanxiang Hu, Zhezhi He, Zhijie Deng, and Hao Zhang.
Cllms: Consistency large language models.
arXiv preprint arXiv:2403.00835 , 2024.
Leviathan et al. [2023]
Yaniv Leviathan, Matan Kalman, and Yossi Matias.
Fast inference from transformers via speculative decoding.
In International Conference on Machine Learning , pages 19274–19286. PMLR, 2023.
Li et al. [2023]
Tianhong Li, Huiwen Chang, Shlok Mishra, Han Zhang, Dina Katabi, and Dilip Krishnan.
Mage: Masked generative encoder to unify representation learning and image synthesis.
In Proceedings of the IEEE/CVF conference on Computer Vision and Pattern Recognition , pages 2142–2152, 2023.
Li et al. [2024a]
Tianhong Li, Yonglong Tian, He Li, Mingyang Deng, and Kaiming He.
Autoregressive image generation without vector quantization.
arXiv preprint arXiv:2406.11838 , 2024a.
Li et al. [2024b]
Yuhui Li, Fangyun Wei, Chao Zhang, and Hongyang Zhang.
Eagle: Speculative sampling requires rethinking feature uncertainty.
arXiv preprint arXiv:2401.15077 , 2024b.
Li et al. [2024c]
Yuhui Li, Fangyun Wei, Chao Zhang, and Hongyang Zhang.
Eagle-2: Faster inference of language models with dynamic draft trees.
arXiv preprint arXiv:2406.16858 , 2024c.
Liu et al. [2024]
Dongyang Liu, Shitian Zhao, Le Zhuo, Weifeng Lin, Yu Qiao, Hongsheng Li, and Peng Gao.
Lumina-mgpt: Illuminate flexible photorealistic text-to-image generation with multimodal generative pretraining.
arXiv preprint arXiv:2408.02657 , 2024.
Liu et al. [2023]
Xiaoxuan Liu, Lanxiang Hu, Peter Bailis, Alvin Cheung, Zhijie Deng, Ion Stoica, and Hao Zhang.
Online speculative decoding.
arXiv preprint arXiv:2310.07177 , 2023.
Mentzer et al. [2023]
Fabian Mentzer, David Minnen, Eirikur Agustsson, and Michael Tschannen.
Finite scalar quantization: Vq-vae made simple.
arXiv preprint arXiv:2309.15505 , 2023.
Miao et al. [2023]
Xupeng Miao, Gabriele Oliaro, Zhihao Zhang, Xinhao Cheng, Zeyu Wang, Zhengxin Zhang, Rae Ying Yee Wong, Alan Zhu, Lijie Yang, Xiaoxiang Shi, et al.
Specinfer: Accelerating generative large language model serving with tree-based speculative inference and verification.
arXiv preprint arXiv:2305.09781 , 2023.
Nichol and Dhariwal [2021]
Alexander Quinn Nichol and Prafulla Dhariwal.
Improved denoising diffusion probabilistic models.
In International Conference on Machine Learning , pages 8162–8171. PMLR, 2021.
Parmar et al. [2018]
Niki Parmar, Ashish Vaswani, Jakob Uszkoreit, Lukasz Kaiser, Noam Shazeer, Alexander Ku, and Dustin Tran.
Image transformer.
In International Conference on Machine Learning , pages 4055–4064. PMLR, 2018.
Ramesh et al. [2021]
Aditya Ramesh, Mikhail Pavlov, Gabriel Goh, Scott Gray, Chelsea Voss, Alec Radford, Mark Chen, and Ilya Sutskever.
Zero-shot text-to-image generation.
In International Conference on Machine Learning , pages 8821–8831. PMLR, 2021.
Salimans et al. [2016]
Tim Salimans, Ian Goodfellow, Wojciech Zaremba, Vicki Cheung, Alec Radford, and Xi Chen.
Improved techniques for training gans.
Advances in Neural Information Processing Systems , 29, 2016.
Santilli et al. [2023]
Andrea Santilli, Silvio Severino, Emilian Postolache, Valentino Maiorca, Michele Mancusi, Riccardo Marin, and Emanuele Rodolà.
Accelerating transformer inference for translation via parallel decoding.
arXiv preprint arXiv:2305.10427 , 2023.
Sun et al. [2024]
Peize Sun, Yi Jiang, Shoufa Chen, Shilong Zhang, Bingyue Peng, Ping Luo, and Zehuan Yuan.
Autoregressive model beats diffusion: Llama for scalable image generation.
arXiv preprint arXiv:2406.06525 , 2024.
Tang et al. [2024]
Haotian Tang, Yecheng Wu, Shang Yang, Enze Xie, Junsong Chen, Junyu Chen, Zhuoyang Zhang, Han Cai, Yao Lu, and Song Han.
Hart: Efficient visual generation with hybrid autoregressive transformer.
arXiv preprint arXiv:2410.10812 , 2024.
Teng et al. [2024]
Yao Teng, Han Shi, Xian Liu, Xuefei Ning, Guohao Dai, Yu Wang, Zhenguo Li, and Xihui Liu.
Accelerating auto-regressive text-to-image generation with training-free speculative jacobi decoding.
arXiv preprint arXiv:2410.01699 , 2024.
Tian et al. [2024]
Keyu Tian, Yi Jiang, Zehuan Yuan, Bingyue Peng, and Liwei Wang.
Visual autoregressive modeling: Scalable image generation via next-scale prediction.
2024.
Tschannen et al. [2025]
Michael Tschannen, Cian Eastwood, and Fabian Mentzer.
Givt: Generative infinite-vocabulary transformers.
In European Conference on Computer Vision , pages 292–309. Springer, 2025.
Van den Oord et al. [2016]
Aaron Van den Oord, Nal Kalchbrenner, Lasse Espeholt, Oriol Vinyals, Alex Graves, et al.
Conditional image generation with pixelcnn decoders.
Advances in Neural Information Processing Systems , 29, 2016.
Van Den Oord et al. [2016]
Aäron Van Den Oord, Nal Kalchbrenner, and Koray Kavukcuoglu.
Pixel recurrent neural networks.
In International Conference on Machine Learning , pages 1747–1756. PMLR, 2016.
Van Den Oord et al. [2017]
Aaron Van Den Oord, Oriol Vinyals, et al.
Neural discrete representation learning.
Advances in Neural Information Processing Systems , 30, 2017.
Xu et al. [2024]
Yilun Xu, Gabriele Corso, Tommi Jaakkola, Arash Vahdat, and Karsten Kreis.
Disco-diff: Enhancing continuous diffusion models with discrete latents.
In International Conference on Machine Learning , 2024.
Yi et al. [2024]
Hanling Yi, Feng Lin, Hongbin Li, Peiyang Ning, Xiaotian Yu, and Rong Xiao.
Generation meets verification: Accelerating large language model inference with smart parallel auto-correct decoding.
arXiv preprint arXiv:2402.11809 , 2024.
Yu et al. [2021]
Jiahui Yu, Xin Li, Jing Yu Koh, Han Zhang, Ruoming Pang, James Qin, Alexander Ku, Yuanzhong Xu, Jason Baldridge, and Yonghui Wu.
Vector-quantized image modeling with improved vqgan.
arXiv preprint arXiv:2110.04627 , 2021.
Yu et al. [2022]
Jiahui Yu, Yuanzhong Xu, Jing Yu Koh, Thang Luong, Gunjan Baid, Zirui Wang, Vijay Vasudevan, Alexander Ku, Yinfei Yang, Burcu Karagol Ayan, et al.
Scaling autoregressive models for content-rich text-to-image generation.
arXiv preprint arXiv:2206.10789 , 2(3):5, 2022.
Yu et al. [2023a]
Lijun Yu, Yong Cheng, Kihyuk Sohn, José Lezama, Han Zhang, Huiwen Chang, Alexander G Hauptmann, Ming-Hsuan Yang, Yuan Hao, Irfan Essa, et al.
Magvit: Masked generative video transformer.
In Proceedings of the IEEE/CVF conference on Computer Vision and Pattern Recognition , pages 10459–10469, 2023a.
Yu et al. [2023b]
Lijun Yu, José Lezama, Nitesh B Gundavarapu, Luca Versari, Kihyuk Sohn, David Minnen, Yong Cheng, Vighnesh Birodkar, Agrim Gupta, Xiuye Gu, et al.
Language model beats diffusion–tokenizer is key to visual generation.
arXiv preprint arXiv:2310.05737 , 2023b.
Yu et al. [2023c]
Qihang Yu, Ju He, Xueqing Den, Xiaohui Shen, and Liang-Chieh Chen.
Randomized autoregressive visual generation.
arXiv preprint arXiv:2411.00776 , 2023c.
Zhao et al. [2024a]
Weilin Zhao, Yuxiang Huang, Xu Han, Chaojun Xiao, Zhiyuan Liu, and Maosong Sun.
Ouroboros: Speculative decoding with large model enhanced drafting.
arXiv preprint arXiv:2402.13720 , 2024a.
Zhao et al. [2024b]
Yao Zhao, Zhitian Xie, Chen Liang, Chenyi Zhuang, and Jinjie Gu.
Lookahead: An inference acceleration framework for large language model with lossless generation accuracy.
In Proceedings of the 30th ACM SIGKDD Conference on Knowledge Discovery and Data Mining , pages 6344–6355, 2024b.
Zhou et al. [2023]
Yongchao Zhou, Kaifeng Lyu, Ankit Singh Rawat, Aditya Krishna Menon, Afshin Rostamizadeh, Sanjiv Kumar, Jean-François Kagy, and Rishabh Agarwal.
Distillspec: Improving speculative decoding via knowledge distillation.
arXiv preprint arXiv:2310.08461 , 2023.
A Detailed Proof
我々は、連続的投機的デコーディングのより詳細なプロセスと証明を提供する。
A.1 Denoising Trajectory Alignment
ノイズ除去プロセスを通じて、 p ( x ) q ( x ) 𝑝 𝑥 𝑞 𝑥 \frac{p(x)}{q(x)} divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG に対して、我々は x = x 0 𝑥 subscript 𝑥 0 x=x_{0} italic_x = italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT を得る:
p ( x 0 | x T ) = p ( x T ) ∏ t = 1 T p ( x t − 1 | x t ) , 𝑝 conditional subscript 𝑥 0 subscript 𝑥 𝑇 𝑝 subscript 𝑥 𝑇 superscript subscript product 𝑡 1 𝑇 𝑝 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 p(x_{0}|x_{T})=p(x_{T})\prod_{t=1}^{T}p(x_{t-1}|x_{t}), italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) = italic_p ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) ∏ start_POSTSUBSCRIPT italic_t = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_p ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) ,
(12)
ここで、条件付き確率分布はニューラルネットワークによってガウス分布として近似される:
p θ ( x t − 1 | x t ) = 𝒩 ( x t − 1 ; μ θ ( x t , t ) , Σ θ ( x t , t ) ) . subscript 𝑝 𝜃 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 𝒩 subscript 𝑥 𝑡 1 subscript 𝜇 𝜃 subscript 𝑥 𝑡 𝑡 subscript Σ 𝜃 subscript 𝑥 𝑡 𝑡
p_{\theta}(x_{t-1}|x_{t})=\mathcal{N}(x_{t-1};\mu_{\theta}(x_{t},t),\Sigma_{%
\theta}(x_{t},t)). italic_p start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) = caligraphic_N ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT ; italic_μ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT , italic_t ) , roman_Σ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT , italic_t ) ) .
(13)
したがって、 p θ ( x t − 1 | x t ) subscript 𝑝 𝜃 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 p_{\theta}(x_{t-1}|x_{t}) italic_p start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) はガウス分布のPDFによって計算できる。 q θ ( x t − 1 | x t ) subscript 𝑞 𝜃 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 q_{\theta}(x_{t-1}|x_{t}) italic_q start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) の計算も同様である。
経験的に、 x t − 1 subscript 𝑥 𝑡 1 x_{t-1} italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT は再パラメータ化を通じて右辺のガウス分布からサンプリングすることで得られる。つまり、まず ε t ∼ 𝒩 ( 0 , I ) similar-to subscript 𝜀 𝑡 𝒩 0 I \varepsilon_{t}\sim\mathcal{N}(0,\text{I}) italic_ε start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ∼ caligraphic_N ( 0 , I ) をサンプリングし、次に x t − 1 = Σ θ ( x t , t ) ⋅ ε t + μ θ ( x t , t ) subscript 𝑥 𝑡 1 ⋅ subscript Σ 𝜃 subscript 𝑥 𝑡 𝑡 subscript 𝜀 𝑡 subscript 𝜇 𝜃 subscript 𝑥 𝑡 𝑡 x_{t-1}=\sqrt{\Sigma_{\theta}(x_{t},t)}\cdot\varepsilon_{t}+\mu_{\theta}(x_{t}%
,t) italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT = square-root start_ARG roman_Σ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT , italic_t ) end_ARG ⋅ italic_ε start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT + italic_μ start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT , italic_t ) をスケーリングとシフトすることで結果を得る。このため、 p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) と q ( x ) 𝑞 𝑥 q(x) italic_q ( italic_x ) を計算して比率を得ることができる。
しかし、第 3 節で述べたように、 p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) と q ( x ) 𝑞 𝑥 q(x) italic_q ( italic_x ) を直接計算することは代数的には正しいが、ノイズ除去軌道が異なるため、受理率が低くなる可能性がある。そこで、我々は p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) と q ( x ) 𝑞 𝑥 q(x) italic_q ( italic_x ) の両方に同じ ϵ t subscript italic-ϵ 𝑡 \epsilon_{t} italic_ϵ start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT を用いて、ノイズ除去手順と結果に影響を与えることなく、それらの軌道をできるだけ近づけるようにする。
さらに、整列により p ( x ) q ( x ) 𝑝 𝑥 𝑞 𝑥 \frac{p(x)}{q(x)} divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG の計算も簡略化される。ガウス分布では以下の関係が成り立つことに注意する:
p ( x ) 𝑝 𝑥 \displaystyle p(x) italic_p ( italic_x )
= 1 ( 2 π ) n | Σ | exp { 1 2 ( x − μ ) T Σ − 1 ( x − μ ) } absent 1 superscript 2 𝜋 𝑛 Σ 1 2 superscript 𝑥 𝜇 𝑇 superscript Σ 1 𝑥 𝜇 \displaystyle=\frac{1}{(\sqrt{2\pi})^{n}\sqrt{|\Sigma|}}\exp{\{\frac{1}{2}(x-%
\mu)^{T}\Sigma^{-1}(x-\mu)\}} = divide start_ARG 1 end_ARG start_ARG ( square-root start_ARG 2 italic_π end_ARG ) start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ | end_ARG end_ARG roman_exp { divide start_ARG 1 end_ARG start_ARG 2 end_ARG ( italic_x - italic_μ ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT roman_Σ start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_x - italic_μ ) }
(14)
= 1 ( 2 π ) n | Σ | exp { ε t T ε t } . absent 1 superscript 2 𝜋 𝑛 Σ superscript subscript 𝜀 𝑡 𝑇 subscript 𝜀 𝑡 \displaystyle=\frac{1}{(\sqrt{2\pi})^{n}\sqrt{|\Sigma|}}\exp{\{\varepsilon_{t}%
^{T}\varepsilon_{t}\}}. = divide start_ARG 1 end_ARG start_ARG ( square-root start_ARG 2 italic_π end_ARG ) start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ | end_ARG end_ARG roman_exp { italic_ε start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_ε start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT } .
(15)
我々は p ( x ) 𝑝 𝑥 p(x) italic_p ( italic_x ) と q ( x ) 𝑞 𝑥 q(x) italic_q ( italic_x ) の両方に同じ ϵ t subscript italic-ϵ 𝑡 \epsilon_{t} italic_ϵ start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT を持つため、指数項を消去して以下を得る:
p ( x ) q ( x ) 𝑝 𝑥 𝑞 𝑥 \displaystyle\frac{p(x)}{q(x)} divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG
= 1 ( 2 π ) n | Σ p | exp { 1 2 ( x − μ p ) T Σ p − 1 ( x − μ p ) } 1 ( 2 π ) n | Σ q | exp { 1 2 ( x − μ q ) T Σ q − 1 ( x − μ q ) } absent 1 superscript 2 𝜋 𝑛 subscript Σ 𝑝 1 2 superscript 𝑥 subscript 𝜇 𝑝 𝑇 superscript subscript Σ 𝑝 1 𝑥 subscript 𝜇 𝑝 1 superscript 2 𝜋 𝑛 subscript Σ 𝑞 1 2 superscript 𝑥 subscript 𝜇 𝑞 𝑇 superscript subscript Σ 𝑞 1 𝑥 subscript 𝜇 𝑞 \displaystyle=\frac{\frac{1}{(\sqrt{2\pi})^{n}\sqrt{|\Sigma_{p}|}}\exp{\{\frac%
{1}{2}(x-\mu_{p})^{T}\Sigma_{p}^{-1}(x-\mu_{p})\}}}{\frac{1}{(\sqrt{2\pi})^{n}%
\sqrt{|\Sigma_{q}|}}\exp{\{\frac{1}{2}(x-\mu_{q})^{T}\Sigma_{q}^{-1}(x-\mu_{q}%
)\}}} = divide start_ARG divide start_ARG 1 end_ARG start_ARG ( square-root start_ARG 2 italic_π end_ARG ) start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT | end_ARG end_ARG roman_exp { divide start_ARG 1 end_ARG start_ARG 2 end_ARG ( italic_x - italic_μ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT roman_Σ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_x - italic_μ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ) } end_ARG start_ARG divide start_ARG 1 end_ARG start_ARG ( square-root start_ARG 2 italic_π end_ARG ) start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT | end_ARG end_ARG roman_exp { divide start_ARG 1 end_ARG start_ARG 2 end_ARG ( italic_x - italic_μ start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT roman_Σ start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_x - italic_μ start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT ) } end_ARG
(16)
= | Σ q | | Σ p | . absent subscript Σ 𝑞 subscript Σ 𝑝 \displaystyle=\frac{\sqrt{|\Sigma_{q}|}}{\sqrt{|\Sigma_{p}|}}. = divide start_ARG square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT | end_ARG end_ARG start_ARG square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT | end_ARG end_ARG .
(17)
したがって:
p ( x ) q ( x ) 𝑝 𝑥 𝑞 𝑥 \displaystyle\frac{p(x)}{q(x)} divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG
= p ( x T ) ∏ t = 2 T p ( x t − 1 | x t ) q ( x T ) ∏ t = 2 T q ( x t − 1 | x t ) ⋅ p ( x 0 | x 1 ) q ( x 0 | x 1 ) absent ⋅ 𝑝 subscript 𝑥 𝑇 superscript subscript product 𝑡 2 𝑇 𝑝 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 𝑞 subscript 𝑥 𝑇 superscript subscript product 𝑡 2 𝑇 𝑞 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 𝑝 conditional subscript 𝑥 0 subscript 𝑥 1 𝑞 conditional subscript 𝑥 0 subscript 𝑥 1 \displaystyle=\frac{p(x_{T})\prod_{t=2}^{T}p(x_{t-1}|x_{t})}{q(x_{T})\prod_{t=%
2}^{T}q(x_{t-1}|x_{t})}\cdot\frac{p(x_{0}|x_{1})}{q(x_{0}|x_{1})} = divide start_ARG italic_p ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) ∏ start_POSTSUBSCRIPT italic_t = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_p ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) end_ARG start_ARG italic_q ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) ∏ start_POSTSUBSCRIPT italic_t = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT italic_q ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) end_ARG ⋅ divide start_ARG italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG start_ARG italic_q ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG
(18)
= ∏ t = 2 T | Σ q , t | ∏ t = 2 T | Σ p , t | ⋅ p ( x 0 | x 1 ) q ( x 0 | x 1 ) absent ⋅ superscript subscript product 𝑡 2 𝑇 subscript Σ 𝑞 𝑡
superscript subscript product 𝑡 2 𝑇 subscript Σ 𝑝 𝑡
𝑝 conditional subscript 𝑥 0 subscript 𝑥 1 𝑞 conditional subscript 𝑥 0 subscript 𝑥 1 \displaystyle=\frac{\prod_{t=2}^{T}\sqrt{|\Sigma_{q,t}|}}{\prod_{t=2}^{T}\sqrt%
{|\Sigma_{p,t}|}}\cdot\frac{p(x_{0}|x_{1})}{q(x_{0}|x_{1})} = divide start_ARG ∏ start_POSTSUBSCRIPT italic_t = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_q , italic_t end_POSTSUBSCRIPT | end_ARG end_ARG start_ARG ∏ start_POSTSUBSCRIPT italic_t = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_p , italic_t end_POSTSUBSCRIPT | end_ARG end_ARG ⋅ divide start_ARG italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG start_ARG italic_q ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG
(19)
= Σ ⋅ p ( x 0 | x 1 ) q ( x 0 | x 1 ) , absent ⋅ Σ 𝑝 conditional subscript 𝑥 0 subscript 𝑥 1 𝑞 conditional subscript 𝑥 0 subscript 𝑥 1 \displaystyle=\Sigma\cdot\frac{p(x_{0}|x_{1})}{q(x_{0}|x_{1})}, = roman_Σ ⋅ divide start_ARG italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG start_ARG italic_q ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG ,
(20)
ここで、 Σ Σ \Sigma roman_Σ はノイズ除去の中間結果に沿った | Σ q | | Σ p | subscript Σ 𝑞 subscript Σ 𝑝 \frac{\sqrt{|\Sigma_{q}|}}{\sqrt{|\Sigma_{p}|}} divide start_ARG square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT | end_ARG end_ARG start_ARG square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT | end_ARG end_ARG の積である。また、 x 0 ∼ q ( x ) similar-to subscript 𝑥 0 𝑞 𝑥 x_{0}\sim q(x) italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ∼ italic_q ( italic_x ) は目標モデルによって検証されるべきであるため、 p ( x 0 | x 1 ) 𝑝 conditional subscript 𝑥 0 subscript 𝑥 1 p(x_{0}|x_{1}) italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) はノイズ除去によって得られるのではなく、 x 0 subscript 𝑥 0 x_{0} italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT を p ( x 0 | x 1 ) 𝑝 conditional subscript 𝑥 0 subscript 𝑥 1 p(x_{0}|x_{1}) italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) に代入することで得られる。これらの2つの項は別々に計算されるべきであるため、我々はそれらを保持する。
A.2 Acceptance-Rejection Sampling
棄却後、我々は以下の分布から新しいトークンを再サンプリングすべきである:
p ′ ( x ) = m a x ( 0 , p ( x ) − q ( x ) ) ∫ x ′ m a x ( 0 , p ( x ′ ) − q ( x ′ ) ) 𝑑 x ′ . superscript 𝑝 ′ 𝑥 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 subscript superscript 𝑥 ′ 𝑚 𝑎 𝑥 0 𝑝 superscript 𝑥 ′ 𝑞 superscript 𝑥 ′ differential-d superscript 𝑥 ′ p^{\prime}(x)=\frac{max(0,p(x)-q(x))}{\int_{x^{\prime}}max(0,p(x^{\prime})-q(x%
^{\prime}))dx^{\prime}}. italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) end_ARG start_ARG ∫ start_POSTSUBSCRIPT italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_m italic_a italic_x ( 0 , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) - italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ) italic_d italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_ARG .
(21)
しかし、 p ( x ) − q ( x ) 𝑝 𝑥 𝑞 𝑥 p(x)-q(x) italic_p ( italic_x ) - italic_q ( italic_x ) を得ることは困難である。この項は複数のガウス分布の積の項の減算を表している。さらに、積分 Z = ∫ x ′ m a x ( 0 , p ( x ′ ) − q ( x ′ ) ) 𝑑 x ′ 𝑍 subscript superscript 𝑥 ′ 𝑚 𝑎 𝑥 0 𝑝 superscript 𝑥 ′ 𝑞 superscript 𝑥 ′ differential-d superscript 𝑥 ′ Z=\int_{x^{\prime}}max(0,p(x^{\prime})-q(x^{\prime}))dx^{\prime} italic_Z = ∫ start_POSTSUBSCRIPT italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_m italic_a italic_x ( 0 , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) - italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ) italic_d italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT も計算が困難であり、近似を用いると計算誤差が生じる可能性がある。この積分は解析的な形式も持たない。
したがって、受容棄却サンプリングの導入により、 Z 𝑍 Z italic_Z を M = 1 Z 𝑀 1 𝑍 M=\frac{1}{Z} italic_M = divide start_ARG 1 end_ARG start_ARG italic_Z end_ARG によって消去し、以下のようにすることができる:
α s subscript 𝛼 𝑠 \displaystyle\alpha_{s}\!\! italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT
= m a x ( 0 , p ( x ) − q ( x ) ) / Z p ( x ) / Z absent 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 𝑍 𝑝 𝑥 𝑍 \displaystyle=\frac{max(0,p(x)-q(x))/Z}{p(x)/Z} = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) / italic_Z end_ARG start_ARG italic_p ( italic_x ) / italic_Z end_ARG
(22)
= m a x ( 0 , p ( x ) − q ( x ) ) p ( x ) absent 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 𝑝 𝑥 \displaystyle=\frac{max(0,p(x)-q(x))}{p(x)} = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) end_ARG start_ARG italic_p ( italic_x ) end_ARG
(23)
= m a x ( 0 , p ( x 0 | x T ) − q ( x 0 | x T ) ) p ( x 0 | x T ) absent 𝑚 𝑎 𝑥 0 𝑝 conditional subscript 𝑥 0 subscript 𝑥 𝑇 𝑞 conditional subscript 𝑥 0 subscript 𝑥 𝑇 𝑝 conditional subscript 𝑥 0 subscript 𝑥 𝑇 \displaystyle=\frac{max(0,p(x_{0}|x_{T})-q(x_{0}|x_{T}))}{p(x_{0}|x_{T})} = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) - italic_q ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) ) end_ARG start_ARG italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) end_ARG
(24)
= m a x ( 0 , p ( x T ) ∏ p ( x t − 1 | x t ) − q ( x T ) ∏ q ( x t − 1 | x t ) ) p ( x T ) ∏ p ( x t − 1 | x t ) absent 𝑚 𝑎 𝑥 0 𝑝 subscript 𝑥 𝑇 product 𝑝 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 𝑞 subscript 𝑥 𝑇 product 𝑞 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 𝑝 subscript 𝑥 𝑇 product 𝑝 conditional subscript 𝑥 𝑡 1 subscript 𝑥 𝑡 \displaystyle=\frac{max(0,p(x_{T})\prod p(x_{t-1}|x_{t})\!\!-\!\!q(x_{T})\prod
q%
(x_{t-1}|x_{t})\!)}{p(x_{T})\prod p(x_{t-1}|x_{t})} = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) ∏ italic_p ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) - italic_q ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) ∏ italic_q ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) ) end_ARG start_ARG italic_p ( italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT ) ∏ italic_p ( italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) end_ARG
(25)
= m a x ( 0 , Σ ⋅ p θ ( x 0 | x 1 p ) − q θ ( x 0 | x 1 q ) ) Σ ⋅ p θ ( x 0 | x 1 p ) absent 𝑚 𝑎 𝑥 0 ⋅ Σ subscript 𝑝 𝜃 conditional subscript 𝑥 0 subscript superscript 𝑥 𝑝 1 subscript 𝑞 𝜃 conditional subscript 𝑥 0 subscript superscript 𝑥 𝑞 1 ⋅ Σ subscript 𝑝 𝜃 conditional subscript 𝑥 0 subscript superscript 𝑥 𝑝 1 \displaystyle=\frac{max(0,\Sigma\cdot p_{\theta}(x_{0}|x^{p}_{1})-q_{\theta}(x%
_{0}|x^{q}_{1}))}{\Sigma\cdot p_{\theta}(x_{0}|x^{p}_{1})} = divide start_ARG italic_m italic_a italic_x ( 0 , roman_Σ ⋅ italic_p start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - italic_q start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) end_ARG start_ARG roman_Σ ⋅ italic_p start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG
(26)
その後、中間的な雑音除去項を Σ Σ \Sigma roman_Σ によって消去すれば、計算可能な結果を得ることができる。最終的な表現は容易に得られる。修正された分布はこの方法でサンプリングすることができる。
A.3 Correctness of continuous speculative decoding
我々は連続的投機的デコーディングの正確性を示す。
β 𝛽 \beta italic_β を以下の受理確率とする:
β = E x ∼ q ( x ) min ( 1 , p ( x ) q ( x ) ) = ∫ x min ( p ( x ) , q ( x ) ) 𝑑 x . 𝛽 subscript 𝐸 similar-to 𝑥 𝑞 𝑥 1 𝑝 𝑥 𝑞 𝑥 subscript 𝑥 𝑝 𝑥 𝑞 𝑥 differential-d 𝑥 \beta=E_{x\sim q(x)}\min(1,\frac{p(x)}{q(x)})=\int_{x}\min(p(x),q(x))dx. italic_β = italic_E start_POSTSUBSCRIPT italic_x ∼ italic_q ( italic_x ) end_POSTSUBSCRIPT roman_min ( 1 , divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG ) = ∫ start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT roman_min ( italic_p ( italic_x ) , italic_q ( italic_x ) ) italic_d italic_x .
(27)
ここで注意すべきは:
p ′ ( x ) superscript 𝑝 ′ 𝑥 \displaystyle p^{\prime}(x) italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x )
= m a x ( 0 , p ( x ) − q ( x ) ) ∫ x ′ m a x ( 0 , p ( x ′ ) − q ( x ′ ) ) 𝑑 x ′ absent 𝑚 𝑎 𝑥 0 𝑝 𝑥 𝑞 𝑥 subscript superscript 𝑥 ′ 𝑚 𝑎 𝑥 0 𝑝 superscript 𝑥 ′ 𝑞 superscript 𝑥 ′ differential-d superscript 𝑥 ′ \displaystyle=\frac{max(0,p(x)-q(x))}{\int_{x^{\prime}}max(0,p(x^{\prime})-q(x%
^{\prime}))dx^{\prime}} = divide start_ARG italic_m italic_a italic_x ( 0 , italic_p ( italic_x ) - italic_q ( italic_x ) ) end_ARG start_ARG ∫ start_POSTSUBSCRIPT italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_m italic_a italic_x ( 0 , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) - italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ) italic_d italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_ARG
(28)
= p ( x ) − m i n ( q ( x ) , p ( x ) ) 1 − β . absent 𝑝 𝑥 𝑚 𝑖 𝑛 𝑞 𝑥 𝑝 𝑥 1 𝛽 \displaystyle=\frac{p(x)-min(q(x),p(x))}{1-\beta}. = divide start_ARG italic_p ( italic_x ) - italic_m italic_i italic_n ( italic_q ( italic_x ) , italic_p ( italic_x ) ) end_ARG start_ARG 1 - italic_β end_ARG .
(29)
ここで我々は以下を得る:
P ( x ′ ) = p ( accept , x ′ ) + p ( reject , x ′ ) , 𝑃 superscript 𝑥 ′ 𝑝 accept superscript 𝑥 ′ 𝑝 reject superscript 𝑥 ′ P(x^{\prime})=p(\text{accept},x^{\prime})+p(\text{reject},x^{\prime}), italic_P ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) = italic_p ( accept , italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) + italic_p ( reject , italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ,
(30)
ここで:
p ( accept , x ′ ) = q ( x ′ ) min ( 1 , p ( x ′ ) q ( x ′ ) ) = min ( q ( x ′ ) , p ( x ′ ) ) , 𝑝 accept superscript 𝑥 ′ 𝑞 superscript 𝑥 ′ 1 𝑝 superscript 𝑥 ′ 𝑞 superscript 𝑥 ′ 𝑞 superscript 𝑥 ′ 𝑝 superscript 𝑥 ′ p(\text{accept},x^{\prime})=q(x^{\prime})\min(1,\frac{p(x^{\prime})}{q(x^{%
\prime})})=\min(q(x^{\prime}),p(x^{\prime})), italic_p ( accept , italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) = italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) roman_min ( 1 , divide start_ARG italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) end_ARG start_ARG italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) end_ARG ) = roman_min ( italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ) ,
(31)
そして:
p ( reject , x ′ ) = ( 1 − β ) p ′ ( x ′ ) = p ( x ′ ) − min ( q ( x ′ ) , p ( x ′ ) ) . 𝑝 reject superscript 𝑥 ′ 1 𝛽 superscript 𝑝 ′ superscript 𝑥 ′ 𝑝 superscript 𝑥 ′ 𝑞 superscript 𝑥 ′ 𝑝 superscript 𝑥 ′ p(\text{reject},x^{\prime})=(1-\beta)p^{\prime}(x^{\prime})=p(x^{\prime})-\min%
(q(x^{\prime}),p(x^{\prime})). italic_p ( reject , italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) = ( 1 - italic_β ) italic_p start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) = italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) - roman_min ( italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ) .
(32)
全体として、出力は依然として以下を生成する:
P ( x ′ ) 𝑃 superscript 𝑥 ′ \displaystyle P(x^{\prime}) italic_P ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT )
= min ( q ( x ′ ) , p ( x ′ ) ) + p ( x ′ ) − min ( q ( x ′ ) , p ( x ′ ) ) absent 𝑞 superscript 𝑥 ′ 𝑝 superscript 𝑥 ′ 𝑝 superscript 𝑥 ′ 𝑞 superscript 𝑥 ′ 𝑝 superscript 𝑥 ′ \displaystyle=\min(q(x^{\prime}),p(x^{\prime}))+p(x^{\prime})-\min(q(x^{\prime%
}),p(x^{\prime})) = roman_min ( italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) ) + italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) - roman_min ( italic_q ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) , italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) )
(33)
= p ( x ′ ) . absent 𝑝 superscript 𝑥 ′ \displaystyle=p(x^{\prime}). = italic_p ( italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) .
(34)
アルゴリズム 1 は、我々の実装による連続値トークンに対する投機的デコーディングアルゴリズムのこの手順を示している。
アルゴリズム 1 連続的投機的デコーディングステップ
入力: M p , M q , p r e f i x subscript 𝑀 𝑝 subscript 𝑀 𝑞 𝑝 𝑟 𝑒 𝑓 𝑖 𝑥
M_{p},M_{q},prefix italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT , italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT , italic_p italic_r italic_e italic_f italic_i italic_x 。
▷ ▷ \triangleright ▷ γ 𝛾 \gamma italic_γ 個の推測x 1 , … , γ subscript 𝑥 1 … 𝛾
x_{1,\ldots,\gamma} italic_x start_POSTSUBSCRIPT 1 , … , italic_γ end_POSTSUBSCRIPT をM q subscript 𝑀 𝑞 M_{q} italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT から自己回帰的にサンプリングする。
for i = 1 𝑖 1 i=1 italic_i = 1 to γ 𝛾 \gamma italic_γ do
q i ( x ) ← M q ( p r e f i x + [ x 1 , … , x i − 1 ] ) ← subscript 𝑞 𝑖 𝑥 subscript 𝑀 𝑞 𝑝 𝑟 𝑒 𝑓 𝑖 𝑥 subscript 𝑥 1 … subscript 𝑥 𝑖 1
q_{i}(x)\leftarrow M_{q}(prefix+[x_{1},\ldots,x_{i-1}]) italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) ← italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT ( italic_p italic_r italic_e italic_f italic_i italic_x + [ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT ] )
x i ∼ q i ( x ) similar-to subscript 𝑥 𝑖 subscript 𝑞 𝑖 𝑥 x_{i}\sim q_{i}(x) italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∼ italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x )
end for
▷ ▷ \triangleright ▷ M p subscript 𝑀 𝑝 M_{p} italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT を並列に実行し、ϵ t subscript italic-ϵ 𝑡 \epsilon_{t} italic_ϵ start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT をM q subscript 𝑀 𝑞 M_{q} italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT 内で同じに保つ
p 1 ( x ) , … , p γ + 1 ( x ) ← ← subscript 𝑝 1 𝑥 … subscript 𝑝 𝛾 1 𝑥
absent p_{1}(x),\ldots,p_{\gamma+1}(x)\leftarrow italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x ) , … , italic_p start_POSTSUBSCRIPT italic_γ + 1 end_POSTSUBSCRIPT ( italic_x ) ←
M p ( p r e f i x ) , … , M p ( p r e f i x + [ x 1 , … , x γ ] ) subscript 𝑀 𝑝 𝑝 𝑟 𝑒 𝑓 𝑖 𝑥 … subscript 𝑀 𝑝 𝑝 𝑟 𝑒 𝑓 𝑖 𝑥 subscript 𝑥 1 … subscript 𝑥 𝛾
M_{p}(prefix),\ldots,M_{p}(prefix+[x_{1},\ldots,x_{\gamma}]) italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_p italic_r italic_e italic_f italic_i italic_x ) , … , italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_p italic_r italic_e italic_f italic_i italic_x + [ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_γ end_POSTSUBSCRIPT ] )
Σ ← ∏ t = 2 T | Σ q , t | ∏ t = 2 T | Σ p , t | ← Σ superscript subscript product 𝑡 2 𝑇 subscript Σ 𝑞 𝑡
superscript subscript product 𝑡 2 𝑇 subscript Σ 𝑝 𝑡
\Sigma\leftarrow\frac{\prod_{t=2}^{T}\sqrt{|\Sigma_{q,t}|}}{\prod_{t=2}^{T}%
\sqrt{|\Sigma_{p,t}|}} roman_Σ ← divide start_ARG ∏ start_POSTSUBSCRIPT italic_t = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_q , italic_t end_POSTSUBSCRIPT | end_ARG end_ARG start_ARG ∏ start_POSTSUBSCRIPT italic_t = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT square-root start_ARG | roman_Σ start_POSTSUBSCRIPT italic_p , italic_t end_POSTSUBSCRIPT | end_ARG end_ARG
▷ ▷ \triangleright ▷ 受理された推測の数n 𝑛 n italic_n を決定する。
r 1 ∼ U ( 0 , 1 ) , … , r γ ∼ U ( 0 , 1 ) formulae-sequence similar-to subscript 𝑟 1 𝑈 0 1 …
similar-to subscript 𝑟 𝛾 𝑈 0 1 r_{1}\sim U(0,1),\dots,r_{\gamma}\sim U(0,1) italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∼ italic_U ( 0 , 1 ) , … , italic_r start_POSTSUBSCRIPT italic_γ end_POSTSUBSCRIPT ∼ italic_U ( 0 , 1 )
p i ( x ) q i ( x ) ← Σ ⋅ p i ( x | x 1 p ) q i ( x | x 1 q ) ← subscript 𝑝 𝑖 𝑥 subscript 𝑞 𝑖 𝑥 ⋅ Σ subscript 𝑝 𝑖 conditional 𝑥 subscript superscript 𝑥 𝑝 1 subscript 𝑞 𝑖 conditional 𝑥 subscript superscript 𝑥 𝑞 1 \frac{p_{i}(x)}{q_{i}(x)}\leftarrow\Sigma\cdot\frac{p_{i}(x|x^{p}_{1})}{q_{i}(%
x|x^{q}_{1})} divide start_ARG italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) end_ARG start_ARG italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) end_ARG ← roman_Σ ⋅ divide start_ARG italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG start_ARG italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x | italic_x start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG
n ← min ( { i − 1 ∣ 1 ≤ i ≤ γ , r i > p i ( x ) q i ( x ) } ∪ { γ } ) ← 𝑛 conditional-set 𝑖 1 formulae-sequence 1 𝑖 𝛾 subscript 𝑟 𝑖 subscript 𝑝 𝑖 𝑥 subscript 𝑞 𝑖 𝑥 𝛾 n\leftarrow\min(\{i-1\mid 1\leq i\leq\gamma,r_{i}>\frac{p_{i}(x)}{q_{i}(x)}\}%
\cup\{\gamma\}) italic_n ← roman_min ( { italic_i - 1 ∣ 1 ≤ italic_i ≤ italic_γ , italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT > divide start_ARG italic_p start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) end_ARG start_ARG italic_q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) end_ARG } ∪ { italic_γ } )
▷ ▷ \triangleright ▷ 以下の受理棄却サンプリングを通じて修正された分布をサンプリングする
if n < γ 𝑛 𝛾 n<\gamma italic_n < italic_γ then
repeat
x t ← p n ( x | x 1 p ) ← subscript 𝑥 𝑡 subscript 𝑝 𝑛 conditional 𝑥 subscript superscript 𝑥 𝑝 1 x_{t}\leftarrow p_{n}(x|x^{p}_{1}) italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ← italic_p start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_x | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT )
α s ← m a x ( 0 , Σ ⋅ p n ( x t | x 1 p ) − q n ( x t | x 1 q ) ) Σ ⋅ p n ( x t | x 1 p ) ← subscript 𝛼 𝑠 𝑚 𝑎 𝑥 0 ⋅ Σ subscript 𝑝 𝑛 conditional subscript 𝑥 𝑡 subscript superscript 𝑥 𝑝 1 subscript 𝑞 𝑛 conditional subscript 𝑥 𝑡 subscript superscript 𝑥 𝑞 1 ⋅ Σ subscript 𝑝 𝑛 conditional subscript 𝑥 𝑡 subscript superscript 𝑥 𝑝 1 \alpha_{s}\leftarrow\frac{max(0,\Sigma\cdot p_{n}(x_{t}|x^{p}_{1})-q_{n}(x_{t}%
|x^{q}_{1}))}{\Sigma\cdot p_{n}(x_{t}|x^{p}_{1})} italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ← divide start_ARG italic_m italic_a italic_x ( 0 , roman_Σ ⋅ italic_p start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - italic_q start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) end_ARG start_ARG roman_Σ ⋅ italic_p start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_x start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG
ϵ ∼ U ( 0 , 1 ) similar-to italic-ϵ 𝑈 0 1 \epsilon\sim U(0,1) italic_ϵ ∼ italic_U ( 0 , 1 )
until ϵ ≤ α s italic-ϵ subscript 𝛼 𝑠 \epsilon\leq\alpha_{s} italic_ϵ ≤ italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT
end if
▷ ▷ \triangleright ▷ M p subscript 𝑀 𝑝 M_{p} italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT から1つのトークンを、n 𝑛 n italic_n トークンをM q subscript 𝑀 𝑞 M_{q} italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT から返す。
return p r e f i x + [ x 1 , … , x n , x t ] 𝑝 𝑟 𝑒 𝑓 𝑖 𝑥 subscript 𝑥 1 … subscript 𝑥 𝑛 subscript 𝑥 𝑡
prefix+[x_{1},\ldots,x_{n},x_{t}] italic_p italic_r italic_e italic_f italic_i italic_x + [ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ]
B Limitations of Walltime Improvement
以下は [ 19 ] で述べられているように、期待されるウォールタイムの改善は次のように仮定される:
1 − α γ + 1 ( 1 − α ) ( γ c + 1 ) , 1 superscript 𝛼 𝛾 1 1 𝛼 𝛾 𝑐 1 \frac{1-\alpha^{\gamma+1}}{(1-\alpha)(\gamma c+1)}, divide start_ARG 1 - italic_α start_POSTSUPERSCRIPT italic_γ + 1 end_POSTSUPERSCRIPT end_ARG start_ARG ( 1 - italic_α ) ( italic_γ italic_c + 1 ) end_ARG ,
(35)
ここで、 α 𝛼 \alpha italic_α はドラフトトークンの受理率、 γ 𝛾 \gamma italic_γ はドラフトの長さ、そして c 𝑐 c italic_c はドラフトモデルとターゲットモデル間の推論時間比である。しかしながら、利用可能なモデルが限られているため、我々が入手できる最大のモデルはMAR-H(943M)である。MAR-B(208M)による推論時間比 c 𝑐 c italic_c は0.38(bs= 128 128 128 128 )であり、これは はるかに大きい 数値である。 0.05 0.05 0.05 0.05 または 0 0 に近い値が [ 19 ] で言及されている。また、理論的な改善は十分に長い生成を前提としている。しかし、自己回帰的な画像生成は現在 256 256 256 256 生成ステップに制限されている。これにより、理論的結果の適用不可能性がさらに強調される。
我々は、7B、13B、あるいはさらに大きなモデルを用いることで、我々のアルゴリズムがより顕著な実行時間の改善を達成すると予想している。この方向性は今後の研究でさらなる調査が必要である。
C Implementation Details
我々は、オープンソースの連続値視覚自己回帰モデルMAR [ 21 ] を用いて、ImageNet [ 8 ] 256 × 256 256 256 256\times 256 256 × 256 生成に関する実験を行った。ドラフトモデルはMAR-B(208M)とMAR-L(479M)から選択された。ターゲットモデルはそれぞれMAR-LとMAR-H(943M)から選択された。我々は全てのモデルに対して公式の事前学習済みチェックポイントを使用した。一般的な慣行として、温度とクラス無しガイダンスはMARと同様に設定した。オープンソースモデルが限られているため、より大規模なモデルで我々のアルゴリズムを実装し、さらなる結果を得ることはできなかった。しかし、デフォルトのMARモデルは、MARにおける双方向アテンションに関して顕著な結果を示している。ターゲットモデルがドラフトトークンを検証する際、各出力トークンは前のすべてのトークンを見ることができるため、最後のトークンとみなすことができる。さらに、両モデルはそれぞれのクラストークン [cls] を利用しており、これらは推論デコーディングプロセス中に共有されない。それらの拡散損失も共有されない。生成速度は単一のNVIDIA A100 GPUで測定され、バッチサイズは { 1 \{1 { 1 、 8 8 8 8 、 128 128 128 128 、 256 } 256\} 256 } の範囲である。FIDとISは50,000枚の生成画像に対して計算された。結果は10回の評価の平均である。
D Additional Experiments
D.1 Classifier-Free Guidance
図 13 は、ドラフトの長さと異なるCFGスケールにおける受理率の関係を示している。CFGスケールが増加するにつれて、全体的に受理率が低下する傾向が見られる。この傾向は主に各ドラフト長にわたって一貫している。この現象は、クラスガイダンスが強化されるにつれて、ドラフトモデルとターゲットモデル間の不整合が増大し、さらに受理率を低下させる可能性があることを示唆している。
図13 :
CFGスケールは、異なるドラフト数における受理率に大きな影響を与える。
D.2 Temperature
MARにおける拡散モデルのデノイジングプロセス中、温度 τ 𝜏 \tau italic_τ は重要なハイパーパラメータである。温度設定は、ドラフトモデルとターゲットモデルの出力間の一貫性に影響を与える。図 14 は、生成プロセス中の受理率に対する温度 τ 𝜏 \tau italic_τ の影響を示している。ドラフト数は 8 8 8 8 に設定されている。温度は最終的な出力分布のPDFに影響を与える。低い温度ではより鋭い分布になる可能性があり、高い温度ではより平坦な分布になる可能性がある。比率 p ( x ) / q ( x ) 𝑝 𝑥 𝑞 𝑥 p(x)/q(x) italic_p ( italic_x ) / italic_q ( italic_x ) はこれに基づいて影響を受ける可能性がある。
図14 :
受理率に対する温度の影響。左:CFGなし。右:CFGあり。
D.3 Acceptance-Rejection Sampling
我々は受容棄却サンプリング中の経験的サンプリング試行時間を観察した。図 15 は棄却回数とドラフト長の関係を示している。経験的に、受容棄却サンプリングは多くの場合、わずか数回のサンプリングステップしか必要としない。このサンプリングプロセスによって消費されるランタイムオーバーヘッドは、全体的なモデル推論時間と比較して無視できる程度である。
図15 :
棄却フェーズにおける受容棄却サンプリングアルゴリズムの経験的棄却回数。
D.4 Visualization of Acceptance
我々は各トークンの受容と棄却を2次元ヒートマップを通じて可視化した。図 16 に示すように、濃い緑色のブロックは受容されたトークンを表し、薄い緑色のブロックは棄却されたトークンを表している。背景や単純なテクスチャを持つ領域を表すトークンは受容される傾向にあることが観察された。対照的に、より詳細な位置は棄却される可能性が高い。
図16 :
受容されたトークンのヒートマップの可視化。濃い緑:受容。薄い緑:棄却。