- Diffusion Forcing, her token için farklı diffusion gürültü düzeyleri öğrenerek, örnekleme sırasında hem sonraki-token modeli hem de tam-dizi diffusion modeli gibi kullanılabilen bir dizi üretim yöntemidir
- Diffusion gürültüsünü maskeleme olarak yorumlayarak, geçmiş token’ları temiz tutup yalnızca gelecek token’ları gürültülü durumda bırakabilir ya da tüm diziye farklı gürültü düzeyleri yerleştirebilir
- DMLab ve Minecraft video tahmininde teacher forcing kolayca saparken ve causal full-sequence diffusion tutarlılık sorunları yaşarken, Diffusion Forcing daha kararlı tahminler üretir
- Karar verme ve planlamada token’ları [a_t, o_{t+1}] olarak tanımlayarak eylemi ve sonraki gözlemi birlikte modeller; yakın gelecek ile uzak geleceğe farklı gürültü düzeyleri verilebilir
- Eğitim uzunluğunu aşan uzun rollout’lar da mümkündür; DMLab’de 36 frame ile eğitimden sonra 2000+ frame, Minecraft’ta 72 frame ile eğitimden sonra 2000+ frame sliding window olmadan üretilir
Diffusion Forcing’in temel yapısı
- Diffusion Forcing adı, teacher forcing ve diffusion models kavramlarından gelir
- Amaç, sonraki-token otoregresif modellerin ve tam-dizi diffusion modellerinin avantajlarını tek bir eğitim paradigması içinde birleştirmektir
- Sonraki-token modelinin avantajı: değişken uzunlukta üretim
- Tam-dizi diffusion modelinin avantajı: örneklemeyi istenen yörüngeye yönlendiren dizi düzeyinde guidance
- Bir kez eğitilmiş model, örnekleme anında farklı biçimlerde işletilebilir
- Sonraki-token modeli gibi esnek ve bileşimsel üretim yapabilir
- Tam-dizi diffusion modeli gibi tüm diziye yönelik guidance uygulanabilir
Token başına gürültü ve “maskeleme olarak gürültü”
- Diffusion Forcing, dizi diffusion’ını eğitirken her token’ın farklı bir gürültü düzeyine sahip olmasını sağlar
- Diffusion’daki gürültü, farklı şiddetlerde maskeleme olarak görülebilir
- Tam-dizi diffusion: tüm frame’leri aynı gürültü düzeyinde tek seferde denoise eder
- Sonraki-token tahmini: geçmiş token’ları gürültü 0’da tutar ve sonraki frame’i tek tek denoise eder
- Örnekleme sırasında dizi içindeki gürültü yerleşimini değiştirmek çeşitli davranışlar üretebilir
- Otoregresif rollout stabilizasyonu
- Uzun horizon için guidance
- Causal uncertainty içeren planning
Teorik özellikler
- Diffusion Forcing’in, gerçek birleşik dağılımdan çekilmiş token’ların tüm kısmi dizi likelihood’ları için varyasyonel alt sınırı optimize ettiği kanıtlanmıştır
- Bu özellik, eğitim amacının yalnızca ampirik performansla değil, kısmi dizilerin geneli için likelihood ile de bağlantılı olduğunu gösterir
Video tahmini sonuçları
- Modelin doğrudan sentezlediği video sonuçları kullanılır; VAE veya superresolution olmadan üretilmiştir
- Sonuçların cherry-picking yapılmadan örneklendiği açıkça belirtilir
- DMLab veri kümesi karşılaştırmasında üç yöntem arasındaki farklar belirgindir
- teacher forcing kolayca sapar
- causal full-sequence diffusion modeli ciddi tutarlılık sorunları gösterir
- Diffusion Forcing kararlı ve tutarlı video tahmini elde eder
- Minecraft veri kümesinde de aynı örüntü görülür
- teacher forcing kolayca sapar
- causal full-sequence diffusion modelinde ciddi tutarlılık sorunları vardır
- Diffusion Forcing kararlı ve tutarlı tahminler üretir
Eğitim uzunluğunu aşan uzun video rollout’ları
- Diffusion Forcing, eğitildiği maksimum dizi uzunluğundan çok daha uzun videoları rollout edebilir
- Bu rollout sliding window olmadan gerçekleştirilir
- RNN rollout’unda latent
z, başlangıç latent’i z0’a sıfırlanmaz
- Stabilizasyon etkisi Diffusion Forcing’de ortaya çıkar
- DMLab sonuçları:
- 36 frame ile eğitildi
- 2000+ frame rollout mümkün
- sliding window olmadan gerçekleştirildi
- Orijinal veri kümesi çözünürlüğü 64x64
- Uzun videonun mp4 sıkıştırması nedeniyle görüntü kalitesi düştü; orijinal üretim kalitesini yansıtmak için PNG görselleştirmeleri de sunuldu
- Minecraft sonuçları:
- 72 frame ile eğitildi
- Sapma olmadan 2000+ frame rollout mümkün
- sliding window olmadan gerçekleştirildi
- Orijinal veri kümesi çözünürlüğü 128x128
- Bazı senaryolarda ajan, iki blok yüksekliğinde dirt veya stone block önünde yön değiştirene kadar durur; bu, veri kümesi toplamanın yapısal bir problemi olarak ele alınır
Diffusion Planning
- Diffuser gibi mevcut çalışmalara benzer şekilde, test anı guidance kullanılarak diffusion dizisi bir planner olarak kullanılabilir
- Diffusion Forcing, nedensel ilişkiyi açıkça modellemek için her token’ı [a_t, o_{t+1}] olarak tanımlar
- Hangi eylemin yapılacağına dair belief taşır
- Bu eylemin yol açacağı gözleme dair belief’i de birlikte taşır
- Eylemden sonra yeni gözlem geldiğinde belief, posterior estimation ile güncellenebilir
- Diffusion planning process video, bir karar verme çerçevesi olarak Diffusion Forcing planning sürecini görselleştirir
- Gelecekteki causal uncertainty’yi modellemek için yakın gelecek düşük gürültü düzeyinde, uzak gelecek ise yüksek gürültü düzeyinde tutulabilir
Uzun horizon imitation learning
- Gerçek dünyadaki birçok görev Markovian değildir ve gerçekleştirme için uzun horizon memory gerektirir
- Gerçek robot görevinde, robot kolundan üçüncü slotu kullanarak iki meyvenin slotlarını birbiriyle değiştirmesi istenir
- Meyveler başlangıçta rastgele slotlara yerleştirilir
- Tek bir gözlemle başlangıçtaki meyve yerleşimi bilinemediğinden sonraki adım belirlenemez
- Planning deneyinde guidance kaldırılır ve action-observation dizileri birlikte diffusing edilerek feedback control gerçekleştirilir
- Sunulan video, bir başarısızlık ortaya çıkmadan önce ardışık birkaç başarıyı gösterir
- Önceki çalıştırma meyve konumlarını rastgeleleştirse de robot görevi gerçekleştirebilir
- Test anında görülmemiş distraction’lara dayanıklı olması için gelen gözlemleri noisy observation olarak ele alması prompting ile sağlanabilir
- Örnek olarak görüş alanına rastgele alışveriş çantası fırlatılan bir distraction yöntemi kullanılır
2025 güncellemesi: Scaling Up Diffusion Forcing
- 2025 güncellemesinde state-of-the-art Wan2.1-T2V-1.3B, yalnızca 20k step ve 49 frame ile finetune edilir
- Ardından 5x rollout ile 217 frame’e kadar kararlı biçimde üretim yapar
- Devam çalışmasına History-Guided Video Diffusion üzerinden bakılabilir
- Örnek videolar gün batımındaki dalgalar, kayanın üzerindeki maymun, uyumaya hazırlanan köpek, tropik plajın havadan görünümü, sörf sahnesi ve yokuş yukarı çıkan bisiklet sahnesi gibi içerikler barındırır
Gelecek araştırma yönleri
-
Conditioning
- Uzun dizilere ölçeklerken değiştirme tabanlı koşullama sık kullanılır
- Johnathan Ho’nun “Video Diffusion Models” çalışması bu yöntemin neden hatalı olduğunu tartışır
- Diffusion Forcing, context token’ları clean, future token’ları noisy olarak ele alan daha doğal bir koşullama yöntemi sunar; ancak bu kısım ayrıntılı incelenmemiştir
-
Maskeleme olarak gürültü
- Bu yöntem ikili maskeleme değil, token’ların fractional masking’ini sağlar
- MAE gibi özdenetimli öğrenme yöntemlerine de eklenebilecek kadar geneldir
- Gürültü eklemenin frequency domain’de ilginç bir yorumu vardır
-
Compositionality
- Makalede, history length kontrol edilerek compositionality elde edilebildiği gösterilir
- Maskeleme olarak gürültü kullanıldığında modelin gereksiz history’yi ne zaman yok sayacağını ve yalnızca daha kısa horizon’a koşullanacağını kendi kendine belirleme olasılığı vardır
-
Non-causal version
- Bu makalede karar vermede causality önemli olduğu için causal Diffusion Forcing kullanılır
- Maskeleme olarak gürültü fikri non-causal modellere de uygulanabilir
- Tahminin görmemesi gereken entry’ler pure Gaussian noise ile maskelenirse, non-causal bir sürüm eğitilip örnekleme anında causal hale getirilebilir
-
Alternative Guidance
- Önerilen karar verme çerçevesinde Diffuser’a daha yakın bir ayarı korumak için guidance, observation üzerinde uygulanır
- learned reward’a guidance uygulayan bir sürüm de önerilmiştir ancak makalede incelenmemiştir
-
Noise scheme
- Token başına bağımsız gürültü düzeyi genellik hedeflenerek tasarlanmıştır ancak tüm görevler için optimal değildir
- Veri zaman ekseninde çok yerel korelasyona sahipse gereğinden fazla tekrar koruyabilir
- Bu, toplam signal-to-noise ratio’yu etkileyebilir
-
Next few token prediction
- Next few token prediction yalnızca planning deneylerinde kullanıldı; video deneyleri hâlâ next-token biçimindedir
- RNN sürümünde çok iyi çalışmadı, ancak transformer sürüm kodunda çok iyi çalışır
- Causal modellerde “few” çok büyük olduğunda next few token prediction inconsistency yaratabilir
- Non-causal modellerde bu durum daha az görülür
-
Latent & DiT version
- Yayından sonra Diffusion Forcing’in 3D U-Net sürümü yayımlandı
- Diffusion Forcing, causal veya non-causal DiT’lere de uygulanabilir
- Stabilizasyon scheme’i, VAE bulunan latent space’te daha doğal uyar
- Pixel corruption mutlaka Gaussian değildir, ancak VAE latent’indeki corruption Gaussian’a daha yakın olabilir
Atıf bilgisi
@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 yorum
Hacker News yorumları
Bu “belirsizlik” düzeyini difüzyon modelinin “gürültü” düzeyi gibi ele alıyor; model de bir tür gömme tarafından kontrol edilerek gürültüyü gideriyor
Bununla görüntünün bazı kısımlarını diğerlerinden önce kesinleştirebiliyor; örneğin labirent çözmede kullanılabiliyor. Makalede meyve taşıyan bir robot kolun kontrolüne kadar gösteriliyor; oldukça şaşırtıcı
Başlık, fikrin değerini olduğundan düşük gösteriyor gibi. Maskeleme düzeyi gerçek değerli olduğu için bu, kısmi maskeleme yapmanın bir yolu ve bence oldukça derin ve ilginç bir fikir
Ancak makalede ele alınmayan çok şey var; bu yüzden kod tabanını çok merak ediyorum. Labirent izleme görevinin ve video genişletme görevinin tam olarak nasıl kurgulandığı, robot kolun bu modele nasıl bağlandığı ve istenen görevin nasıl talimatlandırıldığı belirsiz. Mimari de başlı başına birkaç makale ya da ayrıntılı açıklama gerektirecek gibi görünüyor
Görevleri değişken uzunluklu hâle getirirken, ajanın mevcut durumu doğal varsaymamasını ve hesaba katmasını zorlaması güçlü bir nokta. Bu sayede beklenmedik zorluklar olsa bile yol boyunca daha iyi tepki verebilir ve genelleme yapabilir
Tüm görevleri değişken ufuklu olarak ele aldıklarını ve mevcut durumu önceki eylemlerin sonucu olarak konumlandırdıklarını tahmin ediyorum. Kodu görmek de iyi olurdu
https://github.com/buoyancy99/diffusion-forcing
Monte Carlo ağaç aramasıyla birlikte Tree of Thoughts gibi şeyleri biliyorum ve bir ölçüde benzerler; ama genelde ödülle öğrenilmiş hedefleri farklı olabildiğinden, token düzeyinde üretime daha yakın bir yöntemle ilgileniyorum
Bu mümkün mü?
Çözmeye çalıştığı problem ne? Yeni bir üretici model mi öneriyor?
“Diffusion Forcing” adının “teacher forcing” ve “diffusion models”tan geldiği söyleniyor