Vous voulez voir cette page en français ? Cliquez ici.

Sign in to turn on 1-Click ordering.
Amazon Prime Free Trial required. Sign up when you check out. Learn More
More Buying Choices
Have one to sell? Sell yours here

Machine Learning: An Algorithmic Perspective [Hardcover]

Stephen Marsland
2.0 out of 5 stars  See all reviews (1 customer review)
List Price: CDN$ 85.80
Price: CDN$ 78.10 & FREE Shipping. Details
You Save: CDN$ 7.70 (9%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 2 left in stock (more on the way).
Ships from and sold by Amazon.ca. Gift-wrap available.
Want it delivered Monday, September 22? Choose One-Day Shipping at checkout.


Amazon Price New from Used from
Kindle Edition CDN $55.96  
Hardcover CDN $78.10  
Save Up to 90% on Textbooks
Hit the books in Amazon.ca's Textbook Store and save up to 90% on used textbooks and 35% on new textbooks. Learn more.
There is a newer edition of this item:
Machine Learning: An Algorithmic Perspective, Second Edition Machine Learning: An Algorithmic Perspective, Second Edition
CDN$ 78.10
Available for Pre-order
Join Amazon Student in Canada

Book Description

April 1 2009 1420067184 978-1420067187 1

Traditional books on machine learning can be divided into two groups — those aimed at advanced undergraduates or early postgraduates with reasonable mathematical knowledge and those that are primers on how to code algorithms. The field is ready for a text that not only demonstrates how to use the algorithms that make up machine learning methods, but also provides the background needed to understand how and why these algorithms work. Machine Learning: An Algorithmic Perspective is that text.

Theory Backed up by Practical Examples

The book covers neural networks, graphical models, reinforcement learning, evolutionary algorithms, dimensionality reduction methods, and the important area of optimization. It treads the fine line between adequate academic rigor and overwhelming students with equations and mathematical concepts. The author addresses the topics in a practical way while providing complete information and references where other expositions can be found. He includes examples based on widely available datasets and practical and theoretical problems to test understanding and application of the material. The book describes algorithms with code examples backed up by a website that provides working implementations in Python. The author uses data from a variety of applications to demonstrate the methods and includes practical problems for students to solve.

Highlights a Range of Disciplines and Applications

Drawing from computer science, statistics, mathematics, and engineering, the multidisciplinary nature of machine learning is underscored by its applicability to areas ranging from finance to biology and medicine to physics and chemistry. Written in an easily accessible style, this book bridges the gaps between disciplines, providing the ideal blend of theory and practical, applicable knowledge.

Special Offers and Product Promotions

  • Join Amazon Student in Canada

Customers Who Bought This Item Also Bought

Product Details

Product Description


… liberally illustrated with many programming examples, using Python. It includes a basic primer on Python and has an accompanying website.
It has excellent breadth, and is comprehensive in terms of the topics it covers, both in terms of methods and in terms of concepts and theory. …
I think the author has succeeded in his aim: the book provides an accessible introduction to machine learning. It would be excellent as a first exposure to the subject, and would put the various ideas in context …
This book also includes the first occurrence I have seen in print of a reference to a zettabyte of data (1021 bytes) — a reference to "all the world’s computers" being estimated to contain almost a zettabyte by 2010.
—David J. Hand, International Statistical Review (2010), 78

If you are interested in learning enough AI to understand the sort of new techniques being introduced into Web 2 applications, then this is a good place to start. … it covers the subject matter of many an introductory course on AI and it has references to the source material and further reading but it is written in a fairly casual style. Overall it works and much of the mathematics is explained in ways that make it fairly clear what is going on … . This is a suitable introduction to AI if you are studying the subject on your own and it would make a good course text for an introduction and overview of AI.
—I-Programmer, November 2009

About the Author

Massey University, Palmerston North, New Zealand

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index | Back Cover
Search inside this book:

Customer Reviews

5 star
4 star
3 star
1 star
2.0 out of 5 stars
2.0 out of 5 stars
Most helpful customer reviews
1 of 1 people found the following review helpful
2.0 out of 5 stars Not great. March 28 2011
By djma
For the price, it's not worth it. There's not much in this book. Details are glossed over. Not much intuition is provided. I suggest Hastie, Tibshirani and Friedman...
Was this review helpful to you?
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com: 3.9 out of 5 stars  25 reviews
97 of 101 people found the following review helpful
5.0 out of 5 stars A great book for students Feb. 5 2010
By John - Published on Amazon.com
Format:Hardcover|Verified Purchase
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.
50 of 51 people found the following review helpful
3.0 out of 5 stars A decent idea, but very flawed in the execution. Dec 4 2011
By Deon Garrett - Published on Amazon.com
Modern Machine Learning is deeply statistical and mathematical in nature, and as others have said, this book aims to trade off some rigor in favor of a more intuitive approach. That in itself is not a bad idea; there should be room for a book that gives the reader a working knowledge of the more important techniques, even if they don't necessarily understand how they work at a deep level. Unfortunately, this book stumbles quite badly in many respects.

We chose the book for an introductory course in Machine Learning at my university, as our students often don't have the level of mathematical background necessary for treatments like the Bishop book. However, I and my colleague often had to resort to essentially replacing entire chapters of material due to serious flaws in the text. In some cases, the author gives definitions for commonly available terms that are simply factually incorrect. For example, the chapter on Evolutionary Algorithms repeatedly confuses parent selection and elitism, states that crossover cannot be defined for non-binary representations, and other similar mistakes. In the chapter on Reinforcement Learning, most of the material is at least correct, but does not progress in any meaningful manner. For instance, the author introduces TD(') methods using execution traces, gives the formula for updating the trace, and then simply stops. There is no indication of what you should do with this value once it's been calculated. There are quite a number of these sort of issues in the book.

