Skip to main content
main-content
Top

About this book

This book is a comprehensive guide to machine learning with worked examples in MATLAB. It starts with an overview of the history of Artificial Intelligence and automatic control and how the field of machine learning grew from these. It provides descriptions of all major areas in machine learning.

The book reviews commercially available packages for machine learning and shows how they fit into the field. The book then shows how MATLAB can be used to solve machine learning problems and how MATLAB graphics can enhance the programmer’s understanding of the results and help users of their software grasp the results.
Machine Learning can be very mathematical. The mathematics for each area is introduced in a clear and concise form so that even casual readers can understand the math. Readers from all areas of engineering will see connections to what they know and will learn new technology.
The book then provides complete solutions in MATLAB for several important problems in machine learning including face identification, autonomous driving, and data classification. Full source code is provided for all of the examples and applications in the book.

What you'll learn:An overview of the field of machine learning
Commercial and open source packages in MATLAB
How to use MATLAB for programming and building machine learning applications
MATLAB graphics for machine learning
Practical real world examples in MATLAB for major applications of machine learning in big data


Who is this book for:
The primary audiences are engineers and engineering students wanting a comprehensive and practical introduction to machine learning.

Table of Contents

Introduction to Machine Learning

Frontmatter

Chapter 1. An Overview of Machine Learning

Abstract
Machine learning is a field in computer science where existing data are used to predict, or respond to, future data. It is closely related to the fields of pattern recognition, computational statistics, and artificial intelligence. Machine learning is important in areas like facial recognition, spam filtering, and others where it is not feasible, or even possible, to write algorithms to perform a task.
Michael Paluszek, Stephanie Thomas

Chapter 2. The History of Autonomous Learning

Abstract
In the previous chapter you were introduced to autonomous learning. You saw that autonomous learning could be divided into the areas of machine learning, controls, and artificial intelligence (AI). In this chapter you will learn how each area evolved. Automatic control predates AI. However, we are interested in adaptive or learning control, which is a relatively new development and really began evolving around the time that AI had its foundations. Machine learning is sometimes considered an offshoot of AI. However, many of the methods used in machine learning came from different fields of study such as statistics and optimization.
Michael Paluszek, Stephanie Thomas

Chapter 3. Software for Machine Learning

Abstract
There are many sources for machine learning software. Machine learning encompasses machine learning software to help the user learn from data and software that helps machines learn and adapt to their environment. This book gives you a sampling of software that you can use immediately. However, the software is not designed for industrial applications. This chapter describes software that is available for the MATLAB environment. Both professional and open-source MATLAB software is discussed. The book may not cover every available package, as new packages are continually becoming available while older packages may become obsolete.
Michael Paluszek, Stephanie Thomas

MATLAB Recipes for Machine Learning

Frontmatter

Chapter 4. Representation of Data for Machine Learning in MATLAB

Abstract
By default, all variables in MATLAB are double-precision matrices. You do not need to declare a type for these variables. Matrices can be multidimensional and are accessed using 1-based indices via parentheses. You can address elements of a matrix using a single index, taken column-wise, or one index per dimension. To create a matrix variable, simply assign a value to it, like this 2 × 2 matrix a:
Michael Paluszek, Stephanie Thomas

Chapter 5. MATLAB Graphics

Abstract
Plotting is used extensively in machine learning problems. MATLAB plots can be two or three dimensional. The same data can be represented using many different types of plots.
Michael Paluszek, Stephanie Thomas

Chapter 6. Machine Learning Examples in MATLAB

Abstract
The remainder of the book provides machine learning examples in MATLAB that span the technologies discussed. Each example provides a useful application in its own right. Full source code is provided. In each case the theory behind the code is provided. References for further study are provided. Each example is self-contained and addresses one of the autonomous learning technologies discussed earlier in the book. You can jump around and try the examples that interest you the most.
Michael Paluszek, Stephanie Thomas

Chapter 7. Face Recognition with Deep Learning

Abstract
A general neural net is shown in Figure 7.1. This is a “deep learning” neural net because it has multiple internal layers.
Michael Paluszek, Stephanie Thomas

Chapter 8. Data Classification

Abstract
The remainder of the book provides machine learning examples in MATLAB that span the technologies discussed. Each example provides a useful application in its own right. Full source code is provided. In each case the theory behind the code is provided. References for further study are provided. Each example is self-contained and addresses one of the autonomous learning technologies discussed earlier in the book. You can jump around and try the examples that interest you the most.
Michael Paluszek, Stephanie Thomas

Chapter 9. Classification of Numbers Using Neural Networks

Abstract
Pattern recognition in images is a classic application of neural nets. In this case, we will look at images of computer-generated digits and identify the digits correctly. These images will represent numbers from scanned documents. Attempting to capture the variation in digits with algorithmic rules, considering fonts and other factors, quickly becomes impossibly complex, but with a large number of examples, a neural net can readily perform the task. We allow the weights in the net to perform the job of inferring rules about how each digit may be shaped, rather than codifying them explicitly.
Michael Paluszek, Stephanie Thomas

Chapter 10. Kalman Filters

Abstract
The remainder of the book provides machine learning examples in MATLAB that span the technologies discussed. Each example provides a useful application in its own right. Full source code is provided. In each case the theory behind the code is provided. References for further study are provided. Each example is self-contained and addresses one of the autonomous learning technologies discussed earlier in the book. You can jump around and try the examples that interest you the most.
Michael Paluszek, Stephanie Thomas

Chapter 11. Adaptive Control

Abstract
Consider a primary car that is driving along a highway at variable speeds. It carries a radar that measures azimuth, range, and range rate. Many cars pass the primary car, some of which change lanes from behind the car and cut in front. The multiple-hypothesis system tracks all cars around the primary car. At the start of the simulation there are no cars in the radar field of view. One car passes and cuts in front of the radar car. The other two just pass in their lanes. You want to accurately track all cars that your radar can see.
Michael Paluszek, Stephanie Thomas

Chapter 12. Autonomous Driving

Abstract
Consider a primary car that is driving along a highway at variable speeds. It carries a radar that measures azimuth, range, and range rate. Many cars pass the primary car, some of which change lanes from behind the car and cut in front. The multiple-hypothesis system tracks all cars around the primary car. At the start of the simulation there are no cars in the radar field of view. One car passes and cuts in front of the radar car. The other two just pass in their lanes. You want to accurately track all cars that your radar can see.
Michael Paluszek, Stephanie Thomas
Additional information