Tuesday, February 8, 2011

Collective Intelligence in Action



Collective Intelligence in Action
| 2008-10-28 00:00:00 | | 0 | Web


There's a great deal of wisdom in a crowd, but how do you listen to a thousand people talking at once? Identifying the wants, needs, and knowledge of internet users can be like listening to a mob.

In the Web 2.0 era, leveraging the collective power of user contributions, interactions, and feedback is the key to market dominance. A new category of powerful programming techniques lets you discover the patterns, inter-relationships, and individual profiles-the collective intelligence--locked in the data people leave behind as they surf websites, post blogs, and interact with other users.

`Collective Intelligence in Action` is a hands-on guidebook for implementing collective intelligence concepts using Java. It is the first Java-based book to emphasize the underlying algorithms and technical implementation of vital data gathering and mining techniques like analyzing trends, discovering relationships, and making predictions. It provides a pragmatic approach to personalization by combining content-based analysis with collaborative approaches.

This book is for Java developers implementing Collective Intelligence in real, high-use applications. Following a running example in which you harvest and use information from blogs, you learn to develop software that you can embed in your own applications. The code examples are immediately reusable and give the Java developer a working collective intelligence toolkit.

Along the way, you work with, a number of APIs and open-source toolkits including text analysis and search using Lucene, web-crawling using Nutch, and applying machine learning algorithms using WEKA and the Java Data Mining (JDM) standard.

User review
Collective Intelligence in Action
This book is more deserving of the `Collective Intelligence` title than O'Reilly's `Programming Collective Intelligence` as it's not just about algorithms, but discusses blogs, wikis etc, and shows how to do basic implementations of features such as tag clouds or finding related content in that context. Instead of explaining specific algorithms in detail, existing Java libraries are used, e.g. WEKA for data mining and Lucene for search.


There are lots of diagrams, and (somewhat verbose) Java code. The examples in this book are good starting points for further exploration; this book is more about showing what can be done and getting you started in the right direction than providing you with an understanding of the algorithms (as does the O'Reilly book) and libraries that are used.



User review
Good , well written and good overview of available tools
The best thing about the book is that it revealed many other open source toolkits relevant to the topic. Provided good topic background.The only remark is that the code examples can be more organised and structured so that you can get the bundle and start experimenting , rather than tie up the code snippets together.

User review
Survey Level Introduction for Engineers
Collective Intelligence is a big topic so the title of this book is very ambitious. The author is too. He sets out to explain all things collective intelligence circa 2009.


Like any good text book, the material is presented in an iterative and incremental way. High level concepts are introduced first. Popular features such as tag clouds and recommendation engines are defined. How collective intelligence manifests in the GUI and screen flow of various popular web properties is illustrated. Various data structures and algorithms are classified. Simple examples of some of the underlying math is worked out. Open source libraries are recommended and coding examples presented. Topics are introduced simply at first and revisited in later chapters with ever increasing amounts of detail.


However, there's a lot of math in the topic of collective intelligence and this is not a math book. Neither does it take a `heads up` or `for dummies` approach. Instead, it aims somewhere in the middle which gives the book a bit of an identity crisis.


If you're a script jock or a web master whose level of technical competence doesn't extend too far past embedding a youtube video or paypal `buy now` button on your pages, then the most that you are going to get out of this book is just the high level introductory material.


The formally trained software engineer can treat this book as a great introductory survey level course on the subject that does attempt to peal back some of the layers of complexity. It is neither definitive nor canonical so you will be doing more research and studying before you deploy any sophisticated collective intelligence in your applications.

User review
A practical book on machine learning
The publisher has fixed the most errata listed on O'reilly website in the edition I got from Amazon. By running sample codes provided in this book, I

gained invaluable first-hand experiences on various algorithms. Also Chapter 12 on

algorithm summary is nice: author listed strengths and weaknesses for each

algorithm mentioned in previous chapters. I recommend this book for any person

who is interested in machine learning and data mining.

User review
Review by Chabli Faisel
In my opinion, this book is intended for people with good knowledge in Business Intelligence as well as Java to understand the examples provided, but this is a practical book for the application of collective intelligence in a web applications.


Being divided into three main parts, the book introduces us, through the 1st, 2nd and 3rd chapters, to the field of collective intelligence by giving us an overview of the architecture necessary to integrate collective intelligence in an application.


The 2nd part of the book deals with the intelligence derived from the collection of data. Through the 7th chapter, the reader is introduced to the process of data mining and its different types of algorithms. WEKA tool was used, an open source tool for data mining whose use will be more explicit in Chapter 9 through examples of clustering.


The last part deals with the application of intelligence in an application.


The strengths of the book lie in the methodology adopted by the author to explain how to apply collective intelligence in a web application. Thus, the book explains, through many examples, how to apply collective intelligence, by enumerating its profits in a web application. Each concept is illustrated by concrete examples. The author cites several notable sites using the concept of collective intelligence, something that may give more visibility to readers who wish to implement this concept. One last thing I greatly appreciated in this book is that it brings us from the world of abstract art to a world of practice in predicting the need for Internet users.


Some technical aspects presented by the book may cause the loss of the thread during playback, such as the presence of several class diagrams and Java code. I would have preferred that the book does not address the conceptual aspects of things through the technique. The same problem is encountered by the presence of some mathematical formulas, I would have preferred that the author offers easy ways to implement in order to achieve useful results if it is necessary to go by numbers (calculation of the correlation , similarity, ,,.).


What I did not like in the methodology of applying data mining in this book is the use of an API directly from Java WEKA instead of using WEKA tool . This is to avoid reinventing the wheel. Also, the author is expected to explain how to select attributes predictive for the construction of a predictive model.


Download this book!

Free Ebooks Download