Le machine learning automatisé va-t-il remplacer le data scientist ?

Le machine learning automatisé va-t-il remplacer le data scientist ? DataRobot, Google AutoML, H2O.ai... Les solutions d'automated machine learning se multiplient depuis quelques années. Leur ambition ? Automatiser la création de modèles d'apprentissage.

Nouveau buzzword de l'IA, l'automated machine learning (auto ML) promet comme son nom l'indique d'automatiser la création de modèles d'apprentissage. Ces dernières années, de nombreux acteurs se sont lancés à l'assaut de ce nouveau Far West. En 2012, les pure player DataRobot et H2O.ai s ouvrent la route. Google leur emboîte le pas en 2018 en lançant son service cloud AutoML. En 2019, c'est au tour de Microsoft avec Azure ML, et d'AWS avec Sagemaker Autopilot. En parallèle, des studios de data science entrent dans la danse en intégrant cette dimension à leur offre. C'est le cas du français Dataiku, de l'allemand Knime ou de l'américain Rapidminer (lire le comparatif des outils d'automated machine learning). Ces solutions peuvent-elles prétendre remplacer le travail du data scientist ? Evidemment en partie, mais pour l'heure elles sont avant tout considérées comme des outils susceptibles d'assister le scientifique de la donnée dans la mise en œuvre de ses projets.

