By Kevin Murphy, MIT Press (2022).
This is one of the best machine learning books that I purchased in the last few years. Very comprehensive, covering a lot of statistical science too. The level is never too high, despite a few advanced concepts being discussed. There is a lot of focus on applications, especially image processing, and in particular automated character recognition, mostly digits.
The author regularly criticizes non-Bayesian statisticians. However, many of the methods described in the book are non-Bayesian. I was pleasantly surprised to see that my new frequentist concept of dual confidence region (discussed in my new book) is related to credible regions in Bayesian statistics.
The exercises are classic, nothing really original. Many have solutions only available to qualified instructors, that is, not to the public at large. But the quality of the style and formatting is spectacular. It would have made for a great PDF document (of over 800 pages) with all the navigation features included in the book. Indeed, the author uses the exact same formatting and navigation structure as in my new book. But with a paper copy, it is a bit more difficult to use. Yet, the text highlighted in red (which in my book are clickable links) visually helps finding the relevant content in the book.
The author does not go deep into the theory, with only a few elementary proofs. But that would have added a chunk of pages to an already big book. Being a self-learner, I find the first few hundred pages progressing too slowly and remaining mostly at a beginner level. The bibliography and index are large. I would have preferred an index with a two-level hierarchy, with top keywords having several sub-entries.
All in all, a very comprehensive, modern book on the topic. Also keep in mind that the subtitle is An Introduction. That is, experts will find parts of this book to be a bit basic. But the beginner will enjoy it. For the price I paid ($110 + taxes) it is a great value, and I definitely recommend it. Clearly the author has substantial practical experience that he gained while working at Google, and it shows in the book. I am looking forward to getting the second volume, with subtitle Advanced Topics.
The code included is in Python. The book has its own webpage on GitHub, probml.ai. A draft version of the book, in PDF and thus with full advanced navigation features, was available here at the time of writing. Surprisingly, free of charge, though I assume the author will remove it at some point. Indeed, Advanced Topics (the second volume, yet unpublished) was also available in PDF format, from here.