Skip to content

Latest commit

 

History

History

edX

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

HarvardX Profession Certificate in Tiny Machine Learning (TinyML)

In this exciting Professional Certificate program offered by Harvard University and Google TensorFlow, you will learn about the emerging field of Tiny Machine Learning (TinyML), its real-world applications, and the future possibilities of this transformative technology.

TinyML is a cutting-edge field that brings the transformative power of machine learning (ML) to the performance-constrained and power-constrained domain of embedded systems. Successful deployment in this field requires intimate knowledge of applications, algorithms, hardware, and software.

The program will emphasize hands-on experience with training and deploying machine learning onto tiny embedded devices. This series of courses features projects based on a TinyML Program Kit that includes an Arduino board with onboard sensors and an ARM Cortex-M4 microcontroller. To ensure you hit the road running, the kit also comes equipped with a camera. The TinyML Program Kit has everything you need to unlock your imagination and build applications around image recognition, audio processing, and gesture detection. Before you know it, you’ll be implementing an entire tiny machine learning application.

This first-of-its-kind program combines computer science with engineering to feature real-world application case studies that examine the challenges facing TinyML deployments.

This program is a collaboration between expert faculty at Harvard’s John A. Paulson School of Engineering and Applied Sciences (SEAS) and innovative members of Google’s TensorFlow team.

TinyML on edX is designed in four chapters across 3 courses as described below. [Specialization Link]

  • Course 1: Fundamentals of TinyML (Chapter 1 & Chapter 2): Focusing on the basics of machine learning and embedded systems, such as smartphones, this course will introduce you to the “language” of TinyML.
  • Course 2: Applications of TinyML (Chapter 3): Get the opportunity to see TinyML in practice. You will see examples of TinyML applications, and learn first-hand how to train these models for tiny applications such as keyword spotting, visual wake words, and gesture recognition.
  • Course 3: Deploying TinyML (Chapter 4): Learn to program in TensorFlow Lite for microcontrollers so that you can write the code, and deploy your model to your very own tiny microcontroller. Before you know it, you’ll be implementing an entire TinyML application.

The TinyMLx Team:

Course Instructors

Guest Instructor

Staff Lead

Staff

Contributors

Chapter 1: Welcome to TinyML

The goal of this chapter is to introduce the students to the core concepts, challenges, and opportunites of TinyML. It will also give an overview of the entire specialization; how the courses are structured and what to expect as a student steping through the curriculum.

Chapter 1.1: Course Overview

  1. What is this specialization all about? [Slides]
  2. Who is this course aimed at (everyone)? [Slides]
  3. Forum: Introduce yourself to the class
  4. What will you learn? [Slides]
  5. How is the course structured? [Slides]
  6. Student background quiz

Chapter 1.2: The Future of ML is Tiny and Bright

  1. What is (tiny) Machine Learning? [Slides]
  2. TinyML application case studies. [Doc]
  3. Forum: What TinyML applications are you excited about?
  4. How do we enable TinyML? [Slides]
  5. Formative quiz.

Chapter 1.3: TinyML Challenges

  1. What are the Challenges for TinyML (Part A)? [Slides]
  2. What are the Challenges for TinyML (Part B)? [Slides]
  3. Formative quiz.
  4. What are the Challenges for TinyML (Part C)? [Slides]
  5. What are the challenges for TinyML (Part D)? [Slides]
  6. Why the Future of ML is Tiny. [Doc]
  7. Introduction to Responsible AI/ML. [Slides]
  8. Forum: Case Studies of Responsible AI/ML Failures. [Doc]
  9. Formative Quiz
  10. Summative Test

