Boost Academy
FormaciónEvaluacionesPerfil
Volver
  • En directo

PyTorch — Avanzado

10h de clase en directo·HACK A BOSS·Español

Skills que aprenderás

  • PyTorch

Convocatorias

Necesitas un plan activo

Para acceder a los cursos en directo necesitas un plan activo. Estamos trabajando para que los planes estén disponibles pronto — ¡mantente atento!

No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.

Descripción

Objetivos

Temario

Requisitos técnicos

Conocimientos previos

Microcertificados relacionados

Detalles de la convocatoria

Recursos

No hay recursos disponibles todavía para esta convocatoria

Curso destinado a profesionales con experiencia previa en PyTorch que buscan llevar sus modelos a producción y escalarlos con garantías de eficiencia y reproducibilidad. A lo largo de las 10 horas, el participante aprenderá a diseñar arquitecturas de red personalizadas con flujos forward no lineales, a construir pipelines de datos robustos con augmentation y muestreo estratificado, y a dominar técnicas avanzadas de entrenamiento como mixed precision, gradient clipping y schedulers adaptativos. También abordará la evaluación crítica del rendimiento mediante múltiples métricas, la selección razonada de funciones de pérdida para escenarios complejos, la anticipación y mitigación de cuellos de botella de memoria y cómputo, y la optimización de la inferencia mediante TorchScript y ONNX. Al finalizar, el participante será capaz de entregar un experimento completamente reproducible —con logging, checkpointing e integración de búsqueda automática de hiperparámetros— listo para escalar en entornos reales.

Al finalizar el curso, el participante será capaz de:

  1. Conceptual — Explicar los principios que rigen el diseño de arquitecturas modulares con nn.Module, la gestión de memoria en GPU y los trade-offs entre distintas estrategias de pérdida y métricas de evaluación para tareas desbalanceadas o multi-objetivo.
  2. Conceptual — Describir cómo las técnicas de optimización de inferencia (TorchScript, ONNX) y las estrategias de escalado (gradient checkpointing, model parallelism) impactan en latencia, memoria y portabilidad del modelo.
  3. Procedimental — Construir redes neuronales personalizadas con bloques reutilizables y flujos forward no lineales, e implementar pipelines de datos avanzados con augmentation, muestreo estratificado y prefetch en GPU.
  4. Procedimental — Aplicar mixed precision, gradient clipping y schedulers adaptativos en el ciclo de entrenamiento, e integrar un framework de búsqueda automática de hiperparámetros (p. ej. Optuna) de forma reproducible.
  5. Integrador — Diseñar un sistema end-to-end que combine arquitectura personalizada, pipeline de datos eficiente, entrenamiento optimizado, evaluación multimétrica, logging con TensorBoard o W&B y exportación del modelo, demostrando la capacidad de reproducir cualquier experimento desde un checkpoint.

Bloque 1 — Arquitecturas avanzadas con nn.Module Se estudia la subclasificación de nn.Module como mecanismo central para construir redes con bloques reutilizables y flujos forward no lineales. Se analiza cómo descomponer arquitecturas complejas en componentes independientes y testeables, y se exploran patrones de diseño habituales en modelos de producción.

Bloque 2 — Pipelines de datos de alto rendimiento Se abordan las clases Dataset y DataLoader personalizadas para escenarios con datos heterogéneos. Se implementan transformaciones de augmentation en GPU, estrategias de muestreo estratificado para conjuntos desbalanceados y configuración de prefetch para minimizar tiempos de espera entre batches.

Bloque 3 — Optimización del ciclo de entrenamiento Se profundiza en mixed precision con torch.amp, gradient clipping y schedulers adaptativos como herramientas para reducir tiempo de cómputo y consumo de memoria. Se diseñan funciones de pérdida personalizadas basadas en nn.Module para problemas desbalanceados o multi-objetivo, evaluando argumentadamente los trade-offs de cada alternativa.

Bloque 4 — Evaluación crítica y búsqueda de hiperparámetros Se trabaja la selección y combinación de métricas —F1, AUC-ROC, calibración, entre otras— justificando su pertinencia según la naturaleza del problema. Se integra Optuna u otro framework de HPO en el bucle de entrenamiento para automatizar la exploración de learning rate, arquitectura y regularización de manera sistemática.

Bloque 5 — Escalado, eficiencia en producción y reproducibilidad Se examinan los cuellos de botella de memoria y cómputo más habituales, y se aplican técnicas como gradient checkpointing y model parallelism para anticiparlos antes de escalar. Se exportan modelos con TorchScript y ONNX midiendo la reducción de latencia respecto al modelo base, y se cierra el bloque diseñando un sistema de logging y checkpointing integrado con TensorBoard o W&B que garantice la reproducibilidad completa de cualquier experimento.

  • Python 3.10 o superior con entorno virtual dedicado (conda o venv).
  • PyTorch ≥ 2.2 con soporte CUDA (se recomienda GPU con al menos 8 GB VRAM; se proporcionará entorno en la nube como alternativa).
  • Librerías: torchvision, torch.amp, onnx, onnxruntime, optuna, tensorboard y/o cuenta activa en Weights & Biases.
  • Jupyter Lab o VS Code con extensión Python e integración de notebooks.
  • Git para control de versiones de experimentos y checkpoints.
  • Manejo fluido de tensores, autograd y el ciclo de entrenamiento estándar en PyTorch (contenido de nivel Intermedio — PPT02).
  • Familiaridad con Python orientado a objetos: herencia, métodos especiales y uso de entornos virtuales.
  • Conocimientos de álgebra lineal y cálculo aplicados a redes neuronales (gradientes, regla de la cadena).
  • Experiencia previa entrenando al menos un modelo supervisado completo (clasificación o regresión) con PyTorch.

Deep Learning con PyTorch

Construir y entrenar modelos de deep learning con PyTorch

26h de clase en directo3 Cursos
    PyTorch