A Proven, Hands-On Approach for Students without a Strong Statistical Foundation
Since the best-selling first edition was published, there have been several prominent developments in the field of machine learning, including the increasing work on the statistical interpretations of machine learning algorithms. Unfortunately, computer science students without a strong statistical background often find it hard to get started in this area.
Remedying this deficiency, Machine Learning: An Algorithmic Perspective, Second Edition helps students understand the algorithms of machine learning. It puts them on a path toward mastering the relevant mathematics and statistics as well as the necessary programming and experimentation.
New to the Second Edition
- Two new chapters on deep belief networks and Gaussian processes
- Reorganization of the chapters to make a more natural flow of content
- Revision of the support vector machine material, including a simple implementation for experiments
- New material on random forests, the perceptron convergence theorem, accuracy methods, and conjugate gradient optimization for the multi-layer perceptron
- Additional discussions of the Kalman and particle filters
- Improved code, including better use of naming conventions in Python
Suitable for both an introductory one-semester course and more advanced courses, the text strongly encourages students to practice with the code. Each chapter includes detailed examples along with further reading and problems. All of the code used to create the examples is available on the author’s website.
Table of Contents
Introduction. Linear Discriminants. The Multi-Layer Perceptron. Radial Basis Functions and Splines. Support Vector Machines. Learning with Trees. Decision by Committee: Ensemble Learning. Probability and Learning. Unsupervised Learning. Dimensionality Reduction. Optimization and Search. Evolutionary Learning. Reinforcement Learning. Markov Chain Monte Carlo (MCMC) Methods. Graphical Models. Python.
Stephen Marsland is a professor of scientific computing and the postgraduate director of the School of Engineering and Advanced Technology (SEAT) at Massey University. His research interests in mathematical computing include shape spaces, Euler equations, machine learning, and algorithms. He received a PhD from Manchester University
"I thought the first edition was hands down, one of the best texts covering applied machine learning from a Python perspective. I still consider this to be the case. The text, already extremely broad in scope, has been expanded to cover some very relevant modern topics … I highly recommend this text to anyone who wants to learn machine learning … I particularly recommend it to those students who have followed along from more of a statistical learning perspective (Ng, Hastie, Tibshirani) and are looking to broaden their knowledge of applications. The updated text is very timely, covering topics that are very popular right now and have little coverage in existing texts in this area."
—Intelligent Trading Tech blog, April 2015
"The book's emphasis on algorithms distinguishes it from other books on machine learning (ML). This is further highlighted by the extensive use of Python code to implement the algorithms. ... The topics chosen do reflect the current research areas in ML, and the book can be recommended to those wishing to gain an understanding of the current state of the field."
—J. P. E. Hodgson, Computing Reviews, March 27, 2015
"I have been using this textbook for an undergraduate machine learning class for several years. Some of the best features of this book are the inclusion of Python code in the text (not just on a website), explanation of what the code does, and, in some cases, partial numerical run-throughs of the code. This helps students understand the algorithms better than high-level descriptions and equations alone and eliminates many sources of ambiguity and misunderstanding."
"This book will equip and engage students with its well-organised and -presented material. In each chapter, they will find thorough explanations, figures illustrating the discussed concepts and techniques, lots of programming (Python) and worked examples, practice questions, further readings, and a support website. The book will also be useful to professionals who can quickly inform and refresh their memory and knowledge of how machine learning works and what are the fundamental approaches and methods used in this area. As a whole, it provides an essential source for machine learning methodologies and techniques, how they work, and what are their application areas."
—Ivan Jordanov, University of Portsmouth, UK
Praise for the First Edition:
"… liberally illustrated with many programming examples, using Python. It includes a basic primer on Python and has an accompanying website. It has excellent breadth and is comprehensive in terms of the topics it covers, both in terms of methods and in terms of concepts and theory. … I think the author has succeeded in his aim: the book provides an accessible introduction to machine learning. It would be excellent as a first exposure to the subject, and would put the various ideas in context …"
—David J. Hand, International Statistical Review (2010), 78
"If you are interested in learning enough AI to understand the sort of new techniques being introduced into Web 2 applications, then this is a good place to start. … it covers the subject matter of many an introductory course on AI and it has references to the source material and further reading but it is written in a fairly casual style. Overall it works and much of the mathematics is explained in ways that make it fairly clear what is going on … . This is a suitable introduction to AI if you are studying the subject on your own and it would make a good course text for an introduction and overview of AI."
—I-Programmer, November 2009