

Buy Machine Learning: An Algorithmic Perspective, Second Edition (Chapman & Hall/CRC Machine Learning & Pattern Recognition) on desertcart.com ✓ FREE SHIPPING on qualified orders Review: Outstanding guide to Machine Learning using Python - I am updating my review of this book because apparently in my first review I didn't do a very good job. This made the review less than useful. I will try to do a better job this time. If it still isn't helpful let me know and I will try again. Like the title says, this book takes an algorithmic approach to teaching machine learning - as opposed to an applied or example based approach. The expectation is that you would get a tutorial on all the main algorithms rather than how to put various algorithms together to solve a particular problem in, say, fraud detection. The Contents reveal the algorithm basis: 1. Introduction (types of machine learning, why you would want to do it in the first place and a quick introduction to supervised learning) 2. Preliminaries (Key ideas about the problem of over fitting and the what I consider the most important topic: how to test and know when you have a program that has learned something other than the noise). Here the author also covers some ideas about the role of probability. Calling it "turning data into probabilities" is a bit odd, but that's really what we do. Early on he gets the key ideas of the ROC curve out of the way - something many texts just gloss over. I think the secret to understanding machine learning is understanding the idea behind the bias-variance trade-off (it is also handled very well in The Elements of Statistical Learning: Data Mining, Inference, and Prediction, Second Edition (Springer Series in Statistics) which I used to teach a class and read before I read this book. 3. Coverage of Artificial Neural Networks starting with the perceptron and why you would want to go beyond linear discriminators 4. The multilayer ANN 5. Radial Basis Functions and Splines - this is interesting because, Andrew Ng presents a linear regression as the most basic learning algorithm in his Coursera course which means all of the fitting methods, even when not used for classification are relevant. 6. Is a section on dimensional reduction - feature selection and other methods like PCA and even factor analysis (most people stop with PCA which I personally think is a mistake, because you can accidentally end up keeping the features with all the noise and throwing out the meaningful linear combinations. 7.This is a cool section not seen in basic books on probabilistic methods - sure everyone teaches k-NN, but this one has a nice discussion of Gaussian mixture models 8. Talks about the support vector machine. Most people don't get introduced to the idea that ANN and SVMs are actually very similar - they are both large margin classifiers and so knowing something about SVMs will help, even if you end up with some other large margin classifier (with or without kernels) 9. This section talks about search and optimization. The way Ng teaches machine learning, you always begin with the error surface, take the derivative and then search for a minimum in the learning function. You quit teaching when you have minimized the error on the training set without out driving the error too high on the validation set - so in a way all these approaches are optimization methods. 10. A whole section of genetic algorithms (which I jumped to first) a very clear explanation and a good example that really ran so I could see what was going on. 11. Reinforcement learning 12. Learning with trees - CART trees end the chapter something everyone working in this area should know something about. He saves random forests for the next section (where I suppose it really belongs) 13. This section is on bagging an boosting and then compares the idea of a collection of weak learners (like stubby random trees) as a powerful tool - the idea behind random forests. 14. Unsupervised learning. People tend to focus on supervised learning for a very good reason, but there are lots of examples where the cost of putting a label on a data example is too high, so an unsupervised method is a good call. 15. Coverage of Markov Chain methods (MCMC) - again this does not get covered in every applied book. 16. Graphical models - the Bayesian Network and Probabilistic Network Models along with the hidden Markov models 17. Deep belief networks 18. Gaussian process regression and classification The book concludes with an appendix on Python - getting started etc. I don't think this is quite enough Phython unless you are already pretty familiar with the language. A critic of my first review suggested that I just bashed R and didn't talk about the book - not a completely unfair statement. R keeps data in data frames and Python is much more list and directory based. Data frames and collections are related and there are ways to do list comprehension in both languages. and Python has a data frame package to make using R-like constructs easier if you happen to be coming from R and like them (the package is called Pandas) Both are good languages, but I will stand by my original statement that R is a statistical language at its core. Many of the packages are written in C so they are fast (like the ones written for Python). It has been my experience that the open source tools for R development are just what the commentator said: they are adequate. I my humble opinion, R-Studio has a lot of catching up to do to be as good as professional tools like the JetBrains stuff (PyCharm). Look at MatLab compared to Octave. At lest the community version of PyCharm is free. R-Studio is not fast, and he dirty secret of R is that everything you do has to fit in memory at once, so you have to be very careful with memory management or you will run out and R will crash - it happens to me everyday. Almost all of the ML methods are statistically based so R and all the books (like An Introduction to Statistical Learning: with Applications in R (Springer Texts in Statistics) are totally brilliant. But if you want to see what it is under the hood, I suggest you look at Advanced R (Chapman & Hall/CRC The R Series) . This will give you a deep dive on the internals. Compare it to Python Scripting for Computational Science (Texts in Computational Science and Engineering) and make the call for yourself. I have used both R and Python for both prototyping advanced algorithms and putting code live in production. What tipped the scale for me was the productivity. Now that the data science community has started building state-of-art tools for Python, (not to say anything negative about the statistics community who put all of machine learning on a solid footing), I prefer a rapid development language with good tools, test-first frameworks and solid software engineering practices as part of the culture. The book reviewed here allows you to learn almost all of the algorithms used for machine learning and in the end you will be able to produce fast, readable, testable code. Review: I don't think it is a good book. The author put much effort to using ... - I don't think it is a good book. The author put much effort to using many examples and analogies to make it more easy to comprehensible. However he seems fail to illustrate those real theory clearly and completely.




| Best Sellers Rank | #143,692 in Books ( See Top 100 in Books ) #46 in Data Mining (Books) #66 in Business Statistics #152 in Statistics (Books) |
| Customer Reviews | 4.3 4.3 out of 5 stars (92) |
| Dimensions | 7 x 1.25 x 10 inches |
| Edition | 2nd |
| ISBN-10 | 1466583282 |
| ISBN-13 | 978-1466583283 |
| Item Weight | 2 pounds |
| Language | English |
| Part of series | Chapman & Hall/Crc Machine Learning & Pattern Recognition |
| Print length | 458 pages |
| Publication date | October 8, 2014 |
| Publisher | Chapman and Hall/CRC |
A**R
Outstanding guide to Machine Learning using Python
I am updating my review of this book because apparently in my first review I didn't do a very good job. This made the review less than useful. I will try to do a better job this time. If it still isn't helpful let me know and I will try again. Like the title says, this book takes an algorithmic approach to teaching machine learning - as opposed to an applied or example based approach. The expectation is that you would get a tutorial on all the main algorithms rather than how to put various algorithms together to solve a particular problem in, say, fraud detection. The Contents reveal the algorithm basis: 1. Introduction (types of machine learning, why you would want to do it in the first place and a quick introduction to supervised learning) 2. Preliminaries (Key ideas about the problem of over fitting and the what I consider the most important topic: how to test and know when you have a program that has learned something other than the noise). Here the author also covers some ideas about the role of probability. Calling it "turning data into probabilities" is a bit odd, but that's really what we do. Early on he gets the key ideas of the ROC curve out of the way - something many texts just gloss over. I think the secret to understanding machine learning is understanding the idea behind the bias-variance trade-off (it is also handled very well in The Elements of Statistical Learning: Data Mining, Inference, and Prediction, Second Edition (Springer Series in Statistics) which I used to teach a class and read before I read this book. 3. Coverage of Artificial Neural Networks starting with the perceptron and why you would want to go beyond linear discriminators 4. The multilayer ANN 5. Radial Basis Functions and Splines - this is interesting because, Andrew Ng presents a linear regression as the most basic learning algorithm in his Coursera course which means all of the fitting methods, even when not used for classification are relevant. 6. Is a section on dimensional reduction - feature selection and other methods like PCA and even factor analysis (most people stop with PCA which I personally think is a mistake, because you can accidentally end up keeping the features with all the noise and throwing out the meaningful linear combinations. 7.This is a cool section not seen in basic books on probabilistic methods - sure everyone teaches k-NN, but this one has a nice discussion of Gaussian mixture models 8. Talks about the support vector machine. Most people don't get introduced to the idea that ANN and SVMs are actually very similar - they are both large margin classifiers and so knowing something about SVMs will help, even if you end up with some other large margin classifier (with or without kernels) 9. This section talks about search and optimization. The way Ng teaches machine learning, you always begin with the error surface, take the derivative and then search for a minimum in the learning function. You quit teaching when you have minimized the error on the training set without out driving the error too high on the validation set - so in a way all these approaches are optimization methods. 10. A whole section of genetic algorithms (which I jumped to first) a very clear explanation and a good example that really ran so I could see what was going on. 11. Reinforcement learning 12. Learning with trees - CART trees end the chapter something everyone working in this area should know something about. He saves random forests for the next section (where I suppose it really belongs) 13. This section is on bagging an boosting and then compares the idea of a collection of weak learners (like stubby random trees) as a powerful tool - the idea behind random forests. 14. Unsupervised learning. People tend to focus on supervised learning for a very good reason, but there are lots of examples where the cost of putting a label on a data example is too high, so an unsupervised method is a good call. 15. Coverage of Markov Chain methods (MCMC) - again this does not get covered in every applied book. 16. Graphical models - the Bayesian Network and Probabilistic Network Models along with the hidden Markov models 17. Deep belief networks 18. Gaussian process regression and classification The book concludes with an appendix on Python - getting started etc. I don't think this is quite enough Phython unless you are already pretty familiar with the language. A critic of my first review suggested that I just bashed R and didn't talk about the book - not a completely unfair statement. R keeps data in data frames and Python is much more list and directory based. Data frames and collections are related and there are ways to do list comprehension in both languages. and Python has a data frame package to make using R-like constructs easier if you happen to be coming from R and like them (the package is called Pandas) Both are good languages, but I will stand by my original statement that R is a statistical language at its core. Many of the packages are written in C so they are fast (like the ones written for Python). It has been my experience that the open source tools for R development are just what the commentator said: they are adequate. I my humble opinion, R-Studio has a lot of catching up to do to be as good as professional tools like the JetBrains stuff (PyCharm). Look at MatLab compared to Octave. At lest the community version of PyCharm is free. R-Studio is not fast, and he dirty secret of R is that everything you do has to fit in memory at once, so you have to be very careful with memory management or you will run out and R will crash - it happens to me everyday. Almost all of the ML methods are statistically based so R and all the books (like An Introduction to Statistical Learning: with Applications in R (Springer Texts in Statistics) are totally brilliant. But if you want to see what it is under the hood, I suggest you look at Advanced R (Chapman & Hall/CRC The R Series) . This will give you a deep dive on the internals. Compare it to Python Scripting for Computational Science (Texts in Computational Science and Engineering) and make the call for yourself. I have used both R and Python for both prototyping advanced algorithms and putting code live in production. What tipped the scale for me was the productivity. Now that the data science community has started building state-of-art tools for Python, (not to say anything negative about the statistics community who put all of machine learning on a solid footing), I prefer a rapid development language with good tools, test-first frameworks and solid software engineering practices as part of the culture. The book reviewed here allows you to learn almost all of the algorithms used for machine learning and in the end you will be able to produce fast, readable, testable code.
H**I
I don't think it is a good book. The author put much effort to using ...
I don't think it is a good book. The author put much effort to using many examples and analogies to make it more easy to comprehensible. However he seems fail to illustrate those real theory clearly and completely.
R**Y
Great machine learning book for those with rusty match skills or less math inclined.
For those diving into machine learning who are rusty at math or not a math expert this is a solid, understandable book on the topic. It covers a wide variety of machine learning algorithms, and while it does include some math, the math isn't the primary and only focus like other books on the topic. The math sections are less involved, giving the formulas and basic information the various algorithms are based on, but most importantly it's accompanied by easier to understand explanations and pseudo code/actual code implementations. I certainly hope the author continues to update and maintain this book over time - I've shown this book to coworkers who are also less math inclined and they liked the way the book was written and were interested in picking up their own copies.
M**T
Go ML book for my class.
I use this book in my Machine learning class. Really good implementation focused view of the innards (algorithms) in machine learning. Like his style. While using python is great, his use of numpy leads to the occasional confusion. But 2nd edition is definitely better than the first which was great. I am looking forward to teaching from this book for years to come.
I**E
Great machine learning resource from "Down Under"
A great choice for a primary text in machine learning. Written in an easy-to-follow conversational style. Provides access to great online resources. As a bonus, a great way to get bootstrapped into advanced Python addressing. Could benefit from real-valued genetic algorithm chromosome examples.
K**O
a easy-reading book
Generally, it's a good book. But there are some errors and some math notations are confusing.
H**I
Decent intro to machine learning, nice Python+Numpy code, but many errors
I am somewhat disappointed by this book. Today I'm feeling generous, but it was tough to bump this up from 2-stars because to me it at times created more confusion than anything else. First off, this is an introduction certainly, probably at the sophomore college level. The math is there but not used especially well, and I believe the intention of the book is to sort of cater to those whose math backgrounds aren't very good. There is certainly a need for a book like this, but it shouldn't be used for more than supplementary material. There are many errors in this book, sometimes typographical but other times a little more serious. The writing style puts a bit of stress on the reader and I find myself jumping around the paragraph sometimes trying to figure out what is being said. The tone is meant to be casual and simple, but coupled with the numerous errors in the book it really felt like this edition was rushed. This was the most disappointing aspect. This book was useful to me for clarifying some things, but only because it was a different explanation that wasn't bogged down in mathematical rigor. I think it is a very good idea to have several books on the same subject for which you are studying seriously (I have three or four books on quantum mechanics, and even then it took many reads through them to really understand it). This book served its purpose in that sense. I also bought it because I was eagerly awaiting deep learning topics to find their way into ML texts. Sadly, this book didn't help me as I had been reading papers at this point, but I think it was a good introduction to deep learning and the types of neural networks typically used to build them and I applaud this initial effort by the author to include the material. I did find a few mistakes in the earlier chapters on Hopfield networks specifically, but I don't remember them being serious. I'm a Python programmer who uses Numpy a lot, and this was the best feature of this book. Most of the time I could quickly glance at the code and see what was really happening, and looking over the included code clarified some things for me as well. For textbooks in computational areas nowadays there's no excuse for not providing code, and I'm very glad to have had that to look at. Overall, this book could have been a lot better and has the potential to be a really great introduction to ML as its own textbook (at the underclass level, i.e. freshman and sophomore). The author simply didn't put in enough time to revising, or perhaps it was the editor's fault, not sure. The heavy usage of actual code was a big plus for me, and it covered some topics that aren't typically covered (deep neural networks) which was done well. For someone who is somewhat familiar with ML, this is a decent book to sprint through just to review and glean some bits and pieces. For the beginner, it can be a good introduction especially if you aren't as good at math as you'd like to be, but I'd recommend using it as a supplement to something at a higher level (perhaps Bishop's or Alpaydin's book, or even David Barber's book).
O**I
It represents everything I need as a beginner in machine learning. However, the author should update the codes in the book website.
J**O
Excelente livro sobre aprendizagem automática. O mais fácil que achei até agora; possui ótimos exemplos em Python. O autor utiliza linguagem pouco rebuscada e não precisa saber muita matemática ou estatística para acompanhar o livro. Se for acompanhar os exemplos, estude um pouco de Pyhton antes. Para iniciantes em aprendizagem automática recomendo ler este livro primeiro e depois pode seguir com o livro do Bishop.
C**N
E' un bel libro per chi ha conoscenze di matematica e/o statistica. Descrive chiaramente gli algoritmi dal punto di vista statistico. Gli esempi in python non sono poi cosi' numerosi e a volte sono un po' astratti. Se cercate in questo libro le basi matematiche degli algoritmi di machine learning allora e' quello che fa per voi... altrimenti cercate qualcos'altro.
A**R
for ML, must go with it. Good explaination about topics. Not for beginners.
A**W
The world of machine learning is explained in an easy to understand manner!
Trustpilot
Hace 2 meses
Hace 2 semanas