JaLMS
最新の AI 研究を日本語で解読

Continuous Speculative Decoding for Autoregressive Image Generation

Zili Wang1,2  Robert Zhang3  Kun Ding1,2  Qi Yang1,2  Fei Li4  Shiming Xiang1,2
1University of Chinese Academy of Sciences, China
2Institute of Automation, Chinese Academy of Sciences, China
3Independent Researcher  4China Tower Corporation Limited
Abstract

連続値自己回帰(AR)画像生成モデルは、離散トークンモデルと比較して顕著な優位性を示し、優れた再構成品質と高い生成忠実度を実証している。しかしながら、自己回帰フレームワークの計算要求により、推論に大きなオーバーヘッドが生じる。大規模言語モデル(LLM)の高速化に投機的デコーディングが効果的であることが証明されているが、連続値視覚自己回帰モデルへの適応はまだ探求されていない。 本稿では、投機的デコーディングアルゴリズムを離散トークンから連続空間へと一般化する。出力分布の本質的な特性を分析することで、このようなモデルで一般的な拡散分布に適した受理基準を確立する。投機的デコーディングの出力分布に生じる不整合を克服するために、我々は雑音除去軌道の整列とトークンの事前充填手法を導入する。さらに、棄却フェーズにおけるサンプリングが困難な分布を特定する。この問題を緩和するために、我々は適切な上限を持つ慎重な受理棄却サンプリング法を提案し、複雑な積分を回避する。 実験結果は、我々の連続投機的デコーディングが、出力分布を維持しながら、既存のモデルで顕著な2.33×2.33\times2.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]

Refer to caption
図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×256256256256\times 256256 × 256生成におけるFréchet Inception Distance (FID) [14]とInception Score (IS) [31]を用いたパフォーマンス指標も報告する。図1に示すように、本稿の連続的投機的デコーディングアルゴリズムは、元の生成品質を大きく維持しながら、最大2.33×2.33\times2.33 ×の顕著な推論速度向上を達成する。

我々の貢献は以下のように要約できる:

  • 我々は、投機的デコーディングを連続空間に拡張し、連続値の自己回帰型画像生成に適応させた最初の研究である。

  • 我々は、連続確率密度関数に適した受理基準を確立し、解析的な形式を持たない修正された分布の受容棄却サンプリングを通じて、積分を必要としないサンプリング方法を確立した。

  • 我々は、分布を整合させるためのデノイジング軌道整合と、初期ステップの低い受理率の問題に対処するためのトークン事前充填法を導出した。

  • 追加の訓練、モデルアーキテクチャの修正、または出力分布の変更なしに、我々の手法は2.33×2.33\times2.33 ×の高速化を達成し、同等の画質を実現した。

