I want to learn machine learning. I found tons of material on the internet but couldn't decide which book to get started with.
I would recommend the following:
- "An Introduction to Statistical Learning" by Gareth James, Daniela Witten, Trevor Hastie and Robert Tibshirani. It is freely available as a PDF and a series of video lectures.
- "Python Machine Learning" by Sebastian Raschka. It is very well-written, good combination of explanations and code, and the author is responsive.
- "Fundamentals of Machine Learning for Predictive Data Analytics: Algorithms, Worked Examples, and Case Studies", by John D. Kelleher, Brian Mac Namee and Aoife D'Arcy
For more advanced treatments:
- "The Elements of Statistical Learning: Data Mining, Inference, and Prediction" (as mentioned previously).
- "Bayesian Reasoning and Machine Learning", by David Barber.
- "Machine Learning", by Tom Mitchell.
- "Machine Learning: A Probabilistic Perspective", by Kevin P. Murphy.
- "Pattern Recognition and Machine Learning", by Christopher Bishop.
In my opinion, one of the best: The Elements of Statistical Learning: Data Mining, Inference, and Prediction, 2nd ed., 2009, by Trevor Hastie, Robert Tibshirani, Jerome Friedman.
And you don't even have to buy it: http://web.stanford.edu/~hastie/ElemStatLearn/
Principles of Data Mining by Hand, Mannila & Smyth is a good entry level text. It has chapters on data, visualizing, analyses and uncertainty, models/patterns, score functions, search and optimization, descriptive modeling, predictive modeling for classification, predictive modeling for regression, data organization, finding patterns and rules, retrieval by content, optimization, etc. It has been used for computer science students, as a background reading text.