NB. I was sent this book as a review copy.

http://i0.wp.com/pup-assets.imgix.net/onix/images/9780691233734.jpg?resize=336%2C480&ssl=1

From Princeton University Press

I’ve just taught a course on mathematics for data science. Sadly it was only ten hours long, so there was only so much that I could cover. However, I feel that was taught was sufficient to get my students to the point that they would feel both comfortable with, and highly motivated to read Patterns, Predictions and Actions.

The balance between theory, application and narrative in the book is, I think, just right, making it a genuinely pleasurable book to read cover to cover, or to dip into a given topic to find the mathematical details (or at least what you need to get started). As with any foundational book, each topic could be covered in massively more detail, but that would simply make it a book, different from the authors’ intentions. The jump between the ideas and mathematical principle of Support Vector Machines, as given on one page, the optimisation methods of linear programming, and the practical aspect of coding up of such an algorithm are missing, but given the aims of the book, this doesn’t feel like a loss. Having read about SVM’s, a student could search for an SVM implementation, or code it up by hand relatively easily. In this way, the book is rather different from many books which introduce machine learning alongside the coding aspects. While I like such books, one can get lost trying to remember the syntax, when really what is important is to understand what is going on underneath the hood.

While it may seem obvious, to have a chapter on Datasets alone was refreshing and showed the importance of good data practices. I might perhaps have liked a little more on the problems with biases in datasets and the AI alignment problem, though perhaps this would have taken it some way outside of the scope of the book. That being said, these issues are raised from time to time within the book, and given a little more room in the epilogue, at least to a limited extent, but I think that given how important this is, perhaps a longer section dedicated to the topic may be enriching to the newcomer. There is a lot to discuss on this topic!

That there was a whole section on Causality was also very interesting. This is a topic often left out of machine learning textbooks, and this gave a very clear picture of both the theory and practice of Causal Influence. I have seen few other treatments of the topic that gave such a clear narrative in such a limited space.

The very last (pre-epilogue) chapter is on Reinforcement Learning, and this is the one that I think comes at the topic in the most unorthodox way. This may not be a criticism, but it’s an interesting approach, very different from the classic texts on the subject. As this is an area that I spend most of my time thinking about, it’s hard for me to have an objective opinion on how a newcomer may find this chapter, and I will be keen to try this out on my students to see what they make of it.

Overall, I think that this is a thorough, very clearly written overview on the subject of machine learning for those with the prerequisite mathematical tools of calculus, linear algebra and probability, and I will be recommending this book to my undergraduate students (from second year on) who want to dip their toes in the water. It will come with the caveat that they should be implementing each algorithm as they come across to get their hands a little dirtier than this book will on its own.

How clear is this post?