Refer to caption
図3: 我々が提案する連続投機的デコーディングの概要。連続投機的デコーディングは、連続自己回帰モデルの拡散モデル成分を活用する。トークン13similar-to131\sim 31 ∼ 3は接頭トークンであり、トークンx𝑥xitalic_xが検証対象である。ドラフトモデルとターゲットモデルから確率密度値を取得し比較した後、q(x)<p(x)𝑞𝑥𝑝𝑥q(x)<p(x)italic_q ( italic_x ) < italic_p ( italic_x )であれば、x𝑥xitalic_xが受理される。そうでない場合、x𝑥xitalic_xは確率1p(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で棄却され、その後、修正された分布から受容棄却サンプリングを通じてxsuperscript𝑥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 )を持つドラフトモデルMqsubscript𝑀𝑞M_{q}italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPTと、出力分布p(x)𝑝𝑥p(x)italic_p ( italic_x )を持つターゲットモデルMpsubscript𝑀𝑝M_{p}italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPTを利用する。 まず、ドラフトモデルはxq(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)}>1divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG > 1の場合、ドラフトトークンは受け入れられる。そうでない場合、確率1p(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)=norm(max(0,p(x)q(x))=max(0,p(x)q(x)xmax(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𝑥xitalic_xを再サンプリングする。この手順により、投機的デコーディングはターゲットモデルとして元の出力分布xp(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𝑥xitalic_xの確率密度関数(PDF)を表す。我々の目標は、我々のアルゴリズムを通じてPDF p(x)𝑝𝑥p(x)italic_p ( italic_x )と同じ分布を維持することである。したがって、ドラフトと目標出力分布のPDFの比率を受理基準として直接得ることができる。つまり、p(x)q(x)>1𝑝𝑥𝑞𝑥1\frac{p(x)}{q(x)}>1divide start_ARG italic_p ( italic_x ) end_ARG start_ARG italic_q ( italic_x ) end_ARG > 1であれば、ドラフトトークンは受理される。そうでない場合、確率1p(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=x0𝑥subscript𝑥0x=x_{0}italic_x = italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPTをサンプリングするには、逆拡散(ノイズ除去)過程を通じてp(x0|xT)𝑝conditionalsubscript𝑥0subscript𝑥𝑇p(x_{0}|x_{T})italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT )をサンプリングする。ここで、xTsubscript𝑥𝑇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(x0|xT)q(x0|xT)=p(xT)t=1Tp(xt1|xt)q(xT)t=1Tq(xt1|xt),𝑝conditionalsubscript𝑥0subscript𝑥𝑇𝑞conditionalsubscript𝑥0subscript𝑥𝑇𝑝subscript𝑥𝑇superscriptsubscriptproduct𝑡1𝑇𝑝conditionalsubscript𝑥𝑡1subscript𝑥𝑡𝑞subscript𝑥𝑇superscriptsubscriptproduct𝑡1𝑇𝑞conditionalsubscript𝑥𝑡1subscript𝑥𝑡\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(xt1|xt)𝑝conditionalsubscript𝑥𝑡1subscript𝑥𝑡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 )はニューラルネットワークθ𝜃\thetaitalic_θによってガウス分布として近似される[28]

pθ(xt1|xt)=𝒩(xt1;μθ(xt,t),Σθ(xt,t)),subscript𝑝𝜃conditionalsubscript𝑥𝑡1subscript𝑥𝑡𝒩subscript𝑥𝑡1subscript𝜇𝜃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θ𝜃\thetaitalic_θによって予測される平均と分散である。しかし、ドラフトモデルと目標モデルの違いにより、ノイズ除去過程に大きな不整合が存在する。図4に示すように、ドラフトモデルと目標モデルのノイズ除去軌跡は異なる出力に分岐し、明確に異なる最終生成分布をもたらす—整合性の欠如は極めて低い受理確率をもたらす。

Refer to caption
図4: ノイズ除去軌跡の整列の図示。ノイズ除去過程は、徐々にノイズを除去することでノイズ分布をデータ分布にマッピングする。これらのノイズ除去ステップは軌跡を生成する。整列された軌跡は類似した出力分布をもたらし、整列されていない軌跡はより異なる分布を生成する。

我々は、ノイズ除去軌跡によって生成される分布の整合性を高めるために、ノイズ除去軌跡整列戦略を提案する。この整列により、両モデルが各ノイズ除去ステップで標準ガウス分布εt𝒩(0,I)similar-tosubscript𝜀𝑡𝒩0I\varepsilon_{t}\sim\mathcal{N}(0,\text{I})italic_ε start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ∼ caligraphic_N ( 0 , I )から同じサンプリングポイントを使用し、各xt1=Σθ(xt,t)εt+μθ(xt,t)subscript𝑥𝑡1subscriptΣ𝜃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(xt1|xt)=1|Σθ(xt,t)|p(εt).𝑝conditionalsubscript𝑥𝑡1subscript𝑥𝑡1subscriptΣ𝜃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)

これに基づき、整列は後続の計算を簡略化できる。ΣtqsubscriptsuperscriptΣ𝑞𝑡\Sigma^{q}_{t}roman_Σ start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPTΣtpsubscriptsuperscriptΣ𝑝𝑡\Sigma^{p}_{t}roman_Σ start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPTをタイムステップt𝑡titalic_tにおけるドラフトモデルと目標モデルの分散とする。pθ(xt1p|xtp)/qθ(xt1q|xtq)=|Σtq|/|Σtp|subscript𝑝𝜃conditionalsubscriptsuperscript𝑥𝑝𝑡1subscriptsuperscript𝑥𝑝𝑡subscript𝑞𝜃conditionalsubscriptsuperscript𝑥𝑞𝑡1subscriptsuperscript𝑥𝑞𝑡subscriptsuperscriptΣ𝑞𝑡subscriptsuperscriptΣ𝑝𝑡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_ARGp(xT)=q(xT)𝑝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=2T|Σtq|/t=2T|Σtp|.Σsuperscriptsubscriptproduct𝑡2𝑇subscriptsuperscriptΣ𝑞𝑡superscriptsubscriptproduct𝑡2𝑇subscriptsuperscriptΣ𝑝𝑡\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(x0|xT)q(x0|xT)=Σpθ(x0|x1p)qθ(x0|x1q).𝑝conditionalsubscript𝑥0subscript𝑥𝑇𝑞conditionalsubscript𝑥0subscript𝑥𝑇Σsubscript𝑝𝜃conditionalsubscript𝑥0subscriptsuperscript𝑥𝑝1subscript𝑞𝜃conditionalsubscript𝑥0subscriptsuperscript𝑥𝑞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%percent55\%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𝑥xitalic_x is rejected?

ドラフトモデルからのサンプルが棄却された場合、我々はLLMsにおいて修正された分布p(x)=norm(max(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)=max(0,p(x)q(x)xmax(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)=max(0,p(x)q(x))xmax(0,p(x)q(x))𝑑x.superscript𝑝𝑥𝑚𝑎𝑥0𝑝𝑥𝑞𝑥subscriptsuperscript𝑥𝑚𝑎𝑥0𝑝superscript𝑥𝑞superscript𝑥differential-dsuperscript𝑥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 )からサンプリングする。そして、閾値αssubscript𝛼𝑠\alpha_{s}italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPTを計算する:

αs=p(x)Mp(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𝑀Mitalic_Mは任意のx𝑥xitalic_xに対してMp(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𝑀Mitalic_Mは受容棄却サンプリングの正確性を保証する[2]

その後、我々はϵU(0,1)similar-toitalic-ϵ𝑈01\epsilon\sim U(0,1)italic_ϵ ∼ italic_U ( 0 , 1 )をサンプリングする。ϵ<αsitalic-ϵsubscript𝛼𝑠\epsilon<\alpha_{s}italic_ϵ < italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPTであれば提案分布からのサンプルを受け入れる。そうでなければ、それを棄却し、別のx𝑥xitalic_xを再サンプリングする。このサンプリングアプローチは修正された分布からのサンプリングと等価である[2]

上限M𝑀Mitalic_Mはサンプリングの質に影響を与えるため、適切に決定されるべきであることに注意する。Z=xmax(0,p(x)q(x))𝑑x𝑍subscript𝑥𝑚𝑎𝑥0𝑝𝑥𝑞𝑥differential-d𝑥Z=\int_{x}max(0,p(x)-q(x))dxitalic_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)=max(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𝑝𝑥𝑞𝑥0p(x)-q(x)\geq 0italic_p ( italic_x ) - italic_q ( italic_x ) ≥ 0が与えられたとき、我々は以下を得る:

p(x)q(x)Zp(x)ZMp(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/Zassign𝑀1𝑍M\vcentcolon=1/Zitalic_M := 1 / italic_Zを上限として設定できる。しかし、Z𝑍Zitalic_Zの計算にはまだmax(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/Zitalic_M = 1 / italic_Zを代入して以下を得る:

αs=max(0,p(x)q(x))/Zp(x)/Z=max(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/Zitalic_M = 1 / italic_Zを用いることで、2つのPDFによってαssubscript𝛼𝑠\alpha_{s}italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPTを直接計算できることを示している。 積分Z𝑍Zitalic_Zの計算を回避でき、計算の複雑さを減らしつつ結果の正確性を維持できる。

αssubscript𝛼𝑠\alpha_{s}italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPTを計算するために、我々は式(5)を代入して以下を得る:

αs=max(0,Σpθ(x0|x1p)qθ(x0|x1q))Σpθ(x0|x1p).subscript𝛼𝑠𝑚𝑎𝑥0Σsubscript𝑝𝜃conditionalsubscript𝑥0subscriptsuperscript𝑥𝑝1subscript𝑞𝜃conditionalsubscript𝑥0subscriptsuperscript𝑥𝑞1Σsubscript𝑝𝜃conditionalsubscript𝑥0subscriptsuperscript𝑥𝑝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)
Refer to caption
図5: 修正された分布(非正規化)の図示。破線はドラフトモデルとターゲットモデルの出力分布を表し、赤い領域は修正された分布を示す。この領域の積分は計算が困難であり、解析的な表現が得られないため、サンプリングが複雑になる。

したがって、我々はターゲット分布からサンプリングし、αssubscript𝛼𝑠\alpha_{s}italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPTを計算し、ϵU(0,1)similar-toitalic-ϵ𝑈01\epsilon\sim U(0,1)italic_ϵ ∼ italic_U ( 0 , 1 )で棄却することで、元の修正された分布からのサンプリングをシミュレートすることができる。

4 Experiment

Refer to caption
図6: 定性的結果。MARを用いた連続的推論デコーディングで生成された画像を示す。
Mpsubscript𝑀𝑝M_{p}italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT Mqsubscript𝑀𝑞M_{q}italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT γ𝛾\gammaitalic_γ α𝛼\alphaitalic_α 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はバッチサイズを指す。各設定の受理率 α𝛼\alphaitalic_α も表示されている。

4.1 Implementation Details

我々は、オープンソースの連続値視覚自己回帰モデルMAR [21] を用いて、ImageNet [8] 256×256256256256\times 256256 × 256 生成に関する実験を体系的に行った。利用可能なオープンソースモデルが限られているため、ドラフトモデルとしてMAR-B(208M)とMAR-L(479M)を、ターゲットモデルとしてMAR-LとMAR-H(943M)を評価した。我々は公式の事前学習済みチェックポイントを使用した。FID [14] とIS [31]、および単一のNVIDIA A100 GPUでの実行時間の速度向上率を報告する。ランタイム設定は厳密に規定された構成 [21] に準拠している。より詳細なアブレーション研究と定量的結果は補足資料に記載されている。

Mpsubscript𝑀𝑝M_{p}italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT Mqsubscript𝑀𝑞M_{q}italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT w/o CFG w/ CFG
FID\downarrow IS\uparrow FID\downarrow IS\uparrow
MAR-L 2.60 221.4 1.78 296.0
MAR-L MAR-B 2.59 ±plus-or-minus\pm±0.04 218.4±plus-or-minus\pm±3.4 1.81±plus-or-minus\pm±0.05 303.7±plus-or-minus\pm±4.3
MAR-H 2.35 227.8 1.55 303.7
MAR-H MAR-B 2.36±plus-or-minus\pm±0.05 228.5±plus-or-minus\pm±2.2 1.60±plus-or-minus\pm±0.05 301.6±plus-or-minus\pm±2.6
MAR-H MAR-L 2.34±plus-or-minus\pm±0.04 228.9±plus-or-minus\pm±2.8 1.57±plus-or-minus\pm±0.04 301.4±plus-or-minus\pm±2.5
表2: ImageNet 256×256256256256\times 256256 × 256 の無条件および条件付き生成におけるFIDとISの比較評価。連続的推論デコーディングは、合理的な範囲内で性能を維持しつつ加速を実現している。

4.2 Main Results

Speedup results.

1は、異なるバッチサイズにおける高速化率を示しており、ドラフト数は8888から32323232の範囲で、全体の受理率も併せて示している。バッチサイズが大きくなるにつれて、投機的デコーディングの効果が顕著になる。元のモデルと比較して、我々のアプローチは最大で2.33×2.33\times2.33 ×の加速を達成している。オープンソースのモデルが限られているため、現在のドラフトモデルとターゲットモデルの規模の差は大きくない(208M対943M)。規模の差が大きくなるにつれて、加速効果はさらに顕著になると予想され、さらなる改善の可能性を示唆している。

Quantitative results.

我々の連続的投機的デコーディングと元のMARモデルのクラス条件付きおよび無条件のFIDとIS指標を表2に示す。複数回の反復実験を通じて、評価性能は一貫して許容範囲内に収まっている。これらの結果は我々の理論的分析の妥当性を確認し、我々のアルゴリズムがターゲットの出力分布を効果的に維持していることを示している。結果として、生成された出力の品質は保たれており、これについては後続のセクションでさらに議論する。さらに、これらの特性は我々のアルゴリズムを効率的かつ信頼性の高いモデル推論のための堅牢なソリューションとして確立している。

Refer to caption
図7: 定性的比較結果。様々なドラフト長γ𝛾\gammaitalic_γでアルゴリズムを使用して生成された画像を示す。

Qualitative results.

我々の手法による画像生成の品質を示すために、図6および7に示すようなより多くの可視化結果を提示する。図6は主要な生成結果を示している。図7は、自己回帰ステップ256256256256の元のMAR-Hの結果と、様々なドラフト長γ𝛾\gammaitalic_γの結果を比較している。2.33×2.33\times2.33 ×までの大幅な加速に加えて、我々の手法は生成された画像の品質を主に維持しており、これは我々の理論的証明と一致している。

Refer to caption
図8: 異なるドラフト数における受理率。ドラフト数が増えるにつれて受理率が低下する。

4.3 Ablation Study

Effectiveness of Draft & Verification.

純粋なドラフトモデルを使用した生成プロセスと、ドラフト&検証パラダイムを使用した生成プロセスの比較結果を図9に示す。検証フェーズでは、ドラフト内の最適でないトークン生成品質を示す領域が体系的に特定され、より高品質なトークンに置き換えられる。この方法論は、全体的な構成の整合性を維持するだけでなく、生成された出力の豊かさと詳細さを大幅に向上させる。

Refer to caption
図9: 純粋なドラフト(左)と検証済み(右)の生成結果の比較。拒否されたトークンの領域がおおまかにマークされている。
Mpsubscript𝑀𝑝M_{p}italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT Mqsubscript𝑀𝑞M_{q}italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT γ𝛾\gammaitalic_γ α𝛼\alphaitalic_α
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 α𝛼\alphaitalic_α vs. γ𝛾\gammaitalic_γ.

受容率とドラフトの長さの関係を図8に示す。ドラフトの長さが増加するにつれて、受容率は低下する傾向がある。この観察は、より長いドラフトが推論のオーバーヘッドを大幅に軽減できる一方で、ドラフトモデル自体の能力によって本質的に制約されていることを示唆している。結果として、ドラフトトークンの数の増加は、ターゲットモデルの分布からのより大きな偏差と関連し、最終的には受容率の低下につながる。

Effectiveness of trajectory alignment.

3は、ランダムにサンプリングされた軌道と我々のアライメントされた軌道の受容率を示している。ノイズ除去軌道アライメントは、ドラフトとターゲット出力分布間の一貫性を向上させ、それにより受容率を高め、p(x)/q(x)𝑝𝑥𝑞𝑥p(x)/q(x)italic_p ( italic_x ) / italic_q ( italic_x )の計算を簡素化する。図10は、アライメントの有無による生成画像を示している。アライメントが全体的な品質に与える影響は無視できるように見える。対照的に、完全にランダムなサンプリングは、異なる出力分布のために、より低い受容率につながる。

Refer to caption
図10: ノイズ除去軌道アライメントなし(上)とあり(下)の例。アライメント後、生成された画像は変形とアーティファクトが減少し、より高品質を達成している。
Mpsubscript𝑀𝑝M_{p}italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT Mqsubscript𝑀𝑞M_{q}italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT γ𝛾\gammaitalic_γ α𝛼\alphaitalic_α/Speed
0%percent00\%0 % 5%percent55\%5 % 15%percent1515\%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と同じである。下線は最高の高速化を示す。太字は最高のα𝛼\alphaitalic_αを意味する。

Influence of pre-filled tokens.

0%percent00\%0 %5%percent55\%5 %、および15%percent1515\%15 %における事前充填率のアブレーション実験を図11に示す。事前充填は、自己回帰サンプリングの初期段階で観察される低い受容率を補償し、表4に示すように全体的な受容率を向上させることができる。さらに、図12は異なる事前充填率での可視化を示している。特に、ドラフトとターゲットモデルの間の不一致により、0%percent00\%0 %の事前充填では特定のアーティファクトと画質の低下が生じる。しかし、ターゲットモデルからの適度な割合の事前充填トークンを導入することで、これらのアーティファクトを効果的に軽減している。事前充填率が増加するにつれて、このアプローチによってもたらされる利点は逓減傾向を示す。

Refer to caption
図11: 異なる事前充填率におけるステップごとの受容α𝛼\alphaitalic_α。ステップごとの受容率は1000サンプルで平均化されている。
Refer to caption
図12: 異なるトークン事前充填割合における画像生成品質の比較。

5 Conclusion

我々は、投機的デコーディングを連続値の視覚的自己回帰モデルに適応させる新しいアプローチを探究した。 連続空間におけるアルゴリズムの適用を妨げる重要な課題を分析した。そのために、受理基準を確立した。さらに、拡散と自己回帰プロセスにおける受理率を向上させるために、ノイズ除去軌道の整列とトークンの事前充填を行った。解析的な形式を持たない修正された分布からのサンプリングの問題は、適切に定義された上限を用いた受理棄却サンプリングによって解決された。 我々の連続的投機的デコーディングは、出力分布と高い生成忠実度を維持しながら、最大で2.33×2.33\times2.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=x0𝑥subscript𝑥0x=x_{0}italic_x = italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPTを得る:

p(x0|xT)=p(xT)t=1Tp(xt1|xt),𝑝conditionalsubscript𝑥0subscript𝑥𝑇𝑝subscript𝑥𝑇superscriptsubscriptproduct𝑡1𝑇𝑝conditionalsubscript𝑥𝑡1subscript𝑥𝑡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θ(xt1|xt)=𝒩(xt1;μθ(xt,t),Σθ(xt,t)).subscript𝑝𝜃conditionalsubscript𝑥𝑡1subscript𝑥𝑡𝒩subscript𝑥𝑡1subscript𝜇𝜃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θ(xt1|xt)subscript𝑝𝜃conditionalsubscript𝑥𝑡1subscript𝑥𝑡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θ(xt1|xt)subscript𝑞𝜃conditionalsubscript𝑥𝑡1subscript𝑥𝑡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 )の計算も同様である。

経験的に、xt1subscript𝑥𝑡1x_{t-1}italic_x start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPTは再パラメータ化を通じて右辺のガウス分布からサンプリングすることで得られる。つまり、まずεt𝒩(0,I)similar-tosubscript𝜀𝑡𝒩0I\varepsilon_{t}\sim\mathcal{N}(0,\text{I})italic_ε start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ∼ caligraphic_N ( 0 , I )をサンプリングし、次にxt1=Σθ(xt,t)εt+μθ(xt,t)subscript𝑥𝑡1subscriptΣ𝜃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 )の両方に同じϵtsubscriptitalic-ϵ𝑡\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{12(xμ)TΣ1(xμ)}absent1superscript2𝜋𝑛Σ12superscript𝑥𝜇𝑇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{εtTεt}.absent1superscript2𝜋𝑛Σsuperscriptsubscript𝜀𝑡𝑇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 )の両方に同じϵtsubscriptitalic-ϵ𝑡\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{12(xμp)TΣp1(xμp)}1(2π)n|Σq|exp{12(xμq)TΣq1(xμq)}absent1superscript2𝜋𝑛subscriptΣ𝑝12superscript𝑥subscript𝜇𝑝𝑇superscriptsubscriptΣ𝑝1𝑥subscript𝜇𝑝1superscript2𝜋𝑛subscriptΣ𝑞12superscript𝑥subscript𝜇𝑞𝑇superscriptsubscriptΣ𝑞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|.absentsubscriptΣ𝑞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(xT)t=2Tp(xt1|xt)q(xT)t=2Tq(xt1|xt)p(x0|x1)q(x0|x1)absent𝑝subscript𝑥𝑇superscriptsubscriptproduct𝑡2𝑇𝑝conditionalsubscript𝑥𝑡1subscript𝑥𝑡𝑞subscript𝑥𝑇superscriptsubscriptproduct𝑡2𝑇𝑞conditionalsubscript𝑥𝑡1subscript𝑥𝑡𝑝conditionalsubscript𝑥0subscript𝑥1𝑞conditionalsubscript𝑥0subscript𝑥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=2T|Σq,t|t=2T|Σp,t|p(x0|x1)q(x0|x1)absentsuperscriptsubscriptproduct𝑡2𝑇subscriptΣ𝑞𝑡superscriptsubscriptproduct𝑡2𝑇subscriptΣ𝑝𝑡𝑝conditionalsubscript𝑥0subscript𝑥1𝑞conditionalsubscript𝑥0subscript𝑥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(x0|x1)q(x0|x1),absentΣ𝑝conditionalsubscript𝑥0subscript𝑥1𝑞conditionalsubscript𝑥0subscript𝑥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)

ここで、ΣΣ\Sigmaroman_Σはノイズ除去の中間結果に沿った|Σ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の積である。また、x0q(x)similar-tosubscript𝑥0𝑞𝑥x_{0}\sim q(x)italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ∼ italic_q ( italic_x )は目標モデルによって検証されるべきであるため、p(x0|x1)𝑝conditionalsubscript𝑥0subscript𝑥1p(x_{0}|x_{1})italic_p ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT | italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT )はノイズ除去によって得られるのではなく、x0subscript𝑥0x_{0}italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPTp(x0|x1)𝑝conditionalsubscript𝑥0subscript𝑥1p(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)=max(0,p(x)q(x))xmax(0,p(x)q(x))𝑑x.superscript𝑝𝑥𝑚𝑎𝑥0𝑝𝑥𝑞𝑥subscriptsuperscript𝑥𝑚𝑎𝑥0𝑝superscript𝑥𝑞superscript𝑥differential-dsuperscript𝑥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=xmax(0,p(x)q(x))𝑑x𝑍subscriptsuperscript𝑥𝑚𝑎𝑥0𝑝superscript𝑥𝑞superscript𝑥differential-dsuperscript𝑥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𝑍Zitalic_ZM=1Z𝑀1𝑍M=\frac{1}{Z}italic_M = divide start_ARG 1 end_ARG start_ARG italic_Z end_ARGによって消去し、以下のようにすることができる:

αssubscript𝛼𝑠\displaystyle\alpha_{s}\!\!italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT =max(0,p(x)q(x))/Zp(x)/Zabsent𝑚𝑎𝑥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)
=max(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)
=max(0,p(x0|xT)q(x0|xT))p(x0|xT)absent𝑚𝑎𝑥0𝑝conditionalsubscript𝑥0subscript𝑥𝑇𝑞conditionalsubscript𝑥0subscript𝑥𝑇𝑝conditionalsubscript𝑥0subscript𝑥𝑇\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)
=max(0,p(xT)p(xt1|xt)q(xT)q(xt1|xt))p(xT)p(xt1|xt)absent𝑚𝑎𝑥0𝑝subscript𝑥𝑇product𝑝conditionalsubscript𝑥𝑡1subscript𝑥𝑡𝑞subscript𝑥𝑇product𝑞conditionalsubscript𝑥𝑡1subscript𝑥𝑡𝑝subscript𝑥𝑇product𝑝conditionalsubscript𝑥𝑡1subscript𝑥𝑡\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)
=max(0,Σpθ(x0|x1p)qθ(x0|x1q))Σpθ(x0|x1p)absent𝑚𝑎𝑥0Σsubscript𝑝𝜃conditionalsubscript𝑥0subscriptsuperscript𝑥𝑝1subscript𝑞𝜃conditionalsubscript𝑥0subscriptsuperscript𝑥𝑞1Σsubscript𝑝𝜃conditionalsubscript𝑥0subscriptsuperscript𝑥𝑝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)

