L'AutoML remplacera t'il les Data Scientists?

L'AutoML remplacera t'il les Data Scientists?

Introduction

L'apprentissage automatique a révolutionné la vision par ordinateur et le traitement du langage et est en train de transformer la biologie et l'ingénierie. Cependant, la plupart des méthodes d'apprentissage automatique sont sensibles à de nombreuses décisions de conception, ce qui constitue un obstacle considérable pour les nouveaux utilisateurs. 

Dans le domaine du Deep Learning, les praticiens doivent choisir entre une multitude d'architectures neuronales, d'optimiseurs de formation et d'hyperparamètres pour que les réseaux atteignent des performances suffisantes. Même les experts doivent souvent procéder par essais et erreurs fastidieux jusqu'à ce qu'ils identifient un bon ensemble de choix pour un jeu de données particulier. 

Dans cet article, nous allons explorer le domaine de l'apprentissage automatique des machines (AutoML). Notre objectif est de démystifier l'apprentissage automatique et de discuter en connaissance de cause de la façon dont il affecte le domaine de la science des données. L'objectif ultime d'AutoML est d'automatiser tous les processus d'apprentissage automatique, en mettant les humains hors circuit. Mais ne vous emballez pas (ou ne vous stressez pas), car les scientifiques des données et les ingénieurs en apprentissage automatique ne sont pas encore au chômage.

Démystifier AutoML

AutoML est un terme générique qui peut inclure tout effort visant à automatiser une ou plusieurs parties d'un projet de science des données. Il vise à prendre des décisions fondées sur les données de manière objective et automatisée. L'objectif ultime est de remplacer le scientifique des données humain. L'utilisateur fournirait des données d'entrée et le système AutoML déterminerait l'approche la plus performante pour une application particulière avec une supervision humaine minimale. 

AutoML peut être divisé en quatre piliers principaux, chacun ciblant une tâche différente, souvent avec une approche similaire. Ces quatre piliers sont les plus étudiés et les mieux mis en œuvre jusqu'à présent. 

TLDR: Découvrir la meilleure combinaison d'hyperparamètres pour un modèle donné (HPO). Découvrir de nouvelles architectures de réseaux neuronaux (NAS). Utiliser les expériences passées pour améliorer les nouvelles (Meta-Learning). Gérer certaines parties de la phase de prétraitement d'un pipeline ML. Si vous êtes intéressé par plus de détails, lisez les sections ci-dessous.

Optimisation des hyperparamètres (HPO)

Chaque modèle d'apprentissage automatique possède des hyperparamètres. La tâche la plus fondamentale de l'apprentissage automatique consiste à découvrir les combinaisons d'hyperparamètres qui optimisent les performances. Cependant, l'espace de recherche est toujours (pré)défini par un expert humain. 

Certaines méthodes HPO sont :

  • Recherche par grille et recherche aléatoire[1] : Ce sont les méthodes essentielles de HPO ; elles automatisent le réglage fin manuel. La recherche par grille essaie chaque option demandée par l'utilisateur, tandis que la recherche aléatoire l'améliore en échantillonnant aléatoirement les configurations jusqu'à épuisement du budget de calcul.
  • L'optimisation bayésienne [2] et ses variantes pratiques comme l'optimisation bayésienne avec contraintes. Ils peuvent obtenir d'excellents résultats, dépassant souvent les performances des experts humains.
  • Méthodes basées sur la population : Les algorithmes génétiques ou évolutionnaires en sont des exemples .
  • Ceux-ci maintiennent un ensemble de configurations et appliquent des perturbations (mutations) et des combinaisons de différents membres pour obtenir une nouvelle et meilleure génération de configurations. L'algorithme le plus populaire est CMA-ES
  • Méthodes basées sur les bandits : Elles déterminent le meilleur algorithme parmi un ensemble fini donné d'algorithmes en se basant sur des approximations de faible fidélité de leurs performances. Par exemple, elles n'exécutent un modèle que pendant quelques itérations, éliminent les plus mauvais candidats, puis continuent pendant quelques itérations supplémentaires avant de les éliminer à nouveau. Parmi les méthodes réussies, citons le Successive Halving [3] et l'optimisation Hyperband [4].

Recherche d'architecture neuronale (NAS)

