Solved – Which Machine Learning book to choose (APM, MLAP or ISL)

machine learningreferences

I'm searching a book as a referesher in machine learning (I have taken a lecture in machine learning some times ago). I will be applying machine learning in a project.

I have searched a lot of books and found the following three the one which best fits to me:

  • Applied Predictive Modeling by Kuhn and Johnson
  • Machine learning an Algorithmic Perspective (second edition) by Marsland
  • An Introduction to Statistical Learning by Hastie

Applied Predictive Modeling and An Introduction to Statistical Learning uses R as examples and Machine learning an Algorithmic Perspective uses Python. The used language does not matter that much because I'm not really interested in language examples (I'm using Matlab) and I will probably skip such examples.

The advantage of Applied Predictive Modeling seems to be that it covers the whole machine learning procedure (feature selection etc.) and seems to be very well written. The advantage of Machine learning an Algorithmic Perspective (second edition) is that it covers more topics (ensemble learning, graphical models, gaussian processes) and has perhaps a bit more math.

Which one of these three books would you recommend (and why)?

Best Answer

Opinions about a book is always subjective. I personally liked both books

  • Applied Predictive Modeling by Kuhn and Johnson
  • An Introduction to Statistical Learning by Hastie (ISL)

I like ISL better since it explains more statistic knowledge than applications. In addition, the PLUS version ESL is one of the best books in machine learning. And if you are getting familiar with the notation in ISL book, you can get deeper by looking at the ESL book.

The Applied Predictive Modeling seems no too much math but a lot of applications, you can play with the R CARET library to learn it quickly.

My suggestion, want to go deeper? read the ISL book then ESL book.

If you just want to roughly understand what are predictive models, play with R CARET library on UCI data or check some Kaggle Scripts.