1 poin oleh GN⁺ 2024-07-06 | 1 komentar | Bagikan ke WhatsApp
  • Diffusion Forcing adalah metode generasi sekuens yang mempelajari tingkat noise diffusion berbeda untuk tiap token, sehingga saat sampling dapat dimanfaatkan baik seperti model next-token maupun model diffusion full-sequence
  • Dengan menafsirkan noise pada diffusion sebagai masking, token masa lalu dapat dijaga tetap bersih sementara hanya token masa depan dibiarkan dalam keadaan noisy, atau noise berbeda dapat ditempatkan di seluruh sekuens
  • Pada prediksi video DMLab dan Minecraft, teacher forcing mudah divergen dan causal full-sequence diffusion goyah dalam konsistensi, sementara Diffusion Forcing menghasilkan prediksi yang lebih stabil
  • Dalam pengambilan keputusan dan planning, token didefinisikan sebagai [a_t, o_{t+1}] untuk memodelkan aksi bersama observasi berikutnya, dan tingkat noise berbeda dapat diberikan pada masa depan dekat dan jauh
  • Rollout panjang yang melampaui panjang pelatihan juga dimungkinkan: DMLab menghasilkan lebih dari 2000 frame setelah dilatih pada 36 frame, dan Minecraft menghasilkan lebih dari 2000 frame setelah dilatih pada 72 frame, tanpa sliding window

Struktur inti Diffusion Forcing

  • Nama Diffusion Forcing diambil dari teacher forcing dan diffusion models
  • Tujuannya adalah menggabungkan keunggulan model autoregresif next-token dan model diffusion full-sequence dalam satu paradigma pelatihan
    • Keunggulan model next-token: generasi dengan panjang variabel
    • Keunggulan model diffusion full-sequence: guidance tingkat sekuens yang mengarahkan sampling ke trajectory yang diinginkan
  • Model yang telah dilatih sekali dapat dioperasikan secara berbeda pada saat sampling
    • Memungkinkan generasi yang fleksibel dan komposisional seperti model next-token
    • Memungkinkan penerapan guidance pada seluruh sekuens seperti model diffusion full-sequence

Noise per token dan “noise sebagai masking”

  • Diffusion Forcing melatih diffusion sekuens, tetapi membuat tiap token memiliki tingkat noise yang berbeda
  • Noise pada diffusion dapat dilihat sebagai masking dengan berbagai intensitas
    • Diffusion full-sequence: men-denoise semua frame sekaligus pada tingkat noise yang sama
    • Prediksi next-token: menjaga token masa lalu pada noise 0 dan men-denoise frame berikutnya satu per satu
  • Dengan mengubah penempatan noise di dalam sekuens saat sampling, berbagai perilaku dapat dibuat
    • Menstabilkan rollout autoregresif
    • Guidance untuk horizon panjang
    • Planning yang mencakup causal uncertainty

Sifat teoretis

  • Diffusion Forcing terbukti mengoptimalkan variational lower bound untuk semua likelihood subsekuens parsial dari token-token yang diambil dari distribusi gabungan sebenarnya
  • Sifat ini menunjukkan bahwa tujuan pelatihan terkait bukan hanya dengan kinerja empiris, tetapi juga dengan likelihood di seluruh subsekuens parsial

Hasil prediksi video

  • Menggunakan hasil video yang disintesis langsung oleh model, dihasilkan tanpa VAE atau superresolution
  • Hasilnya disebut disampling tanpa cherry-picking
  • Pada perbandingan dataset DMLab, perbedaan tiga metode terlihat jelas
    • teacher forcing mudah divergen
    • model causal full-sequence diffusion menunjukkan masalah konsistensi serius
    • Diffusion Forcing mencapai prediksi video yang stabil dan konsisten
  • Pola yang sama muncul pada dataset Minecraft
    • teacher forcing mudah divergen
    • model causal full-sequence diffusion memiliki masalah konsistensi serius
    • Diffusion Forcing menghasilkan prediksi yang stabil dan konsisten

Rollout video panjang melampaui panjang pelatihan

  • Diffusion Forcing dapat me-rollout video yang jauh lebih panjang daripada panjang sekuens maksimum yang dilatih
  • Rollout ini dilakukan tanpa sliding window
    • Pada rollout RNN, latent z tidak di-reset ke latent awal z0
    • Efek stabilisasi muncul pada Diffusion Forcing
  • Hasil DMLab:
    • Dilatih dengan 36 frame
    • Dapat rollout lebih dari 2000 frame
    • Dilakukan tanpa sliding window
    • Resolusi dataset asli adalah 64x64
    • Kualitas video menurun karena kompresi mp4 pada video panjang, dan visualisasi PNG juga disediakan untuk mencerminkan kualitas generasi asli
  • Hasil Minecraft:
    • Dilatih dengan 72 frame
    • Dapat rollout lebih dari 2000 frame tanpa divergensi
    • Dilakukan tanpa sliding window
    • Resolusi dataset asli adalah 128x128
    • Dalam beberapa skenario, agen berhenti di depan dirt atau stone block setinggi dua blok sampai berbalik arah; ini ditangani sebagai masalah inheren dari pengumpulan dataset

