Modelltraining mit Lightning optimieren
Mit automatisierten Techniken wie ModelCheckpoint
und EarlyStopping
stellst du sicher, dass dein Modell die besten Parameter auswählt und unnötige Berechnungen vermeidet.
Der Datensatz, der Teil des Osmanya MNIST-Datensatzes ist, zeigt einen echten Anwendungsfall, wo skalierbare KI-Trainingstechniken die Effizienz und Genauigkeit echt verbessern können.
OsmanyaDataModule
und „ ImageClassifier
“ sind schon für dich vorbereitet.
Diese Übung ist Teil des Kurses
Skalierbare KI-Modelle mit PyTorch Lightning
Anleitung zur Übung
- Importiere Callbacks, die du für das Speichern von Modell-Checkpoints und das vorzeitige Beenden verwenden wirst.
- Trainiere das Modell mit den Callbacks „
ModelCheckpoint
“ und „EarlyStopping
“.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Import relevant checkpoints
from lightning.pytorch.callbacks import ____, ____
class EvaluatedImageClassifier(ImageClassifier):
def validation_step(self, batch, batch_idx):
x, y = batch
y_hat = self(x)
acc = (y_hat.argmax(dim=1) == y).float().mean()
self.log("val_acc", acc)
model = EvaluatedImageClassifier()
data_module = OsmanyaDataModule()
# Train the model with ModelCheckpoint and EarlyStopping checkpoints
trainer = Trainer(____=[____(monitor="val_acc", save_top_k=1), ____(monitor="val_acc", patience=3)])
trainer.fit(model, datamodule=data_module)