その後、中間的な雑音除去項をΣΣ\Sigmaroman_Σによって消去すれば、計算可能な結果を得ることができる。最終的な表現は容易に得られる。修正された分布はこの方法でサンプリングすることができる。

A.3 Correctness of continuous speculative decoding

我々は連続的投機的デコーディングの正確性を示す。 β𝛽\betaitalic_βを以下の受理確率とする:

β=Exq(x)min(1,p(x)q(x))=xmin(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 ) =max(0,p(x)q(x))xmax(0,p(x)q(x))𝑑xabsent𝑚𝑎𝑥0𝑝𝑥𝑞𝑥subscriptsuperscript𝑥𝑚𝑎𝑥0𝑝superscript𝑥𝑞superscript𝑥differential-dsuperscript𝑥\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)min(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𝑥𝑝acceptsuperscript𝑥𝑝rejectsuperscript𝑥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)),𝑝acceptsuperscript𝑥𝑞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)).𝑝rejectsuperscript𝑥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 連続的投機的デコーディングステップ
入力: Mp,Mq,prefixsubscript𝑀𝑝subscript𝑀𝑞𝑝𝑟𝑒𝑓𝑖𝑥M_{p},M_{q},prefixitalic_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 γ𝛾\gammaitalic_γ個の推測x1,,γsubscript𝑥1𝛾x_{1,\ldots,\gamma}italic_x start_POSTSUBSCRIPT 1 , … , italic_γ end_POSTSUBSCRIPTMqsubscript𝑀𝑞M_{q}italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPTから自己回帰的にサンプリングする。
for i=1𝑖1i=1italic_i = 1 to γ𝛾\gammaitalic_γ do
qi(x)Mq(prefix+[x1,,xi1])subscript𝑞𝑖𝑥subscript𝑀𝑞𝑝𝑟𝑒𝑓𝑖𝑥subscript𝑥1subscript𝑥𝑖1q_{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 ] )
xiqi(x)similar-tosubscript𝑥𝑖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 Mpsubscript𝑀𝑝M_{p}italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPTを並列に実行し、ϵtsubscriptitalic-ϵ𝑡\epsilon_{t}italic_ϵ start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPTMqsubscript𝑀𝑞M_{q}italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT内で同じに保つ
p1(x),,pγ+1(x)subscript𝑝1𝑥subscript𝑝𝛾1𝑥absentp_{1}(x),\ldots,p_{\gamma+1}(x)\leftarrowitalic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x ) , … , italic_p start_POSTSUBSCRIPT italic_γ + 1 end_POSTSUBSCRIPT ( italic_x ) ←
Mp(prefix),,Mp(prefix+[x1,,xγ])subscript𝑀𝑝𝑝𝑟𝑒𝑓𝑖𝑥subscript𝑀𝑝𝑝𝑟𝑒𝑓𝑖𝑥subscript𝑥1subscript𝑥𝛾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=2T|Σq,t|t=2T|Σp,t|Σsuperscriptsubscriptproduct𝑡2𝑇subscriptΣ𝑞𝑡superscriptsubscriptproduct𝑡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𝑛nitalic_nを決定する。
r1U(0,1),,rγU(0,1)formulae-sequencesimilar-tosubscript𝑟1𝑈01similar-tosubscript𝑟𝛾𝑈01r_{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 )
pi(x)qi(x)Σpi(x|x1p)qi(x|x1q)subscript𝑝𝑖𝑥subscript𝑞𝑖𝑥Σsubscript𝑝𝑖conditional𝑥subscriptsuperscript𝑥𝑝1subscript𝑞𝑖conditional𝑥subscriptsuperscript𝑥𝑞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
nmin({i11iγ,ri>pi(x)qi(x)}{γ})𝑛conditional-set𝑖1formulae-sequence1𝑖𝛾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 以下の受理棄却サンプリングを通じて修正された分布をサンプリングする
\triangleright
if n<γ𝑛𝛾n<\gammaitalic_n < italic_γ then
repeat
xtpn(x|x1p)subscript𝑥𝑡subscript𝑝𝑛conditional𝑥subscriptsuperscript𝑥𝑝1x_{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 )
αsmax(0,Σpn(xt|x1p)qn(xt|x1q))Σpn(xt|x1p)subscript𝛼𝑠𝑚𝑎𝑥0Σsubscript𝑝𝑛conditionalsubscript𝑥𝑡subscriptsuperscript𝑥𝑝1subscript𝑞𝑛conditionalsubscript𝑥𝑡subscriptsuperscript𝑥𝑞1Σsubscript𝑝𝑛conditionalsubscript𝑥𝑡subscriptsuperscript𝑥𝑝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-toitalic-ϵ𝑈01\epsilon\sim U(0,1)italic_ϵ ∼ italic_U ( 0 , 1 )
until ϵαsitalic-ϵsubscript𝛼𝑠\epsilon\leq\alpha_{s}italic_ϵ ≤ italic_α start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT
end if
\triangleright Mpsubscript𝑀𝑝M_{p}italic_M start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPTから1つのトークンを、n𝑛nitalic_nトークンをMqsubscript𝑀𝑞M_{q}italic_M start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPTから返す。
return prefix+[x1,,xn,xt]𝑝𝑟𝑒𝑓𝑖𝑥subscript𝑥1subscript𝑥𝑛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),1superscript𝛼𝛾11𝛼𝛾𝑐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)

