- Diffusion Forcingは、トークンごとに異なる拡散ノイズ水準を学習し、サンプリング時には次トークンモデルとしてもフルシーケンス拡散モデルとしても活用できるシーケンス生成方式である
- 拡散のノイズをマスキングとして解釈し、過去のトークンはクリーンなまま維持しつつ、未来のトークンだけをノイズ状態にしたり、シーケンス全体に異なるノイズを配置したりできる
- DMLabとMinecraftの動画予測では、teacher forcingは容易に発散し、causal full-sequence diffusionは一貫性が崩れた一方、Diffusion Forcingはより安定した予測を生成する
- 意思決定と計画では、トークンを**[a_t, o_{t+1}]**として定義し、行動とその後の観測をまとめてモデリングし、近い未来と遠い未来に異なるノイズ水準を与えられる
- 学習長を超える長いロールアウトも可能で、DMLabは36フレーム学習後に2000フレーム超、Minecraftは72フレーム学習後に2000フレーム超をsliding windowなしで生成する
Diffusion Forcingの中核構造
- Diffusion Forcingという名称はteacher forcingとdiffusion modelsに由来する
- 目的は、次トークン自己回帰モデルとフルシーケンス拡散モデルの長所を1つの学習パラダイムの中で統合することにある
- 次トークンモデルの長所: 可変長生成
- フルシーケンス拡散モデルの長所: 望ましい軌道へサンプリングを導くシーケンスレベルのガイダンス
- 一度学習したモデルを、サンプリング時に異なる形で運用できる
- 次トークンモデルのように柔軟で組み合わせ的な生成が可能
- フルシーケンス拡散モデルのようにシーケンス全体に対するガイダンスを適用可能
トークン別ノイズと「ノイズ as マスキング」
- Diffusion Forcingはシーケンス拡散を学習しつつ、各トークンが互いに異なるノイズ水準を持つようにする
- 拡散のノイズは、強さの異なるマスキングとみなせる
- フルシーケンス拡散: すべてのフレームを同じノイズ水準から一度にdenoiseする
- 次トークン予測: 過去のトークンはノイズ0のままにし、次のフレームを1つずつdenoiseする
- サンプリング時にシーケンス内のノイズ配置を変えると、さまざまな動作を実現できる
- 自己回帰ロールアウトの安定化
- 長いhorizonに対するガイダンス
- causal uncertaintyを含むplanning
理論的性質
- Diffusion Forcingは、真の結合分布からサンプルされたトークン群のあらゆる部分シーケンス likelihoodに対する変分下界を最適化することが証明されている
- この性質は、学習目的が経験的性能だけでなく、部分シーケンス全体のlikelihoodとも結びついていることを示している
動画予測の結果
- モデルが直接合成した動画結果を使用しており、VAEやsuperresolutionなしで生成される
- 結果はcherry-pickingなしでサンプリングされたと明記されている
- DMLabデータセット比較では、3方式の差が明確である
- teacher forcingは容易に発散する
- causal full-sequence diffusionモデルは深刻な一貫性の問題を示す
- Diffusion Forcingは安定かつ一貫した動画予測を達成する
- Minecraftデータセットでも同じ傾向が見られる
- teacher forcingは容易に発散する
- causal full-sequence diffusionモデルは深刻な一貫性の問題を抱える
- Diffusion Forcingは安定かつ一貫した予測を生成する
学習長を超える長尺動画ロールアウト
- Diffusion Forcingは、学習された最大シーケンス長を大きく超える動画をロールアウトできる
- このロールアウトはsliding windowなしで行われる
- RNNロールアウトではlatent
zを初期latent z0にリセットしない
- 安定化効果はDiffusion Forcingで現れる
- DMLabの結果:
- 36フレームで学習
- 2000フレーム超のロールアウトが可能
- sliding windowなしで実行
- 元のデータセット解像度は64x64
- 長尺動画のmp4圧縮により映像品質は低下しており、元の生成品質を反映するためPNG可視化も提供されている
- Minecraftの結果:
- 72フレームで学習
- 2000フレーム超を発散なしでロールアウト可能
- sliding windowなしで実行
- 元のデータセット解像度は128x128
- 一部のシナリオでは、エージェントが高さ2ブロックのdirtまたはstone blockの前で、向きを変えるまで停止することがあり、これはデータセット収集に内在する問題として扱われている
Diffusion Planning
- Diffuserのような既存研究と同様に、テスト時ガイダンスを使って拡散シーケンスをプランナーとして利用できる
- Diffusion Forcingは各トークンを**[a_t, o_{t+1}]**として定義し、因果関係を明示的にモデリングする
- どの行動を取るかについてのbeliefを持つ
- その行動がもたらす観測についてのbeliefも同時に持つ
- 行動後に新たな観測が入ると、posterior estimationによってbeliefを更新できる
- Diffusion planning process videoは、意思決定フレームワークとしてのDiffusion Forcing planning過程を可視化している
- 将来のcausal uncertaintyをモデリングするため、近い未来には低いノイズ水準を、遠い未来には高いノイズ水準を与えられる
長いhorizonのimitation learning
- 多くの現実の課題はMarkovianではなく、遂行には長いhorizon memoryが必要である
- 実ロボット課題では、ロボットアームが3番目のスロットを使って2つの果物のスロットを入れ替えることが求められる
- 果物は開始時にランダムなスロットへ配置される
- 単一の観測だけでは初期の果物配置が分からず、次の段階を決められない
- planning実験ではガイダンスを外し、action-observationシーケンスをまとめてdiffusingすることでfeedback controlを行う
- 提示された動画は、失敗が起きる前までに複数回の連続成功を示している
- 前回の実行によって果物の位置がランダム化されても、ロボットは課題を遂行できる
- テスト時に未見のdistractionに頑健であるよう、入力される観測をnoisy observationとして扱うようpromptingできる
- 例として、視野内に買い物袋をランダムに投げ込むdistraction手法が使われている
2025アップデート: Scaling Up Diffusion Forcing
- 2025年のアップデートでは、state-of-the-art Wan2.1-T2V-1.3Bを20k step、49フレームだけfinetuningした
- その後、5倍ロールアウトで217フレームまで安定して生成した
- 後続研究はHistory-Guided Video Diffusionで確認できる
- サンプル動画には、夕焼けの波、岩の上のサル、眠る準備をする犬、熱帯のビーチの空撮、サーフィンの場面、坂道を上る自転車の場面などが含まれる
今後の研究方向
-
Conditioning
- 長いシーケンスへ拡張する際には置換ベースの条件付けがよく使われる
- Johnathan Hoの“Video Diffusion Models”は、この方式がなぜ誤っているのかを論じている
- Diffusion Forcingは、context tokenをcleanに、future tokenをnoisyに扱う、より自然な条件付け方式を提供するが、この点は詳しくは探究されていない
-
Noise as masking
- この方式は二値マスキングではなく、トークンのfractional maskingを実現する
- MAEのような自己教師あり学習手法にも組み込めるほど一般的である
- ノイズ付加はfrequency domainで興味深い解釈を持つ
-
Compositionality
- 論文では、history lengthを制御することでcompositionalityを達成できることを示している
- noise as maskingを使うことで、モデルが不要なhistoryをいつ無視し、より短いhorizonだけに条件付けすべきかを自ら判断できる可能性がある
-
Non-causal version
- 本論文では、意思決定においてcausalityが重要なためcausal Diffusion Forcingを用いている
- noise as maskingの考え方はnon-causalモデルにも適用可能である
- 予測が見てはならないentryをpure Gaussian noiseでマスクすれば、non-causal版を学習し、サンプリング時にcausalにできる
-
Alternative Guidance
- 提案された意思決定フレームワークでは、Diffuserにより近い設定を維持するためobservationにガイダンスを適用している
- learned rewardにガイダンスを適用する版も提案されたが、論文では検討されていない
-
Noise scheme
- トークンごとの独立ノイズ水準は汎用性を狙って設計されているが、すべての課題に最適とは限らない
- データが時間軸上で非常に局所的に相関している場合、冗長性を過剰に保持してしまう可能性がある
- これは全体のsignal-to-noise ratioに影響しうる
-
Next few token prediction
- planning実験でのみnext few token predictionを使い、動画実験は依然としてnext-token方式である
- RNN版ではあまりうまく機能しなかったが、transformer版コードでは非常によく機能する
- causalモデルで“few”が非常に大きいと、next few token predictionがinconsistencyを生む可能性がある
- non-causalモデルではこの現象は起きにくい
-
Latent & DiT version
- リリース後にDiffusion Forcingの3D U-Net版が公開された
- Diffusion Forcingはcausalまたはnon-causal DiTにも適用可能である
- 安定化schemeはVAEのあるlatent spaceの方がより自然に適合する
- pixel corruptionは必ずしもGaussianではないが、VAE latentのcorruptionはGaussianにより近い可能性がある
引用情報
@article{chen2025diffusion,
title={Diffusion forcing: Next-token prediction meets full-sequence diffusion},
author={Chen, Boyuan and Mart{\'\i} Mons{\'o}, Diego and Du, Yilun and Simchowitz, Max and Tedrake, Russ and Sitzmann, Vincent},
journal={Advances in Neural Information Processing Systems},
volume={37},
pages={24081--24125},
year={2025}
}
1件のコメント
Hacker Newsのコメント
この「不確実性」レベルを拡散モデルの「ノイズ」レベルのように扱い、モデルはある埋め込みによって制御されながらノイズを除去する。
これによって画像の一部を他の部分より先に確定できるため、たとえば迷路解きに使える。論文では果物を移動させるロボットアームの制御まで示していて、かなり驚かされる。
タイトルはむしろこのアイデアを過小評価している感じがする。マスキングのレベルが実数値なので、部分的マスキングを行う方法であり、かなり深くて興味深いアイデアだと思う。
ただし論文で扱われていない部分が多く、コードベースが非常に気になる。迷路追跡課題と動画拡張課題を正確にどう構成しているのか、ロボットアームをこのモデルにどう接続し、望む作業をどう指示しているのかなどが不明瞭だ。アーキテクチャ自体も、何本かの論文や詳しい解説が必要に見える。
課題を可変長にしつつ、エージェントが現在の状況を当然視せず、それを反映するよう強制する点が強力だ。だから予想外の困難があっても、経路に沿ってよりうまく反応し、一般化できる。
すべての課題を可変ホライズンとして扱い、現在の状態を以前の行動の結果として置く設定なのだと推測する。コードも見てみたい。
https://github.com/buoyancy99/diffusion-forcing
モンテカルロ木探索を組み合わせたTree of Thoughtsのようなものは知っていて、ある程度は似ているが、通常は報酬で学習した目標が異なることも多いので、トークンレベル生成により近い方式に関心がある。
これは可能なのだろうか?
解こうとしている問題は何なのか? 新しい生成モデルを提案しているのか?
「Diffusion Forcing」という名前は、「teacher forcing」と「diffusion models」に由来するとある。