Estoy explorando las redes generativas adeversariales (GAN), que utilizo para varias tareas, no solo para la generación de imágenes.

El Deep Convolutional GAN (DCGAN) es otro enfoque de GAN que se usa especialmente para datos de imagen, la particularidad de DCGAN es que usan capas de convolución en el discriminador y transponen capas de convolución para el generador.

En mi aplicación, uso capas de convolución en el discriminador, pero en lugar de usar convolución de transposición para el generador, usé una convolución simple.

La pregunta es, dado que no uso la convolución de transposición, ¿estoy usando una GAN simple o una DCGAN

Gracias de antemano por sus respuestas y que tenga un buen día

1
Nadjib Bendaoud 15 abr. 2020 a las 19:53

2 respuestas

La mejor respuesta

GAN consta de dos componentes:

  • La falsificadora: la que intenta hacer la falsificación,
  • y El inspector: quien intenta atrapar al falsificador, examinando el material para distinguir si es real o falso.

Estos dos jugando el juego, cada vez que el falsificador intenta hacer algo, más difícil de distinguir a los ojos del inspector. Cada vez que el Inspector logra detectar al falsificador, esa es una lección para que el falsificador aprenda por qué lo atraparon y la próxima vez se cubra mejor.

Larga historia corta, este juego se llama GAN! Cómo implementarlo y elegir las arquitecturas, en realidad es su elección. En mi opinión, los DCGAN usan redes profundas para la parte del generador (El falsificador). Realmente no se trata de usar ConvTranspose, o convs normales.

Para el inspector también, realmente no tiene que implementarlo como discriminador. Por ejemplo, se demuestra que los WGAN son eficientes usando métricas de movimiento de tierra en lugar de una pérdida de clasificación.

Sin embargo, esta es mi opinión y mi comprensión, podría no ser 100% correcta. Buena suerte

1
alift 28 may. 2020 a las 06:59

No, no se trata solo de las capas de convolución transpuestas. En realidad, es un intento de usar Gans con redes neuronales de convolución y garantizar una arquitectura estable modificándola. Algunas de sus modificaciones incluyen, por ejemplo, el uso del muestreo ascendente y la disminución de la capacidad de muestreo en lugar de la agrupación máxima, la sustitución de capas totalmente conectadas con aplanamiento y una capa sigmoidea en la salida del discriminador, la aplicación de Normalización por lotes a todas las capas, excepto la salida del generador y la entrada del discriminador y algunas más. En cuanto a su duda, llamar a su arquitectura como GAN o DCGAN parece ser un poco confuso ya que en la arquitectura Gan normal, no se utilizan capas de convolución. El discriminador y el generador en la GAN original son redes totalmente conectadas con una mezcla de activaciones de relu y maxout respectivamente Para utilizar CNN con GAN que inicialmente se consideraban inestables, se introdujeron algunos documentos en ese momento como LAPGAN y DCGAN. Dicho esto, no puede llamar a su arquitectura para que también sea DCGAN a menos que haya copiado todos los detalles y la arquitectura del entrenamiento, aunque puede decir que mi modelo está inspirado en DCGAN con pequeñas modificaciones. Espero que esto aclare un poco tu duda.

1
nancy mehta 10 jun. 2020 a las 04:18