"L'automated machine learning permet à un data analyst de créer rapidement un modèle simple, par exemple un classifieur d'images, en l’entraînant à partir d'un data set de photos labellisées", explique Didier Gaultier, directeur data science & AI au sein de Business & Decision, filiale d'Orange experte en data.  Le mode opératoire d'un environnement d'auto ML ? En fonction d'un problème à résoudre (une prédiction financière, une maintenance préventive, de la reconnaissance d'images...), il commence par  sélectionner plusieurs algorithmes possibles. Puis il les entraîne, comme vu plus haut, sur la base d'un set de données d'apprentissage prédéfini. Via une couche de scoring, il compare ensuite leurs résultats en mixant plusieurs combinaisons d'hyperparamètres. Dans le cas du deep learning, ces derniers correspondent par exemple au nombre de couches du réseau de neurones et au nombre de nœuds dans chaque couche. Compte tenu de l'objectif cible à atteindre, le modèle le plus performant est retenu au final.

L'auto ML, un assistant

Si le problème à résoudre devient plus complexe, l'automated machine learning sera vite dépassé. "Ces solutions sont très performantes pour benchmarker les modèles d'apprentissage supervisés classiques : régression linéaire, arbre de décision, forêt aléatoire, machine à vecteurs de support", constate Aymen Chakhari, directeur de l'IA au sein de l'ESN française Devoteam. "Sur ce périmètre, elles fourniront au data scientist des scores de fiabilité leur permettant de gagner du temps et réduire le time to value." Mais pour aboutir à un résultat satisfaisant sur des prédictions complexes, par exemple en économétrie, en recherche pharmaceutique ou encore pour la détection des fraudes, il sera nécessaire de personnaliser les modèles voir de les combiner. "Prenons l'exemple des systèmes de détection d'attaques informatiques. Certaines attaques changent de signature en temps réel. Il n'est donc plus possible de les détecter via les algorithmes classiques. Pour les repérer, on doit passer par des approches semi-supervisées ou non-supervisées qui nécessitent l'intervention d'un data scientist."

Slide issue d’une présentation de Devoteam présentant les différentes étapes prises en charge par les outils d’automated machine learning (feature engineering, entrainement, évaluation et validation des modèles, serving) et pour chacune le degré d’automatisation estimé. © Devoteam

Autre cas d'école, Devoteam a publié début juin une modélisation sur l'évolution du Covid-19 en France. "La courbe de l'épidémie va s'aplatir, avec un nombre de décès qui atteindra 30 293 en France le 15 juillet, contre 29 021 au 4 juin", prédisait alors l'ESN. Résultat : mi-juillet, le nombre de morts du Covid-19 s'élevait dans l'Hexagone à 30 120, soit un degré de précision de 99,42% comparé à la projection initiale. Pour atteindre cette finesse de prédiction, l'entreprise de Levallois-Perret a d'abord eu recours à plusieurs technologies d'automated machine learning (Azure ML, Google AutoML, H2O.ai, Knime et Rapidminer). "Avec ces outils, nous avons obtenu des prédictions de l'ordre de 80 000 à 120 000 décès pour cette date, associées à des précisions estimées à environ 96%. Ce qui est évidemment à côté de la plaque. Mais nous savions que la probabilité d'un écart important existerait", reconnait Aymen Chakhari.

"Le feature engineering n'est pas une science, c'est plus de l'art, du feeling"

Pourquoi ? Car deux composantes centrales manquaient pour résoudre l'équation. La première : la nécessité de composer avec une grande variété de données (taux de propagation du virus, respect de gestes barrières, comportement des français dans les lieux publics...) "L'automated machine learning a certes permis de constater que la forêt aléatoire apportait une bonne précision, mais cet algorithme n'était pas capable de composer avec la diversité des contenus à traiter", explique Aymen Chakhari. "Nous avons dû le mixer avec l'apprentissage par renforcement du Bandit manchot." Evidemment, l'auto ML est incapable d'atteindre un tel degré d'ingénierie, et notamment de réaliser de l'ensembling de modèles.

Seconde valeur ajoutée apportée par les data scientist de Devoteam : le feature engineering. Une étape qui consiste à sélectionner les variables intervenant dans l'algorithme et leur poids respectifs. "Le feature engineering n'est pas une science, c'est plus de l'art, du feeling", estime Aymen Chakhari.

10 ans avant le business understanding

L'automated machine learning permet, il est vrai, de détecter des types de variables dans un data set : variable d'horodatage, variable textuelle, variable numérique discrète ou continue, URL, de date… "Reste à savoir comment les coder. On pourra par exemple définir une valeur de vitesse par plages : entre 0 et 20 km/h, 21 et 60 km/h, 61 et 80 km/h, etc. Mais si les plages sont codées différemment, le résultat du modèle ne sera pas le même", pointe Didier Gaultier chez Business & Decision. "Du coup, les outils d'auto ML sont incapables de réaliser ce travail. Ils se contentent de faire un recodage par force brute, en calculant toutes les possibilités de codage d'une variable avec elle-même. Ce qui n'est pas très efficace et demande des ressources de calcul considérables." Pour autant, l'auto ML permettra de mettre le doigt sur les 20% de variables vraiment importantes, et donner des pistes sur les poids à leur associer. "Des variables que le data scientist devra ensuite recoder à la main", ajoute Didier Gaultier.

Le poids à allouer aux variables est une autre dimension que l'automated machine learning appréhende difficilement. "Prenez la modélisation que nous avons réalisée pour estimer l'évolution du PIB français suite à la crise du Covid-19. L'algorithme a été entraîné sur des données de l'INSEE, de Statista, de la banque de France et de l'OCDE, couvrant les années 2017, 2018 et 2019", indique Aymen Chakhari. Des opérations itératives de feature engineering ont ensuite été réalisées pour pondérer au plus juste l'impact des paramètres choisis en fonction du contexte : pertes d'emplois (avec un score volontairement plus important), création d'emplois, consommation des ménages, contribution des secteurs économiques… "Une sérialisation mathématique algébrique a été appliquée pour aligner la logique de pondération retenue à l'ensemble des paramètres", complète Aymen Chakhari. "Ici, la particularité est d'être dans un contexte non-stationnaire avec une évolution rapide sur l'activité, par conséquent des algorithmes de reinforcement learning ont été retenus et optimisés pour s'adapter à cette cinétique d'évolution et en tenir compte dans les prédictions."

Ce dernier exemple démontre le chemin qui reste à parcourir avant d'aboutir à un automated machine learning capable de tenir compte d'un contexte métier et d'y apporter une réponse cohérente et adaptée aussi complexe soit-elle. "Il faudra attendre encore 10 ans avant que l'auto ML entre dans l'ère du business understanding. Cela devrait passer par des techniques comme le reinforcement learning ou les réseaux antagonistes génératifs", anticipe Aymen Chakhari.