ここで、α𝛼\alphaitalic_αはドラフトトークンの受理率、γ𝛾\gammaitalic_γはドラフトの長さ、そしてc𝑐citalic_cはドラフトモデルとターゲットモデル間の推論時間比である。しかしながら、利用可能なモデルが限られているため、我々が入手できる最大のモデルはMAR-H(943M)である。MAR-B(208M)による推論時間比c𝑐citalic_cは0.38(bs=128128128128)であり、これははるかに大きい数値である。0.050.050.050.05または00に近い値が[19]で言及されている。また、理論的な改善は十分に長い生成を前提としている。しかし、自己回帰的な画像生成は現在256256256256生成ステップに制限されている。これにより、理論的結果の適用不可能性がさらに強調される。

我々は、7B、13B、あるいはさらに大きなモデルを用いることで、我々のアルゴリズムがより顕著な実行時間の改善を達成すると予想している。この方向性は今後の研究でさらなる調査が必要である。

C Implementation Details

我々は、オープンソースの連続値視覚自己回帰モデルMAR [21] を用いて、ImageNet [8] 256×256256256256\times 256256 × 256 生成に関する実験を行った。ドラフトモデルはMAR-B(208M)とMAR-L(479M)から選択された。ターゲットモデルはそれぞれMAR-LとMAR-H(943M)から選択された。我々は全てのモデルに対して公式の事前学習済みチェックポイントを使用した。一般的な慣行として、温度とクラス無しガイダンスはMARと同様に設定した。オープンソースモデルが限られているため、より大規模なモデルで我々のアルゴリズムを実装し、さらなる結果を得ることはできなかった。しかし、デフォルトのMARモデルは、MARにおける双方向アテンションに関して顕著な結果を示している。ターゲットモデルがドラフトトークンを検証する際、各出力トークンは前のすべてのトークンを見ることができるため、最後のトークンとみなすことができる。さらに、両モデルはそれぞれのクラストークン [cls] を利用しており、これらは推論デコーディングプロセス中に共有されない。それらの拡散損失も共有されない。生成速度は単一のNVIDIA A100 GPUで測定され、バッチサイズは {1\{1{ 18888128128128128256}256\}256 } の範囲である。FIDとISは50,000枚の生成画像に対して計算された。結果は10回の評価の平均である。

