"Good broad and introductory coverage of collective intelligence" | 2009-09-19 |
| - Reviewed By calvinnme |
In the preface I think that the author minimizes the experience a reader must have to get the most out of this book. First off, I think you should be familiar with the general principles of artificial intelligence as covered in Artificial Intelligence: A Modern Approach (2nd Edition), and I think you should also be familiar with the theory of algorithms as covered in Introduction to Algorithms, Third Edition. These are both largely language agnostic books, and I think these types of books do the best job at teaching computer science theory. Finally, the author minimizes the experience you should already have with Python. As the author states, Python reads almost like pseudocode, with "almost" being the operative word here. Just using plain pseudocode or a language that most are familiar with such as C would have been better. The author does not give you enough background on Python that you can pick this book up cold and not be confused. For the task of learning Python the right way I recommend "Learning Python", which is coming out in a brand new edition next month.
On the bright side, though, this is a great introduction to recommender systems and the algorithms used in the collection and analysis of web data. The author clearly states the principles and uses of each algorithm and puts in bits of code as he goes. The illustrations are also excellent. The problem with most of the books on collective intelligence is that they are either doctoral theses - or should be - or they are very elementary books written for people using software packages that do the analysis for them, thus exposing few details. This book strikes a great balance and hits the target for the professional who needs to learn this material quickly.
The exercises are pretty good and are a combination of programming assignments and "do you think X is possible?" types of questions. Of course, what I think is possible doesn't matter, the question is answered if I am able to implement a solution or at least sketch one out. There are no answers to exercises here, so you'll never know if you are right unless you do implement a solution that answers the question.
All in all, I recommend this text for the qualified reader - a programmer already skilled in Python and knowedgeable in artificial intelligence and efficient algorithm implementation - in other words, the working professional. |
| |
"Awesome!" | 2009-09-13 |
| - Reviewed By ramses0 |
| Tons of great ideas in this book, presented in a useful manner that builds one topic upon the other where applicable. Very easy to understand, looks like it's very easy to apply as well. |
| |
"A practical introduction" | 2009-08-21 |
| - Reviewed By User: A3MVOZMRVMAKGB |
This book helped me get real machine learning concepts into my code quickly. It does a good job covering a broad range of techniques, and the examples are interesting and useful. I appreciated the illustrations as a visual way to explain the concepts in the text.
On the negative side, the book's emphasis on readability prevents it from going into deep detail on the subjects covered. In particular, I would have like to see more discussion about feature selection with many examples showing good and bad choices for features used in different models. This is the flip-side of the book's strength, namely that it is very readable. Another way this comes up is that the code in the book may not be very efficient of fast. Fortunately, the author's code is written in a way to make it easy to improve. Also it's worth noting that even simple ML algorithms can be quite powerful when used with enough data, eg. Bayesian spam filtering.
Bottom line: As someone starting to write smart applications, this book was definitely worth the cost in money and time.
For more detailed coverage of machine learning, I can recommend these two books (perhaps to be read after Collective Intelligence):
Russel and Norvig's Artificial Intelligence, A Modern Approach
Hastie and Tibshirani and Friedman's The Elements of Statistical Learning |
| |
"Great introductory material" | 2009-07-02 |
| - Reviewed By User: AW379RMYDUM5O |
This book gives perhaps the greatest introductory insight into the workings of intelligent algorithmic computation. It covers everything from page rank to neural networks and so much more. Its easy enough to understand, even for a non-math major, and the python code samples are concise, accurate and functional.
Would highly recommend this book for application and web developers who are creating or just interested in intelligent, data driven utilities. |
| |
"A very interesting book" | 2009-05-29 |
| - Reviewed By nsardo |
I picked this book up at a local Barnes and Noble. While I am certainly not trained in some of the areas this book covered, I found them completely accessible. While it should be obvious from the title that someone new to programming would find this book an incredibly tough read, I'll state it for the record. If you are learning how to program, this book is worth purchasing and holding on to until your ready.
The whole idea of "Collective Intelligence" is an interesting one. Given the way things are changing every day, technology is growing, and the web is expanding, it only makes sense that ideas in this book, and elsewhere should be explored.
The author chose to use Python as the language to realize code for the different topics of the book. This certainly is not to say that they can only be coded in Python, but I would tend to agree with his choice. Python is a clear language that can be coded procedurally or objectively. If you don't "speak" Python, in many cases you can understand what is going on in the code.
For me though, this book wasn't about the code so much as the ideas. Data, data, everywhere.. now, how can we explore, extrapolate, quantify, and qualify that data? That is what I took as the essence of the book. It covers many different techniques to do this, and I found it all fascinating.
In my opinion, if you are into this kind of thing, this book is well worth it. |
| |
"Excellent to refresh my knowledge" | 2009-05-15 |
| - Reviewed By User: A2J0W6OEVNJYJE |
| Back in school, few years ago (to many to remember). I had to study most of this concepts, and at the time they where to abstract to me, and the examples and exercises they where so simple that they weren't making sense in real life. After that I started to work in other kind of system's and projects that never had the chance to play around this concepts and see how to apply them in real life. Until now that I had the chance to read this book, and see how I can apply this ideas and concepts in real life and take advantage of this knowledge. |
| |