Passer

AutoML, le futur de la data ?

Depuis les années 1990, AutoML - Machine Learning automatisé - est décrit comme "une révolution tranquille de l'IA" qui serait sur le point de changer radicalement le paysage de la Data Science. Nous allons tenter dans cet article de déterminer si l'AutoML est réellement l'avenir de la data et surtout si son avènement menace le métier de Data Scientist.

Qu’est-ce que l’AutoML ?

AutoML automatise une grande partie du processus de Machine Learning (ML) tout en maintenant la qualité du modèle. De plus, elle doit permettre de réduire le temps nécessaire à l’obtention des modèles de ML prêts pour l’industrialisation avec une facilité et une efficacité extraordinaires.

Des chercheurs universitaires, des start-ups et des géants de la technologie ont commencé à développer des méthodes et des outils AutoML allant de simples prototypes open source à des produits logiciels à l’échelle de l’industrie.

La naissance d’AutoML est due à deux raisons principales. D’une part, le Deep Learning (DL) a été appliqué dans divers domaines. D’autre part, il a été utilisé pour résoudre de nombreuses tâches d’IA difficiles. Cependant, ces modèles ont tous été conçus manuellement par des experts via un processus d’essais et d’erreurs. De plus, le développement ML traditionnel consomme beaucoup de ressources, nécessitant une connaissance importante du domaine et du temps pour produire et comparer des dizaines de modèles.

Comment fonctionne l’AutoML ?

Le pipeline AutoML se compose de plusieurs processus : préparation des données, Feature Engineering, génération de modèles et évaluation de modèles.

Préparation des données

La première étape peut être introduite sous trois aspects : 

  • La collecte de données pour créer un nouvel ensemble de données ou étendre l’ensemble de données existant,
  • Le nettoyage des données pour filtrer les données afin que l’entraînement du modèle en aval ne soit pas compromis, 
  • L’augmentation des données pour l’amélioration de la robustesse et les performances du modèle.

Feature Engineering

Elle vise à maximiser l’extraction de features à partir de données brutes pour une utilisation par des algorithmes et des modèles. Elle comprend trois processus : la sélection, l’extraction et la construction des features. La sélection sert à réduire la redondance en sélectionnant les features importantes. L’extraction et la construction sont des variantes de la transformation de features, par lesquelles un nouvel ensemble de features est créé. Dans la plupart des cas, l’extraction vise à réduire la dimensionnalité en appliquant des fonctions spécifiques, tandis que la construction est utilisée pour étendre les espaces d’origine.

Génération de modèles

La génération de modèle est divisée en deux parties : espace de recherche et méthodes d’optimisation. L’espace de recherche définit les structures modèles qui peuvent être conçues et optimisées en principe. Les types de modèles peuvent être globalement divisés en deux catégories : les modèles ML traditionnels (tels que la machine à vecteurs de support et l’algorithme des k plus proches voisins) et les réseaux DL. Il existe deux types de paramètres pour les méthodes d’optimisation : les hyperparamètres utilisés pour l’entraînement, tels que le taux d’apprentissage, et ceux utilisés pour la conception du modèle, tels que la taille du filtre et le nombre de couches du modèle DL.

Evaluation de modèles

Une fois qu’un modèle est généré, ses performances doivent être évaluées. L’approche la plus simple consiste à entraîner le modèle à converger sur l’ensemble d’apprentissage, puis à estimer les performances du modèle sur l’ensemble de validation ; cependant, cette méthode prend du temps et nécessite beaucoup de ressources. Certaines méthodes automatiques avancées peuvent accélérer le processus d’évaluation, mais perdre en précision dans le processus, comme : Low fidelity, Partage de poids, Early stopping …

