GAN memiliki sejumlah mode kegagalan umum. Semua masalah umum ini adalah area riset aktif. Meskipun tidak satu pun dari masalah ini yang telah sepenuhnya diselesaikan, kami akan menyebutkan beberapa hal yang telah dicoba orang.
Vanishing Gradients
Riset telah menunjukkan bahwa jika diskriminator Anda terlalu baik, pelatihan generator dapat gagal karena gradien menghilang. Akibatnya, discriminator optimal tidak memberikan informasi yang cukup bagi generator untuk membuat progres.
Upaya untuk Memperbaiki
- Wasserstein loss: Wasserstein loss dirancang untuk mencegah gradien yang menghilang meskipun Anda melatih diskriminator hingga optimal.
- Kerugian minimax yang dimodifikasi: Makalah GAN asli menyarankan modifikasi pada kerugian minimax untuk menangani gradien yang menghilang.
Mode Ciutkan
Biasanya, Anda ingin GAN menghasilkan berbagai output. Misalnya, Anda ingin wajah yang berbeda untuk setiap input acak ke generator wajah.
Namun, jika generator menghasilkan output yang sangat masuk akal, generator dapat belajar untuk menghasilkan hanya output tersebut. Bahkan, generator selalu mencoba menemukan satu output yang tampaknya paling masuk akal bagi diskriminator.
Jika generator mulai menghasilkan output yang sama (atau serangkaian output kecil) berulang kali, strategi terbaik diskriminator adalah belajar untuk selalu menolak output tersebut. Namun, jika generasi diskriminator berikutnya terhenti di minimum lokal dan tidak menemukan strategi terbaik, iterasi generator berikutnya akan terlalu mudah menemukan output yang paling masuk akal untuk diskriminator saat ini.
Setiap iterasi generator melakukan pengoptimalan berlebih untuk diskriminator tertentu, dan diskriminator tidak pernah berhasil mempelajari cara keluar dari perangkap. Akibatnya, generator akan berputar melalui sekumpulan kecil jenis output. Bentuk kegagalan GAN ini disebut mode collapse.
Upaya untuk Memperbaiki
Pendekatan berikut mencoba memaksa generator untuk memperluas cakupannya dengan mencegah generator mengoptimalkan satu diskriminator tetap:
- Wasserstein loss: Wasserstein loss mengurangi mode collapse dengan memungkinkan Anda melatih diskriminator hingga optimal tanpa khawatir tentang gradien yang menghilang. Jika tidak macet di minimum lokal, diskriminator akan belajar menolak output yang distabilkan generator. Jadi, generator harus mencoba sesuatu yang baru.
- GAN yang Di-unroll: GAN yang Di-unroll menggunakan fungsi loss generator yang tidak hanya menggabungkan klasifikasi diskriminator saat ini, tetapi juga output dari versi diskriminator mendatang. Jadi, generator tidak dapat melakukan pengoptimalan berlebih untuk satu diskriminator.
Kegagalan Konvergensi
GAN sering kali gagal berkonvergensi, seperti yang dibahas dalam modul tentang pelatihan.
Upaya untuk Memperbaiki
Para peneliti telah mencoba menggunakan berbagai bentuk regularisasi untuk meningkatkan konvergensi GAN, termasuk:
- Menambahkan derau ke input diskriminator: Lihat, misalnya, Toward Principled Methods for Training Generative Adversarial Networks.
- Menjatuhkan sanksi pada bobot diskriminator: Lihat, misalnya, Menstabilkan Pelatihan Generative Adversarial Networks melalui Regulasi.