68 of 72 people found the following review helpful:
5.0 out of 5 stars
A great book for students, February 5, 2010
This review is from: Machine Learning: An Algorithmic Perspective (Chapman & Hall/Crc Machine Learning & Pattern Recognition) (Hardcover)
This is an good book on machine learning for students at the advanced
undergraduate or Masters level, or for self study, particularly if
some of the background math (eigenvectors, probability theory, etc)
is not already second nature.
Although I am now familiar with much of the math in this area and consider
myself to have intermediate knowledge of machine learning, I can still recall
my first attempts to learn some mathematical topics. At that time my approach
was to implement the ideas as computer programs and plot the results. This
book takes exactly that approach, with each topic being presented both
mathematically and in Python code using the new Numpy and Scipy libraries.
Numpy resembles Matlab and is sufficiently high level that the book code
examples read like pseudocode.
(Another thing I recall when I was first learning was the mistaken
belief that books are free from mistakes. I've since learned to
expect that every first edition is going to have some, and doubly so
for books with math and code examples. However the fact that many of the examples
in this book produce plots is reassuring.)
As mentioned I have only intermediate knowledge of machine learning, and
have no experience with some techniques. I learned regression trees
and ensemble learning from this book -- and then implemented an ensemble
tree classifier that has been quite successful at our company.
Some other strong books are the two Bishop books (Neural Networks for Pattern
Recognition; Pattern Recognition and Machine Learning),
Friedman/Hastie/Tibshirani (Elements of Statistical Learning) and
Duda/Hart/Stork (Pattern Classification). Of these, I think the first Bishop
book is the only other text suitable for a beginner, but it doesn't have the
explanation-by-programming approach and is also now a bit dated (Marsland
includes modern topics such as manifold learning, ensemble learning, and a bit
of graphical models). Friedman et al. is a good collection of algorithms,
including ones that are not presented in Marsland; it is a bit dry however.
The new Bishop is probably the deepest and best current text, but it is
probably most suited for PhD students. Duda et al would be a good book at a
Masters level though its coverage of modern techniques is more limited. Of
course these are just my impressions. Machine learning is a broad subject and
anyone using these algorithms will eventually want to refer to several of these books.
For example, the first Bishop covers the normalized flavor of radial basis
functions (a favorite technique for me), and each of the mentioned books has
their own strengths.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
15 of 15 people found the following review helpful:
5.0 out of 5 stars
Different than other 'textbooks' on ML, November 7, 2010
This review is from: Machine Learning: An Algorithmic Perspective (Chapman & Hall/Crc Machine Learning & Pattern Recognition) (Hardcover)
I first saw this book on a colleague's bookshelf; i picked it up and briefly looked through it. The simple diagrams and the relative lack of equations (compared to e.g., Bishop) might suggest to you that it's a 'beginner' text--and by that i mean that the textbook is only an introduction to ML and doesn't teach you enough so that you can begin writing ML code to solve real classification/regression problems. That's what i though at first, and i was wrong. This is an introductory text, but only in the sense that it's accessible to more or less anyone, but this book's explanation/theory and the practical examples (in python) are brilliantly integrated--the explanation (often summarizing two or three pages of terse equations found in other textbooks, in a single paragraph) helped me grok the code, and the code reinforced the theory behind the algorithm.
I don't think there's another ML book like this--it's aimed right at the blind spot framed by applied math reference-type books such as Bishop on one end, and books like 'Programming Collective Intelligence' which are dense with working ML code, but light on theory.
I also like this book because the code is written in NumPy, rather than in the Python standard library code. NumPy is what you would use 'in the real world' to code an ML algorithm, and if you understand the matrix-driven syntax, then the code is far more concise (e.g., no triply nested recursive loops) than the same algorithms coded using just the Python standard library.
In sum, an excellent book.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
20 of 22 people found the following review helpful:
5.0 out of 5 stars
Advanced Undergraduate or Early Graduate Level, February 8, 2010
This review is from: Machine Learning: An Algorithmic Perspective (Chapman & Hall/Crc Machine Learning & Pattern Recognition) (Hardcover)
There are two or three things that I really like about this book.
First, so many books of this type seem to leave off the first 20 or so pages that should tell you what it is that they are trying to do. Instead of assuming that you know what Machine Learning is all about, this book has an initial chapter that explains in simple terms what we are trying to do here.
Second, instead us using some kind of psuedocode, the examples are written in a standard language, Python. Python is a free language in the open source community so students can get/use it without incurring the costs associated with some other languages. It is also intended to be very readable which makes the demonstration programs easier to understand. There is also a chapter on programming in Python.
Machine learning usually is put into the computer science department in universities, and as a result is usually taught to computer science students. In fact, machine learning also requires more mathematical background and more engineering background than most computer science students have. The approach used in this book is to discuss algorithms used in machine learning, but to do so by stressing how and why they work.
The author says that the book is suitable for undergraduate use. Yes, it is, but for the rather advanced undergraduate or even early graduate level student
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No