Comment motoriser son data lake à l'IA

Comment motoriser son data lake à l'IA Les puristes utiliseront plutôt le terme machine learning. En tout état de cause, les algorithmes autoapprenant représentent bel et bien la nouvelle frontière du big data.

Après avoir bâti un premier data lake, il est tentant de lui adjoindre une couche de machine learning dans le but de mettre en musique des analyses avancées (scoring de clients, prédiction marketing...). Généralement basé sur des infrastructures big data comme Hadoop et Spark, un lac de données pourra accueillir sans impliquer trop d'efforts un tel environnement. "En fonction des besoins, différentes intelligences artificielles seront envisageables", explique Saoussane Roussin, experte en IA et data au sein de l'agence digitale SQLI. Régression linéaire, forêt aléatoire, réseau de neurones… De nombreux algorithmes d'auto-apprentissage, supervisés ou non, existent. Chacun répond à des problématiques métiers diverses, de la reconnaissance d'images au ciblage commercial et la maintenance prédictive en passant par les calculs de risques (lire l'article : Quelle intelligence artificielle est faite pour vous ?).

"Beaucoup d'algorithmes seront cependant inexploitables étant conçus pour tourner sur un serveur unique et pas sur plusieurs machines comme l'exigent les architectures de calcul distribuées des lacs de données", souligne Aziz Cherfaoui chez Keyrus, en évoquant notamment la célèbre librairie open source Scikit-Learn de l'Inria. "Un algorithme de tri de termes par ordre alphabétique est par définition difficilement distribuable, à la différence d'un algorithme de comptage de votes qui pourra être décliné par bureau, ville, région... avant d'être fédéré", explique le directeur technique du cabinet de conseil. Parmi les algorithmes non-éligibles, certains bénéficient néanmoins d'une déclinaison adaptée au traitement réparti. C'est le cas du Gradient Boosting, très souvent utilisé pour minimiser les erreurs des modèles prédictifs, avec le XGBoost.

Chez Business & Decision, on recommande de faire appel à des hubs de données pour relever ce défi. Taillés pour accueillir des informations qualifiées et formatées en vue de leur passage à la moulinette du machine learning, "ils pourront soit s'adosser directement au lac de données (et sa base NoSQL, ndlr), soit mettre en œuvre un serveur SQL de données structurées, qui n'a pas les mêmes limitations en termes d'algorithmes", explique Didier Gaultier, directeur data science au sein de l'ESN filiale d'Orange.

"Grâce à Spark, la phase d'entraînement des modèles peut s'exécuter 100 à 1 000 fois plus rapidement"

Dans cette approche, Spark fait figure de brique clé. A la différence d'Hadoop, cette infrastructure permet en effet de réaliser des traitements distribués ou non sur des données stockées en mémoire (RAM), et pas sur disques. "Grâce à Spark, la phase d'entraînement des modèles de machine learning peut s'exécuter 100 à 1 000 fois plus rapidement", illustre Didier Gaultier. Et Aziz Cherfaoui chez Keyrus de renchérir : "Ce framework dispose aussi d'une librairie avec les algorithmes d'autoapprentissage les plus usités (SparkML, ndlr), type régression linéaire, forêt aléatoire…" Spark représenterait ainsi une voie toute tracée. "D'autant qu'il est déjà déployé sur la plupart des data lake en production", constate Sebastien Guibert, directeur big data et analytics chez Capgemini France.

Au final, certains traitements n'en resteront pas moins allergiques au calcul distribué traditionnel en cluster. Par exemple dans le cas du deep learning, notamment appliqué à la reconnaissance d'images, il sera fortement recommandé de répartir les traitements localement via des pools de cartes graphiques embarqués sur les mêmes machines pour minimiser les échanges réseau. Ces derniers étant susceptibles de faire exploser les temps d'exécution. "Certains fournisseurs de cloud proposent des processeurs spécifiquement conçus et optimisés pour l'apprentissage profond. C'est le cas de Microsoft avec FPGA ou encore de Google avec ses TPU (pour Tensor Processing Unit, ndlr)", rappelle Aziz Cherfaoui.

Le cloud : nouveau levier

"Depuis environ un an, les entreprises qui avaient jusque-là tendance à déployer leur data lake chez elles se tournent massivement vers le cloud. C'est un moyen pour elles de bénéficier de ressources informatiques à la demande pour répondre à l'explosion de leurs projets data", constate Sebastien Guibert chez Capgemini France. "Le développement du machine learning accélère encore le mouvement car il engendre de nouveaux besoins en capacités de calcul, en volumétrie de stockage, mais aussi en agilité des projets." Un mouvement que favorisent les grands providers de cloud qui désormais proposent tous des services pour prototyper des modèles, les entraîner sur des environnements big data, et les déployer en production.

Distributeur français d'automobiles multimarque, Aramisauto fait justement partie de ces entreprises qui ont choisi de s'orienter vers un data lake en mode cloud pour des besoins en machine learning. Adossé aux services de stockage Amazon S3 et à l'entrepôt de données Amazon Redshift, sa plateforme a été déployée en un temps record.

"L'un des projets de learning mis en place sur notre data lake en mode cloud nous a pris 5 jours"

"L'un des projets de learning mis en place sur notre data lake AWS nous a pris 5 jours. Il nous aurait demandé plusieurs mois sur une infrastructure interne", estime Hayssen Chouikh, architecte data chez Aramisauto. L'objectif de l'application ? Scorer le potentiel de transformation des visiteurs du site web de la marque (en fonction de leur navigation), puis transmettre à Google Adwords, via son API, des règles de ciblage en conséquence. Sous le capot, Amazon ElastiCache et Redis sont notamment sollicités aux côtés d'AWS Lambda et AWS API Gateway pour orchestrer le processus. "ll nous fallait une architecture capable d'encaisser le trafic du site", complète Hayssen Chouikh.

Pour Aramisauto, le cloud s'est traduit par un changement radical en matière de projets data. "La mise en place et le management de l'infrastructure data sont désormais en grande partie automatisés. Ce qui nous permet de nous concentrer sur le réglage de l'intelligence logicielle", insiste Louis-Baptiste France, responsable data d'Aramisauto. Chez Keyrus, on confirme cet avantage. "Le cloud dégage du temps pour optimiser la performance des modèles, bien choisir et agencer les algorithmes, configurer les variables de calcul, les horizons d'apprentissage...", détaille Aziz Cherfaoui.

"Au final, l'un des facteurs clés de réussite d'un data lake résidera dans la qualité des données qui y sont intégrées. Si elles sont inexactes, mal préparées ou biaisées, les résultats du learning et des traitements statistiques seront mécaniquement faussés", rappelle Saoussane Roussin chez SQLI. D'où l'enjeu de déployer une stratégie de data gouvernance outillée. "Elle aura un coût qui ne faut surtout pas négliger", martèle Didier Gaultier. Là encore, le choix de la technologie sera central. Et sur ce terrain du pilotage des données, force est de constater que les grands providers de cloud ne sont pas tous au même niveau, certains offrent un outillage plus avancé que d'autres en matière de data management (lire l'article : Data lake as a Service : Amazon et Microsoft surnagent, Google sous l'eau).