Les architectures de réseaux neuronaux profonds, malgré leur domaine d'application, sont de plus en plus compliquées. La plupart de ces architectures sont conçues manuellement par des experts, une tâche qui prend beaucoup de temps et coûte cher. La conception d'une architecture optimale est très complexe mais constitue également un facteur critique pour le succès de l'apprentissage profond. Ainsi, la prochaine étape logique d'AutoML est d'automatiser la recherche de nouvelles architectures de réseaux neuronaux. 

La NAS en tant que tâche se compose de 3 étapes. Tout d'abord, un espace de recherche est défini. Cet espace de recherche définit les architectures qui peuvent être potentiellement découvertes par NAS. Par exemple, un espace de recherche relativement simple est l'espace des architectures neuronales structurées en chaîne où le flux d'informations est séquentiel de la couche Li à la couche Li+1. Un exemple d'espace de recherche plus complexe serait l'architecture résiduelle

Fig.1 : Le cadre de recherche d'architecture neuronale. Un espace de recherche A est défini, puis une stratégie de recherche est appliquée sur l'espace de recherche A. Les architectures qui découlent de la recherche sont évaluées à l'aide d'une stratégie d'estimation des performances et le cycle se répète jusqu'à convergence. Flux de travail inspiré de : [5]

Deuxièmement, une stratégie de recherche est utilisée pour explorer l'espace de recherche souvent énorme. Ces stratégies comprennent l'optimisation bayésienne, l'apprentissage par renforcement et les méthodes basées sur le gradient. 

Enfin, chaque architecture découverte par la stratégie de recherche doit être évaluée. La formation du réseau et l'évaluation de l'ensemble de données de validation prennent généralement beaucoup de temps. Par conséquent, une certaine approximation est utilisée comme une heuristique pour "régler" la stratégie de recherche. Certaines méthodes sont les estimations de basse fidélité, l'extrapolation de la courbe d'apprentissage et les modèles à un coup [5]. 

Méta-apprentissage

Il s'agit d'un sujet à part entière que nous ne pouvons pas aborder en détail dans cet article. Cependant, étant donné qu'il est incorporé dans AutoML pour trouver les pipelines et les modèles d'apprentissage automatique les plus optimaux, nous allons brièvement expliquer le concept central. 

Le méta-apprentissage consiste à apprendre comment apprendre en observant systématiquement les performances de différentes approches ML dans une grande variété de tâches. Les hyperparamètres de modèle, les architectures de réseau, les configurations de pipeline, les performances d'évaluation et le temps de formation peuvent être considérés comme des méta-données de formation. En rassemblant des méta-données, nous pouvons faire des estimations éclairées, basées sur des données, de ce qui fonctionnera le mieux dans des scénarios futurs. Tout comme les êtres humains tirent des connaissances de compétences antérieures pour en apprendre une nouvelle, le méta-apprentissage fait de même pour découvrir et former de nouveaux modèles. Son utilisation dans AutoML est un facteur important de son succès et de sa rentabilité informatique.

Prétraitement des données et ingénierie des caractéristiques

Cette partie du pipeline ML est probablement la plus difficile à automatiser complètement. Certaines parties de ce processus, comme la normalisation, la mise à l'échelle, la sélection des caractéristiques et parfois le codage des caractéristiques, peuvent être automatisées relativement facilement. Vous pouvez trouver les meilleures techniques de normalisation (par exemple, z-score/minimax) par une procédure d'optimisation des hyperparamètres. La sélection des caractéristiques peut être mise en œuvre par des algorithmes itératifs comme la sélection en avant, l'élimination en arrière, ou par des méthodes de filtrage comme les filtres de corrélation. Comme nous le verrons dans les sections suivantes, d'autres parties du processus, comme le nettoyage des données et l'ingénierie des caractéristiques, sont beaucoup plus difficiles à automatiser.

Avantages d'AutoML

