Kennismaken met de LightningModule
Ga aan de slag met je eerste LightningModule! In deze praktijkoefening zet je de kernstructuur op van een classificatieworkflow. Je definieert een lineaire laag, stuurt data erdoor in de forward-methode en berekent de loss in de training step. Met deze heldere structuur heb je een stevige basis om met je modellen te gaan experimenteren.
De modules torch en lightning.pytorch, geïmporteerd als pl, zijn alvast voor je geladen.
Deze oefening maakt deel uit van de cursus
Schaalbare AI-modellen met PyTorch Lightning
Oefeninstructies
- Definieer een klasse
LightModeldie erft vanpl.LightningModule. - Definieer een lineaire laag om je input te transformeren, uitgaand van 16 inputfeatures en 10 outputklassen.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Define the model class
class LightModel(____):
# Define a linear layer to transform your input
def __init__(self):
super().__init__()
self.layer = ____
def forward(self, x):
return self.layer(x)
def training_step(self, batch, batch_idx):
x, y = batch
logits = self(x)
loss = torch.nn.functional.cross_entropy(logits, y)
return loss