확장성을 위한 모델 최적화
실제 환경에서는 추론 속도, 모델 크기, 계산 효율이 중요하기 때문에 AI 모델을 효율적으로 배포하는 것이 매우 중요합니다. 이제 배포를 위해 모델을 저장하고 불러오는 능력을 테스트해 보겠습니다. 이 워크플로를 완성하기 위해 TorchScript 내보내기 같은 기법을 사용하게 됩니다. 사용되는 데이터셋은 MNIST 데이터셋의 변형입니다.
이 연습을 마치면, 이번 레슨에서 배운 고급 기법을 적용해 배포에 최적화된 모델을 준비하게 됩니다.
X_test, y_test 데이터셋과 torch.jit는 미리 로드되어 있습니다.
이 연습은 강의의 일부입니다
PyTorch Lightning으로 만드는 확장 가능한 AI 모델
연습 안내
trace함수를 사용해 모델을 TorchScript로 내보내세요.- 모델을 TorchScript로 저장하세요.
- 저장한 모델을 불러오세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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%}")