Quels sont les avantages de l’AutoML ?

  • Efficacité : il accélère et simplifie le processus d’apprentissage automatique et réduit le temps d’apprentissage des modèles d’apprentissage automatique ;
  • Performance : les algorithmes AutoML ont également tendance à être plus efficaces que les modèles codés à la main ;
  • Économies de coûts : disposer d’un processus ML plus rapide et plus efficace signifie qu’une entreprise peut économiser de l’argent en consacrant une part moins importante de son budget à la maintenance de ce processus ;
  • Démocratisation du ML : il n’est pas non plus nécessaire d’avoir des connaissances avancées en Data Science ou en IA pour utiliser l’AutoML. Cependant, l’utilisation de l’AutoML doit être adaptée au contexte. Certaines situations nécessitent une intervention humaine pour choisir l’approche de programmation la plus pertinente.

Quels sont les inconvénients d’AutoML ?

  • Black box : le principal inconvénient d’AutoML est l’effet de boîte noire. L’utilisateur dispose de très peu d’informations sur le fonctionnement du pipeline et les différents choix retenus dans les différentes composantes du pipeline;
  • Non générique : c’est un domaine relativement nouveau et certains des outils les plus populaires ne sont pas encore complètement développés. En plus, les solutions AutoML ne sont pas adaptées aux problèmes métiers très complexes;
  • Surestimé : l’un des principaux défis d’AutoML est la tentation de le considérer comme un substitut à la connaissance humaine. Un humain devrait toujours être impliqué pour évaluer et superviser le modèle, même s’ il n’a plus besoin de participer au processus ML étape par étape.

Les différentes technologies d’AutoML

DataRobot

DataRobot est probablement la solution commerciale la plus connue pour AutoML et l’une des licornes de l’espace de l’IA. Elle assure les principales fonctionnalités recherchées dans une solution AutoML.

H2O.ai

H20.ai définit sa plateforme comme « le leader open source de l’IA et du Machine Learning avec pour mission de démocratiser l’IA pour tous ». Elle propose un package AutoML dans le cadre de sa plate-forme open source.

Dataiku

Cette technologie d’AutoML intégrée au studio de Data Science de Dataiku propose un système de visualisation de code pour mieux appréhender l’architecture choisie et interpréter les résultats obtenus.

Google Cloud AutoML

Une suite de produits de ML qui permet même aux développeurs ayant peu de connaissances dans ce domaine d’entraîner des modèles de haute qualité adaptés à leurs besoins spécifiques.

Azure Automated ML

L’approche combine des idées de filtrage collaboratif et d’optimisation bayésienne pour rechercher intelligemment et efficacement un vaste espace de pipelines de ML possibles.

AWS AutoML

AWS propose une gamme de solutions AutoML pour tous les niveaux d’expertise pour les praticiens du ML à la recherche d’une solution open source et pour les data scientists qui préfèrent un service entièrement géré qui crée automatiquement des modèles en fonction du cas d’utilisation. Les développeurs ou les utilisateurs professionnels sans expérience en ML peuvent tirer parti de solutions prêtes à l’emploi pour des cas d’utilisation spécifiques.

AutoML peut-il remplacer les Data Scientists ?

Indépendamment du fait que l’AutoML puisse créer n’importe quel modèle ML à la demande, les modèles statistiques ne sont pas sans défauts. C’est à ce moment que les spécialistes entrent en jeu en triant le modèle  afin de le faire correspondre au mieux au problème.

En outre, la détection des valeurs aberrantes lors du processus de nettoyage de données implique une grande connaissance du domaine métier. Il est quasiment impossible de réaliser ces actions avec des systèmes automatisés.C

En revanche, l’évaluation du modèle est difficile dans l’apprentissage non supervisé où les labels ne sont pas disponibles. Il est complexe de trouver une option d’automatisation pour l’évaluation des modèles dans l’apprentissage non supervisé.

Finalement, comme nous l’avons déjà mentionné, AutoML ne peut traiter que des types de problèmes limités. 

Pour toutes ces raisons, AutoML ne remplacera probablement jamais les spécialistes data scientists. Les data scientists qui adoptent AutoML pourront, eux,  approfondir les capacités du ML et devenir encore plus efficaces dans leur métier.