À présent, vous devriez mieux comprendre ce que signifie AutoML. Il ne s'agit pas d'une baguette magique mais d'une combinaison de techniques d'optimisation, tout comme le Machine Learning. Cependant, il fait parfois des merveilles et offre plusieurs avantages :

  • Il permet de découvrir l'algorithme d'apprentissage le mieux adapté à la tâche à accomplir.
  • Il réduit massivement le temps et les efforts nécessaires pour trouver les hyperparamètres optimaux d'un modèle.
  • Il peut produire des modèles qui obtiennent de meilleurs résultats que les humains lors de l'évaluation des modèles.
  • Il automatise les processus itératifs et fastidieux tels que le réglage des hyperparamètres, ce qui permet au spécialiste des données de se concentrer sur des tâches plus critiques/exigeantes telles que la conception de solutions et la recherche.
  • Il permet de découvrir de nouvelles architectures de réseaux neuronaux (NAS) ou des ensembles de modèles (par le biais du méta-apprentissage) que les experts humains ne pourraient pas découvrir. 

Dans l'ensemble, AutoML nous aide à concevoir et à former plus de modèles de manière plus efficace. Par conséquent, il peut nous aider à créer de meilleurs modèles que nous ne le ferions sans lui. Cette efficacité permet d'accélérer la conception des produits, les découvertes de données et les livraisons sur le marché en temps voulu. 

Limites d'AutoML

Ces avantages signifient-ils que les data scientists seront au chômage dans les prochaines années ? Pas si vite ; il existe des processus qu'AutoML ne peut pas ou ne veut pas encore traiter de manière fiable. 

  • Évaluation des performances: La précision et le score F1 sont souvent les métriques de base utilisées dans la littérature pour comparer différents modèles. Néanmoins, ces mesures reflètent rarement la valeur qu'un modèle doit apporter dans le monde réel. Le choix, voire la conception, de nouvelles métriques spécifiques à un projet fait partie du travail d'un scientifique des données. La performance est subjective et se mesure de différentes manières, d'un projet à l'autre et d'une entreprise à l'autre. Choisir et concevoir la bonne métrique à optimiser est une tâche qu'aucun outil AutoML ne pourra jamais accomplir. 

  • Le nettoyage des données est un processus complexe et adapté aux tâches du pipeline ML. L'application de certaines règles pour accélérer le processus est possible, mais la supervision humaine est essentielle. Le data scientist doit d'abord très bien connaître ses données. Prenons un exemple de travail avec des données tabulaires. Une caractéristique peut manquer 90% de ses entrées. Doit-elle être automatiquement rejetée par l'AutoML ? Ou bien cette caractéristique est-elle essentielle puisqu'elle code une propriété fondamentale (par exemple, un indice d'une maladie rare qui n'est pas présente chez des patients sains par ailleurs) ? Comment l'imputation des données (remplissage des valeurs manquantes) sera-t-elle gérée dans ce scénario ? Elle peut être automatisée, mais la supervision humaine est essentielle car toutes les techniques ne sont pas pertinentes pour tous les ensembles de données. En outre, les ensembles de données très sales (comme la plupart des ensembles de données réels) peuvent comporter des types de données mixtes tels que "string" et "float" dans une colonne, ce qu'un outil automatisé ne pourra pas gérer.

  • Ingénierie des caractéristiques dérivées de l'expertise du domaine: Cet aspect s'applique principalement au ML traditionnel et moins au Deep Learning. Néanmoins, l'ingénierie des caractéristiques est un art en soi, et lorsqu'elle est associée à l'expertise du domaine, elle peut "faire ou défaire l'affaire". Le fait de laisser l'intuition humaine guidée par la connaissance du domaine diriger le processus d'ingénierie des caractéristiques peut donner d'excellents résultats qu'aucun outil ne peut égaler.

  • Les types de données inhabituels, tels que les données de réseau, souvent représentées par des graphiques, sont loin d'être pris en charge par les outils AutoML. Tout type de données qui n'entre pas dans les catégories habituelles (tableaux, images, textes) ne sera pas facilement digéré par les outils automatisés, du moins pas encore.

  • Pas l'apprentissage supervisé : La plupart des outils AutoML sont bons pour traiter les problèmes d'apprentissage supervisé. La gestion des problèmes non supervisés est plus difficile car il n'existe pas de métriques strictes pour mesurer les performances. L'apprentissage automatique par renforcement (AutoRL) n'est pas aussi bien étudié, sans parler des paradigmes d'apprentissage plus "exotiques" tels que l'apprentissage auto-supervisé ou Few-shot Learning. AutoML peut toujours aider à choisir les bons paramètres mais ne gère pas les pipelines complets des paradigmes d'apprentissage plus avancés.