D Additional Experiments

D.1 Classifier-Free Guidance

13は、ドラフトの長さと異なるCFGスケールにおける受理率の関係を示している。CFGスケールが増加するにつれて、全体的に受理率が低下する傾向が見られる。この傾向は主に各ドラフト長にわたって一貫している。この現象は、クラスガイダンスが強化されるにつれて、ドラフトモデルとターゲットモデル間の不整合が増大し、さらに受理率を低下させる可能性があることを示唆している。

Refer to caption
図13: CFGスケールは、異なるドラフト数における受理率に大きな影響を与える。

D.2 Temperature

MARにおける拡散モデルのデノイジングプロセス中、温度 τ𝜏\tauitalic_τ は重要なハイパーパラメータである。温度設定は、ドラフトモデルとターゲットモデルの出力間の一貫性に影響を与える。図 14 は、生成プロセス中の受理率に対する温度 τ𝜏\tauitalic_τ の影響を示している。ドラフト数は 8888 に設定されている。温度は最終的な出力分布のPDFに影響を与える。低い温度ではより鋭い分布になる可能性があり、高い温度ではより平坦な分布になる可能性がある。比率 p(x)/q(x)𝑝𝑥𝑞𝑥p(x)/q(x)italic_p ( italic_x ) / italic_q ( italic_x ) はこれに基づいて影響を受ける可能性がある。

