Modelos de Deep Learning

Descripción del curso

1 Objetivos del curso

  • Comprender y aplicar los principios fundamentales de Deep Learning para modelar y resolver problemas complejos en diversos dominios.
  • Diseñar, entrenar y validar modelos de Deep Learning, utilizando conjuntos de datos reales y simulados, para tareas de clasificación, regresión y otras aplicaciones avanzadas.
  • Evaluar críticamente la efectividad y eficiencia de diferentes arquitecturas de redes neuronales, incluidas las redes convolucionales y recurrentes, en la solución de problemas específicos.
  • Desarrollar habilidades prácticas en el uso de herramientas y librerías de software de vanguardia para el Deep Learning, tales como TensorFlow, PyTorch, y/o Keras, permitiendo la simulación y experimentación con modelos complejos.
  • Implementar técnicas de optimización y ajuste fino para mejorar el rendimiento de los modelos de aprendizaje profundo, así como aplicar métodos para verificar y validar la precisión de los modelos desarrollados.

2 Programa del curso

1.1. Introducción al Deep Learning y su evolución histórica.
1.2. Principios básicos de las redes neuronales: perceptrones, perceptrones multicapa (MLP), funciones de activación, y propagación hacia adelante.
1.3. Entrenamiento de redes neuronales profundas: backpropagation, descenso del gradiente y ajuste de hiperparámetros. Uso de la librería Keras para facilitar la implementación de modelos.
1.4. Evaluación de modelos: conjuntos de entrenamiento, validación y prueba; sobreajuste y técnicas de regularización.
1.5. Introducción a TensorFlow, PyTorch y Keras como interfaz de alto nivel para la construcción y el entrenamiento de modelos de deep learning.

Slides
Tutorial básico de Python

2.1. Estructura y características de los MLP: capas ocultas, nodos y profundidad.
2.2. Aplicaciones prácticas de los MLP en clasificación y regresión.
2.3. Comparación entre MLP y otros modelos de Deep Learning en términos de capacidad, complejidad y tipos de problemas a resolver.
2.4. Implementación de MLP para tareas de clasificación y regresión.
2.5. Estrategias de optimización y ajuste fino específicas para MLP.

Slides
Guía de Keras
Ejemplo 1: Librería neuralnet en R
Ejemplo 2: Librería keras con datos de MNIST
Ejemplo 3: Librería keras para regresión con datos de automóviles

3.1.    Fundamentos de las CNNs: operación de convolución, pooling y normalización.
3.2.    Arquitecturas de CNNs populares: LeNet, AlexNet, VGG, ResNet e Inception.
3.3.    Introducción al Transfer Learning en CNNs: cómo reutilizar modelos preentrenados para nuevas tareas.
3.4.    Aplicaciones de las CNNs: reconocimiento de imágenes, detección de objetos y segmentación semántica.
3.5.    Prácticas con conjuntos de datos reales utilizando librerías de Deep Learning.

Slides
Ejemplo 1: Librería Keras con datos fashion-MNIST
Ejemplo 2: Gatos y perros
Ejemplo 2b: Gatos y perros, la venganza

4.1.    Principios de las RNNs: procesamiento de secuencias y dependencias temporales.
4.2.    Problemas de las RNNs: desvanecimiento y explosión del gradiente.
4.3.    LSTM y GRU: soluciones al problema del desvanecimiento del gradiente.
4.4.    Aplicaciones de las RNNs y LSTM: procesamiento de lenguaje natural, generación de texto y análisis de series temporales.
4.5.    Implementación práctica de modelos RNN y LSTM.
5.1.    Diferencia entre modelos discriminativos y generativos.
5.2.    Conceptos básicos de Autoencoders y su aplicación en la reducción de dimensionalidad y generación de datos.
5.3.    Introducción teórica a Redes Generativas Antagónicas (GANs): fundamentos, arquitectura y aplicaciones sin implementación práctica.
5.4.    Discusión sobre el impacto de GANs en la generación de contenido y ética en la IA.

3 Procedimiento de evaluación

A lo largo del curso, los estudiantes desarrollarán un Proyecto aplicado utilizando los conocimientos adquiridos durante el curso. Los estudiantes seleccionarán un problema real para aplicar técnicas de Deep Learning, incluyendo el diseño e implementación de uno o varios modelos.

Presentación de proyectos:
Los estudiantes expondrán sus proyectos (máximo 3 integrantes), mostrando la metodología, resultados y aprendizajes clave. Dicho trabajo grupal tendrá 3 presentaciones de avance (PA) y un informe final (IF), con las siguientes ponderaciones:

  • PA_1: 25\%
  • PA_2: 25\%
  • PA_3: 25\%
  • IF: 25\%

4 Asistencia

Asistencia: 75\%

5 Bibliografía del curso

Los principales libros que usaremos, además de otros recursos online son los siguientes:

Goodfellow, Bengio, y Courville (2016), Disponible acá

Géron (2022), con su repositorio gratuito en GitHub

Raschka y Mirjalili (2019), con su repositorio gratuito en GitHub

Zhang et al. (2023), Disponible acá

6 Referencias

Géron, Aurélien. 2022. Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow. O’Reilly Media, Inc.
Goodfellow, Ian, Yoshua Bengio, y Aaron Courville. 2016. Deep learning. MIT press.
Raschka, Sebastian, y Vahid Mirjalili. 2019. Python machine learning: Machine learning and deep learning with Python, scikit-learn, and TensorFlow 2. Packt Publishing Ltd.
Zhang, Aston, Zachary C Lipton, Mu Li, y Alexander J Smola. 2023. Dive into deep learning. Cambridge University Press.
Volver arriba