Machine Learning with Python
For PC, Raspberry Pi, and MaixDuino
By Dr. Gunter Spanner
Table of Contents
- Chapter 1: Introduction
- Chapter 2: A Brief History of ML and AI
- Chapter 3: Learning from "Big Data"
- Chapter 4: The Hardware Base
- Chapter 5: The PC as Universal AI Machine
- Chapter 6: The Raspberry Pi
- Chapter 7: Sipeed Maix, aka "MaixDuino"
- Chapter 8: Programming and Development Environments
- Chapter 9: Python in a Nutshell
- Chapter 10: Useful Assistants: Libraries!
- Chapter 11: Practical Machine Learning Applications
- Chapter 12: Recognition of Handwritten Numbers
- Chapter 13: How Machines Learn to See: Object Recognition
- Chapter 14: Machines Learn to Listen and Speak
- Chapter 15: Facial Recognition and Identification
- Chapter 16: Train Your Own Models
- Chapter 17: Dreams of the Future: from KPU to Neuromorphic Chips
- Chapter 18: Electronic Components
- Chapter 19: Troubleshooting
- Chapter 20: Buyers Guide
- Chapter 21: References; Bibliography
Chapter 1: Introduction
This chapter introduces the fundamental concepts of machine learning and artificial intelligence, exploring what "super intelligence" might entail and how machines learn.
Chapter 2: A Brief History of ML and AI
A historical overview of the development of machine learning and artificial intelligence.
Chapter 3: Learning from "Big Data"
Explores the role of "Big Data" in machine learning and artificial intelligence.
Chapter 4: The Hardware Base
Discusses the essential hardware components required for machine learning projects.
Chapter 5: The PC as Universal AI Machine
Details how a personal computer can serve as a central hub for AI development and execution.
5.1 The computer as a programming center
Chapter 6: The Raspberry Pi
Focuses on using the Raspberry Pi for machine learning tasks.
- 6.1 The Remote Desktop
- 6.2 Using smartphones and tablets as displays
- 6.3 FileZilla
- 6.4 Pimp my Pi
Chapter 7: Sipeed Maix, aka "MaixDuino"
An in-depth look at the MaixDuino board for machine learning applications.
- 7.1 Small but mighty: the performance figures of the MaixDuino
- 7.2 A wealth of applications
- 7.3 Initial start-up and functional test
- 7.4 Power supply and stand-alone operation
Chapter 8: Programming and Development Environments
Covers various programming and development environments suitable for machine learning.
- 8.1 Thonny -- a Python IDE for beginners and intermediates
- 8.2 Thonny as a universal IDE for RPi and MaixDuino
- 8.3 Working with files
- 8.4 Thonny on the Raspberry Pi
- 8.5 Tips for troubleshooting the Thonny IDE
- 8.6 The MaixPy IDE
- 8.7 A MicroPython interpreter for MaixDuino
- 8.8 The Flash tool in action
- 8.9 Machine Learning and interactive Python
- 8.10 Anaconda
- 8.11 Jupyter
- 8.12 Installation and Start-Up
- 8.13 Using MicroPython Kernels in Jupyter
- 8.14 Communication setup to the MaixDuino
- 8.15 Kernels
- 8.16 Working with Notebooks
- 8.17 All libraries available?
- 8.18 Using Spyder for Python Programming
- 8.19 Who's programming who?
Chapter 9: Python in a Nutshell
A concise guide to Python programming relevant to machine learning.
- 9.1 Comments make your life easier
- 9.2 The print() statement
- 9.3 Output to the display
- 9.4 Indentations and Blocks
- 9.5 Time Control and Sleep
- 9.6 Hardware under control: digital inputs and outputs
- 9.7 For vital values: variables and constants
- 9.8 Numbers and variable types
- 9.9 Converting number types
- 9.10 Arrays as a basis for neural networks
- 9.11 Operators
- 9.12 Conditions, branches and loops
- 9.13 Trial and error -- try and except
Chapter 10: Useful Assistants: Libraries!
An overview of essential Python libraries for machine learning.
- 10.1 MatPlotLib as a graphics artist
- 10.2 The math genius: Numpy
- 10.3 Data-mining using Pandas
- 10.4 Learning and visualization using Scikit, Scipy, SkImage & Co.
- 10.5 Machine Vision using OpenCV
- 10.6 Brainiacs: KERAS and TensorFlow
- 10.7 Knowledge transfer: sharing the learning achievements
- 10.8 Graphical representation of network structures
- 10.9 Solution of the XOR problem using KERAS
- 10.10 Virtual environments
Chapter 11: Practical Machine Learning Applications
Demonstrates practical applications of machine learning.
- 11.1 Transfer functions and multilayer networks
- 11.2 Flowers and data
- 11.3 Graphical representations of data sets
- 11.4 A net for iris flowers
- 11.5 Training and testing
- 11.6 What's blossoming here?
- 11.7 Test and learning behavior
Chapter 12: Recognition of Handwritten Numbers
Focuses on the recognition of handwritten numbers using machine learning.
- 12.1 "Hello ML" -- the MNIST data set
- 12.2 A neural network reads digits
- 12.3 Training, tests and predictions
- 12.4 Live recognition of digits
- 12.5 KERAS can do even better!
- 12.6 Convolutional networks
- 12.7 Power training
- 12.8 Quality control -- an absolute must!
- 12.9 Recognizing live images
- 12.10 Batch sizes and epochs
- 12.11 MaixDuino also reads digits
Chapter 13: How Machines Learn to See: Object Recognition
Explores how machines can learn to recognize objects.
- 13.1 TensorFlow for Raspberry Pi
- 13.2 Virtual environments in action
- 13.3 Using a Universal TFlite Model
- 13.4 Ideal for sloths: clothes-sorting
- 13.5 Construction and training of the model
- 13.6 MaixDuino recognizes 20 objects
- 13.7 Recognizing, counting and sorting objects
Chapter 14: Machines Learn to Listen and Speak
Covers machine learning applications in speech recognition and synthesis.
- 14.1 Talk to me!
- 14.2 RPi Learns to talk
- 14.3 Talking instruments
- 14.4 Sorry, didn't get you
- 14.5 RPi as a ChatBot
- 14.6 From ELIZA to ChatterBots
- 14.7 The Talking Eye
- 14.8 An AI Bat
Chapter 15: Facial Recognition and Identification
Details the process and implications of facial recognition and identification.
- 15.1 The right to your own image
- 15.2 Machines recognize people and faces
- 15.3 MaixDuino as a Door Viewer
- 15.4 How many guest were at the party?
- 15.5 Person-detection alarm
- 15.6 Social minefields? -- face identification
- 15.7 Big Brother RPi: face identification in practice
- 15.8 Smile, please ;-)
- 15.9 Photo Training
- 15.10 "Know thyself!" -- and others
- 15.11 A Biometric scanner as a door opener
- 15.12 Recognizing gender and age
Chapter 16: Train Your Own Models
Guides users on how to train their own machine learning models.
- 16.1 Creation of a model for the MaixDuino
- 16.2 Electronic parts recognition with the MaixDuino
- 16.3 Performance of the trained network
- 16.4 Field test
- 16.5 Outlook: Multi-object detectors
Chapter 17: Dreams of the Future: from KPU to Neuromorphic Chips
Explores future trends in machine learning, including KPU and neuromorphic chips.
Chapter 18: Electronic Components
A breakdown of essential electronic components used in machine learning projects.
- 18.1 Breadboards
- 18.2 Wires and jumpers
- 18.3 Resistors
- 18.4 Light-emitting diodes (LEDs)
- 18.5 Transistors
- 18.6 Sensors
- 18.7 Ultrasound range finder
Chapter 19: Troubleshooting
Provides guidance on troubleshooting common issues in machine learning projects.
Chapter 20: Buyers Guide
A guide to purchasing necessary hardware and software.
Chapter 21: References; Bibliography
Lists references and bibliography for further reading.
Index
An index for quick reference to topics covered in the book.
Related Documents
![]() |
Machine Learning mit Python für PC, Raspberry Pi und Maixduino Ein umfassender Leitfaden zur Anwendung von Machine Learning mit Python auf Plattformen wie PC, Raspberry Pi und Maixduino. Das Buch von Dr. Günter Spanner, herausgegeben von Elektor, deckt Themen von den Grundlagen der KI bis zu praktischen Anwendungen wie Objekterkennung und Sprachverarbeitung ab. |
![]() |
Choosing the Right Development Environment for Microcontrollers A guide to selecting and using development environments (IDEs) for microcontrollers, focusing on Arduino IDE and Thonny for MicroPython, with an overview of other IDEs like Microchip Studio and PlatformIO. |
![]() |
Robotics and Artificial Intelligence: A Comprehensive Guide Explore the fascinating world of robotics and artificial intelligence with this in-depth guide. Covering fundamental concepts, components, programming, and advanced applications, this document is ideal for hobbyists, students, and professionals. |
![]() |
Camera Projects Book: 39 Experiments with Raspberry Pi and Arduino A comprehensive guide detailing 39 hands-on projects using Raspberry Pi and Arduino for various camera applications, including image processing, surveillance, and automation. |
![]() |
Learning Python with Raspberry Pi for Electronic Engineers A comprehensive guide to learning Python programming using the Raspberry Pi, specifically tailored for electronic engineers. Covers fundamental Python concepts, Raspberry Pi setup, command-line usage, data types, control flow, circuit analysis case studies, plotting, file operations, GUI development with Tkinter, internet communication, and Bluetooth. |
![]() |
MicroPython for Microcontrollers: Projects with ESP32, Thonny, and uPyCraft A comprehensive guide to MicroPython programming for microcontrollers, featuring projects with ESP32, Thonny IDE, and uPyCraft IDE. Covers essential topics from introduction to advanced applications like IoT and sensors. |
![]() |
The BeagleY-AI Handbook: A Practical Guide to AI, Python, and Hardware Projects Explore the capabilities of the BeagleY-AI board with this comprehensive handbook. Learn to set up the operating system, use console commands, program in Python, and undertake over 50 hardware projects involving AI, LEDs, sensors, communication, and more. Ideal for electronics enthusiasts and developers. |
![]() |
Raspberry Pi 4 and Pico Projects: Measuring, Controlling, Regulating Explore practical projects for Raspberry Pi 4 and Raspberry Pi Pico, covering measurement, control, and regulation techniques with Python programming and hardware insights. This guide provides step-by-step instructions and project ideas for makers and electronics enthusiasts. |