Programming Collective Intelligence de Toby Segaran

Programming Collective Intelligence: Building Smart Web 2.0 Applications By Toby Segaran.

J’ai toujours été intéressé par les domaines du Machine Learning, les statistiques et le mouvement « Open Data ». Ce livre fait appel à tous ces sujets pour démontrer toute la puissance que cette combinaison met à notre portée.
Mais même si vous avez un a priori négatif sur ces sujets, le livre est suffisamment bien fait pour convaincre les plus récalcitrant de l’intérêt du Machine Learning.
Déjà, le titre accroche tout de suite sur l’aspect Web 2.0, communauté et développement à la mode. Qui ne rêve pas de créer un nouveau FaceBook, Amazon ou Google ? ou au moins de s’accrocher à ces locomotives …
Bref, on avance en résolvant des problèmes concrets utilisant des données issues du Web. Vous êtes prévenu, vos résultats seront différents de ceux du livre: les données sont vivantes. Les algorithmes sont expliqués simplement, on ne se perd pas dans la théorie.
Chaque algorithme est introduit en réponse à de nouveaux besoins. Soit pour des raisons de performances, de facilité d’interprétation des résultats ou d’adaptation aux données sources.
Ca ce lit presque comme une investigation journalistique !

Les exemples sont en … Python! Donc ils tournent sur la plateforme Java avec JPython. Tout va bien. Il est assez intéressant de lire le code Python. C’est très clair et très bien adapté au maniement des listes, matrices et autres maps … Visiblement un des domaines de prédilection de Python (Biologie, Génétique …). Mais bon, dans tout les cas, vous pourrez transcrire à vue en Java. Le code est très lisible.

De plus le focus n’est pas sur le code ni son optimisation. Bien que pour chaque algorithme, il explique quels sont ses limites et ses domaines d’utilisation.

La force de ce livre, c’est d’aborder un vaste sujet en gardant un équilibre entre la théorie, la pratique, le code, les sources de données disponibles … D’ailleurs on fini la lecture avec beaucoup de questions: comment coder ces algorithmes en parallèle ? quelles sont les sources de données disponibles ? quels sont les fondements statistiques ? quels types de visualisations conviennent le mieux ? Comment traiter les données séquentielles, des flux ?
Autant de livres qui restent à lire …

Il vous met l’arsenal de base dans les mains avec quelques tirs d’entrainement. A vous de lancer vos algorithmes sur les données et d’attraper toutes les conclusions de valeur.

Et n’oubliez pas: ce livre est disponible à la bibliothèque du JUG !