Introducción
Este curso brinda a los participantes las competencias esenciales para comprender los principios teóricos del aprendizaje profundo, junto con experiencia práctica en Python/TensorFlow, complementada con ChatGPT como asistente — para acelerar desarrollo, depuración, documentación y comprensión. A lo largo de 20 horas se cubrirán desde la base matemática y conceptual hasta redes profundas, CNN/RNN y buenas prácticas para aplicar deep learning en contextos reales de negocio.
Objetivos
Al finalizar el curso, los participantes podrán:
- Explicar los conceptos fundamentales de deep learning: arquitectura de redes neuronales, propagación hacia adelante, backpropagation, optimización.
- Configurar un entorno de desarrollo con Python y TensorFlow (incluyendo API de alto nivel, e.g. Keras).
- Construir y entrenar redes neuronales densas, convolucionales y recurrentes para tareas típicas (clasificación, regresión, series temporales, imágenes o texto).
- Evaluar el rendimiento de modelos usando técnicas adecuadas: funciones de pérdida, métricas, regularización, validación.
- Utilizar ChatGPT como herramienta de apoyo: generación de código, revisión, ayuda para depuración, explicaciones conceptuales, ideas de preprocesado, docstrings, comentarios.
- Aplicar buenas prácticas de organización de código, modularidad, reproducibilidad y mantenimiento de proyectos de deep learning.
Índice de Contenidos
Módulo 1: Fundamentos de Deep Learning y Neural Networks
- Qué es deep learning, diferencias con machine learning tradicional.
- Estructura de una red neuronal (neuronas, capas, pesos, bias, funciones de activación).
- Conceptos de forward-pass, backpropagation, función de coste, optimización.
- Overfitting, underfitting, sesgo-varianza, necesidad de regularización.
Módulo 2: Entorno Python y TensorFlow / Keras — Setup y primeros modelos
- Instalación de Python, TensorFlow y dependencias, configuración de entorno.
- Uso de la API de alto nivel (por ejemplo Keras integrada en TensorFlow).
- Tensores, variables, placeholders (o su equivalente actual), graph computation (concepto básico).
- Construcción de modelos densos simples: redes feed-forward para tareas de regresión y clasificación.
Módulo 3: Redes Convolucionales (CNN) — visión por computador
- Fundamentos de CNN: convoluciones, pooling, capas, activaciones.
- Construir y entrenar CNN para clasificación de imágenes.
- Conceptos de regularización, optimización, validación, augmentación de datos.
- Evaluación y ajuste de hiperparámetros, técnicas para evitar overfitting.
Módulo 4: Redes Recurrentes (RNN), Modelos de Secuencia y Series Temporales
- Introducción a RNN, LSTM, GRU — cuándo usar redes recurrentes.
- Preparación de datos secuenciales, embeddings (si aplica), secuencias de entrada/salida.
- Construcción, entrenamiento y evaluación de modelos secuenciales — predicción de series temporales, NLP básico, etc.
- Buenas prácticas: manejo de secuencias, batching, padding, máscaras, overfitting, regularización.
Módulo 5: Deep Learning No Supervisado y Técnicas Avanzadas
- Autoencoders: teoría, uso para reducción de dimensionalidad, detección de anomalías.
- Conceptos de redes profundas no supervisadas, representación de datos, embedding, pre-entrenamiento (cuando aplique).
- Regularización, normalización, técnicas modernas de entrenamiento: dropout, batch normalization, inicialización de pesos, optimizadores avanzados (Adam, RMSprop, etc.).
Módulo 6: Uso de ChatGPT como Asistente de Desarrollo en Deep Learning
- Cómo utilizar ChatGPT para generar boilerplate de código, definiciones de modelo, preprocesado de datos, etc.
- Uso de ChatGPT para interpretar resultados de entrenamiento, explicar métricas, documentar el proyecto, generar reportes para stakeholders.
- Buenas prácticas cuando se usa IA conversacional: validación de código, revisión manual, interpretación crítica de resultados.
- Aumentar productividad: ideas para experimentos, variaciones de arquitectura, refactorización, comentarios y docstrings automáticos.
Módulo 7: Buenas Prácticas, Mantenimiento, Reproducibilidad y Preparación para Producción
- Organización del proyecto: estructura de carpetas, modularización, separación de datos / modelos / scripts.
- Reproducibilidad: semillas aleatorias, control de versiones, entornos virtuales, control de dependencias.
- Serialización y persistencia de modelos: guardar y cargar modelos entrenados.
- Evaluación continua, logging, monitorización de rendimiento, manejo de errores, validación de entrada, consideraciones de seguridad y ética.
Módulo 8: Aplicaciones Empresariales y Casos de Uso
- Cómo traducir un problema de negocio a un problema de deep learning: definición de objetivo, métrica, datos necesarios.
- Flujo completo típico: obtención y preprocesado de datos → definición de arquitectura → entrenamiento → evaluación → despliegue o prototipo.
- Ejemplos de casos reales: clasificación de imágenes, análisis de texto, predicción de series temporales, detección de anomalías.
- Uso de ChatGPT como apoyo continuo en el ciclo de vida del proyecto: mantenimiento, documentación, refactorización, mejoras iterativas.