Diffusion Planning

  • Mirip dengan karya sebelumnya seperti Diffuser, sekuens diffusion dapat dimanfaatkan sebagai planner menggunakan guidance pada waktu pengujian
  • Diffusion Forcing mendefinisikan tiap token sebagai [a_t, o_{t+1}] untuk memodelkan hubungan kausal secara eksplisit
    • Memiliki belief tentang aksi apa yang akan dilakukan
    • Juga memiliki belief tentang observasi yang akan dihasilkan oleh aksi tersebut
    • Ketika observasi baru masuk setelah aksi, belief dapat diperbarui dengan posterior estimation
  • Video proses diffusion planning memvisualisasikan proses Diffusion Forcing planning sebagai framework pengambilan keputusan
  • Untuk memodelkan causal uncertainty masa depan, masa depan dekat dapat diberi tingkat noise rendah, sementara masa depan jauh diberi tingkat noise tinggi

Imitation learning horizon panjang

  • Banyak tugas dunia nyata tidak bersifat Markovian dan memerlukan memori horizon panjang untuk dijalankan
  • Dalam tugas robot nyata, lengan robot diminta menggunakan slot ketiga untuk menukar slot dua buah
    • Buah ditempatkan pada slot acak di awal
    • Dengan satu observasi saja, penempatan awal buah tidak dapat diketahui sehingga langkah berikutnya tidak bisa ditentukan
  • Dalam eksperimen planning, guidance dihilangkan, dan feedback control dilakukan dengan men-diffuse sekuens action-observation secara bersama
  • Video yang ditampilkan menunjukkan beberapa keberhasilan beruntun sebelum terjadi kegagalan
    • Robot dapat melakukan tugas meskipun posisi buah diacak oleh eksekusi sebelumnya
  • Agar robust terhadap distraction yang belum pernah dilihat pada waktu pengujian, model dapat di-prompt untuk memperlakukan observasi yang masuk sebagai noisy observation
    • Sebagai contoh, digunakan metode distraction dengan melempar tas belanja secara acak ke bidang pandang

Pembaruan 2025: Scaling Up Diffusion Forcing

  • Pada pembaruan 2025, state-of-the-art Wan2.1-T2V-1.3B hanya di-finetune selama 20k step dengan 49 frame
  • Setelah itu, model menghasilkan secara stabil hingga 217 frame melalui rollout 5x
  • Karya lanjutan dapat dilihat di History-Guided Video Diffusion
  • Contoh video mencakup ombak saat matahari terbenam, monyet di atas batu, anjing yang bersiap tidur, tampilan udara pantai tropis, adegan berselancar, dan adegan pesepeda menaiki tanjakan

Arah riset berikutnya

  • Conditioning

    • Saat diperluas ke sekuens panjang, conditioning berbasis penggantian sering digunakan
    • “Video Diffusion Models” dari Johnathan Ho membahas mengapa metode ini keliru
    • Diffusion Forcing menyediakan cara conditioning yang lebih natural dengan memperlakukan context token sebagai clean dan future token sebagai noisy, tetapi bagian ini belum dieksplorasi secara mendalam
  • Noise sebagai masking

    • Metode ini mencapai fractional masking pada token, bukan masking biner
    • Cukup umum untuk dimasukkan ke metode self-supervised learning seperti MAE
    • Penambahan noise memiliki interpretasi menarik dalam frequency domain
  • Compositionality

    • Makalah menunjukkan bahwa compositionality dapat dicapai dengan mengontrol history length
    • Dengan menggunakan noise sebagai masking, model berpotensi menilai sendiri kapan harus mengabaikan history yang tidak diperlukan dan hanya melakukan conditioning pada horizon yang lebih pendek
  • Non-causal version

    • Makalah ini menggunakan causal Diffusion Forcing karena causality penting dalam pengambilan keputusan
    • Gagasan noise sebagai masking juga dapat diterapkan pada model non-causal
    • Jika entry yang tidak boleh dilihat oleh prediksi dimasking dengan pure Gaussian noise, versi non-causal dapat dilatih dan dibuat causal pada saat sampling
  • Alternative Guidance

    • Dalam framework pengambilan keputusan yang diusulkan, guidance diterapkan pada observation agar tetap dekat dengan setting Diffuser
    • Versi yang menerapkan guidance pada learned reward juga diusulkan, tetapi tidak dieksplorasi dalam makalah
  • Noise scheme

    • Tingkat noise independen per token dirancang untuk generalitas, tetapi tidak optimal untuk semua tugas
    • Jika data sangat berkorelasi secara lokal pada sumbu waktu, terlalu banyak redundansi dapat dipertahankan
    • Ini dapat memengaruhi signal-to-noise ratio keseluruhan
  • Next few token prediction

    • Next few token prediction hanya digunakan dalam eksperimen planning, sedangkan eksperimen video masih menggunakan cara next-token
    • Pada versi RNN, metode ini tidak bekerja sangat baik, tetapi pada kode versi transformer bekerja sangat baik
    • Pada model causal, jika “few” sangat besar, next few token prediction dapat menimbulkan inconsistency
    • Pada model non-causal, fenomena seperti ini lebih jarang terjadi
  • Latent & DiT version

    • Setelah rilis, versi 3D U-Net dari Diffusion Forcing dipublikasikan
    • Diffusion Forcing dapat diterapkan pada DiT causal atau non-causal
    • Skema stabilisasi lebih cocok secara natural di latent space yang memiliki VAE
    • Pixel corruption tidak harus Gaussian, tetapi corruption pada latent VAE bisa lebih dekat ke Gaussian