Refer to caption
図14: 受理率に対する温度の影響。左:CFGなし。右:CFGあり。

D.3 Acceptance-Rejection Sampling

我々は受容棄却サンプリング中の経験的サンプリング試行時間を観察した。図15は棄却回数とドラフト長の関係を示している。経験的に、受容棄却サンプリングは多くの場合、わずか数回のサンプリングステップしか必要としない。このサンプリングプロセスによって消費されるランタイムオーバーヘッドは、全体的なモデル推論時間と比較して無視できる程度である。

Refer to caption
図15: 棄却フェーズにおける受容棄却サンプリングアルゴリズムの経験的棄却回数。

D.4 Visualization of Acceptance

我々は各トークンの受容と棄却を2次元ヒートマップを通じて可視化した。図16に示すように、濃い緑色のブロックは受容されたトークンを表し、薄い緑色のブロックは棄却されたトークンを表している。背景や単純なテクスチャを持つ領域を表すトークンは受容される傾向にあることが観察された。対照的に、より詳細な位置は棄却される可能性が高い。

Refer to caption
図16: 受容されたトークンのヒートマップの可視化。濃い緑:受容。薄い緑:棄却。

E More Qualitative Results

17181920 および 21において、我々の連続的推測デコーディングの下で生成された追加画像を、ターゲットモデルのみの場合と比較して提示する。ターゲットモデルは現実的で高忠実度の画像を生成する上で満足のいく品質を達成しているが、我々の連続的推測デコーディングは同等の性能を示し、類似の生成結果を得ながら、はるかに高速な推論速度を実現できることを示している。

Refer to caption
図17: ドラフト長 γ𝛾\gammaitalic_γ の増加に伴う視覚的品質の比較(通常のターゲットモデルのみの生成と比較)。拡大して見るのが最適である。
Refer to caption
図18: γ=4𝛾4\gamma=4italic_γ = 4 の下での視覚化例。クラスラベル:ホッキョクギツネ(297)。
Refer to caption
図19: γ=8𝛾8\gamma=8italic_γ = 8 の下での視覚化例。クラスラベル:気球(417)。
Refer to caption
図20: γ=16𝛾16\gamma=16italic_γ = 16 の下での視覚化例。クラスラベル:アイスクリーム(928)。
Refer to caption
図21: γ=32𝛾32\gamma=32italic_γ = 32 の下での視覚化例。クラスラベル:火山(980)。