Chapter 1.4: Getting Started

  1. What resources are needed for this courese? [Slides]
  2. Introduction to Google Colab [Video Link
  3. Colab in this Course [Slides]
  4. Learning Colab [Colab link]
  5. Tips for using Colab [Doc]
  6. Introduction to TensorFlow [Video Link]
  7. TensorFlow in this course
  8. Sample TensorFlow code. [Doc]
  9. Summative Test

Chapter 2: Introduction to (Tiny) ML

The goal of this section of the course is to introduce students to “ML language” that we will be using throughout the TinyML course. More specifically, this course focuses on the basics of machine learning and embedded systems. Some of you might have a deep machine learning background. In this case, parts of this section will be more of a review for you. We encourage you to still go through things, take the tests, and get excited for the next course which will dive deeper into TinyML, covering frameworks and applications that you may be less familiar with.

Chapter 2.1: The Machine Learning Paradigm

  1. The machine learning paradigm [Slides]
  2. Finding Patterns
  3. Thinking about Loss [Slides]
  4. Exploring Loss [Colab Link]
  5. Minimizing Loss [Slides]
  6. Exploring Gradient Descent [Colab Link]
  7. Formative Quiz
  8. First Neural Network [Slides]
  9. First Neural Network in Colab [Colab Link]
  10. More on Neural Networks [Doc]
  11. Machine Learning Case Studies [Doc]
  12. Formative Quiz
  13. Neural Network Coding Assignment [Colab Link]
  14. Assignment Solution [Doc]
  15. Summative Test

Chapter 2.2: The Building Blocks of Deep Learning

  1. Initialization in Machine Learning [Doc]
  2. Understanding Neurons [Slides]
  3. Coding ExerciseL Neurons in Action [Colab Link]
  4. Coding Stepback [Doc]
  5. Coding Exercise: Multi-Layer Neural Network [Colab Link]
  6. Introduction to Classification [Slides]
  7. Coding Exercise: DNN [Colab Link]
  8. Formative Quiz
  9. Training, Validation, and Test Data [Slides]
  10. Formative Quiz
  11. Realities of Coding Neural Networks [Doc]
  12. Coding Assignment: DNNs [Colab Link]](https://colab.research.google.com/github/tinyMLx/colabs/blob/master/2-2-12-AssignmentQuestion.ipynb)
  13. Assignment Solution [Doc]
  14. Summative Test

Chapter 2.3: Exploring Machine Learning Scenarios

  1. Quick Recap [Doc]
  2. Introducing Convolutions [Slides]
  3. Coding Exercise: Filters [Colab Link]
  4. From DNN to CNN [Slides]
  5. Coding exercise: CNN [Colab Link]
  6. Mapping Features to Labels [Doc]
  7. Coding Exercise: Computer Vision [Colab Link]
  8. Formative Quiz
  9. Coding Assignment: CNNs [Colab Link]
  10. Assignment Solution [Doc]
  11. Summative Test

Chapter 2.4: Building a Computer Vision Model

  1. Quick Recap [Doc]
  2. Preparing Image Data [Slides]
  3. Coding Exercise: Complex Images [Colab Link]
  4. TFDS for Image Data [Doc]
  5. Overfitting [Slides]
  6. Coding exercise: Image Augmentation [Colab Link]
  7. Formative Quiz
  8. Dropout Regularization [Doc]
  9. Exploring Loss Functions and Optimizers [Doc]
  10. Formative Quiz
  11. Coding Assignment: Enhancing a CNN [Colab Link]
  12. Assignment Solution [Doc]
  13. Summative Test

Chapter 2.5: Responsible AI Design

  1. What Am I Building? What’s the Goal? [Slides]
  2. Forum: Development and TinyML [Doc]
  3. Who Am I Building This For? [Slides]
  4. What Are the Consequences for the User When It Fails? [Slides]
  5. Formative Quiz
  6. Forum: Error Types and Ethics [Doc]
  7. Summative Test

Chapter 2.6: Course 1 Summary

  1. Recapping (Tiny) ML and its Data-Centric Role [Doc]
  2. Why We Are Excited About TinyML [Slides]
  3. What We Have Learned Thus Far [Slides]
  4. Formative Summary Quiz
  5. What's Coming Next [Slides]
  6. Give us Feedback!

Chapter 3: Applications of TinyML

The goal of this chapter is to focus on applications, data and neural networks on tiny or deeply embedded devices. We will expose the students to embedded devices and different real-world application scenarios of TinyML. We do this by covering the most widely used applications for TinyML, coupled with some hands-on Colab development.

Chapter 3.1: Welcome to Applications of TinyML

  1. Who's Who in TinyML2?! [Doc]
  2. Forum: Welcome New Students
  3. Welcome to TinyML Applications [Slides]
  4. Building Blocks (from Course 1) [Slides]
  5. Formative Quiz
  6. What You’ll Learn in This Course [Slides]
  7. What Resources are Needed for this Course [Doc]
  8. Preview of TinyML Applications [Slides]
  9. The Role of Sensors in TinyML Applications [Doc]
  10. Student Background Quiz
  11. Forum: What Applications Excite You?
  12. The Kit for Course 3 [Doc]

Chapter 3.2: AI Lifecycle and ML Workflow

  1. ML Lifecycle Part 1 [Slides]
  2. Forum: The Future of TinyML
  3. ML Lifecycle Part 2 [Doc]
  4. ML Workflow Part 1 [Slides]
  5. ML Workflow Part 2 [Doc]
  6. Formative Quiz
  7. Summative Test

Chapter 3.3: Machine Learning on Mobile and Edge IoT Devices (Part 1)

  1. TensorFlow: Where We Left Off [Doc]
  2. Introduction to TensorFlow Lite [Slides]
  3. Using the TFLite Converter Screencast
  4. Using the TFLite Converter in Colab [Colab Link]
  5. How to use TFLite Models [Doc]
  6. How to use TFLite Models Screencast
  7. Running Models with TFLite in Colab [Colab Link]
  8. Formative Quiz
  9. TFLite Optimizations and Quantization [Slides]
  10. TFLite Optimizations and Quantization in Colab [Colab Link]
  11. Quantization Aware Training [Slides]
  12. Quantization Aware Training Colab [Colab Link]
  13. Formative Quiz
  14. Assignment: Quantization in TFLite [Colab Link]
  15. Assignment Solution [Doc]
  16. Summative Test

Chapter 3.4: Machine Learning on Mobile and Edge IoT Devices (Part 2)

  1. Why are 8-Bits Enough for ML? [Doc]
  2. Post Training Quantization (PTQ) [Slides]
  3. PTQ Weight Distribution Colab [Colab Link]
  4. Quantization Aware Training (QAT) [Slides]
  5. Formative Quiz
  6. Inference Engine: TF vs. TFLite [Slides]
  7. Conversion and Deployment [Doc]
  8. Formative Quiz
  9. Summative Test

Chapter 3.5: Keyword Spotting

  1. Introduction to Keyword Spotting (KWS) [Slides]
  2. Forum: How (else) would you use KWS?
  3. Keyword Spotting Challenges/Constraints [Slides]
  4. Formative Quiz
  5. Keyword Spotting Application Architecture Overview [Doc]
  6. Keyword Spotting Datasets [Slides]
  7. Keyword Spotting Dataset Creation [Doc]
  8. Keyword Spotting Data Collection / Pre-Processing [Slides]
  9. Spectrograms and MFCCs [Doc]
  10. Spectrograms and MFCCs in Colab [Colab Link]
  11. A Keyword Spotting Model [Slides]
  12. Formative Quiz
  13. Keyword Spotting in Colab [Colab Link]
  14. Forum: Pretrained Model Experience
  15. Intro to Training in Colab [Slides]
  16. Training in Colab [Doc]
  17. Monitoring Training in Colab [Doc]
  18. Assignment: Training your own Keyword Spotting Model [Colab Link]
  19. Assignment Solution [Doc]
  20. KWS Metrics [Slides]
  21. Formative Quiz
  22. Streaming Audio [Slides]
  23. Cascade Architectures [Slides]
  24. Keyword Spotting in the Big Picture [Doc]
  25. Formative Quiz
  26. Summative Test

Chapter 3.6: Data Engineering for TinyML Applications

  1. Introduction to Data Engineering [Doc]
  2. What’s Data Engineering and Why It’s Important [Slides]
  3. Forum: What Dataset might you want to collect?
  4. Dataset Standards: Speech Commands [Slides]
  5. Speech Commands Paper [Doc]
  6. Formative Quiz
  7. Crowdsourcing Data for the Long Tail [Slides]
  8. Giving back to the Open Source Community [Doc]
  9. Reusing and Adapting Existing Datasets [Slides]
  10. Formative Quiz
  11. Responsible Data Collection [Slides]
  12. Forum: What do you think about open source data collection?
  13. Section Summary [Doc]
  14. Summative Test

Chapter 3.7: Visual Wake Words

  1. Introduction to Visual Wake Words (VWW) Application [Doc]
  2. What are Visual Wake Words (VWW)? [Slides]
  3. Forum: What do you think might be the challenges for Visual Wake Words?
  4. Visual Wake Words Challenges [Slides]
  5. Visual Wake Words Dataset [Slides]
  6. Data Privacy with Images [Doc]
  7. Formative Quiz
  8. Neural Network Architectures for VWW [Slides]
  9. The Math Behind MobileNets Efficient Computation [Doc]
  10. Transfer Learning for VWW [Slides]
  11. Assignment: Transfer Learning in Colab [Colab Link]
  12. Assignment Solution [Doc]
  13. Common Myths and Pitfalls about Transfer Learning [Doc]
  14. Formative Quiz
  15. Metrics for VWW [Slides]
  16. Section Summary [Doc]
  17. Summative Test

Chapter 3.8: Anomaly Detection

  1. Introduction to Anomaly Detection [Doc]
  2. What Is Anomaly Detection [Slides]
  3. Forum: Interesting applications of anomaly detection
  4. Anomaly Detection in Industry [Slides]
  5. Industry 4.0 and TinyML [Doc]
  6. Anomaly Detection Datasets [Slides]
  7. MIMII Dataset [Doc]
  8. Real vs. Synthetic Data [Doc]
  9. Unsupervised Learning for Anomaly Detection (with K-Means in Colab) [Colab Link]
  10. Formative Quiz
  11. Unsupervised Learning for Anomaly Detection with Autoencoders [Slides]
  12. Autoencoder Model Architecture [Doc]
  13. Training and Metrics for Autoencoders in Colab [Colab Link]
  14. Forum: Picking a Threshold
  15. Formative Quiz
  16. Assignment: Training an Anomaly Detection Model [Colab Link]
  17. Assignment Solution [Doc]
  18. Section Summary [Doc]
  19. Summative Test

Chapter 3.9: Responsible AI Development

  1. Data Collection [Slides]
  2. The Many Faces of Bias in ML [Doc]
  3. Biased Datasets [Slides]
  4. Formative Quiz
  5. Forum: Bias [Doc]
  6. Fairness [Slides]
  7. Google's What-If Tool in Colab [Colab Link]
  8. Forum: Fairness [Doc]
  9. Summative Test

Chapter 3.10: Chapter Summary

  1. Chapter Summary [Slides]
  2. Formative Quiz
  3. Kit for Course 3 [Doc]
  4. Give us feedback!

Chapter 4: Deploying TinyML

The goal of this chapter is to teach learners how to engineer end-to-end tinyML applications using TensorFlow Micro. We teach learners how to program in TF Micro, and use it to deploy real-world applications.

Chapter 4.1: Welcome to Deploying TinyML

  1. Welcome to TinyML3 [Doc]
  2. Welcome Message from VJ [Slides]
  3. Course 1 and 2 Recap [Doc]
  4. Quiz: Embedded Systems & ML Background
  5. Quiz Feedback
  6. TinyML Application Deployment Preview [Slides]
  7. The TinyML Kit [Doc]
  8. TinyML Course Kit Overview [Slides]
  9. Forum: Welcome (Back) Students
  10. Student Background Quiz
  11. How the Course is Structured [Slides]

Chapter 4.2: Getting Started

  1. Intro to the Lab Sections Screencast
  2. C++ for Python Users [Doc]
  3. Setting up your Hardware [Doc]
  4. Forum: Hardware Setup Questions
  5. Setting up your Software [Doc]
  6. Forum: Software Setup Questions
  7. Formative Quiz
  8. The Arduino Blink Example [Doc]
  9. Forum: Arduino Blink Questions
  10. Testing the TensorFlow Install [Doc]
  11. Forum: TensorFlow Install Questions
  12. Formative Quiz
  13. Testing the Sensors [Doc]
  14. Forum: Sensor Tests Questions
  15. Formative Quiz
  16. Summative Test

Chapter 4.3: Embedded Hardware and Software

  1. Embedded System [Slides]
  2. Diversity of Embedded Systems [Doc]
  3. Embedded Computing Hardware [Slides]
  4. Diversity of Embedded Microcontrollers [Doc]
  5. Embedded I/O [Slides]
  6. Transducer Modules and Wireless Communication [Doc]
  7. Formative Quiz
  8. Embedded System Software [Slides]
  9. Arduino cores, frameworks, mbedOS, and ‘bare metal’ [Doc]
  10. Embedded ML Software [Slides]
  11. Formative Quiz
  12. Summative Test

Chapter 4.4: TensorFlow Lite Micro

  1. What is TensorFlow Lite for Microcontrollers? [Doc]
  2. TFMicro: The Big Picture [Slides]
  3. Formative Quiz
  4. How to Use TFMicro: HelloWorld Screencast
  5. TFLite Micro: Interpreter [Slides]
  6. MCU Memory Hierarchy [Doc]
  7. TFLite Micro: Model Format / FlatBuffer [Slides]
  8. TensorFlow Lite Flatbuffer Manipulation Colab [Colab Link]
  9. Formative Quiz
  10. TFLite Micro: Memory Allocation (a.k.a Tensor Arena) [Slides]
  11. TFLite Micro: NN Operator Support (OpsResolver) [Slides]
  12. TFLite Micro Developer Design Principles [Doc]
  13. Formative Quiz
  14. Summative Test

Chapter 4.5: Keyword Spotting

Part I: Introducing KWS

  1. TinyML “Keyword Spotting” Workflow [Doc]
  2. KWS Application Architecture [Slides]
  3. KWS Initialization [Slides]
  4. KWS Initialization Screencast
  5. Formative Quiz
  6. KWS Pre-processing [Slides]
  7. KWS Pre-processing Screencast
  8. Formative Quiz
  9. KWS Inference [Slides]
  10. KWS Inference Screencast
  11. Formative Quiz
  12. KWS Post-processing [Slides]
  13. KWS Post-processing Screencast
  14. KWS Summary [Slides]
  15. Formative Quiz

Part II: KWS Lab

  1. Deploying the Pretrained KWS Model
  2. Forum: Deploying the Pretrained KWS Model Questions
  3. Deploying a KWS Model with Your Favorite Keyword(s)
  4. Forum: Deploying a KWS Model with Your Favorite Keyword(s) Questions
  5. Formative Quiz
  6. Summative Test

Chapter 4.6: Custom Dataset Engineering for Keyword Spotting

Part I: Custom Datasets Principles

  1. Recap Dataset Engineering [Doc]
  2. Introducing Custom Dataset for KWS [Slides]
  3. Things to Consider for Your Data Collection Plan [Doc]
  4. Formative Quiz
  5. Forum Your Data Collection Plan

Part II: Custom Dataset Lab

  1. Building a Custom Dataset [Doc]
  2. Forum: Building a Custom Dataset Questions
  3. Train and Deploy Your Custom Dataset KWS Model [Doc]
  4. Forum: Train and Deploy Your Custom Dataset KWS Model Questions
  5. Forum: How Well Does Your Custom Dataset Model Work?
  6. Summative Test

Chapter 4.7: Visual Wake Words

Part I: Person Detection and MultiTenancy Background

  1. Recap: What are Visual Wake Words? [Doc]
  2. Person Detection Application Architecture [Slides]
  3. Person Detection Screencast
  4. Formative Quiz
  5. Person Detection with Keyword Spotting: MultiModal [Slides]
  6. Person Detection with Keyword Spotting: MultiTenancy [Slides]
  7. Formative Quiz
  8. MultiTenancy in TensorFlow Lite Micro [Slides]

Part II: Person Detection and MultiTenancy Lab

  1. Deploying the Pretrained Person Detection Model [Doc]
  2. Forum: Deploying the Pretrained Person Detection Model Questions
  3. Deploying a Multi-Tenant Application [Doc]
  4. Forum: Deploying a Multi-Tenant Application
  5. Formative Quiz
  6. Summative Test

Chapter 4.8: Gesturing Magic Wand

Part I: Gesture Recognition

  1. Recap: Time Series for Anomaly Detection [Doc]
  2. TinyML Sensor Ecosystem [Slides]
  3. Anatomy of an IMU [Doc]
  4. Magic Wand Application [Slides]
  5. Magic Wand Application Architecture [Slides]
  6. Understanding the Magic Wand Application [Doc]
  7. Formative Quiz

Part II: Magic Wand Lab

  1. Deploying the Magic Wand [Doc]
  2. Forum: Deploying the Magic Wand Questions
  3. Collecting Data for Your Custom Magic Wand Project [Doc]
  4. Forum: Collecting Data for Your Custom Magic Wand Project Questions
  5. Training and Deploying Your Custom Magic Wand Project [Doc]
  6. Forum: Training and Deploying Your Custom Magic Wand Project Questions
  7. Forum: How well does your Custom Magic Wand Model Work?
  8. Summative Quiz
  9. Formative Test

Chapter 4.9: Responsible AI Deployment

  1. Privacy [Slides]
  2. Formative Quiz
  3. Forum: Privacy [Doc]
  4. Security [Slides]
  5. Formative Quiz
  6. Attacking a KWS Model in Colab [Colab Link]
  7. Forum: Attacking a KWS Model in Colab Questions
  8. Why do ML Models Fail after Deployment? [Doc]
  9. Monitoring after Deployment [Slides]
  10. Summative Test

Chapter 4.10: Summary

  1. Congratulations! You Made it to the Finish Line! [Slides]
  2. What Comes Next: Advanced Topics in TinyML [Doc]
  3. What Do I Do Now? [Slides]
  4. TinyMLx Project Extension (Optional) [Doc]
  5. Outgoing Survey of the Course and Topics

Chapter 4.11: Appendix

  1. Appendix Link

Chapter 5: MLOps for Scaling TinyML

This course introduces learners to Machine Learning Operations (MLOps) through the lens of TinyML (Tiny Machine Learning). Learners explore best practices to deploy, monitor, and maintain (tiny) Machine Learning models in production at scale.

Chapter 5.1: Welcome to MLOps for Scaling TinyML

  1. What to Expect in This Course [Doc]
  2. Welcome Message [Slides]
  3. Who Should Take This Course? [Doc]
  4. The Past, Present and Future of ML [Slides]
  5. Why the Future of ML is Tiny and Bright [Doc]
  6. Machine Learning Lifecycle [Slides]
  7. Review of Course 1, 2 & 3 [Doc]
  8. Formative Quiz
  9. Scaling TinyML [Slides]
  10. Introduction to MLOps [Slides]
  11. Overview of MLOps [Doc]
  12. Course Structure [Slides]
  13. Course Activities [Doc]
  14. Your Mindset: T-Shaped Skills Needed for ML Engineers [Slides]
  15. Summary of What You’ll Learn [Doc]
  16. Formative Quiz
  17. Forum: Introduce Yourself
  18. Student background quiz
  19. Who’s Who in MLOps for TinyML? [Doc]

Chapter 5.2: MLOps: The Big Picture

  1. Overview of MLOps Objectives [Doc]
  2. What is MLOps, DevOps, and AI Ops [Slides]
  3. Formative Quiz
  4. MLOps: A Use Case Overview [Slides]
  5. MLOps Persona [Doc]
  6. MLOps: Key activities and Lifecycle [Slides]
  7. Forum: How can you apply MLOps thinking to your future projects?
  8. Formative Quiz
  9. Summative Test

Chapter 5.3: ML Development

  1. Overview of ML Development [Doc]
  2. ML Development [Slides]
  3. Problem Definition [Slides]
  4. Forum: How Might You Define KWS [Doc]
  5. Data Selection for KWS [Slides]
  6. Why Real Data Matters [Doc]
  7. Data Exploration [Slides]
  8. Data Visualization Tools [Doc]
  9. Formative Quiz
  10. Feature Engineering [Slides]
  11. Feature Engineering for KWS: A Case Study [Doc]
  12. Model Prototyping [Slides]
  13. Model Prototyping: Research vs. Production [Doc]
  14. Formative Quiz
  15. Model Validation [Slides]
  16. Model Evaluation [Slides]
  17. Formative Quiz
  18. Data Engineering [Slides]
  19. ML Development Impact on MLOps [Slides]
  20. Summative Test

Chapter 5.4: Training Operationalization

  1. Overview of Training Operationalization [Doc]
  2. Training Operationalization [Slides]
  3. CI/CD Triggers [Slides]
  4. Formative Quiz
  5. Forum: Software Artifacts [Doc]
  6. Continuous Integration [Slides]
  7. CI Tools [Doc]
  8. Continuous Delivery [Slides]
  9. Formative Quiz
  10. Production Deployment [Slides]
  11. Online Experimentation [Slides]
  12. Production Deployment in ML Deployment [Doc]
  13. Forum: Case Study Discussion [Doc]
  14. Training Operationalization Impact on MLOps [Slides]
  15. Formative Quiz
  16. Summative Test

Chapter 5.5: Continuous Training

  1. Overview of Continuous Training [Doc]
  2. Continuous Training [Slides]
  3. Retraining Triggers [Slides]
  4. Formative Quiz
  5. Data Processing Overview [Slides]
  6. Data Engineering for Everyone [Doc]
  7. Formative Quiz
  8. Data Ingestion [Slides]
  9. Data Validation [Slides]
  10. Data Transformation [Slides]
  11. Formative Quiz
  12. Training vs. Tuning [Doc]
  13. Training with AutoML [Slides]
  14. Neural Architecture Search (NAS) - Part 1 [Slides]
  15. Formative Quiz
  16. Neural Architecture Search (NAS) - Part 2 [Slides]
  17. The Carbon Price of AutoML: CO2 [Doc]
  18. Continuous Training with Transfer Learning [Slides]
  19. Pros and Cons of Transfer Learning [Doc]
  20. Formative Quiz
  21. Continuous Training Metrics [Slides]
  22. Forum: Metrics for Continuous Training [Doc]
  23. Continuous Training Impact on MLOps [Slides]
  24. Optional: Multilingual Spoken Words Colab [Colab link]
  25. Summative Test

Chapter 5.6: Model Conversion

  1. Overview of Model Conversion [Doc]
  2. Model Conversion [Slides]
  3. ML Frameworks & The Lay of the Land [Slides]
  4. TF vs. TFLite vs. TFLite Micro [Slides]
  5. TFLite Micro for TinyML [Doc]
  6. Formative Quiz
  7. Model Pruning [Slides]
  8. Model Clustering [Slides]
  9. Formative Quiz
  10. Model Quantization [Slides]
  11. Collaborative Optimizations [Doc]
  12. Student Teacher Networks / Knowledge Distillation [Slides]
  13. Model Conversion Impact on MLOps [Slides]
  14. Forum: Model Conversion Case Study - Smart DoorBell [Doc]
  15. Formative Quiz
  16. Summative Test

Chapter 5.7: Model Deployment

  1. Overview of Model Deployment [Doc]
  2. Model Deployment [Slides]
  3. Scaling ML into Production Deployment [Slides]
  4. Formative Quiz
  5. Containers for Scaling ML Deployment [Slides]
  6. Dockers vs. VMs [Doc]
  7. Formative Quiz
  8. Challenges for Scaling TinyML Deployment (Part 1) [Slides]
  9. Challenges for Scaling TinyML Deployment (Part 2) [Slides]
  10. Forum: Challenges of Scaling TinyML Deployment [Doc]
  11. Anything As A Service [Doc]
  12. TinyMLaaS (Part 1): An Introduction [Slides]
  13. TinyMLaaS (Part 2): Design Overview [Slides]
  14. Summary of TinyMLaaS [Doc]
  15. Formative Quiz
  16. Model Deployment Impact on MLOps [Slides]
  17. Forum: Driving Mode Detection Case Study [Doc]
  18. Summative Test

Chapter 5.8: Prediction Serving

  1. Overview of Prediction Serving [Doc]
  2. Prediction Serving [Slides]
  3. Prediction Serving Scenarios [Doc]
  4. Prediction Serving Scenarios: Batch [Slides]
  5. Prediction Serving Scenarios: Online [Slides]
  6. Formative Quiz
  7. Prediction Serving Scenarios: Streaming [Slides]
  8. Prediction Serving Scenarios: Embedded [Slides]
  9. Formative Quiz
  10. Prediction Serving Architectures [Slides]
  11. Formative Quiz
  12. Embedded Inference Serving Benchmarks [Slides]
  13. Embedded Benchmarks: An Overview [Doc]
  14. MLPerf Tiny [Doc]
  15. Formative Quiz
  16. Prediction Serving Impact on MLOps [Slides]
  17. Summative Test

Chapter 5.9: Continuous Monitoring

  1. Overview of Continuous Monitoring [Doc]
  2. Continuous Monitoring [Slides]
  3. Model Drift: The Big Picture [Slides]
  4. Concept Drift [Slides]
  5. Data Drift [Slides]
  6. Formative Quiz
  7. Forum: Have you seen data or concept drift in the real world?
  8. Dealing With Drift [Slides]
  9. Continuous Evaluation Challenges for TinyML [Slides]
  10. TinyML Communication Challenges & Technologies for Continuous Monitoring [Doc]
  11. Formative Quiz
  12. On-device Training: Limitations and Opportunities [Doc]
  13. Continuous Monitoring with Federated ML [Slides]
  14. Federated Learning Gboard [Doc]
  15. Formative Quiz
  16. Continuous Monitoring Impact on MLOps [Slides]
  17. Forum: The Privacy vs Performance Trade Off [Doc]
  18. Optional: Federated Learning Colab [Colab link]
  19. Summative Test

Chapter 5.10: Data & Model Management

  1. Model vs. Data Management [Doc]
  2. Data and Model Management [Slides]
  3. Formative Quiz

Chapter 5.11: Responsible AI: Transparency & Sustainability

  1. Responsible AI Overview [Doc]
  2. Sustainability of TinyML [Slides]
  3. Sustainable AI [Doc]
  4. Formative Quiz
  5. Model Cards for Transparency [Slides]
  6. Formative Quiz
  7. TinyML for Social Impact [Slides]
  8. Summative Test

Chapter 5.12: Summary

  1. Course Summary [Doc]
  2. Key Concepts of MLOps [Slides]
  3. What’s Next? [Slides]
  4. Forum: what are you excited about doing and learning next?
  5. Closing Remarks
  6. Formative Quiz
  7. Outgoing Survey of the Course and Topics