IniziaInizia gratis

Ottimizzare i modelli per la scalabilità

Distribuire i modelli di AI in modo efficiente è fondamentale nelle applicazioni reali, dove contano la velocità di inferenza, la dimensione del modello e l’efficienza computazionale. Ora metteremo alla prova la tua capacità di salvare e caricare modelli per la messa in produzione. Userai tecniche come l’esportazione con TorchScript per completare il workflow. Il dataset usato è una variante del dataset MNIST.

Completando questo esercizio, avrai preparato un modello ottimizzato per il deployment applicando le tecniche avanzate viste nella lezione.

I dataset X_test, y_test e il modulo torch.jit sono già stati precaricati per te.

Questo esercizio fa parte del corso

Modelli di AI scalabili con PyTorch Lightning

Visualizza il corso

Istruzioni dell'esercizio

  • Esporta il modello in TorchScript usando la funzione trace.
  • Salva il modello in TorchScript.
  • Carica il modello salvato.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Export model to TorchScript
scripted_model = torch.jit.____(model, torch.tensor(X_test[:1], dtype=torch.float32).unsqueeze(1))
# Save model to TorchScript
torch.jit.____(scripted_model, 'model.pt')

# Loaded saved model
loaded_model = torch.jit.____('____.pt')
# Validate inference on test dataset
test_loader = DataLoader(TensorDataset(torch.tensor(X_test, dtype=torch.float32).unsqueeze(1), ____), batch_size=64)

accuracy = evaluate_model(loaded_model, test_loader)

print(f"Optimized model accuracy: {accuracy:.2%}")
Modifica ed esegui il codice