Author: Author IconFrançois Goupil

Inria a le plaisir d’annoncer le lancement de l’initiative scikit-Learn dans la Fondation Inria, un partenariat avec des entreprises utilisatrices. Son objectif est d’intensifier le développement de cette infrastructure de référence en y ajoutant de nouvelles fonctionnalités. Scikit-Learn est une bibliothèque développée en Python, un langage de programmation haut niveau. Elle est dédiée à l’apprentissage statistique (Machine Learning) et peut être utilisée comme middleware, notamment pour des tâches de prédiction.

10 ans de R&D pour un outil aujourd’hui plébiscité par toute une communauté

Lancé initialement, en 2007, par quelques membres de la communauté scientifique Python, le projet Scikit-Learn a connu son véritable essor sous l’impulsion de Gaël Varoquaux, au sein de l’équipe Inria Parietal. Dans le cadre de ses travaux sur l’imagerie du cerveau, l’équipe Parietal avait besoin d’un outil de modélisation prédictive qui s’intègre à l’écosystème Python. Le développement s’organise rapidement autour d’atelier de développement participatifs ouverts avec pour objectif d’implémenter en open source des méthodes d’analyse statistique de données. Deux ans plus tard, une communauté de développeurs est née autour du projet. « Dès le départ du projet, nous nous sommes fixé un certain nombre d’objectifs, explique Olivier Grisel, ingénieur expert dans l’équipe Parietal. D’une part, afin que la bibliothèque puisse être installée facilement sur différentes plateformes, nous avons veillé à ce qu’elle soit bien packagée. Dans le même temps, nous avons décidé de rédiger une documentation extensive sur l’utilisation de l’outil, avec des exemples concrets. Enfin, pour pouvoir assurer sa maintenance sur le long terme, nous tenions à ce que toutes les méthodes implémentées soient couvertes par une série de tests automatiques. Nous avons ainsi pu nous assurer que les modifications de la base de code ne contenaient pas de bugs. »

Scikit-learn est en évolution permanente car comme l’explique Gaël Varoquaux : « il y a une grande équipe de développeurs qui et située à Paris, mais aussi à New-York, à Sydney et un peu partout dans le monde ». C’est le 2e logiciel de machine learning le plus populaire sur GitHub, et c’est surtout l’illustration de la réussite d’un modèle opensource qui répond à des besoins industriels.

Analyser des données complexes pour prendre des décisions

Scikit-Learn extrait la structure de données complexes (base de données, textes, images) pour les classifier en utilisant des techniques statistiques.

Scikit-Learn est développé en Open source et est disponible sous licence BSD. Une communauté de développeurs (internes et externes à Inria) a été rapidement constituée, ce qui a permis d’accélérer le développement de l’outil et de promouvoir des applications très diverses. Un site Web (scikit-learn.org), présente de façon détaillée le projet et ses applications.

Scikit-Learn est par exemple utilisé par un grand nombre d’entreprises du Web pour prédire des comportements d’achat d’utilisateurs, pour proposer des recommandations de produits ou pour détecter les tendances ainsi que les comportements abusifs (fraudes, spams, etc.).

Des domaines d’application diverses

Un des points forts de scikit-learn est sa généricité, qui lui assure une grande polyvalence et des domaines d’application divers et variés, tels que:

  • Lutte contre le spam et la fraude
  • Analyse d’images médicales
  • Prévision des comportements des utilisateurs
  • Amélioration des produits ou des processus

A titre d‘exemple, une utilisation grand public comme la réservation de lieux d’hébergement touristiques a impérativement besoin d’outils de machine learning comme scikit-learn pour automatiser les tâches. Il faut faire appel à un ‘data scientist’ pour comprendre les applications et les données qu’elles génèrent, afin de construire un modèles de décisions à partir de ces données.

Facile à utiliser, efficace et accessible aux non-experts du data science, scikit-learn est une bibliothèque d’apprentissage statistique. Dans une étape d’exploration des données, l’utilisateur entre quelques lignes dans une interface interactive et peut immédiatement visualiser les résultats de sa requête.

Des partenaires économiques autour de scikit-learn

Pour accompagner et stimuler l’écosystème scikit-learn, des entreprises soutiennent le projet au sein de la fondation partenariale Inria. Avec l’appui de ces partenaires, les ingénieurs de développement assurent la qualité du projet (correction de bogues) et l’intégration des contributions de la communauté, ainsi que l’ajout de nouvelles fonctionnalités ambitieuses.

Les partenaires de l’initiative et les membres de la communauté sont associés à la définition des priorités de développement et bénéficient de la communication autour de scikit-learn en tant que sponsors du projet.