I often get questions about how to become a data scientist or machine learning expert. While many books are available on the topics of pattern recognition and machine learning, most of them focus on a small set of popular subjects such as neural networks or kernel methods. Personally, I believe that a firm fundamental understanding of Bayesian inference, probabilistic theory, and parameter estimation and optimalization is essential in becoming a data scientist. Once you start to see relations between these fundamental concepts, learning about a single machine learning topic such as neural networks is as easy as learning the syntax of a programming language is to a seasoned programmer.
The following is a shortlist of the top machine learning books currently available. Each of these books will help you gain both an intuitive insight into and a theoretical foundation of the field of machine learning. I personally believe these books to be invaluable to any data scientist, whether you are just getting started, or you have experience in the field.
This is the book where it all started for me. The author, Richard O. Duda, is one of the most famous pioneers in pattern recognition and his book is regarded by many as the bible of pattern recognition and machine learning. If you would only want to read one book, then this should be the one. Duda starts by an introduction into probabilistics and gradually continues with more advanced topics. Although the mathematics are not avoided, they are used in a practical manner to help you gain a deeper understanding of the most important machine learning techniques. When teaching pattern recognition at the University of Antwerp, this is the textbook I recommended to my students.
Compared to ‘Pattern Classification‘ from Richard O. Duda, this book might give a slightly broader overview of the domain of machine learning, ranging from supervised learning to genetic algorithms and reinforcement learning. This book might be the best place to get started if you think you lack the mathematical background to start with more theoretical works such as ‘Pattern Classification‘. This book covers most of the major machine learning algorithms and explains them in a practical and intuitive manner. As such, it can be seen as an easy way into the world of machine learning, and I would recommend it to anyone who is new to the domain of pattern recognition and data science.
The author of this book, Christopher Michael Bishop, leads the renowned machine learning and perception group at Microsoft Research, and is considered one of the big guys in the machine learning industry. Personally, I believe this to be one of the best books to get started with machine learning if you have a strong mathematical background. Whereas ‘Machine Learning‘ from Tom M. Mitchell is the perfect introduction into machine learning if you are a computer scientist, this book is the perfect introduction into the field if you are a PhD candidate or a Mathematics major. ‘Pattern Classification‘ from Duda can probably be considered as a compromise between both.
From all books in my shortlist, this one is the most recent and hence the most up-to-date, written by Kevin P. Murphy, a well known machine learning expert from Google. The book contains over 1000 pages and provides a unique and impressive overview of both traditional machine learning techniques such as kernel based methods, and recent advances in machine learning such as deep neural networks. The reason I put this book at the bottom of my list is not because it isn’t a great book -it definitely is- but simply because the book covers almost every important topic in machine learning and by doing so often lacks a bit of depth. The book should be considered as an impressive piece of work to be used as a reference book by those who have some experience in the field. If you think you have nothing more to learn from the books earlier up in this list, and if you want to start broadening your view of the machine learning world, then this is the book you want!