Boost Academy
FormaciónEvaluacionesPerfil
Volver
  • En directo

PyTorch — Iniciación

8h 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

Detalles de la convocatoria

Recursos

No hay recursos disponibles todavía para esta convocatoria

Este curso está dirigido a profesionales y estudiantes con conocimientos básicos de Python y álgebra lineal que se aproximan por primera vez al ecosistema PyTorch. A lo largo de las ocho horas de formación, el participante recorrerá los fundamentos de la biblioteca: desde la estructura y manipulación de tensores hasta la construcción de redes neuronales multicapa, pasando por el mecanismo de diferenciación automática y la canalización de datos con DataLoader. Al finalizar, la persona será capaz de implementar y ejecutar de forma autónoma un ciclo de entrenamiento completo sobre un conjunto de datos tabular, interpretando los resultados y resolviendo los errores más habituales que surgen en proyectos reales de aprendizaje profundo.

  1. Describir qué es un tensor y reconocer sus atributos esenciales —tipo de dato, forma y dispositivo— como base conceptual del framework.
  2. Crear y manipular tensores de distintos tipos y dimensiones utilizando las funciones de inicialización de PyTorch, y ejecutar sobre ellos operaciones matemáticas e indexado comparando su comportamiento con NumPy.
  3. Identificar los componentes del grafo de cómputo de autograd —tensores hoja, activación del gradiente y acumulación— para comprender cómo PyTorch calcula derivadas de forma automática.
  4. Aplicar capas predefinidas de torch.nn para construir una red neuronal multicapa y emplear DataLoader junto con TensorDataset para gestionar la carga y el batching de datos.
  5. Ejecutar un ciclo de entrenamiento completo —pase hacia adelante, cálculo de pérdida, retropropagación y actualización de parámetros— integrando todos los componentes anteriores sobre un problema real.
  6. Identificar y diagnosticar los mensajes de error más frecuentes de PyTorch relacionados con incompatibilidad de dispositivo, desajuste de dimensiones y gradientes nulos, anticipando problemas habituales en el desarrollo de modelos.

Bloque 1 — El tensor como estructura fundamental. Se introduce el concepto de tensor como objeto central de PyTorch, analizando sus atributos principales: tipo de dato (dtype), forma (shape) y dispositivo (device). A continuación se exploran las funciones de inicialización (zeros, ones, rand, tensor) para crear tensores de distintos tipos y dimensiones, y se practican operaciones matemáticas e indexado, destacando las diferencias de comportamiento respecto a NumPy.

Bloque 2 — Diferenciación automática con autograd. Se estudia el grafo de cómputo dinámico que construye PyTorch durante la ejecución, identificando el papel de los tensores hoja, el atributo requires_grad y el almacenamiento de gradientes en .grad. A través de ejemplos de entrenamiento comentados, se visualiza cómo fluye el gradiente y qué condiciones pueden provocar que este sea nulo o incorrecto.

Bloque 3 — Construcción de redes neuronales y pipeline de datos. Se presentan las capas predefinidas de torch.nn —Linear, ReLU y Sequential— para ensamblar arquitecturas multicapa a partir de un esquema proporcionado. En paralelo se aborda la gestión de datos: uso de TensorDataset para encapsular características y etiquetas, configuración de DataLoader para iterar en lotes y verificación de dimensiones de batch en cada paso.

Bloque 4 — Ciclo de entrenamiento e interpretación de errores. Se integran todos los componentes anteriores en un ciclo de entrenamiento completo —forward pass, cálculo de pérdida, llamada a .backward() y actualización mediante optimizer.step()— aplicado a un dataset tabular simple. El bloque concluye con el análisis de trazas de error reales: incompatibilidad de device, errores de dimensión y situaciones de gradiente nulo, dotando al participante de criterios para depurar sus propios modelos.

  • Python 3.9 o superior instalado en el entorno local o acceso a un entorno en la nube (Google Colab, Kaggle Notebooks o equivalente).
  • PyTorch 2.x instalado (pip install torch o mediante la guía oficial en pytorch.org).
  • Jupyter Notebook o JupyterLab para ejecutar los ejercicios prácticos.
  • Conexión a internet para descargar paquetes y acceder a los materiales del curso.
  • Se recomienda, aunque no es obligatoria, una GPU compatible con CUDA para los ejercicios opcionales de transferencia de tensores entre dispositivos.
  • Programación en Python a nivel básico-intermedio: funciones, clases, listas y comprensión de listas.
  • Manejo elemental de NumPy: creación de arrays, operaciones vectorizadas e indexado.
  • Conceptos básicos de álgebra lineal: vectores, matrices y producto matricial.
  • Noción introductoria de derivadas y regla de la cadena (nivel bachillerato o equivalente).