Especialización en redes generativas adversarias en Coursera (ofrecida por deeplearning.ai)
Tareas de programación de todos los cursos de la especialización GAN de Coursera ofrecidas por deeplearning.ai
.
Cursos
La especialización GAN en Coursera contiene tres cursos:
Curso 1: Construir redes adversas generativas básicas
Curso 2: Construya mejores redes generativas de confrontación
Curso 3: Aplicar Redes Generativas Adversariales (GAN)
Acerca de las GAN
Las redes generativas adversarias (GAN) son potentes modelos de aprendizaje automático capaces de generar imágenes, vídeos y salidas de voz realistas.
Arraigadas en la teoría de juegos, las GAN tienen una amplia aplicación: desde mejorar la ciberseguridad luchando contra ataques adversarios y anonimizar los datos para preservar la privacidad hasta generar imágenes de última generación, colorear imágenes en blanco y negro, aumentar la resolución de las imágenes, crear avatares, convertir imágenes 2D a 3D y más.
A medida que la potencia informática ha aumentado, también lo ha hecho la popularidad de las GAN y sus capacidades. Las GAN han abierto muchas direcciones nuevas: desde generar grandes cantidades de conjuntos de datos para entrenar modelos de aprendizaje automático y permitir potentes modelos de aprendizaje no supervisados hasta producir resultados más nítidos, discretos y precisos. Las GAN también han informado la investigación en áreas adyacentes como el aprendizaje adversario, ejemplos y ataques adversarios, solidez del modelo, etc.
Acerca de esta Especialización
La especialización en redes generativas adversas (GAN) de deeplearning.ai proporciona una interesante introducción a la generación de imágenes con GAN, trazando un camino desde conceptos fundamentales hasta técnicas avanzadas a través de un enfoque fácil de entender. También cubre las implicaciones sociales, incluido el sesgo en el aprendizaje automático y las formas de detectarlo, la preservación de la privacidad y más.
Cree una base de conocimientos integral y obtenga experiencia práctica en GAN. Entrene su propio modelo con PyTorch, úselo para crear imágenes y evalúe una variedad de GAN avanzadas.
Acerca de ti
Esta especialización es para ingenieros de software, estudiantes e investigadores de cualquier campo que estén interesados en el aprendizaje automático y quieran comprender cómo funcionan las GAN.
Esta especialización proporciona un camino accesible para estudiantes de todos los niveles que buscan ingresar al espacio de las GAN o aplicar las GAN a sus propios proyectos, incluso sin estar familiarizados previamente con la investigación en matemáticas avanzadas y aprendizaje automático.
Tareas de programación
Curso 1: Construir redes generativas adversas básicas (GAN)
- Este es el primer curso de la Especialización en Redes Generativas Adversariales (GAN).
Semana 1: Introducción a las GAN
- Aprenda sobre las GAN y sus aplicaciones, comprenda la intuición detrás de los componentes básicos de las GAN y cree su propia GAN utilizando PyTorch.
- Asignación:
Semana 2: GAN convolucional profunda
- Cree una GAN más sofisticada utilizando capas convolucionales. Obtenga información sobre funciones de activación útiles, normalización por lotes y convoluciones transpuestas para ajustar su arquitectura GAN y aplicarlas para crear un DCGAN avanzado específicamente para procesar imágenes.
- Asignación:
- GAN convolucional profunda (DCGAN)
Semana 3: GAN de Wasserstein con normalización
- Reduzca los casos de falla de GAN debido a desequilibrios entre el generador y el discriminador aprendiendo técnicas avanzadas como WGAN para mitigar el entrenamiento inestable y el colapso del modo con una pérdida W y una comprensión de la continuidad de Lipschitz.
- Asignación:
- Wasserstein GAN con penalización de gradiente (WGAN-GP)
Semana 4: GAN condicionales y controlables
- Comprenda cómo controlar eficazmente su GAN, modificar las características de una imagen generada y construir GAN condicionales capaces de generar ejemplos a partir de categorías determinadas.
- Asignaciones:
- Construya una GAN condicional
- Generación controlable
Curso 2: Construya mejores redes generativas adversarias (GAN)
- Este es el segundo curso de la Especialización en Redes Generativas Adversariales (GAN).
Semana 1: Evaluación de GAN
- Comprenda los desafíos de evaluar las GAN, conozca las ventajas y desventajas de las diferentes medidas de rendimiento de las GAN e implemente el método de distancia de inicio de Fréchet (FID) utilizando incorporaciones para evaluar la precisión de las GAN.
- Asignación:
- Evaluación de GAN/distancia de inicio de Fréchet
Semana 2: Desventajas y sesgos de GAN
- Descubra las desventajas de las GAN en comparación con otros modelos generativos, descubra los pros y los contras de estos modelos; además, conozca los muchos lugares de donde puede surgir el sesgo en el aprendizaje automático, por qué es importante y un enfoque para identificarlo en las GAN. .
- Prueba:
- Asignación:
- Laboratorio:
- Autocodificador variacional (VAE)
Semana 3: StyleGAN y avances
- Comprenda cómo StyleGAN mejora los modelos anteriores e implemente los componentes y las técnicas asociadas con StyleGAN, actualmente la GAN más avanzada y con potentes capacidades.
- Asignación:
- Cuadernos opcionales:
- Componentes de BigGAN
- EstiloGAN2
Curso 3: Aplicar Redes Generativas Adversariales (GAN)
- Este es el tercer curso de la Especialización en Redes Generativas Adversariales (GAN).
Semana 1: GAN para el aumento de datos y la preservación de la privacidad
- Explore las aplicaciones de GAN y examínelas en términos de aumento de datos, privacidad y anonimato.
- Mejore sus modelos de IA posteriores con datos generados por GAN.
- Asignación:
Semana 2: Traducción de imagen a imagen
- Aproveche el marco de traducción de imagen a imagen e identifique extensiones, generalizaciones y aplicaciones de este marco a modalidades más allá de las imágenes.
- Implemente Pix2Pix, una GAN de traducción de imagen a imagen emparejada, para adaptar imágenes satelitales a rutas de mapas (y viceversa) con un generador U-Net avanzado y arquitecturas discriminadoras PatchGAN.
- Asignaciones:
Semana 3: Traducción no emparejada de imagen a imagen
- Compare la traducción de imagen a imagen emparejada con la traducción de imagen a imagen no emparejada e identifique cómo su diferencia clave requiere diferentes arquitecturas GAN.
- Implemente CycleGAN, un modelo de traducción de imagen a imagen no emparejado, para adaptar caballos a cebras (y viceversa) con dos GAN en una.
- Asignación:
Descargo de responsabilidad
Reconozco el tiempo difícil que dedica la gente a desarrollar la intuición, comprender nuevos conceptos y depurar tareas. Las soluciones cargadas aquí son solo como referencia . Están destinados a desbloquearte si te quedas atascado en algún lugar. No copie ninguna parte del código tal como está (las tareas de programación son bastante fáciles si lee las instrucciones detenidamente). De manera similar, pruebe los cuestionarios usted mismo antes de consultar las soluciones.