Outils AutoML que vous pouvez utiliser 

Certains outils AutoML bien connus peuvent être brièvement classés comme suit :

Outils pour l'apprentissage automatique "traditionnel" de la machine :

  • Auto-Sklearn
  • Auto-Weka
  • TPOT

Outils pour l'apprentissage automatique profond :

  • Auto-Keras
  • Auto-Net

Outils pour les séries chronologiques :

  • PyCaret

Des outils qui offrent des capacités multiples :

  • AutoGluon
  • H2O

La liste précédente est une liste non exhaustive des outils et bibliothèques AutoML disponibles en tant qu'outils open-source. De nombreuses autres bibliothèques et outils existent, et d'autres surgissent au moment où j'écris ce billet. Picsellia, bien que n'étant pas une plateforme AutoML à la base, peut apporter de nombreux avantages, en vous aidant à former les modèles les plus performants et en automatisant le déploiement pour vous ! 

L'AutoML remplacera-t-il les spécialistes des données à l'avenir ? 

L'apprentissage automatique a incontestablement transformé de nombreux secteurs et domaines. Malheureusement, de nombreuses personnes ont déjà perdu ou perdront leur emploi à l'avenir à cause du ML. Maintenant, l'apprentissage automatique transforme également son domaine !

Sans aucun doute, AutoML pose un nouveau paradigme dans le domaine, et inévitablement, les scientifiques des données et les ingénieurs en apprentissage automatique devront s'adapter.

L'expertise du domaine et les compétences en science des données sont plus précieuses que jamais puisque la science des données est introduite dans de nombreux secteurs différents, et AutoML permet aux non-experts d'appliquer l'apprentissage automatique dans leur domaine.

Cependant, le travail d'un data scientist a toujours reposé sur des connaissances théoriques et des compétences pratiques. D'une part, il est crucial de disposer d'une solide expertise théorique en statistiques, en apprentissage automatique et en apprentissage profond. D'autre part, les data scientists s'appuient sur des outils pour développer des modèles et traiter les données. L'expertise des outils fait partie intégrante de la réussite de tout data scientist. 

AutoML est un outil de plus que les spécialistes des données doivent apprendre à utiliser efficacement lorsqu'il est à leur avantage, tout en respectant ses limites. Comme AutoML ne pourra pas résoudre tous les problèmes, vous devez savoir comment les traiter avec succès en utilisant d'autres outils couplés à l'intuition humaine. 

La conception de modèles avec sklearn et la formation de quelques réseaux neuronaux simples sont des compétences qui peuvent être facilement automatisées. Cependant, un data scientist entièrement automatisé est loin d'être une réalité. En fin de compte, quelqu'un doit faire fonctionner AutoML ; les managers et les cadres supérieurs ne le feront pas eux-mêmes. Une chose est sûre : moins de compétences techniques sont nécessaires pour appliquer le ML dans un domaine utilisant de tels outils automatisés.

Conclusion

L'adaptation est la clé. Le monde de l'apprentissage automatique a certainement changé. AutoML s'inscrit dans un mouvement visant à rendre l'apprentissage automatique plus systématique (car il est encore ad hoc de nos jours) et plus efficace. La formation et la fourniture de modèles à la "vitesse de la lumière" sont plus proches des attentes des entreprises et des marchés. Les outils AutoML et les plateformes MLOps complètes comme Picsellia peuvent vous aider à itérer sur vos solutions et à fournir de la valeur beaucoup plus rapidement. Demandez votre essai gratuit dès aujourd'hui !

Références

[1] Recherche aléatoire pour l'optimisation des hyperparamètres

[2] Enlever l'humain de la boucle : Une revue de l'optimisation bayésienne.

[3] Exploration presque optimale dans les bandits à bras multiples.

[4] Hyperband : Une nouvelle approche basée sur les bandits pour l'optimisation des hyperparamètres.

[5] Recherche d'architecture neuronale : Une étude

Commencez à gérer vos données d'IA de la bonne façon.

Demander un essai gratuit

Recommandé pour vous :