Les GAN ont plusieurs modes de défaillance courants. Tous ces problèmes courants font l'objet de recherches actives. Bien qu'aucun de ces problèmes n'ait été entièrement résolu, nous allons aborder certains points que les gens ont essayés.
Dégradés
Une étude a suggéré que si votre discriminateur est trop bon, l'entraînement du générateur peut échouer en raison de la disparition des gradients. En effet, un discriminateur optimal ne fournit pas suffisamment d'informations au générateur pour progresser.
Tentatives de réparation
- Perte de Wasserstein : la perte de Wasserstein est conçue pour empêcher la disparition des gradients, même lorsque vous entraînez le discriminateur vers un niveau optimal.
- Perte de minimax modifiée : l'article du GAN d'origine proposait une modification de la perte de minimax pour gérer les gradients disparus.
Réduction du mode
En règle générale, vous souhaitez que votre GAN produise une grande variété de sorties. Vous voulez, par exemple, avoir une face différente pour chaque entrée aléatoire de votre générateur de visages.
Toutefois, si un générateur génère une sortie particulièrement plausible, il peut apprendre à produire uniquement cette sortie. En fait, le générateur essaie toujours de trouver la sortie qui semble la plus plausible pour le discriminateur.
Si le générateur commence à produire régulièrement la même sortie (ou un petit ensemble de sorties), la meilleure stratégie du discriminateur est d'apprendre à toujours refuser cette sortie. Toutefois, si la prochaine génération de discriminateurs est bloquée sur un minimum local et ne trouve pas la meilleure stratégie, il est trop facile pour la prochaine itération de génération de trouver la sortie la plus plausible pour le discriminateur actuel.
Chaque itération de générateur est optimisée en fonction d'un discriminateur particulier, et le discriminateur ne parvient jamais à apprendre à sortir du piège. Par conséquent, les générateurs effectuent une rotation parmi un petit ensemble de types de sortie. Cette forme d'échec du GAN est appelée mode Réduire.
Tentatives de réparation
Les approches suivantes consistent à forcer le générateur à élargir son champ d'application en l'empêchant d'optimiser pour un seul discriminateur fixe:
- Perte de Wasserstein: la perte de Wasserstein atténue le effondrement en vous permettant d'entraîner le discriminateur à l'optimisme sans craindre de perdre des gradients. Si le discriminateur ne reste pas bloqué sur la région locale, il apprend à rejeter les sorties sur lesquelles le générateur se stabilise. Le générateur doit donc essayer quelque chose de nouveau.
- GAN non déployés: les GAN non déployés utilisent une fonction de perte de générateur qui intègre non seulement les classifications actuelles des discriminateurs, mais aussi les sorties des futures versions des discriminateurs. Ainsi, le générateur ne peut pas sur-optimiser pour un seul discriminateur.
Échec de la convergence
Les GAN ne parviennent pas souvent à converger, comme abordé dans le module sur l'entraînement.
Tentatives de réparation
Les chercheurs ont essayé différentes régularisations pour améliorer la convergence du GAN, y compris:
- Ajouter du bruit aux entrées discriminatrices : consultez, par exemple, Vers des méthodes principées pour l'entraînement de réseaux antagonistes génératifs.
- Pénaliser les pondérations des discriminateurs: par exemple, Stabiliser l'entraînement des réseaux antagonistes génératifs par la régularisation.