project: type: book output-dir: _book preview: browser: true navigate: true render: - "*.qmd" title-prefix: "" website: comments: hypothesis: theme: clean openSidebar: true sidebar: collapse-level: 1 cookie-consent: type: express style: headline palette: dark google-analytics: tracking-id: "G-M21L0CBCVN" anonymize-ip: true version: 4 book: navbar: search: true pinned: false collapse: false back-to-top-navigation: true favicon: favicon.png cover-image: cover-image.png cover-image-alt: "Cover image." sidebar: search: true collapse-level: 2 border: true pinned: false page-navigation: true title: "Machine Learning Systems" subtitle: "with TinyML" abstract: "{{< var title.long >}} offers readers an entry point to understand comprehensive machine learning systems by grounding concepts in accessible TinyML applications. As resource-constrained edge computing sees rapid expansion, the ability to construct efficient ML pipelines grows crucial. This book aims to demystify the process of developing complete ML systems suitable for deployment - spanning key phases like data collection, model design, optimization, acceleration, security hardening, and integration. The text touches on the full breadth of concepts relevant to general ML engineering across industries and applications through the lens of TinyML. Readers will learn basic principles around designing ML model architectures, hardware-aware training strategies, performant inference optimization, benchmarking methodologies and more. Additionally, crucial systems considerations in areas like reliability, privacy, responsible AI, and solution validation are also explored in depth. In summary, the book strives to equip newcomers and professionals alike with integrated knowledge covering full stack ML system development, using easily accessible TinyML applications as the vehicle to impart universal concepts required to unlock production ML." search: true repo-url: https://github.com/harvard-edge/cs249r_book repo-actions: [edit, issue, source] downloads: [pdf, epub] sharing: [twitter, facebook] reader-mode: true page-footer: left: | Edited by Prof. Vijay Janapa Reddi (Harvard University) right: | This book was built with Quarto. chapters: - text: "---" - part: FRONT MATTER chapters: - index.qmd - contents/dedication.qmd - contents/acknowledgements.qmd - contents/contributors.qmd - contents/copyright.qmd - contents/about.qmd - text: "---" - part: MAIN chapters: - contents/introduction.qmd - contents/embedded_sys/embedded_sys.qmd - contents/dl_primer/dl_primer.qmd - contents/embedded_ml/embedded_ml.qmd - contents/workflow/workflow.qmd - contents/data_engineering/data_engineering.qmd - contents/frameworks/frameworks.qmd - contents/training/training.qmd - contents/efficient_ai/efficient_ai.qmd - contents/optimizations/optimizations.qmd - contents/hw_acceleration/hw_acceleration.qmd - contents/benchmarking/benchmarking.qmd - contents/ondevice_learning/ondevice_learning.qmd - contents/ops/ops.qmd - contents/privacy_security/privacy_security.qmd - contents/responsible_ai/responsible_ai.qmd - contents/sustainable_ai/sustainable_ai.qmd - contents/ai_for_good/ai_for_good.qmd - contents/robust_ai/robust_ai.qmd - contents/generative_ai/generative_ai.qmd - text: "---" - part: REFERENCES chapters: - references.qmd - text: "---" - part: EXERCISES chapters: - contents/niclav_sys/niclav_sys.qmd - contents/image_classification/image_classification.qmd - contents/object_detection_fomo/object_detection_fomo.qmd - contents/kws_feature_eng/kws_feature_eng.qmd - contents/kws_nicla/kws_nicla.qmd - contents/dsp_spectral_features_block/dsp_spectral_features_block.qmd - contents/motion_classify_ad/motion_classify_ad.qmd - text: "---" appendices: - contents/tools.qmd - contents/zoo_datasets.qmd - contents/zoo_models.qmd - contents/learning_resources.qmd - contents/community.qmd - contents/case_studies.qmd citation: true reference-location: document citation-location: document license: CC-BY-NC-SA crossref: appendix-title: "Appendix" appendix-delim: ":" filters: - custom_callout.lua format: html: theme: light: - spacelab - style.scss - style-light.scss dark: - darkly - style.scss - style-dark.scss mainfont: Nunito fontsize: 1rem linkcolor: "#A51C30" highlight-style: github code-link: true link-external-icon: false link-external-newwindow: true callout-appearance: simple anchor-sections: true smooth-scroll: false citations-hover: false footnotes-hover: false fig-width: 8 fig-height: 6 number-depth: 3 toc: true toc-depth: 4 include-in-header: text: citeproc: true bibliography: - contents/ai_for_good/ai_for_good.bib - contents/benchmarking/benchmarking.bib - contents/data_engineering/data_engineering.bib - contents/dl_primer/dl_primer.bib - contents/dsp_spectral_features_block/dsp_spectral_features_block.bib - contents/efficient_ai/efficient_ai.bib - contents/embedded_ml/embedded_ml.bib - contents/embedded_sys/embedded_sys.bib - contents/frameworks/frameworks.bib - contents/generative_ai/generative_ai.bib - contents/hw_acceleration/hw_acceleration.bib - contents/image_classification/image_classification.bib - contents/kws_feature_eng/kws_feature_eng.bib - contents/kws_nicla/kws_nicla.bib - contents/motion_classify_ad/motion_classify_ad.bib - contents/niclav_sys/niclav_sys.bib - contents/object_detection_fomo/object_detection_fomo.bib - contents/ondevice_learning/ondevice_learning.bib - contents/ops/ops.bib - contents/optimizations/optimizations.bib - contents/privacy_security/privacy_security.bib - contents/responsible_ai/responsible_ai.bib - contents/robust_ai/robust_ai.bib - contents/sustainable_ai/sustainable_ai.bib - contents/training/training.bib - contents/workflow/workflow.bib pdf: documentclass: scrbook classoption: [abstract] keep-tex: true toc: true # Table of Contents toc-depth: 3 # Depth of headings to include in TOC number-sections: true latex-engine: xelatex # or pdflatex, lualatex, etc. geometry: margin=1in fontsize: 11pt papersize: letter # or a4, etc. fig_caption: true link-citations: true citation_package: natbib # or biblatex bibliography: - contents/ai_for_good/ai_for_good.bib - contents/benchmarking/benchmarking.bib - contents/data_engineering/data_engineering.bib - contents/dl_primer/dl_primer.bib - contents/dsp_spectral_features_block/dsp_spectral_features_block.bib - contents/efficient_ai/efficient_ai.bib - contents/embedded_ml/embedded_ml.bib - contents/embedded_sys/embedded_sys.bib - contents/frameworks/frameworks.bib - contents/generative_ai/generative_ai.bib - contents/hw_acceleration/hw_acceleration.bib - contents/image_classification/image_classification.bib - contents/kws_feature_eng/kws_feature_eng.bib - contents/kws_nicla/kws_nicla.bib - contents/motion_classify_ad/motion_classify_ad.bib - contents/niclav_sys/niclav_sys.bib - contents/object_detection_fomo/object_detection_fomo.bib - contents/ondevice_learning/ondevice_learning.bib - contents/ops/ops.bib - contents/optimizations/optimizations.bib - contents/privacy_security/privacy_security.bib - contents/responsible_ai/responsible_ai.bib - contents/robust_ai/robust_ai.bib - contents/sustainable_ai/sustainable_ai.bib - contents/training/training.bib - contents/workflow/workflow.bib include-in-header: text: | \usepackage{fancyhdr} \usepackage{graphicx} \usepackage{mathptmx} \usepackage{fontspec} \usepackage{underscore} \usepackage[english]{babel} \usepackage{etoolbox} \usepackage{fontspec} \usepackage{newpxtext} % Palatino-like font \usepackage{hyperref} % For hyperlinks \usepackage{xcolor} \usepackage[format=plain, labelfont={bf,it}, textfont=it, labelsep=space]{caption} \definecolor{crimson}{RGB}{165, 28, 48} \hypersetup{ colorlinks=true, % Enable colored links linkcolor=crimson, % Color of internal links citecolor=crimson, % Color of citations urlcolor=crimson % Color of URLs } \patchcmd{\chapter}{\thispagestyle{plain}}{\thispagestyle{fancy}}{}{} %\newfontfamily\tocfont{Times New Roman} \let\endtitlepage\relax \AtBeginDocument{ \begin{titlepage} \centering \includegraphics[width=\textwidth]{cover-image.png} % Adjust the size and path to your image {{\huge\bfseries Machine Learning Systems}\\[1em] \Large with TinyML\par} \vspace*{\fill} {\Large\itshape Edited by Prof. Vijay Janapa Reddi \\[.2cm] Harvard University \\[.5cm] \tiny \itshape Last Modified: \today\par} \vspace*{\fill} \end{titlepage} %\addtocontents{toc}{\tocfont} } \let\endtitlepage\relax \pagestyle{fancy} \fancyhf{} % Clear all header and footer fields \fancyhead[LE,RO]{\thepage} % Page number on the left on even pages, right on odd pages \fancyhead[RE,LO]{\nouppercase{\leftmark}} % Chapter name on both sides \renewcommand{\headrulewidth}{0.4pt} \renewcommand{\footrulewidth}{0pt} \fancypagestyle{plain}{% \fancyhf{} % clear all header and footer fields \fancyhead[LE,RO]{\thepage} % Page number \renewcommand{\headrulewidth}{0.4pt} \renewcommand{\footrulewidth}{0pt} } \addtokomafont{disposition}{\rmfamily\color{crimson}} \addtokomafont{chapter}{\color{crimson}} \addtokomafont{section}{\color{crimson}} % Define the abstract environment \newenvironment{abstract}{% \chapter*{\abstractname}% \addcontentsline{toc}{chapter}{\abstractname}% \small }{% \clearpage } # include-before-body: # text: | # \setmainfont{Times New Roman} editor: render-on-save: true