diff --git a/_quarto.yml b/_quarto.yml index acb80c8ff..7fe22c3d2 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -21,6 +21,7 @@ book: chapters: - index.qmd + - dedication.qmd - acknowledgements.qmd - copyright.qmd - about.qmd diff --git a/about.qmd b/about.qmd index 686384809..c57f12243 100644 --- a/about.qmd +++ b/about.qmd @@ -1,8 +1,10 @@ -# About {.unnumbered} +# About This Book {.unnumbered} ## Overview -This book is a collaborative effort started by the CS249r Tiny Machine Learning class at Harvard University. We intend for this book to become a community-driven effort to help educators and learners get started with TinyML. This living document will be continually updated as we continue to learn more about TinyML and how to teach it. +_This book is for those embedding wisdom in the silicon veins of tomorrow, sculpting a future where technology thinks, learns, and grows with us._ + +The target audience for this book is anyone who want to understand and implement machine learning algorithms on resource-constrained devices. ## Topics Covered @@ -25,6 +27,8 @@ By the end of this book, you will gain a brief introduction to machine learning ## Intended Audience +This book is designed specifically for newcomers who wish to explore the fascinating and nascent world of tiny machine learning (tinyML). It provides the basic underpinnings of ML and embedded systems, and moves into more complex and broader topics relevant to both the tinyML and broader research community. More specifically, we believe the book will confer the following benefits to these groups of people: + * **Embedded Systems Engineers:** This book is a valuable resource for engineers working in the field of embedded systems. It provides a solid foundation in TinyML, allowing them to design and implement intelligent applications on microcontrollers and other embedded platforms with limited resources. * **Computer Science and Electrical Engineering Students:** Students pursuing degrees in computer science and electrical engineering can benefit from this book. It offers an introduction to the concepts, algorithms, and techniques used in TinyML, preparing students to tackle real-world challenges in the emerging field of embedded machine learning. @@ -33,7 +37,9 @@ By the end of this book, you will gain a brief introduction to machine learning * **Industry Professionals:** Professionals working in industries like IoT, robotics, wearable technology, and smart devices will find this book relevant. It equips them with the knowledge required to integrate machine learning capabilities into their products, enabling intelligent and autonomous behavior. -## Key Features +## Key Takeaways + +Users of this book will learn how to train and deploy deep neural network models on resource-constrained microcontrollers and the broader challenges associated with their design, development, deployment, and use. * **Introduction to Machine Learning:** A fundamental understanding of machine learning concepts, including supervised, unsupervised, and reinforcement learning. @@ -51,6 +57,8 @@ By the end of this book, you will gain a brief introduction to machine learning By encompassing these aspects, our aim is to make this book a go-to resource for anyone interested in developing intelligent applications on embedded systems. +After completing the chapters, readers will be empowered with the capabilities to design and implement their own ML-enabled projects, starting from defining a problem to gathering data and training the neural network model and finally deploying it to the device to display inference results or control other hardware appliances based on inference data. + ## Prerequisites * **Basic Programming Knowledge**: It is *recommended* that readers have some prior experience with programming, preferably in Python. Understanding variables, data types, control structures, and basic programming concepts will facilitate comprehension and engagement with the book. @@ -63,4 +71,8 @@ By encompassing these aspects, our aim is to make this book a go-to resource for * **Availability of Resources**: To fully explore the practical aspects of TinyML, readers should have access to the necessary resources. These include a computer with Python and relevant libraries installed, as well as *optional access to an embedded development board or microcontroller* for experimenting with deploying machine learning models. -By ensuring that these general requirements are met, readers will have the opportunity to broaden their understanding of TinyML, gain hands-on experience with coding exercises, and even venture into practical implementation on embedded devices, enabling them to *push the boundaries* of their knowledge and skills. \ No newline at end of file +By ensuring that these general requirements are met, readers will have the opportunity to broaden their understanding of TinyML, gain hands-on experience with coding exercises, and even venture into practical implementation on embedded devices, enabling them to *push the boundaries* of their knowledge and skills. + +## Book Structure + +This book is specifically designed to serve both educators and learners in getting started with TinyML. The topics begin with a basic introduction to machine learning (ML) and embedded systems. Following this, readers will be introduced to the ML workflow in the context of tinyML, including data collection, data engineering, model development, model deployment, and then MLOps. Subsequently, special topics are covered such as on-device learning, secure and privacy-preserving ML, responsible AI, sustainability, and generative AI. diff --git a/dedication.qmd b/dedication.qmd index 457b84eb2..9d58ec13d 100644 --- a/dedication.qmd +++ b/dedication.qmd @@ -1,3 +1,7 @@ # Dedication {.unnumbered} +<<<<<<< HEAD +_This book is a testament to the idea that, in the vast expanse of technology and innovation, it's not always the largest systems, but the smallest ones, that can change the world._ +======= This book is a testament to the idea that, in the vast expanse of technology and innovation, it's not always the largest systems, but the smallest ones, that can change the world. +>>>>>>> main diff --git a/index.qmd b/index.qmd index bee91fa2b..c82346da6 100644 --- a/index.qmd +++ b/index.qmd @@ -4,6 +4,9 @@ In "Embedded AI: Principles, Algorithms, and Applications", we will embark on a The goal of this book is to bring about a collaborative endeavor with insights and contributions from students, practitioners and the wider community, blossoming into a comprehensive guide that delves into the principles governing embedded AI and its myriad applications. +> _“If you want to go fast, go alone, if you want to go far, go together.”_ +> -- _African Proverb_ + As a living document, this open-source textbook aims to bridge gaps and foster innovation by being globally accessible and continually updated, addressing the pressing need for a centralized resource in this dynamic field. With a rich tapestry of knowledge woven from various expert perspectives, readers can anticipate a guided journey that unveils the intricate dance between cutting-edge algorithms and the principles that ground them, paving the way for the next wave of technological transformation. # The Philosophy Behind the Book