Pourquoi utiliser un outil de Datascience ?

Chez Affini-Tech nous accompagnons nos clients dans leur projets “Big Data”, (ou de data tout court, le “big” étant parfois un peu exagéré). Ces projets peuvent prendre des orientations très différentes. Mais quelles qu'elles soient, la première partie du process est finalement assez commune et relève plus du nettoyage que réellement d’ingénierie et d'algorithmes. Au centre de tout il y a la data qui arrive avec des niveaux très variables de qualité. Aussi passionnante que puisse paraître la data-science, le chemin est toujours très long avant de pouvoir commencer à déployer des algorithmes avancés sur les données.


rinse, wash, and repeat

Le processus d’appropriation d’un jeu de donnée est une véritable démarche itérative et expérimentale. L’exploration des données consiste à prendre un échantillon (ou “sample” en anglais) de données et a ensuite déterminer les quelques règles de transformation de celles-ci. Un jeu de donnée nettoyé va permettre de voir de nouvelles caractéristiques, et souvent aussi de nouvelles failles. Dans ce dernier cas, il devient nécessaire de faire une itération supplémentaire sur le jeu de donnée pour ajouter une transformation, et ce souvent à plusieurs reprises. Avec la boite à outil classique du data-miner, ceci est extrêmement fastidieux, et requiert des cycles de mise à point parfois complexes pour une faible valeur ajoutée. En empilant les transformations sur des données de manières non contrôlée, le risque de régression n’est pas nul. En d’autres termes ce qui apportait un résultat satisfaisant peut par effet de bord ne plus fonctionner à l’itération suivante. L’exploration de jeu de données avec des iPython notebook, si elle a quelques charmes est une opération des plus rébarbatives, avec son lot d’erreurs humaines. Au delà de ces risques, les données sont parfois compliquées à appréhender. Par exemple l’interprétation des formats date, ou la gestion des valeurs absentes dans une colonne est loin d’être triviale quand elle doit être faite de manière manuelle.


Accélérer le cycle

Confrontés à de réels problèmes de productivité dans les phases de prises en main des données lors de projets clients, l’évidence de l’outillage est apparue. Notre objectif était d’inverser la promotion entre le temps consacré à l’appropriation des données et celui dévolu à l’analyse. Nous avons envisagé différentes solutions à base d’assemblages de composants opensource. Si elles apportaient de manière indéniables une forte flexibilité, elles nécessitaient par contre, un investissement humain très fort, et ne permettait pas une réelle capitalisation.

C’est lors d’un projet chez un de nos clients que l’opportunité de tester Data-Science Studio (DSS), un logiciel développé par la startup parisienne Dataiku, s’est présenté. L’objectif initial dans ce POC était de proposer un outil permettant d’appuyer tout le cycle de valorisation des données. Nous avions présenté cette opportunité au client, comme une faculté à pousser beaucoup plus loin l’utilisation des données en pouvant mettre en oeuvre facilement des fonctions avancées de Machine Learning. Très rapidement nous nous sommes rendu compte que les gains ne seraient pas uniquement là ou nous les attendions. Dès les premières minutes de la phase d’exploration des données dans DSS, les workflows se sont drastiquement accélérés. La détection des anomalies et la définition des transformations nécessaires pour rendre la donnée ‘consommable’ sont devenues un jeu d’enfant. Même si cet aspect des choses est réellement époustouflant car il permet de très vite se confronter à la réalité des données, la définition de flux complexes et la mise en oeuvre des algorithmes de machine learning ne sont pas en reste. Ce sont ces très différents bénéfices que nous vous ferons découvrir dans de prochains blog posts.