Validatie en testen opnemen

Schaalbare AI-modellen met PyTorch Lightning

Sergiy Tkachuk

Director, GenAI Productivity

Waarom validatie en testen opnemen?

  • Validatie
    • Signaleer prestatiefouten vroeg
    • Voorkom overfitting en underfitting
  • Testen
    • Prestatie op onzichtbare data

Diagram van validatie en test

Schaalbare AI-modellen met PyTorch Lightning

Validatie implementeren

  • Evalueer modelprestatie per epoch
  • Aggregeer metrics voor stabieler beeld
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)
Schaalbare AI-modellen met PyTorch Lightning

Testen implementeren

  • Beoordeel eindprestatie op onzichtbare data
  • Benchmark effectiviteit in de praktijk
  • Lever metrics voor deployment
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)
Schaalbare AI-modellen met PyTorch Lightning

Evalueren met Torchmetrics

$$

  • Monitor metrics zoals accuracy
  • Eenvoudig te integreren in Lightning-workflow
  • Initialiseer accuracy
  • Bereken accuracy bij elke validatiestap
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)
Schaalbare AI-modellen met PyTorch Lightning

DataModule koppelen aan validatie en testen

  • Datalogica gecentraliseerd in DataModule

  • Consistente train/val/test-splits

  • Automatisch loggen van validatiemetrics

  • Reproduceerbare pipeline van prep tot rapportage

Diagram van DataModule, validatie en testen

Schaalbare AI-modellen met PyTorch Lightning

Laten we oefenen!

Schaalbare AI-modellen met PyTorch Lightning

Preparing Video For Download...