** I think it is important to disclose your skill level when reviewing these types of textbooks. The complete beginner, as opposed to a statistics major with minimal programming experience will gain different essential skills from the textbook. I am an Economics major with fundamental knowledge in most of the rudimentary parts of Machine Learning (Statistics, programming, analytics). I also read PY4E, Intro to Statistical Learning, and Python for Data Analysis before this. (First 2 are available online for free by the way) **
Dr. Raschka hits a personal sweet spot as he offers a lot more mathematical theory compared to most of the other introductory Python Machine Learning textbooks I browsed through. This ultimately lead me to picking this text based on my intermediate programming level and background knowledge of machine learning.
Aside from the math, I loved his occasional coding-from-scratch approach to models like the Perceptron, Adaline and even a neural network! I think that this under-the-hood approach is tedious in isolation for every model and could easily turn to be overwhelming for a beginner, but it improves your skill to think computationally(Which I still feel like I lack) and not just take advantage of the readily available libraries. Another huge plus was that Dr. Raschka puts links to academic papers and lecture slides for supplementary information. They provides an extensive, but mainly theoretical approach to some models. If you feel a little lost with some of the brief algorithm descriptions, these can really help bring them to clarity.
That being said, I sometimes found the algorithms vaguely written, and there could have been a greater emphasis on the assumptions of each model's implementation. But there are plenty of resources out there to help demystify any misinterpretations you have.At times, I felt they could’ve touched on some other models like QDA. mixture models, and Partial Least Squares. But it is an introductory textbook and cannot give you everything, I would have found a couple more hands-on approaches of end-to-end pipelining helpful so the reader feels ready to undertake their own mini-project at the end.
I liked this book and it was a great introduction to some important models. It also gives you a basic grasp of libraries like sci-kit learn, nltk, and TensorFlow (I say fundamental because sci-kit learn user guide is over 2,700 pages long). In my opinion, I think this book is well-suited for a reader with a quantitative background (Stats, Comp Sci, Engineering etc.) as the proofs and algorithms can get a little hairy for a complete beginner. I would read this with my Jupyter notebook open, and with access to other library manuals open (Numpy, sci-kit learn, pandas etc) in the browser to get the most out of this book.
I was motivated to write a review for this textbook because I have found there is an ‘information overload’(Packt, Oreilly, and Manning are all pushing out books like the world is ending tomorrow) for data science textbooks which make it incredibly difficult to pick which one to avenue to take. I have frequently changed my mind on which activity to do next.. I’ll think about reading an NLP-based textbook, to a pure python based textbook , to doing Kaggle competitions, then to MOOCs, or to YouTube tutorials. Finding an appropriate resource isn’t easy and it’s different for everyone. The software engineer would understand the from-scratch python code very quickly while a math major would whip right through the mathematical proofs.
Everybody has a different path to becoming a self-taught data scientist and I just wanted to share my personal experience with the textbook. If anybody has questions I can also happily answer them and I'd love to hear any experienced reader's recommendations/ advice for me as well: (As long you’re not a YouTuber pushing some junk-grade course)
I am looking for a textbook that is heavily applied which works through ML project(s) or application(s) and is also directed for the intermediate to advanced level. Specifically, Something challenging but that will mainly help give me guidance and advice on how to get a personal project off the ground.
Thanks!
9/10 ...Out of 10 scale is taken from my friend Ryan Bergen who also invoked me to write the review.