Présentation du LightningModule
Préparez-vous à créer votre premier LightningModule
! Dans cet exercice pratique, vous allez configurer la structure principale d'un workflow de classification. Vous allez définir une couche linéaire, y faire passer les données selon la méthode directe, puis calculer la perte lors de l'étape d'apprentissage. Cette structure claire vous offre une base solide pour commencer à expérimenter avec vos modèles.
Les fichiers torch
et lightning.pytorch
, importés sous le nom pl
, ont été préchargés pour vous.
Cet exercice fait partie du cours
Modèles d'IA évolutifs avec PyTorch Lightning
Instructions
- Définissez une classe
LightModel
qui hérite depl.LightningModule
. - Définissez une couche linéaire pour transformer votre entrée, en supposant que les caractéristiques d'entrée sont au nombre de 16 et qu'il existe 10 classes de sortie.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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