I would also concur with the other reviewers who felt that the idea of stripping away unnecessary mathematical formalism has simply been taken too far here. It sits in an awkward middle ground: it doesn't provide enough formalism to tell you how the algorithms really work, but it simultaneously wastes so much space in trying to hand-wave its way around the issue that the code is relegated to fragments that don't give a very complete picture. I think the book would be more successful if it either accepted that at least some mathematical sophistication is necessary and dispensed with some of the cutesy hand-holding, or else dispensed with the pretense of explaining the material in an academically interesting way and simply focused on implementations of the algorithms along with explanations of the code.

On the whole, I think the book does have some value. It's one of the few books covering modern topics in machine learning that can be used by someone without a pretty solid grounding in statistics, and if the reader is motivated to augment it heavily with other sources, it can be a decent starting point for looking into some technique. But that's about it really. I think it's flawed enough that as a single source of information, it's likely to not meet its intended purpose with a great deal of success.
21 of 22 people found the following review helpful
5.0 out of 5 stars Different than other 'textbooks' on ML Nov. 7 2010
By Doug Y'barbo - Published on Amazon.com
Format:Hardcover|Verified Purchase
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.
23 of 25 people found the following review helpful
5.0 out of 5 stars Advanced Undergraduate or Early Graduate Level Feb. 8 2010
By John Matlock - Published on Amazon.com
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
10 of 10 people found the following review helpful
5.0 out of 5 stars Awesome introduction! Aug. 7 2010
By Arun R - Published on Amazon.com
This book is a superb introduction to machine learning. It is ideally suited for under-graduates, but anyone will find it immensely useful to get their feet wet with machine learning!

The author has excellent style of communication and his examples are simple and clear. The Math is explained in painstaking detail (even matrix multiplication). Advanced readers can easily skip these explanations, but novices will find them really useful.

Added to that, the author has taken the extra effort to code up everything in python and has provided the code to play around with! (This book could also be a fun introduction to python, which is a lovely language to learn.) Many times you read some algorithm and try to implement the pseudo-code, only to find that it takes hours for you to make it work. Something as simple as linear regression could turn out to be a pain, if you have incorrect step sizes! Many books simply say "use a small value" for the step size, and you are wondering whether 2 is small or 0.001 is small! But this book goes one step further, and says, what value of step size to use for the example, so you first get something to work before you experiment with it.

If you are teaching an under-grad CS course/introductory CS grad course on machine learning, then this is the book you need to use. Your students will love you :-).
Search Customer Reviews
Only search this product's reviews

Look for similar items by category