Education Class B1

Prof. Vijay Janapa Reddi

Title: TinyML: Machine Learning’s Future is Tiny and Bright

Instructor: Vijay Janapa Reddi, Harvard University


Tiny machine learning (TinyML) is a fast-growing field at the intersection of ML algorithms and low-cost embedded systems. TinyML enables on-device analysis of sensor data (vision, audio, IMU, etc.) at ultra-low-power consumption (<1mW). Processing data close to the sensor allows for an expansive new variety of always-on ML use-cases that preserve bandwidth, latency, and energy while improving responsiveness and maintaining privacy. Yet, there are still numerous challenges to address. Tight memory and storage constraints (KBs not MBs), hardware/software heterogeneity, and a lack of relevant large-scale datasets still pose a substantial barrier to developing TinyML applications. This lecture introduces attendees to the fundamental concepts associated with TinyML. It summarizes state-of-the-art approaches, ranging from model design to deploying them efficiently on embedded hardware, highlighting the challenges and opportunities for things in-between. The lecture presents a macroscopic view of the end-to-end ML workflow, rather than focus on any part in isolation to provide a comprehensive systems-level perspective on TinyML. Attendees walk out of the virtual classroom understanding why the future of ML is tiny and bright. Join the 50,000+ TinyML learners that are a part of this journey and help define its future!

Bio: I am an Associate Professor in the John A. Paulson School of Engineering and Applied Sciences (SEAS) at Harvard University. Prior to joining Harvard University, I was an Associate Professor at The University of Texas at Austin from 2011 to 2018. I started at Harvard University in the Spring of 2019.

My research is centered on mobile and edge-centric computing systems with a rare taste for cloud computing aspects, mostly as it pertains to edge computing or my students’ interests. I direct the Edge Computing Lab. I believe in solving computing problems, rather than associating myself with a particular domain or field of computing (i.e., hardware or software). I take great pride in that, and that reflects in my research groups’ training. Having said that, I publish in Computer Architecture and Robotics venues.

My teaching focuses on both hardware and software. At the freshman/sophomore level, I teach topics that are related to embedded systems and help explain their relationship to the rest of the connected world (i.e., the Internet of Things). At the junior and senior undergraduate level, I teach Computer Architecture. Going beyond that, at the graduate level, I teach courses that are focused on several edge computing aspects, which covers a variety of state-of-the-art research challenges and issues. Examples include how we design better systems for robotics, autonomous cars, drones, etc.

Relevant reading: Widening Access to Applied Machine Learning with TinyML (
Interested in learning more? Take the HarvardX TinyML course for free: