Las GAN tienen varios modos de falla comunes. Todos estos problemas comunes son áreas de investigación activa. Si bien ninguno de estos problemas se resolvió por completo, mencionaremos algunas cosas que intentaron las personas.
Desaparición de gradientes
En una investigación, se sugirió que si el discriminante es demasiado bueno, el entrenamiento del generador puede fallar debido a desapariciones de gradientes. De hecho, un discriminante óptimo no proporciona suficiente información para que el generador avance.
Intentos de solución
- Pérdida de Wasserstein: La pérdida de Wasserstein está diseñada para prevenir la desaparición de los gradientes, incluso cuando se entrena al discriminador con la máxima óptima.
- Pérdida modificada de minimax: En el artículo original de GAN, se propuso una modificación en la pérdida de minimax para lidiar con los gradientes que desaparecen.
Contraer modo
Por lo general, lo ideal es que tu GAN produzca una gran variedad de resultados. Por ejemplo, quieres un rostro diferente para cada entrada aleatoria del generador de rostros.
Sin embargo, si un generador produce un resultado particularmente razonable, el generador puede aprender a producir solo ese resultado. De hecho, el generador siempre intenta encontrar el resultado más probable para el discriminante.
Si el generador comienza a producir el mismo resultado (o un pequeño conjunto de resultados) una y otra vez, la mejor estrategia del discriminante es aprender a rechazar siempre ese resultado. Sin embargo, si la siguiente generación de discriminador se bloquea en un mínimo local y no encuentra la mejor estrategia, es muy fácil que la siguiente iteración del generador encuentre el resultado más creíble para el discriminante actual.
Cada iteración del generador realiza optimizaciones en exceso para un discriminador en particular, y el discriminante nunca logra aprender a salir de la trampa. Como resultado, los generadores rotan a través de un conjunto pequeño de tipos de salida. Esta forma de falla de GAN se llama contraer modo.
Intentos de solución
Los siguientes enfoques intentan forzar el generador para ampliar su alcance impidiendo que se optimice para un único discriminador fijo:
- Pérdida de Wasserstein: La pérdida de Wasserstein alivia el colapso del modo, ya que te permite entrenar al discriminador para que sea óptimo sin tener que preocuparte por los gradientes que desaparecen. Si el discriminante no se detiene en el mínimo local, aprende a rechazar los resultados en los que se estabiliza el generador. El generador tiene que probar algo nuevo.
- GAN no agregadas: Las GAN no lanzadas usan una función de pérdida del generador que incorpora no solo las clasificaciones actuales del discriminador, sino también los resultados de las versiones futuras del discriminador. Por lo tanto, el generador no puede optimizar en exceso para un solo discriminante.
Error al converger
Las GAN con frecuencia no convergen, como se explica en el módulo sobre entrenamiento.
Intentos de solución
Los investigadores intentaron usar varias formas de regularización para mejorar la convergencia de las GAN, incluidas las siguientes:
- Agrega ruido a las entradas del discriminador: Consulta, por ejemplo, Hacia métodos principiantes para entrenar redes generativas adversarias.
- Penalización de pesos discriminadores: consulta, por ejemplo, Estabilización del entrenamiento de redes adversarias generativas a través de la regularización.