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
<Kurs>Skalierbare KI-Modelle mit PyTorch Lightning</Kurs>Übungsanweisungen
- 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 praktische Ü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)