Big Data : associer Machine Learning et informatique pour créer de la valeur

Le Machine Learning donne tout son sens au Big Data. C’est le message qu’a fait passer Gaël Varoquaux, chercheur à l’Inria, le 29 octobre lors d’un événement sur le Big Data organisé par le pôle de compétitivité CapDigital.

Il aura même cité Steve Jurvetson, un investisseur de la Silicon Valley qui avait déclaré la veille que « Le Big Data sans le Machine Learning ne sert à rien.  » Gaël Varoquaux n’ira pas aussi loin, se contentant dans ses conclusions d’affirmer que « Le Machine Learning, ou apprentissage, confère de la valeur au Big Data. » Le Machine Learning s’appuie sur les statistiques et l’informatique. Les deux doivent être à la hauteur, et ce n’est pas simple.

Gaël Varoqueux travaille sur le Machine Learning qu’il fait reposer sur de l’analyse statistique afin de trouver des modèles dans une masse de données. Pour lui, « nous allons vers des modèles avec plus de combinaisons de règles simples, avec plus de paramètres. Le Big Data est une évolution de l’apprentissage statistique. »

Le chercheur avertit : « les signaux faibles nous poussent vers l’apprentissage statistique, mais on ne trouve rien si on n’a pas de connaissance du métier. »  Il poursuit : « certains trouvent parce qu’ils savent ce qu’ils cherchaient. Par exemple, Mendel lors de ses recherches sur la génétique avec les mouches drosophiles savaient ce qu’il cherchait. Pour mémoire, ses statistiques étaient fausses. »

Dans le cadre de son travail de recherche, Gaël Varoquaux étudie le fonctionnement du cerveau humain. Afin de réaliser l’analyse des clichés du cerveau via des IRM, qui représentent 1 Po de données, il participe au développement d’une plateforme informatique applicative développée en mode communautaire Open Source. L’objectif est d’arriver à établir des modèles prédictifs.

Dans ce projet, l’infrastructure informatique occupe une place centrale. « Ce qui coûte cher, c’est le stockage performant où je dois taper rapidement. Il coûte plus cher que ma puissance de calcul » se plaint-il. Diverses optimisations sont donc nécessaires, la plus grande difficulté étant l’accès aux données. Il ajoute : « Je n’utilise pas Hadoop. C’est une solution toute faite qui consomme plus de puissance de calcul que celle que l’on utilise. »

Au niveau des optimisations informatiques, il liste la réduction des données afin de consommer moins de mémoire dans les serveurs. Il a mis en place du parallélisme et du « caching » pour ne pas calculer deux fois les mêmes choses. La plateforme applicative en cours de développement s’intitule, scikit-learn, (http://scikit-learn.org). C’est une boîte à outils statistiques qui contient des bibliothèques associées, et qui est programmable en langage Python.

Elle est utilisable aussi bien pour des problèmes de physique, d’astrophysique que de marketing, avec des interfaces pour les utilisateurs adaptées. Python est un langage qui permet à la fois de développer des applications scientifiques et des sites Web, c’est la raison du choix. Et la communauté est assez développée. Face à scikit-learn, on trouve des plateformes telles que mply, pybrain, pymvpa, mdp ou shogun.

Gaël Varoquaux tient à souligner que d’avoir opté pour un mode de développement communautaire, et d’avoir ouvert le projet, a procuré « un gain gigantesque. » Il précise « nous avons évité de mettre le nom Inria partout, cela a motivé les développeurs. Nous valorisons les contributeurs. » Il y a eu en tout 200 contributeurs de par le monde, et 12 à 30 développeurs de cœur du système. Gaël Varoquaux estime le coût du développement selon le modèle Cocomo, à 6 millions de dollars.

Mais le mode de développement communautaire a ses limites.  Les meilleurs développeurs deviennent des stars et sont recrutés à prix d’or et quittent le projet. « Nous subissons une fuite des meilleurs cerveaux à répétition » conclut-il.

Photo : Gaël Varoquaux, chercheur à l’Inria.