Author: Pete Warden
Publisher: O'Reilly Media
ISBN: 1492052019
Category : Computers
Languages : en
Pages : 504
Get Book Here
Book Description
Deep learning networks are getting smaller. Much smaller. The Google Assistant team can detect words with a model just 14 kilobytes in size—small enough to run on a microcontroller. With this practical book you’ll enter the field of TinyML, where deep learning and embedded systems combine to make astounding things possible with tiny devices. Pete Warden and Daniel Situnayake explain how you can train models small enough to fit into any environment. Ideal for software and hardware developers who want to build embedded systems using machine learning, this guide walks you through creating a series of TinyML projects, step-by-step. No machine learning or microcontroller experience is necessary. Build a speech recognizer, a camera that detects people, and a magic wand that responds to gestures Work with Arduino and ultra-low-power microcontrollers Learn the essentials of ML and how to train your own models Train models to understand audio, image, and accelerometer data Explore TensorFlow Lite for Microcontrollers, Google’s toolkit for TinyML Debug applications and provide safeguards for privacy and security Optimize latency, energy usage, and model and binary size
Author: Atul Krishna Gupta
Publisher: BPB Publications
ISBN: 9355518056
Category : Computers
Languages : en
Pages : 346
Get Book Here
Book Description
A step-by-step guide that will teach you how to deploy TinyML on microcontrollers KEY FEATURES ● Deploy machine learning models on edge devices with ease. ● Leverage pre-built AI models and deploy them without writing any code. ● Create smart and efficient IoT solutions with TinyML. DESCRIPTION TinyML, or Tiny Machine Learning, is used to enable machine learning on resource-constrained devices, such as microcontrollers and embedded systems. If you want to leverage these low-cost, low-power but strangely powerful devices, then this book is for you. This book aims to increase accessibility to TinyML applications, particularly for professionals who lack the resources or expertise to develop and deploy them on microcontroller-based boards. The book starts by giving a brief introduction to Artificial Intelligence, including classical methods for solving complex problems. It also familiarizes you with the different ML model development and deployment tools, libraries, and frameworks suitable for embedded devices and microcontrollers. The book will then help you build an Air gesture digit recognition system using the Arduino Nano RP2040 board and an AI project for recognizing keywords using the Syntiant TinyML board. Lastly, the book summarizes the concepts covered and provides a brief introduction to topics such as zero-shot learning, one-shot learning, federated learning, and MLOps. By the end of the book, you will be able to develop and deploy end-to-end Tiny ML solutions with ease. WHAT YOU WILL LEARN ● Learn how to build a Keyword recognition system using the Syntiant TinyML board. ● Learn how to build an air gesture digit recognition system using the Arduino Nano RP2040. ● Learn how to test and deploy models on Edge Impulse and Arduino IDE. ● Get tips to enhance system-level performance. ● Explore different real-world use cases of TinyML across various industries. WHO THIS BOOK IS FOR The book is for IoT developers, System engineers, Software engineers, Hardware engineers, and professionals who are interested in integrating AI into their work. This book is a valuable resource for Engineering undergraduates who are interested in learning about microcontrollers and IoT devices but may not know where to begin. TABLE OF CONTENTS 1. Introduction to AI 2. Traditional ML Lifecycle 3. TinyML Hardware and Software Platforms 4. End-to-End TinyML Deployment Phases 5. Real World Use Cases 6. Practical Experiments with TinyML 7. Advance Implementation with TinyML Board 8. Continuous Improvement 9. Conclusion
Author: Cem Ünsalan
Publisher: Springer
ISBN: 9783031709111
Category : Computers
Languages : en
Pages : 0
Get Book Here
Book Description
This textbook introduces basic embedded machine learning methods by exploring practical applications on STM32 development boards. Covering traditional and neural network-based machine learning methods implemented on microcontrollers, the text is designed for use in courses on microcontrollers, microprocessor systems, and embedded systems. Following the learning by doing approach, the book will enable students to grasp embedded machine learning concepts through real-world examples that will provide them with the design and implementation skills needed for a competitive job market. By utilizing a programming environment that enables students to reach and modify low-level microcontroller properties, the material allows for more control of the developed system. Students will be guided in implementing machine learning methods to be deployed and tested on microcontrollers throughout the book, with the theory behind the implemented methods also emphasized. Sample codes and course slides are available for readers and instructors, and a solutions manual is available to instructors. The book will also be an ideal reference for practicing engineers and electronics hobbyists.
Author: Gian Marco Iodice
Publisher: Packt Publishing Ltd
ISBN: 1801812632
Category : Computers
Languages : en
Pages : 344
Get Book Here
Book Description
Work through over 50 recipes to develop smart applications on Arduino Nano 33 BLE Sense and Raspberry Pi Pico using the power of machine learning Key Features Train and deploy ML models on Arduino Nano 33 BLE Sense and Raspberry Pi Pico Work with different ML frameworks such as TensorFlow Lite for Microcontrollers and Edge Impulse Explore cutting-edge technologies such as microTVM and Arm Ethos-U55 microNPU Book DescriptionThis book explores TinyML, a fast-growing field at the unique intersection of machine learning and embedded systems to make AI ubiquitous with extremely low-powered devices such as microcontrollers. The TinyML Cookbook starts with a practical introduction to this multidisciplinary field to get you up to speed with some of the fundamentals for deploying intelligent applications on Arduino Nano 33 BLE Sense and Raspberry Pi Pico. As you progress, you’ll tackle various problems that you may encounter while prototyping microcontrollers, such as controlling the LED state with GPIO and a push-button, supplying power to microcontrollers with batteries, and more. Next, you’ll cover recipes relating to temperature, humidity, and the three “V” sensors (Voice, Vision, and Vibration) to gain the necessary skills to implement end-to-end smart applications in different scenarios. Later, you’ll learn best practices for building tiny models for memory-constrained microcontrollers. Finally, you’ll explore two of the most recent technologies, microTVM and microNPU that will help you step up your TinyML game. By the end of this book, you’ll be well-versed with best practices and machine learning frameworks to develop ML apps easily on microcontrollers and have a clear understanding of the key aspects to consider during the development phase.What you will learn Understand the relevant microcontroller programming fundamentals Work with real-world sensors such as the microphone, camera, and accelerometer Run on-device machine learning with TensorFlow Lite for Microcontrollers Implement an app that responds to human voice with Edge Impulse Leverage transfer learning to classify indoor rooms with Arduino Nano 33 BLE Sense Create a gesture-recognition app with Raspberry Pi Pico Design a CIFAR-10 model for memory-constrained microcontrollers Run an image classifier on a virtual Arm Ethos-U55 microNPU with microTVM Who this book is for This book is for machine learning developers/engineers interested in developing machine learning applications on microcontrollers through practical examples quickly. Basic familiarity with C/C++, the Python programming language, and the command-line interface (CLI) is required. However, no prior knowledge of microcontrollers is necessary.
Author: Elecia White
Publisher: "O'Reilly Media, Inc."
ISBN: 1449320589
Category : Computers
Languages : en
Pages : 329
Get Book Here
Book Description
Interested in developing embedded systems? Since they donâ??t tolerate inefficiency, these systems require a disciplined approach to programming. This easy-to-read guide helps you cultivate a host of good development practices, based on classic software design patterns and new patterns unique to embedded programming. Learn how to build system architecture for processors, not operating systems, and discover specific techniques for dealing with hardware difficulties and manufacturing requirements. Written by an expert whoâ??s created embedded systems ranging from urban surveillance and DNA scanners to childrenâ??s toys, this book is ideal for intermediate and experienced programmers, no matter what platform you use. Optimize your system to reduce cost and increase performance Develop an architecture that makes your software robust in resource-constrained environments Explore sensors, motors, and other I/O devices Do more with less: reduce RAM consumption, code space, processor cycles, and power consumption Learn how to update embedded code directly in the processor Discover how to implement complex mathematics on small processors Understand what interviewers look for when you apply for an embedded systems job "Making Embedded Systems is the book for a C programmer who wants to enter the fun (and lucrative) world of embedded systems. Itâ??s very well writtenâ??entertaining, evenâ??and filled with clear illustrations." â??Jack Ganssle, author and embedded system expert.
Author: Gian Marco Iodice
Publisher: Packt Publishing Ltd
ISBN: 1837633967
Category : Computers
Languages : en
Pages : 665
Get Book Here
Book Description
Over 70 recipes to help you develop smart applications on Arduino Nano 33 BLE Sense, Raspberry Pi Pico, and SparkFun RedBoard Artemis Nano using the power of machine learning Purchase of the print or Kindle book includes a free eBook in PDF format. Key Features Over 20+ new recipes, including recognizing music genres and detecting objects in a scene Create practical examples using TensorFlow Lite for Microcontrollers, Edge Impulse, and more Explore cutting-edge technologies, such as on-device training for updating models without data leaving the device Book DescriptionDiscover the incredible world of tiny Machine Learning (tinyML) and create smart projects using real-world data sensors with the Arduino Nano 33 BLE Sense, Raspberry Pi Pico, and SparkFun RedBoard Artemis Nano. TinyML Cookbook, Second Edition, will show you how to build unique end-to-end ML applications using temperature, humidity, vision, audio, and accelerometer sensors in different scenarios. These projects will equip you with the knowledge and skills to bring intelligence to microcontrollers. You'll train custom models from weather prediction to real-time speech recognition using TensorFlow and Edge Impulse.Expert tips will help you squeeze ML models into tight memory budgets and accelerate performance using CMSIS-DSP. This improved edition includes new recipes featuring an LSTM neural network to recognize music genres and the Faster-Objects-More-Objects (FOMO) algorithm for detecting objects in a scene. Furthermore, you’ll work on scikit-learn model deployment on microcontrollers, implement on-device training, and deploy a model using microTVM, including on a microNPU. This beginner-friendly and comprehensive book will help you stay up to date with the latest developments in the tinyML community and give you the knowledge to build unique projects with microcontrollers!What you will learn Understand the microcontroller programming fundamentals Work with real-world sensors, such as the microphone, camera, and accelerometer Implement an app that responds to human voice or recognizes music genres Leverage transfer learning with FOMO and Keras Learn best practices on how to use the CMSIS-DSP library Create a gesture-recognition app to build a remote control Design a CIFAR-10 model for memory-constrained microcontrollers Train a neural network on microcontrollers Who this book is for This book is ideal for machine learning engineers or data scientists looking to build embedded/edge ML applications and IoT developers who want to add machine learning capabilities to their devices. If you’re an engineer, student, or hobbyist interested in exploring tinyML, then this book is your perfect companion. Basic familiarity with C/C++ and Python programming is a prerequisite; however, no prior knowledge of microcontrollers is necessary to get started with this book.
Author: Rohan Banerjee
Publisher: BPB Publications
ISBN: 9355518447
Category : Computers
Languages : en
Pages : 309
Get Book Here
Book Description
Learn how to deploy complex machine learning models on single board computers, mobile phones, and microcontrollers KEY FEATURES ● Gain a comprehensive understanding of TinyML's core concepts. ● Learn how to design your own TinyML applications from the ground up. ● Explore cutting-edge models, hardware, and software platforms for developing TinyML. DESCRIPTION TinyML is an innovative technology that empowers small and resource-constrained edge devices with the capabilities of machine learning. If you're interested in deploying machine learning models directly on microcontrollers, single board computers, or mobile phones without relying on continuous cloud connectivity, this book is an ideal resource for you. The book begins with a refresher on Python, covering essential concepts and popular libraries like NumPy and Pandas. It then delves into the fundamentals of neural networks and explores the practical implementation of deep learning using TensorFlow and Keras. Furthermore, the book provides an in-depth overview of TensorFlow Lite, a specialized framework for optimizing and deploying models on edge devices. It also discusses various model optimization techniques that reduce the model size without compromising performance. As the book progresses, it offers a step-by-step guidance on creating deep learning models for object detection and face recognition specifically tailored for the Raspberry Pi. You will also be introduced to the intricacies of deploying TensorFlow Lite applications on real-world edge devices. Lastly, the book explores the exciting possibilities of using TensorFlow Lite on microcontroller units (MCUs), opening up new opportunities for deploying machine learning models on resource-constrained devices. Overall, this book serves as a valuable resource for anyone interested in harnessing the power of machine learning on edge devices. WHAT YOU WILL LEARN ● Explore different hardware and software platforms for designing TinyML. ● Create a deep learning model for object detection using the MobileNet architecture. ● Optimize large neural network models with the TensorFlow Model Optimization Toolkit. ● Explore the capabilities of TensorFlow Lite on microcontrollers. ● Build a face recognition system on a Raspberry Pi. ● Build a keyword detection system on an Arduino Nano. WHO THIS BOOK IS FOR This book is designed for undergraduate and postgraduate students in the fields of Computer Science, Artificial Intelligence, Electronics, and Electrical Engineering, including MSc and MCA programs. It is also a valuable reference for young professionals who have recently entered the industry and wish to enhance their skills. TABLE OF CONTENTS 1. Introduction to TinyML and its Applications 2. Crash Course on Python and TensorFlow Basics 3. Gearing with Deep Learning 4. Experiencing TensorFlow 5. Model Optimization Using TensorFlow 6. Deploying My First TinyML Application 7. Deep Dive into Application Deployment 8. TensorFlow Lite for Microcontrollers 9. Keyword Spotting on Microcontrollers 10. Conclusion and Further Reading Appendix
Author: Todd D. Morton
Publisher:
ISBN:
Category : Computers
Languages : en
Pages : 712
Get Book Here
Book Description
This practical book on designing real-time embedded systems using 8-and 16-bit microcontrollers covers both assembly and C programming and real-time kernels. Using a large number of specific examples, it focuses on the concepts, processes, conventions, and techniques used in design and debugging. Chapter topics include programming basics; simple assembly code construction; CPU12 programming model; basic assembly programming techniques; assembly program design and structure; assembly applications; real-time I/O and multitasking; microcontroller I/O resources; modular and C code construction; creating and accessing data in C; real-time multitasking in C; and using the MICROC/OS-II preemptive kernel. For anyone who wants to design small- to medium-sized embedded systems.
Author: Armstrong Subero
Publisher: Apress
ISBN: 9781484270578
Category : Computers
Languages : en
Pages : 294
Get Book Here
Book Description
For the first time microcontrollers are powerful enough to be programmed in Python. The landscape of embedded systems development is changing, microcontrollers are becoming more powerful, and the rise of the internet of things is leading more developers to get into hardware. This book provides the solid foundation to start your journey of embedded systems development and microcontroller programming with Python. You’ll quickly realize the value of using Python. The theme of the book is simplicity and the cleanness and elegance of Python makes that possible. Featuring a step-by-step approach, this single source guide balances complexity and clarity with insightful explanations that you’ll easily grasp. Python is quickly becoming the language of choice for applications such as machine learning and computer vision on embedded devices. What would previously be daunting and exceedingly difficult to do in C or C++ is now possible with Python because of its level of abstraction. Programming Microcontrollers with Python is your path to bringing your existing skills to the embedded space. What You’ll Learn Review microcontroller basics and the hardware and software requirements Understand an embedded system’s general architecture Follow the steps needed to carry a product to market Take a crash course in Python programming Program a microcontroller Interface with a microcontroller using LCD and Circuit Python Use and control sensors Who This Book Is For Those getting started with microcontrollers, those new to C, C++, and Arduino programming, web developers looking to get into IoT, or Python programmers who wish to control hardware devices.
Author: Vikrant Bhateja
Publisher: Springer Nature
ISBN: 9811509476
Category : Technology & Engineering
Languages : en
Pages : 880
Get Book Here
Book Description
This book gathers selected research papers presented at the First International Conference on Embedded Systems and Artificial Intelligence (ESAI 2019), held at Sidi Mohamed Ben Abdellah University, Fez, Morocco, on 2–3 May 2019. Highlighting the latest innovations in Computer Science, Artificial Intelligence, Information Technologies, and Embedded Systems, the respective papers will encourage and inspire researchers, industry professionals, and policymakers to put these methods into practice.