Christine Amuzie, Course Instructor
Dive into the world of scalable AI systems with this course crafted to equip AI practitioners with the knowledge and tools for architecting and deploying AI solutions efficiently. This course focuses on establishing a strong foundation in scalable AI development and deployment with an emphasis on PyTorch and PyTorch Lightning. Learners will gain the expertise to enhance AI system performance and ensure fast deployment across diverse environments. This course is tailored for professionals looking to scale AI projects.
- Intermediate knowledge of AI and machine learning.
- Proficiency in Python programming.
- Basic understanding of cloud services.
-
Lesson 1.1: Overview of Scalability in AI Systems
- Learning Objective: Understand the concept of scalability and its importance in AI systems.
- Functions: element-wise mathematical
tensoroperations (.add,.sub,.mul,.div,.pow,.dot)
-
Lesson 1.2: Introduction to PyTorch
- Learning Objective: Understand the basics of PyTorch and its role in scalable AI.
- Functions:
torch.tensor, basic tensor operations
-
Lesson 1.3: Coding with and Without PyTorch
- Learning Objective: Compare and contrast traditional Python code with PyTorch code, implementing similar operations using PyTorch for efficiency and scalability.
- Functions:
torchoperations, matrix multiplications, and element-wise operations
-
Lesson 2.1: Introduction to PyTorch Lightning
- Learning Objective: Understand the benefits and basic usage of PyTorch Lightning
- Functions:
pytorch_lightning.LightningModule,pytorch_lightning.Trainer - Video
- Exercise 1
- Exercise 2
- Exercise 3
-
Lesson 2.2: Building Models with PyTorch Lightning
- Learning Objective: Reconstruct a PyTorch model using PyTorch Lightning for better scalability and readability
- Functions:
pytorch_lightning.LightningModulemethods
-
Lesson 2.3: Training with PyTorch Lightning
- Learning Objective: Train models more efficiently using PyTorch Lightning
- Functions:
pytorch_lightning.Trainer.fit, checkpointing, logging
-
Lesson 2.4: Advanced Model Architectures
- Learning Objective: Explore and implement advanced model architectures such as CNNs and RNNs.
- Functions:
torch.nn.Conv2d,torch.nn.LSTM, custom model layers
-
Lesson 2.5: Experiment Management with PyTorch Lightning
- Learning Objective: Manage and track experiments using built-in features of PyTorch Lightning.
- Functions:
pytorch_lightning.loggers, experiment tracking tools
-
Lesson 3.1: Model Evaluation and Testing
- Learning Objective: Evaluate and test your model to ensure it meets production standards
- Functions:
torchmetrics, validation steps, testing datasets
-
Lesson 3.2: Saving and Loading Models
- Learning Objective: Save trained models and load them for inference.
- Functions:
torch.save,torch.load,model.eval
-
Lesson 3.3: Deployment Options
- Learning Objective: Explore different deployment options for PyTorch models
- Functions:
torch.jit,onnx, brief mention of cloud deployment options
-
Lesson 3.4: Introduction to Other Libraries
- Learning Objective: Get an overview of other useful libraries for productionizing AI models
- Functions: brief introduction to TensorFlow Serving, MLflow, FastAPI for serving models