Automatisation des IA : Google plus performant… mais moins transparent

Automatisation des IA : Google plus performant… mais moins transparent Face aux studios de data science et aux infrastructures open source, Mountain View reste le plus performant dans la génération de modèles de machine learning. Mais son service cloud est une boîte noire.

Automatiser la création et le déploiement de modèles de machine learning (ML), tel est le défi que se sont lancés les éditeurs de solutions de data science. Initié par les start-up américaines DataRobot et H2O.ai en 2012, le mouvement a fait des émules. En 2018, Google équipe son cloud d'un service positionné précisément dans ce domaine : AutoML. Depuis, l'automated machine learning a envahi le marché IT. Il est désormais intégré par d'autres ténors du cloud, comme Amazon avec Sagemaker Autopilot et Microsoft avec Azure Machine Learning. Mais aussi par des éditeurs de studios de data science comme le français Dataiku, l'allemand Knime ou l'américain Rapidminer. Des projets d'infrastructure de ML open source ont également investi le terrain, tels Scikit-learn avec AutoSklearn ou TPOT.

Malgré l'émergence de nombreux concurrents, DataRobot reste une valeur sûre. "Dans la catégorie des environnements de data science dans laquelle il se classe, cet outil demeure la référence en matière d'automatisation du machine learning", assure Aymen Chakhari, directeur IA chez Devoteam. Son mode opératoire ? En fonction d'un problème à résoudre (reconnaissance d'images, prédiction financière, maintenance préventive...), DataRobot sélectionne d'abord plusieurs algorithmes possibles : arbre de décision, machine à vecteurs de support, forêt aléatoire, régression, réseau de neurones… Puis ils les entraînent sur la base d'un data set d'apprentissage prédéfini. Via une couche de scoring probabiliste de type bayésien, il compare ensuite leurs résultats. Compte tenu de l'objectif cible à atteindre, le plus performant est retenu. "DataRobot est une offre d'auto ML de bonne facture qui est très présente sur le marché nord-américain, mais assez peu en Europe", constate Christian Farnier, practice manager data intelligence chez Umanis, une société de services spécialiste en data.

Du machine learning pour créer du machine learning

Face à la méthode de DataRobot, désormais reprise par d'autres acteurs, l'infrastructure open source Scikit-learn avance une alternative originale. "Aux côtés de l'optimisation bayésienne, elle recoure au machine learning pour sélectionner l'algorithme approprié et en tuner les hyperparamètres. Elle construit sa base de connaissances à partir de l'entrainement de plusieurs modèles", détaille Aymen Chakhari chez Devoteam.

L'ESN française a benchmarké la plupart des solutions retenues dans notre comparatif, notamment sur leur capacité à générer des modèles. Le test recouvrait des problèmes de classification, de clustering et de prédiction, avec à la clés 39 data sets prédéfinis. Résultat : Google AutoML arrive en tête. "Ce service est équipé d'une couche auto-adaptative qui fait appel à la fois à de l'apprentissage non-supervisé et par renforcement", note Aymen Chakhari. "C'est le seul à combiner plusieurs techniques de scoring. Il associe algorithmes d'optimisation génétique, random search et optimisation bayésienne."

"Dataiku est très bon pour automatiser la détection des types de variables présentes dans un data set"

Revers de la médaille, Google AutoML est une boîte noire. Il ne fournit pas de données techniques sur l'architecture retenue ni sur les raisons de ses choix. "N'oublions pas qu'AutoML s'appuie sur la technologie neural architecture search de Google qui aboutit à des modèles de deep learning par définition opaque", rappelle Christian Farnier chez Umanis. A l'inverse des algorithmes de ML statistiques, le deep learning, lui, ne se résume pas à des formes analytiques simples. Son fonctionnement n'est donc pas facilement décryptable, ou interprétable dans le jargon des spécialistes, et ses résultats, même s'ils se révèlent performants, restent difficilement explicables (lire notre article Comment ouvrir la boîte noire de l'IA ?). "Etant en mode cloud, AutoML permet de spécifier le temps d'entrainement souhaité sur le IaaS de Google. En fonction de ce paramètre, le réseau de neurones proposé par AutoML sera plus ou moins complexe", explique Christian Farnier.

A l'inverse, d'autres solutions, telles Dataiku, permettent à l'utilisateur de demander dès le départ que l'architecture soit interprétable et explicable, et qu'elle repose par conséquent sur un algorithme plus classique. "Sur ce point, Knime ressort également du lot. Il intègre à son environnement de design une couche qui donne accès à des éléments techniques de conception, à la fois en termes de modèle et de feature engineering", souligne Didier Gaultier, directeur data science & AI au sein de Business & Decision, filiale d'Orange experte en data. 

Au test de Devoteam sur la génération de modèles, Scikit-learn et H2O.ai se démarquent dans la catégorie des technologies non-cloud. Quant à Knime, il prend la première place du benchmark dans l'automatisation du partitionnement des data sets. "Le split entre data set d'entrainement et data set de validation, avec la délicate question de la quantité de données d'apprentissage à retenir, est un point clé pour aboutir à un modèle généralisable et exploitable sur le terrain", rappelle Aymen Chakhari.

Alteryx, champion du déploiement

Côté feature engineering, Google AutoML se classe une fois encore en tête du benchmark de Devoteam. Il est talonné par RapidMiner. "Ce studio bénéficie dans ce domaine d'une batterie de tests statistiques paramétriques et non paramétriques clairement identifié", argue Aymen Chakhari. Une transparence que salue le directeur IA de Devoteam. "RapidMiner donne la possibilité de décortiquer le process d'automatisation, d'identifier les blocs choisis." Un avantage des plus appréciables, les solutions d'automated machine learning étant avant tout une aide pour identifier les variables clés d'un modèle. "Pour automatiser entièrement ce process, les solutions d'auto ML recodent les variables par force brute en calculant toutes les combinaisons de recodages possibles. Ce qui peut aboutir à un volume de variables considérables, et donc nécessiter beaucoup de ressources de calcul", regrette Didier Gaultier.

La solution ? Recourir à un recodage de variables semi-automatisé et supervisé. "Sur ce plan, Dataiku est très bon. Il automatise la détection des types de variables présentes dans un data set : variable d'horodatage, variable textuelle, variable numérique discrète ou continue... Il pourra par exemple identifier la présence d'URL correspondant à un site web, puis reconstituer et recoder sa structure. Mais aussi repérer qu'une date renvoie à un jour travaillé ou non. Dans ce cas, il sera possible d'ajouter une étape de validation pour spécifier l'ordre d'écriture : jour/mois/année vs mois/jour/année pour l'américain", détaille Christian Farnier, avant de comparer : "Google AutoML permet également d'ajouter une phase de validation, par exemple pour préciser par quoi remplacer une valeur manquante : la valeur précédente, la valeur suivante, ou une valeur moyenne." Chez Orange, Didier Gaultier, lui, met en avant H2O.ai. "Il va très loin dans le recodage supervisé des variables", estime le data scientist.

En bout de course ne reste plus qu'à automatiser la mise en production des modèles. Dans ce domaine, c'est la plateforme de data science d'Alteryx qui occupe la première position du palmarès dressé par Devoteam. "Mais, c'est une solution qui reste relativement chère", reconnait Aymen Chakhari.