Informasi sitasi

@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 komentar

 
GN⁺ 2024-07-06
Komentar Hacker News
  • Ada beberapa ide yang menonjol di sini. Pertama, ini menggabungkan sequence masking, ide pembelajaran inti dalam LLM, dengan model difusi, sambil melacak tingkat “ketidakpastian” untuk tiap piksel
    Tingkat “ketidakpastian” ini diperlakukan seperti tingkat “noise” dalam model difusi, dan model menghilangkan noise dengan dikendalikan oleh suatu embedding
    Dengan ini, sebagian gambar bisa dipastikan lebih dulu daripada bagian lain; misalnya bisa dipakai untuk menyelesaikan labirin. Dalam makalahnya bahkan ditunjukkan kontrol lengan robot untuk memindahkan buah, yang cukup mengejutkan
    Judulnya justru terasa meremehkan idenya. Karena tingkat masking berupa nilai riil, ini adalah cara melakukan masking parsial, dan menurut saya idenya cukup dalam dan menarik
    Namun banyak hal yang tidak dibahas dalam makalah, jadi saya sangat penasaran dengan codebase-nya. Tidak jelas bagaimana tepatnya tugas pelacakan labirin dan tugas perluasan video disusun, bagaimana lengan robot dihubungkan ke model ini, dan bagaimana tugas yang diinginkan diinstruksikan. Arsitekturnya sendiri juga tampaknya membutuhkan beberapa makalah atau penjelasan terperinci
    • Ini tampak seperti cara yang sangat elegan untuk menangani pemodelan ketidakpastian dalam perencanaan dan eksplorasi
      Hal yang kuat adalah bahwa, sambil mengubah tugas menjadi panjang variabel, ia memaksa agen untuk mencerminkan keadaan saat ini alih-alih menganggapnya begitu saja. Karena itu, meski ada kesulitan tak terduga, agen dapat merespons dan melakukan generalisasi dengan lebih baik sepanjang jalur
      Dugaan saya, semua tugas diperlakukan sebagai horizon variabel, dengan keadaan saat ini ditempatkan sebagai hasil dari tindakan-tindakan sebelumnya. Saya juga ingin melihat kodenya
    • Apakah codebase yang ditautkan belum cukup? Saya ingin memahami apa yang kurang di sini
      https://github.com/buoyancy99/diffusion-forcing
  • Saya penasaran apakah ada riset atau alat yang menerapkan teknik mirip difusi pada LLM penghasil teks yang sudah ada, tetapi bisa berjalan di model kecil seperti GPT / Phi 3 / Gwen tanpa pretraining baru, atau hanya dengan sedikit fine-tuning
    Saya tahu hal seperti Tree of Thoughts dengan Monte Carlo tree search, dan itu agak mirip, tetapi biasanya tujuan yang dipelajari lewat reward juga berbeda, jadi saya tertarik pada pendekatan yang lebih dekat ke generasi tingkat token
    Apakah ini memungkinkan?
  • Saya bekerja di bidang ini, dan pekerjaan ini disajikan dengan cara yang terlalu sulit dipahami
    Masalah apa yang ingin diselesaikan? Apakah ini mengusulkan model generatif baru?
    • Saya tidak punya latar belakang teoretisnya, tetapi videonya juga sulit dipahami. “Teacher Forcing” tampaknya terlihat buruk, tetapi untuk sisanya saya tidak tahu apakah itu baik atau buruk. Sebenarnya apa baseline-nya?
  • Apakah Russ sekarang mengerjakan difusi? Sepertinya ini seharusnya cukup dapat diterapkan pada robotika
  • Apakah saya melewatkan sesuatu terkait waktu pelatihan? Jika menambahkan noise per token, apakah kecepatan pelatihan menjadi jauh lebih lambat? Bagaimanapun, makalah yang keren
  • Pekerjaan yang keren. Saya penasaran apakah ini bisa diterapkan kembali ke LLM sebagai model difusi diskret yang memakai masking parsial
  • Sangat keren, tapi kenapa namanya diffusion forcing?
    • Ada di paragraf kedua:
      Katanya nama “Diffusion Forcing” berasal dari “teacher forcing” dan “diffusion models”