Integrar validación y pruebas

Modelos de IA escalables con PyTorch Lightning

Sergiy Tkachuk

Director, GenAI Productivity

¿Por qué incluir validación y pruebas?

  • Validación
    • Detecta fallos de rendimiento temprano
    • Evita sobreajuste y subajuste
  • Pruebas
    • Rendimiento en datos no vistos

Diagrama de validación y prueba

Modelos de IA escalables con PyTorch Lightning

Implementar validación

  • Evalúa el rendimiento en cada época
  • Agrega métricas para una vista más estable
def validation_step(self, batch, batch_idx):
  x, y = batch
  preds = self(x)
  loss = F.cross_entropy(preds, y)
  self.log('val_loss', loss)


def validation_epoch_end(self, outputs): avg_loss = torch.stack([x['loss'] for x in outputs]).mean() self.log('avg_val_loss', avg_loss)
Modelos de IA escalables con PyTorch Lightning

Implementar pruebas

  • Evalúa el rendimiento final en datos no vistos
  • Compara eficacia en el mundo real
  • Proporciona métricas para despliegue
def test_step(self, batch, batch_idx):
  x, y = batch
  y_hat = self(x)
  loss = F.cross_entropy(y_hat, y)
  self.log('test_loss', loss)


def test_epoch_end(self, outputs): avg_loss = torch.stack([x['loss'] for x in outputs]).mean() self.log('avg_test_loss', avg_loss)
Modelos de IA escalables con PyTorch Lightning

Evaluación con Torchmetrics

$$

  • Monitoriza métricas como accuracy
  • Integra fácilmente en el flujo de Lightning
  • Inicializa accuracy
  • Calcula accuracy en cada validación
from torchmetrics import Accuracy

class BaseModel(pl.LightningModule):
    def __init__(self):
        super().__init__()
        self.accuracy = Accuracy()

def validation_step(self, batch, batch_idx): x, y = batch preds = self(x) acc = self.accuracy(preds, y) self.log('val_acc', acc)
Modelos de IA escalables con PyTorch Lightning

Conectar DataModule, validación y pruebas

  • Lógica de datos centralizada en DataModule

  • Particiones train/val/test consistentes

  • Registro automático de métricas de validación

  • Flujo reproducible de preparación a informes

Diagrama de DataModule, validación y pruebas

Modelos de IA escalables con PyTorch Lightning

¡Vamos a practicar!

Modelos de IA escalables con PyTorch Lightning

Preparing Video For Download...