Diffusion model
Bagian 3 · Deep generative model
| Istilah | Arti |
|---|---|
| diffusion model | Model generatif yang belajar menghapus noise secara bertahap sehingga bisa mengubah noise acak menjadi gambar atau data baru yang realistis. |
| DDPM | Singkatan Denoising Diffusion Probabilistic Models, makalah tahun 2020 karya Jonathan Ho dan rekan yang dibedah langkah demi langkah di video ini. |
| forward process | Proses maju yang menambahkan Gaussian noise sedikit demi sedikit pada gambar sampai gambar berubah menjadi noise murni, dengan parameter yang tetap dan tidak dilatih. |
| reverse process | Proses balik yang dipelajari jaringan saraf untuk menghapus noise langkah demi langkah sehingga noise murni berubah menjadi gambar baru. |
| Gaussian noise | Gangguan acak yang nilainya mengikuti distribusi normal berbentuk lonceng, dipakai untuk merusak gambar secara bertahap dalam diffusion model. |
| Markov chain | Rangkaian langkah acak yang setiap langkahnya hanya bergantung pada langkah sebelumnya, sifat yang menyederhanakan perhitungan proses penambahan noise. |
| timestep | Nomor urut langkah dalam proses penambahan atau penghapusan noise, yang di video ini berjumlah sekitar seribu langkah. |
| ELBO | Evidence lower bound, batas pengganti yang bisa dihitung untuk negative log likelihood dan kemudian disederhanakan menjadi fungsi loss pelatihan DDPM. |
| negative log likelihood | Ukuran seberapa kecil peluang model menghasilkan data asli, yang ingin diminimalkan saat pelatihan tetapi terlalu sulit dihitung secara langsung. |
| variance | Ukuran seberapa lebar sebaran nilai sebuah distribusi, yang dijaga agar menuju satu supaya proses noise berakhir di distribusi normal standar. |
| denoising | Kegiatan membersihkan noise dari gambar, yang menjadi tugas inti jaringan saraf dalam diffusion model dengan menebak noise yang ditambahkan. |
| score-based diffusion | Rumusan diffusion yang lebih umum memakai persamaan diferensial stokastik waktu kontinu, disebut di akhir video sebagai topik video berikutnya. |
Video ini menguraikan teori di balik diffusion model, teknik yang kini dipakai untuk menghasilkan gambar, video, musik, model 3D, sampai menemukan molekul baru. Pembahasannya mengikuti langkah demi langkah makalah Denoising Diffusion Probabilistic Models atau DDPM karya Jonathan Ho dan rekan pada 2020. Makalah ini bukan yang pertama memperkenalkan diffusion model, karena gagasannya sudah muncul pada 2015 ketika GAN masih mendominasi, tetapi DDPM membawanya menjadi teknik terbaik untuk pembuatan gambar dan kini dikutip lebih dari dua puluh ribu kali. Masalah utamanya adalah cara membuat sampel baru dari distribusi data yang sangat rumit, misalnya semua gambar wajah, tanpa punya rumus yang menggambarkannya. Jawabannya adalah merusak gambar sedikit demi sedikit dengan Gaussian noise sampai menjadi noise murni, lalu melatih jaringan saraf untuk membalik langkah-langkah itu. Penonton diajak memahami matematikanya sekaligus melihat implementasinya dalam kode Python.
Video ini menunjukkan bahwa penambahan noise biasa membuat variance terus membesar, sehingga DDPM memakai koefisien akar dari satu dikurangi beta agar proses berakhir di distribusi normal standar dan bisa langsung melompat ke timestep mana pun lewat alpha bar. Untuk melatih reverse process, negative log likelihood yang mustahil dihitung diganti dengan ELBO memakai pertidaksamaan Jensen. ELBO kemudian disederhanakan menjadi jumlah divergensi KL, lalu jarak kuadrat antar-mean, dan akhirnya selisih kuadrat antara noise asli dan noise tebakan jaringan dengan reparameterization trick. Implementasinya memakai PyTorch dan DeepInverse, dataset MNIST berukuran 32 kali 32 piksel, Diffusion UNet, optimizer Adam, beta schedule linear, dan sekitar 100 epoch. Sampling berjalan seribu langkah dari noise murni dan inti kodenya kurang dari tiga puluh baris. Dengan bobot FFHQ, hasilnya berupa wajah yang hampir mirip foto asli. Kualitasnya mengungguli VAE tetapi membutuhkan seribu kali evaluasi jaringan. Video berikutnya akan membahas score-based diffusion.
Kata kunci
- diffusion model
- DDPM
- Gaussian noise
- ELBO
- Menelusuri paper DDPM langkah demi langkah: forward process yang menambah noise dan reverse process yang menghapusnya.
- Menurunkan negative log likelihood menjadi ELBO lalu menjadi loss L2 antara noise asli dan noise prediksi.
- Melihat bagaimana jaringan denoising dilatih dan menghasilkan sampel dari noise murni.
Tulis catatan pribadimu untuk modul ini. Catatan tersimpan di akunmu dan bisa dibuka dari perangkat mana pun.
