Qu’est-ce qu’un algorithme de machine learning ?

Auteur

Dave Bergmann

Senior Staff Writer, AI Models

IBM Think

Qu’est-ce qu’un algorithme de machine learning ?

Un algorithme de machine learning est la procédure et la logique mathématique grâce auxquelles une « machine », c’est-à-dire un système d’intelligence artificielle (IA), apprend à identifier les schémas dans les données d’entraînement et à appliquer cette reconnaissance des formes pour faire des prédictions précises sur de nouvelles données. Les algorithmes de machine learning sont les éléments fondamentaux de l’IA et de la science des données modernes, des simples modèles de régression linéaire aux techniques d’apprentissage profond de pointe.

Si les termes « algorithme » et « modèle » sont souvent utilisés de manière interchangeable, ils représentent des concepts distincts (bien que liés). Algorithme est un terme générique désignant un processus étape par étape, généralement décrit en langage mathématique ou en pseudocode, pour exécuter une fonction ou un objectif donné. Dans le contexte de l’intelligence artificielle, un modèle d’IA est tout programme qui reçoit des données d’entrée et produit une prédiction ou une décision sans intervention humaine supplémentaire.

Un algorithme de machine learning est un ensemble défini d’étapes utilisées pour entraîner un modèle de machine learning afin qu’il puisse formuler des prédictions utiles dans son cas d’utilisation concret. Il comprend non seulement la façon dont le modèle associe un point de données d’entrée à sa sortie correspondante, mais également le processus d’optimisation des prédictions du modèle pour « s’adapter » à un jeu de données d’exemples pertinents. C’est un algorithme qui permet à une machine d’apprendre à partir des données.

En termes simples, le résultat obtenu en appliquant un algorithme de machine learning à un jeu de données est un modèle entraîné. L’« entraînement » peut être décrit comme un processus itératif consistant à mettre à jour les paramètres du modèle (les aspects ajustables de la logique mathématique que le modèle utilise pour faire des prédictions ou prendre des décisions sur les données d’entrée) de manière à obtenir des sorties plus utiles.

Bien qu’il existe des algorithmes de machine learning (ML) spécialement conçus pour entraîner les modèles à effectuer une seule tâche donnée, il s’agit d’une exception, et non d’une règle. D’une manière générale, chaque algorithme ML possède des qualités mathématiques ou pratiques particulières, qui sont utiles pour certains types de tâches (ou certains types ou quantités de données). Dans de nombreux cas, la même technique de machine learning peut être utilisée pour entraîner les modèles à réaliser plusieurs tâches (bien que similaires). Inversement, il existe presque toujours plusieurs algorithmes ML bien adaptés à l’entraînement d’un modèle pour une tâche donnée.

Le principal avantage des algorithmes ML est qu’ils permettent aux modèles d’IA d’apprendre implicitement de l’expérience, contrairement aux techniques d’IA « classiques » ou « basées sur des règles », qui obligent le data scientist, l’expert en la matière ou l’ingénieur en ML de programmer manuellement et explicitement la logique décisionnelle du modèle. Au cours des dernières décennies, les systèmes de machine learning se sont imposés comme le principal mode d’intelligence artificielle et d’analyse de données car, entre autres, le machine learning implicite axé sur les données est intrinsèquement plus flexible, plus évolutif et plus accessible que l’IA basée sur des règles.

Cela dit, il est essentiel de noter que l’ajustement d’un modèle à ses données d’entraînement n’est qu’un moyen, et non une finalité. Le principe fondamental du machine learning est que si vous optimisez la performance d’un modèle sur des tâches qui ressemblent suffisamment aux problèmes qu’il devra résoudre dans le monde réel, le modèle entraîné sera également performant sur de nouvelles données, qu’il n’a pas vues lors de son entraînement. L’objectif ultime du machine learning est la généralisation, c’est-à-dire la transposition de la performance acquise sur les données d’apprentissage vers de nouvelles données. Une focalisation myope sur l'entraînement risque de provoquer un surapprentissage : les connaissances du modèle sont tellement adaptées aux schémas de ses données d’entraînement qu’il ne peut pas se généraliser, ce qui fait qu’il excelle dans l’entraînement mais il échoue dans les scénarios réels.

Pour entraîner un modèle de machine learning utile, il convient donc non seulement de sélectionner et de configurer le type d’algorithme ML approprié, mais aussi d’organiser les données d’entraînement et de vérifier minutieusement la performance post-entraînement.

Les dernières tendances en matière d’IA, vues par des experts

Obtenez des informations sur les actualités les plus importantes et les plus intrigantes en matière d’intelligence artificielle. Abonnez-vous à notre newsletter hebdomadaire Think. Lire la Déclaration de confidentialité d’IBM.

Merci ! Vous êtes abonné(e).

Vous recevrez votre abonnement en anglais. Vous trouverez un lien de désabonnement dans chaque newsletter. Vous pouvez gérer vos abonnements ou vous désabonner ici. Consultez la Déclaration de confidentialité d’IBM pour plus d’informations.

Types d’algorithmes de machine learning

Les algorithmes de machine learning peuvent être classés en trois grandes categories : l’apprentissage supervisé, l’apprentissage non supervisé et l’apprentissage par renforcement. Chacun de ces paradigmes d’apprentissage se différencie principalement par ses objectifs, les types de tâches d’entraînement que ces objectifs impliquent et les techniques utilisées pour optimiser la performance sur ces tâches.

  • Les algorithmes d’apprentissage supervisé entraînent un modèle à prédire la sortie « correcte » pour une entrée donnée : en d’autres termes, à apprendre établir une relation entre les variables indépendantes (les caractéristiques des données d’entrée) et les variables dépendantes (la sortie, ou « cible »). Ils permettent d’entraîner les modèles à réaliser des tâches qui exigent un certain degré de précision par rapport à une « vérité terrain » connue telle que la classification ou la régression. Cette vérité terrain se présente généralement (mais pas toujours) sous forme de données étiquetées, c’est-à-dire des données qui ont été annotées pour fournir un contexte au modèle (par exemple, un jeu de données comprenant des données étiquetées [input, output]

  • Les algorithmes d’apprentissage non supervisé entraînent un modèle à discerner des schémas, des dépendances et des corrélations intrinsèques dans des ensembles de données non étiquetés. Contrairement à l’apprentissage supervisé, l’apprentissage non supervisé n’implique pas l’existence d’une vérité terrain externe à laquelle ses sorties devraient être comparées.

  • Les algorithmes d’apprentissage par renforcement (RL) entraînent un modèle, par essais et erreurs, à évaluer son environnement et à prendre la décision qui lui permettra d'obtenir la plus grande récompense. L'apprentissage par renforcement est particulièrement adapté aux scénarios qui n'impliquent pas l'existence d'une vérité fondamentale unique, mais qui impliquent des actions « bonnes » (récompensées) et des actions « mauvaises » (pénalisées). Alors que l’objectif des algorithmes d’apprentissage supervisé est d’optimiser les paramètres de manière à minimiser les erreurs, l’objectif des algorithmes d’apprentissage par renforcement est d’optimiser les paramètres du modèle de manière à maximiser la récompense.

Bien qu’aucun algorithme de ML ne corresponde à ces trois paradigmes, il existe des méthodes d’apprentissage dont la catégorisation est relativement ambiguë. Par exemple, l’apprentissage semi-supervisé combine l’apprentissage supervisé et non supervisé ; l’apprentissage auto-supervisé manipule les données d’entrée et conçoit les tâches d’entraînement de manière à permettre un apprentissage supervisé avec des données non étiquetées.

Un modèle peut être entraîné avec plusieurs types d’algorithmes de machine learning. Par exemple, les grands modèles de langage (LLM) passent généralement par un entraînement initial (« pré-entraînement ») par apprentissage auto-supervisé, mais sont ensuite affinés à la fois par des algorithmes d’apprentissage supervisés conventionnels et des algorithmes d’apprentissage par renforcement. De même, les algorithmes d’apprentissage d’ensemble impliquent l’agrégation de plusieurs modèles en un seul modèle « final ».

Les algorithmes de machine learning ne sont pas universels : chaque algorithme possède divers hyperparamètres, qui doivent être configurés pour adapter au mieux le modèle au scénario et au jeu de données qui lui sont destinés. Prenons l’exemple de la pizza : un « algorithme » de base pour faire une pizza pourrait être défini comme suit : verser de la sauce tomate sur une pâte ronde, mettre du fromage mozzarella sur cette sauce et la faire cuire au four. Mais il existe un nombre quasi infini de façons de configurer cet « algorithme » pour s’adapter à des goûts, des ingrédients, des budgets ou des contraintes spécifiques.

Mixture of Experts | 12 décembre, épisode 85

Décryptage de l’IA : Tour d’horizon hebdomadaire

Rejoignez notre panel d’ingénieurs, de chercheurs, de chefs de produits et autres spécialistes de premier plan pour connaître l’essentiel de l’actualité et des dernières tendances dans le domaine de l’IA.

Les algorithmes d’apprentissage supervisé

L’objectif formel de tout algorithme de machine learning supervisé est d’optimiser les paramètres du modèle de manière à minimiser la sortie d’une fonction de perte qui mesure la divergence (« perte ») entre la sortie de modèle prédite pour chaque entrée et la sortie de vérité terrain pour chacune de ces entrées.

Dans l’apprentissage supervisé conventionnel, cette vérité terrain est fournie par les données étiquetées. Par exemple, l’entraînement d’un modèle qui détecte les e-mails de type spam exige généralement qu’un annotateur humain examine manuellement un corpus d’exemples d’e-mails et les étiquette comme « SPAM » ou « PAS SPAM ». L’objectif de l’entraînement du modèle est d’ajuster ses paramètres jusqu’à ce que les prédictions de sortie du modèle liées à un e-mail donné soient cohérentes avec la façon dont l’e-mail a été étiqueté par l’humain. Parce que cette méthode implique une supervision humaine directe de ce que la machine apprend, on parle d’apprentissage « supervisé ». L’apprentissage supervisé est souvent défini comme étant tout simplement un type de machine learning qui utilise des données étiquetées.

Mais certains cas, en particulier dans l’apprentissage profond moderne, nécessitent des jeux de données tellement volumineux et des points de données si complexes qu’obtenir une quantité suffisante de données d’entraînement étiquetées devient chronophage et laborieux. L’apprentissage autosupervisé, développé en grande partie pour répondre à de tels scénarios, conçoit les tâches d’entraînement de manière qu’une étiquette (ou une « pseudo-étiquette ») puisse être déduite des données non étiquetées. Cela remet en cause la définition conventionnelle de l’apprentissage supervisé, selon laquelle il nécessite des données étiquetées. Une meilleure définition des algorithmes d’apprentissage supervisé serait donc la suivante : méthodes de machine learning qui impliquent une certaine vérité terrain (ou «signal de supervision ») pour l’optimisation, ainsi qu’une fonction de perte qui compare les sorties du modèle à la vérité terrain.

Les algorithmes d’apprentissage supervisé sont utilisés pour entraîner les modèles à réaliser des tâches de classification, de régression ou les deux.

  • La classification implique des prédictions discrètes telles que la catégorie à laquelle appartient un point de données. Les tâches de classification sont soit binaires (« oui » ou « non », « approuver » ou « rejeter », « spam » ou « pas spam »), soit multi-classes. Si certains algorithmes de classification ne conviennent qu’à la classification binaire, tout classificateur multi-classes peut effectuer une classification binaire.

  •  La régression est utilisée pour prédire les valeurs continues telles que les quantités, les prix, la durée ou la température. On s’en sert, entre autres, dans l’analyse de séries chronologiques, la prévision, la tarification et la prédiction des probabilités.

De nombreux algorithmes d’apprentissage supervisé peuvent être utilisés pour entraîner des modèles de régression ou de classification. Par exemple, un modèle peut utiliser la régression pour prédire la probabilité qu’un point de données appartienne à chacune des catégories, puis produire la catégorie avec la probabilité la plus élevée.

Algorithmes de régression courants

  • La régression linéaire fait partie des algorithmes de machine learning de base, largement utilisés. Les algorithmes de régression linéaire calculent une sortie (variable dépendante) sous la forme d’une combinaison pondérée d’une ou plusieurs variables d’entrée (variables indépendantes). En apprenant la pondération optimale pour chaque variable d’entrée, l’algorithme génère la « ligne la mieux adaptée » aux points de données vus lors de l’entraînement. Il existe un large éventail de variantes et d’extensions de la régression linéaire, qui utilisent une logique similaire pour modéliser des relations plus variées mathématiquement entre les variables dépendantes et indépendantes, comme la régression polynomiale (qui modélise les relations non linéaires et courbes) ou la régression quantile (qui modélise les relations à certains points dans la distribution d’un jeu de données).

  • Les algorithmes d’arbre de décision parviennent aux prévisions finales grâce à une séquence ramifiée de décisions « si, alors » qui peuvent être visualisées sous la forme d’un diagramme arborescent. Ils peuvent être utilisés tant pour la régression que pour la classification. Contrairement à la plupart des algorithmes d’apprentissage supervisé, ils ont pour objectif non pas d’optimiser leurs prédictions en minimisant une fonction de perte globale unique, mais d’optimiser le pouvoir prédictif de chaque nœud de ramification de l’arbre.

  • Les modèles d’espace d’état (SSM) modélisent les systèmes dynamiques et les données séquentielles à l’aide de deux équations interdépendantes : l’une, l’équation d’état, décrit la dynamique interne (« état ») d’un système qui n’est pas directement observable ; l’autre, l’équation de sortie, décrit la manière dont ces dynamiques internes sont liées aux résultats observables, c’est-à-dire aux sorties du système. Ils sont utilisés dans divers domaines, de l’ingénierie électrique au traitement automatique du langage naturel (TAL) en passant par les prévisions financières.

Algorithmes de classification courants

  • Les classificateurs Naïve Bayes fonctionnent selon la logique du théorème de Bayes, qui est essentiellement une formulation mathématique de l’idée selon laquelle les informations provenant d’événements ultérieurs (tels qu’un résultat) peuvent être utilisées pour mettre à jour la compréhension des événements antérieurs (tels que les entrées). En d’autres termes, le modèle apprend l’importance relative d’une variable d’entrée donnée en fonction de l’ampleur de la corrélation avec des résultats spécifiques. Son hypothèse « naïve » éponyme est que toutes les fonctionnalités contribuant à une classification sont indépendantes les unes des autres. Cette simplification rend l’algorithme rapide et efficace pour des tâches simples comme la détection du spam.

  • La régression logistique adapte l’algorithme de régression linéaire pour résoudre les problèmes de classification binaire en alimentant la somme pondérée des caractéristiques d’entrée dans une fonction sigmoïde, qui compresse toute entrée dans une valeur comprise entre 0 et 1. La valeur résultante peut être interprétée comme la probabilité qu’un événement donné (dans ce cas, une classification spécifique) se produise.

  • Les algorithmes K plus proches voisins (KNN) classent les points de données en fonction de leur proximité dans l’espace d’embedding vectoriel par rapport à d’autres points de données déjà classés, c’est-à-dire étiquetés, en supposant que des points de données similaires peuvent être trouvés à proximité les uns des autres. Le k fait référence au nombre de points de données voisins pris en compte : par exemple, dans un algorithme KNN où k = 5, le point de données d’entrée sera comparé à ses 5 voisins les plus proches et classé en fonction de la catégorie la plus représentée parmi ces 5 points de données voisins.

  • Les machines à vecteurs de support (SVM) sont des modèles puissants qui effectuent ostensiblement une classification binaire, mais qui peuvent également être adaptés pour résoudre des problèmes de classification multiclasse. L’objectif d’un algorithme SVM n’est pas d’apprendre directement à classer les points de données : il vise plutôt à apprendre la limite de décision optimale pour séparer deux catégories de points de données étiquetés afin de classer les nouveaux points de données en fonction de leur côté dans la limite de décision. L’algorithme SVM définit cette limite comme l’hyperplan qui maximise la marge (ou l’écart) entre les points de données de classes opposées, un concept similaire à l’hypothèse de faible densité dans l’apprentissage semi-supervisé. Logiquement, les seuls points de données qui se prêtent au calcul de cet hyperplan sont les points de données de chaque classe les plus proches de la limite. Les embeddings vectoriels de ces points de données adjacents aux limites sont donc appelés vecteurs de support.

Algorithmes d’apprentissage auto-supervisé

L’objectif des algorithmes d’apprentissage auto-supervisé est d’effectuer un apprentissage supervisé sans nécessiter de données étiquetées, et ce en concevant des tâches qui utilisent la structure des données non étiquetées pour les signaux de supervision. Les techniques d’apprentissage auto-supervisé se répartissent généralement en deux sous-ensembles : l’auto-prédiction et l’apprentissage contrastif.

Auto-prévision

Les algorithmes d’auto-prévision entraînent un modèle à prédire un aspect d’un point de données lorsqu’on lui fournit d’autres informations sur ce point de données. Yann LeCun explique l’objectif de ces méthodes en termes simples : « faites comme s’il y avait une partie de l’entrée que vous ne connaissez pas, et prédisez-la ». 1 Par exemple :

  • Prédire toute partie d'une entrée à partir d'une autre partie
  • Prédire le futur à partir du passé
  • Prédire ce qui est masqué à partir du contenu visible
  • Prédire toute partie obstruée à partir des parties disponibles

Les modèles entraînés via l’auto-prédiction sont généralement génératifs (plutôt que discriminatifs). Parmi les exemples les plus répandus de modèles de machine learning entraînés à l’aide d’algorithmes d’auto-prédiction, citons les auto-encodeurs et les grands modèles de langage (LLM) :

  • Les auto-encodeurs sont chargés de reconstruire l’entrée d’origine après l’avoir compressée pour n’en garder que les variables latentes. L’entrée initiale sert de vérité terrain.

  • Les LLM autorégressifs, les modèles de génération de texte devenus célèbres après le lancement de ChatGPT, sont chargés de prédire de manière itérative le token suivant d’une séquence, en s’appuyant uniquement sur les tokens précédents de cette séquence. Pour chaque prédiction, le jeton suivant de la séquence sert de vérité terrain.

Apprentissage contrastif

Les algorithmes d’apprentissage contrastif fournissent aux modèles plusieurs échantillons de données et les chargent de prédire leur degré de différence (ou de similarité). Les paires de points de données sont souvent créées par augmentation des données, c’est-à-dire en transformant ou en perturbant les données non étiquetées pour créer de nouvelles instances ou des vues augmentées. Par exemple, les techniques d’augmentation courantes des données d’image comprennent la rotation, le rognage aléatoire, le retournement, le bruitage, le filtrage et la colorisation.

L’apprentissage contrastif est surtout utilisé dans l’entraînement des modèles de vision par ordinateur : par exemple, il aide les modèles à apprendre à reconnaître le même objet vu sous différents angles. Il est également essentiel dans l’entraînement de l’IA multimodale : par exemple, il aide les modèles à apprendre à « traduire » les plongements vectoriels d’une modalité de données (comme le texte) vers une autre (comme la parole ou les images).

Algorithmes d’apprentissage non supervisé

Le machine learning non supervisé est utilisé pour apprendre aux modèles à découvrir les schémas intrinsèques, les corrélations et les structures dans les données non étiquetées. Contrairement à l’apprentissage supervisé, qui implique l’existence de « bonnes » réponses que le modèle doit apprendre à produire, ou à l’apprentissage par renforcement, qui implique un éventail de « bonnes » et de « mauvaises » actions que le modèle peut entreprendre, l’apprentissage non supervisé est le plus utile dans les scénarios où la sortie idéale n’est pas connue à l’avance.

Ces objectifs ne sont régis par aucune vérité terrain, ni aucune structure de récompense prédéfinie, ce qui leur permet d’être « non supervisés ». Les algorithmes d’apprentissage non supervisé n’impliquent donc pas de fonction de perte, car leurs tâches n’impliquent pas de sortie idéale connue à mesurer et à optimiser. La réussite du processus d’apprentissage dépend principalement du réglage manuel des hyperparamètres, et non d’algorithmes qui optimisent les paramètres internes du modèle.

Il existe trois sous-ensembles fondamentaux d’algorithmes d’apprentissage non supervisé : les algorithmes de partitionnement, les algorithmes d’association et les algorithmes de réduction de la dimensionnalité.

Algorithmes de partitionnement

Les algorithmes de partitionnement répartissent les points de données non étiquetés en « clusters », ou grappes, en fonction de leur proximité ou de leur similarité, pour des tâches telles que la segmentation du marché. Ils peuvent également servir de modèles prédictifs pour la détection d’anomalies. Ils apprennent les clusters dans lesquels tous les points de données doivent être triés et ils identifient les points de données aberrants, qui ne correspondent parfaitement à aucun de ces clusters.

  • Les algorithmes de partitionnement K-means répartissent les données en k clusters. Un point de données sera attribué au cluster dont le centre(centroïde) est le plus proche. Le processus commence par un placement initial de k centroïdes, qui est souvent aléatoire (mais peut également être déterminé par les règles spécifiées). Chaque point de données est attribué au cluster du centroïde le plus proche. Chaque centroïde est ensuite replacé dans la position représentant la moyenne des points de données qui viennent de lui être attribués. Les points de données sont à nouveau regroupés en fonction du centroïde le plus proche, et la position de chaque centroïde est à nouveau ajustée. Ce processus est répété jusqu’à ce que l’emplacement du centroïde de chaque cluster soit stabilisé.
  • Les modèles de mélange gaussien (GMM) sont un algorithme de cluster « souple ». Le GMM suppose qu’un jeu de données est un mélange de plusieurs distributions gaussiennes, c’est-à-dire des distributions classiques « normales » ou « en cloche », et prédit la probabilité qu’un point de données donné appartienne à chacun de ces clusters normalement distribués. L’algorithme GMM est conçu pour apprendre les paramètres de chaque distribution gaussienne, et notamment la moyenne, la variance et le poids de chaque distribution, qui correspondent le mieux au jeu de données d’entraînement.
  • DBSCAN (Density-Based Spatial Clustering Applications with Noise) crée des clusters à partir de points de données qui sont étroitement regroupés. Au lieu de regrouper tous les points de données en clusters, il marque les points de données isolés dans des régions à faible densité comme données aberrantes. Il identifie les zones suffisamment denses pour appartenir à un cluster en fonction du nombre de points de données voisins situés dans un rayon spécifié. Contrairement au k-means, DBSCAN peut trouver des clusters de forme arbitraire et ne nécessite pas que le nombre de clusters soit spécifié au préalable.

Algorithmes d’association

  • Les algorithmes d’association identifient les corrélations entre les variables dans les grands jeux de données. Ils sont largement utilisés dans des tâches telles que l’analyse des paniers d’achat ou les moteurs de recommandation de produits. Par exemple, un service de commerce électronique peut utiliser des algorithmes d’association pour identifier les articles fréquemment achetés ensemble et utiliser ces informations pour promouvoir dynamiquement des articles connexes dans les stocks.

  • L’algorithme apriori est une méthode d’association classique. L’algorithme effectue plusieurs passages sur le jeu de données à l’aide d’une approche « ascendante », en découvrant la fréquence des combinaisons de plus en plus grandes d’éléments individuels et en supprimant les combinaisons qui apparaissent rarement. Le principe a priori stipule que si un plus grand groupe d’éléments est jugé fréquent, tout sous-ensemble de ce groupe doit également être fréquent. Inversement, si un plus petit groupe d’éléments est considéré comme peu fréquent, tout sur-ensemble comprenant ce plus petit groupe doit également être peu fréquent. Bien qu’il soit simple et hautement adaptable, l’algorithme apriori peut être gourmand en mémoire et coûteux en calcul.

  • Le comptage dynamique des itemsets (DIC) est une méthode d’association plus efficace en termes de calcul, bien qu’elle fonctionne selon une logique similaire à celle de l’algorithme apriori classique. Au lieu d’explorer l’ensemble du jeu de données à chaque passage, on commence par un seul sous-ensemble de la base de données, puis on ajoute périodiquement de nouveaux éléments, élargissant son champ d’action de manière « dynamique ».

Parmi les autres algorithmes d’association notables, citons CHARM (abréviation de Closed Association Rule Mining, le H étant « ajouté pour le plaisir », selon les auteurs de l’article CHARM)2 et CARMA (Continuous Association Rule Mining Algorithm).3

Algorithmes de réduction de la dimensionnalité

Les algorithmes de réduction de la dimensionnalité sont conçus pour prendre en compte un point de données et en produire une représentation plus efficace. Plus précisément, ils sont conçus pour apprendre à mapper des points de données de grande dimension dans un espace où ils peuvent être décrits avec précision, en utilisant moins de caractéristiques. En d’autres termes, ils réduisent le nombre de dimensions nécessaires pour représenter efficacement les données.

La réduction de la dimensionnalité est souvent effectuée en tant qu’étape de prétraitement des données, afin de réduire la complexité et le bruit dans les données, d’améliorer les prévisions ou de réduire les exigences en matière de calcul. Il s’agit également d’une étape essentielle dans la modélisation de l’espace latent d’un jeu de données : une représentation compressée (de plus petite dimension) des données ne conservant que le sous-ensemble de fonctionnalités les plus pertinentes pour la tâche à accomplir. Parmi les autres cas d’utilisation courants de la réduction de la dimensionnalité, citons la compression et la visualisation des données.

  • L’analyse en composantes principales (ACP) simplifie les jeux de données en résumant les variables d’origine des données (dont beaucoup sont souvent corrélées entre elles, et donc quelque peu redondantes) pour obtenir un sous-ensemble de variables non corrélées, chacune étant une combinaison linéaire de variables d’origine. Plus précisément, l’algorithme priorise les principales composantes des données : les combinaisons linéaires de variables qui présentent la plus grande variance par rapport à d’autres combinaisons linéaires.

  • L’algorithme t-SNE (t-distributed Stochastic Neighbor Embedding) est un algorithme de réduction de la dimensionnalité non linéaire, couramment utilisé pour la visualisation des données. Il est presque exclusivement utilisé pour représenter les données en 2 ou 3 dimensions, l’objectif principal étant de garantir que les points de données proches les uns des autres dans l’espace à haute dimension le restent dans le nouvel espace de dimension inférieure.

  • Les auto-encodeurs sont un type d’architecture de réseau de neurones encodeur-décodeur entraînée par ce que l’on pourrait plus communément considérer comme un algorithme d’apprentissage auto-supervisé (en ce sens que son objectif est de minimiser une fonction de perte), mais ils effectuent néanmoins une réduction de dimensionnalité des données non étiquetées, en l’occurrence en modélisant leur espace latent. L’encodeur comprend une série de couches de plus en plus petites, forçant les données d’entrée à passer par un « goulot d’étranglement » qui « compresse » les données dans un nombre toujours plus réduit de dimensions, avant qu’elles n’atteignent le décodeur. Le décodeur, qui comprend une série de couches de plus en plus grandes, est ensuite chargé de reconstruire les données d’origine à l’aide de cette représentation compressée, l’objectif étant de minimiser la perte de reconstruction. Cela oblige l’encodeur à apprendre à extraire et à transmettre uniquement les informations les plus propices à une reconstruction précise de l’entrée d’origine.

Algorithmes d’apprentissage semi-supervisé

L’apprentissage semi-supervisé, qui a généralement les mêmes cas d’utilisation que les méthodes d’apprentissage supervisé, se distingue par des techniques permettant d’incorporer des données non étiquetées dans l'entraînement du modèle, aux côtés d’un sous-ensemble de données étiquetées. C’est particulièrement utile dans les situations où il est difficile ou coûteux d’obtenir suffisamment de données étiquetées, et où les données non étiquetées appropriées sont relativement faciles à acquérir.

Les exemples non étiquetés utilisés dans l’apprentissage semi-supervisé doivent être pertinents pour la tâche à laquelle le modèle est entraîné. Par exemple, lorsque l’on entraîne un classificateur d’images à différencier les images de chats et de chiens, l’inclusion d’images non étiquetées de chats et de chiens facilitera l’entraînement, contrairement à celles de chevaux et de motos. Cette condition informe une série d’hypothèses sur la façon dont les points de données se rapportent les uns aux autres, qui fournissent la logique formelle des méthodes semi-supervisées.

Les algorithmes d’apprentissage semi-supervisé sont généralement classés comme suit :transductifs, inductifs ou intrinsèquement auto-supervisés.

  • Les méthodes transductives se concentrent sur la classification des points de données non étiquetés disponibles pendant l’entraînement, afin qu’ils puissent ensuite être appliqués aux algorithmes d’apprentissage supervisé conventionnels. La propagation d’étiquettes, par exemple, est une méthode à graphe qui déduit des « pseudo-étiquettes » pour les données non étiquetées en « propageant » les étiquettes connues vers le point de données situé sur les nœuds voisins du graphe.

  • Les méthodes inductives visent à construire un modèle généralisable, qui peut classer à la fois les données non étiquetées, présentes pendant l’entraînement, et tout nouveau point de données non vu. Dans le cas de l’auto-entraînement, le modèle est d’abord entraîné avec l’apprentissage supervisé conventionnel sur un petit jeu de données étiquetées. Il est ensuite chargé de faire des prédictions probabilistes sur des points de données non étiquetés, et seules les prédictions au-dessus d’un certain seuil de confiance sont acceptées. Le co-entraînement complète l’auto-entraînement par l’apprentissage ensembliste : différents types d’apprenants de base sont entraînés sur différentes fonctionnalités des données. Les méthodes cluster-then-label effectuent un partitionnement non supervisé sur tous les points de données disponibles, puis attribuent des étiquettes à chaque cluster en fonction de celle qui est la plus fréquemment représentée dans ce cluster.

  • Certains algorithmes, tels que les ladder networks4 et les machines à vecteurs de support semi-supervisées (S3VM)5, sont intrinsèquement conçus pour l’apprentissage semi-supervisé (alors que les méthodes transductives et inductives adaptent ou ajoutent des étapes supplémentaires aux algorithmes supervisés conventionnels).

Algorithmes d’apprentissage par renforcement

Les algorithmes d’apprentissage par renforcement (RL) sont adaptés aux tâches lors desquelles il n’y a pas de sortie (ou action) « correcte » unique, mais de « bonnes » sorties. Ils sont largement utilisés dans la robotique, les jeux vidéo, les modèles de raisonnement et d’autres cas d’utilisation où l’espace des solutions et des approches possibles est particulièrement vaste, ouvert ou difficile à définir. Dans le jargon de l’apprentissage par renforcement, l’entité entraînée est généralement appelée « agent ».

Plutôt qu’un signal de supervision et des tâches explicitement définies, ces algorithmes impliquent un signal de récompense, qui permet aux modèles d’apprendre de manière holistique par essai-erreur. Ce signal de récompense peut provenir d’une fonction de récompense, d’un modèle de récompense entraîné séparément ou d’un système de récompense basé sur des règles.

Les algorithmes RL optimisent une politique. Mathématiquement, une politique ( π ) est une fonction qui prend un état ( s ) en entrée et renvoie une action ( a ) : π(s) → a. L’objectif des algorithmes d’apprentissage par renforcement est d’apprendre la politique qui entreprend l’action permettant d’obtenir la récompense maximale pour un état donné.

Les algorithmes RL peuvent être basés sur des valeurs ou sur des politiques. Avec les algorithmes basés sur des politiques, le modèle apprend directement une politique optimale. Avec les algorithmes basés sur la valeur, l’agent apprend une fonction de valeur qui calcule un score pour la « qualité » de chaque état, généralement en fonction de la récompense associée aux actions qui peuvent être prises à partir de cet état, puis il choisit les actions qui conduisent à des états dont la valeur est plus élevée. Les approches hybrides apprennent une fonction de valeur qui, à son tour, est utilisée pour optimiser une politique.

Les algorithmes de renforcement les plus connus sont les suivants :

  • Q-learning,  dérivé de méthodes basées sur la valeur

  • L’optimisation de politique proximale (PPO), une méthode basée sur la politique largement utilisée dans l’apprentissage par renforcement basé sur les commentaires humains (RLHF) et les algorithmes Actor-Critic et ses dérivés, tels que l’Advantage Actor-Critic (A2C), utilisent une approche hybride basée sur les valeurs et la politique.

  • REINFORCE (abréviation de REward Increment = Nonnegative Factor × Offset Reinforcement × Featured Eligibility), la méthode séminale basée sur les politiques

Algorithmes d’apprentissage ensembliste

L’apprentissage ensembliste désigne les techniques qui combinent plusieurs algorithmes de machine learning (souvent appelés « apprenants » dans ce contexte) pour obtenir un niveau de précision et de fiabilité supérieur à celui que l’on atteindrait avec un seul de ses algorithmes constituants.

Les algorithmes d’apprentissage ensembliste utilisent généralement des techniques de boosting, d’empilement ou de bagging.

Boosting

Les algorithmes de boosting créent des modèles de manière séquentielle, chaque nouveau modèle étant entraîné pour corriger les erreurs du modèle précédent. La progression des apprenants initialement « faibles » aboutit à un seul apprenant « fort », très précis.

  • Le boosting adaptatif (AdaBoost) donne plus de poids aux instances mal classées par le modèle précédent, garantissant ainsi que les mises à jour du modèle suivant améliorent en priorité la performance sur ces exemples d’entraînement. La prédiction finale est déterminée par un vote majoritaire pondéré, les modèles plus récents, plus précis ayant plus d’influence sur la sortie finale.

  • Le gradient boosting se concentre sur les erreurs commises par les apprenants précédents, et non sur les points de données sur lesquels les modèles précédents se sont trompés. Plus précisément, il entraîne chaque modèle à corriger, c’est-à-dire à prédire les erreurs commises par le modèle précédent sur un point de données particulier. En agrégeant les prédictions de chaque modèle ultérieur, l’ensemble peut finalement avoir recours à la rétro-ingénierie pour obtenir la sortie correcte associée au point de données d’origine. XGBoost (abréviation d’eXtreme Gradient Boosting) est une bibliothèque de machine learning open source permettant une mise en œuvre efficace du gradient boosting.

Bagging

Les algorithmes de bagging (ou bootstrap aggregation) , entraînent plusieurs modèles en parallèle sur différents sous-ensembles du jeu de données d’entraînement, échantillonnés de manière aléatoire, puis ils combinent leurs prédictions par vote (pour les problèmes de classification) ou par calcul de moyenne (dans les problèmes de régression). Cette approche est très efficace pour réduire la variance et empêcher le surapprentissage.

L’algorithme dit forêt aléatoire , par exemple, utilise le bagging pour construire des ensembles de modèles d’arbres de décision non corrélés.

Stacking

Les algorithmes d’empilement combinent les prédictions de plusieurs apprenants de base, chacun d’entre eux étant souvent spécialisé dans un type particulier de prédiction, puis ils entraînent un « méta-modèle » final sur les sorties de ces modèles de base pour apprendre à combiner au mieux leurs prédictions pour obtenir une sortie finale plus précise et plus efficace.

Dans la technique connexe de distillation des connaissances, le modèle final est entraîné non seulement sur les prédictions de sortie finale (« cibles dures ») des apprenants de base, mais aussi sur leurs sorties intermédiaires (« logits » ou « cibles douces »), dans le but de reproduire leurs « processus de pensée ».

Algorithmes d’apprentissage profond

L’apprentissage profond est une sous-catégorie du machine learning définie par l’utilisation de réseaux de neurones artificiels multicouches, généralement entraînés par apprentissage supervisé, sur des données étiquetées, ou (comme c’est souvent le cas pour les modèles d’IA générative en particulier) par apprentissage autosupervisé sur des données non étiquetées. Dans l’apprentissage par renforcement profond, un réseau de neurones profond sert de politique à l'agent RL. L’apprentissage profond est à l’origine des avancées les plus importantes en matière d’intelligence artificielle depuis le début des années 2010. Parmi ses atouts majeurs, citons sa capacité à automatiser le processus d’ingénierie de caractéristiques, qui est souvent manuel dans le machine learning traditionnel.

Contrairement aux algorithmes de machine learning « traditionnels » définis de manière explicite, les modèles d’apprentissage profond comprennent de nombreuses couches interconnectées de « neurones » (ou « nœuds »), qui effectuent chacune une opération mathématique (appelée « fonction d’activation »). L’entrée de la fonction d’activation de chaque neurone est une combinaison pondérée des sorties des fonctions d’activation des neurones de la couche précédente. Les neurones de la couche finale calculent la sortie finale du modèle. De manière cruciale, les fonctions d’activation exécutées à chaque nœud sont non linéaires, ce qui permet aux réseaux de neurones de modéliser les dépendances et les schémas complexes. Si les réseaux neuronaux dans l’IA moderne sont le plus souvent associés à l’apprentissage profond de pointe, les réseaux de neurones « non profonds », tels que les machines de Boltzmann restreintes, sont utilisés depuis des décennies.

C’est la structure distribuée des algorithmes d’apprentissage profond qui leur offre une puissance et une polyvalence incroyables. Imaginez les données d’entraînement comme des points de données dispersés sur un graphique en 2 dimensions, l’objectif de l’entraînement du modèle étant de trouver une ligne qui traverse chacun de ces points de données. Alors que les algorithmes de machine learning traditionnels tentent d’y parvenir avec une seule fonction mathématique qui produit une seule ligne (ou courbe), les algorithmes d’apprentissage profond peuvent rassembler un nombre arbitraire de lignes plus petites, ajustables individuellement, pour obtenir la forme souhaitée. Les réseaux de neurones profonds sont des approximateurs universels : il a été prouvé théoriquement que pour toute fonction, il existe un agencement de réseau de neurones capable de la reproduire.6

Architectures et algorithmes

  • Dans le contexte de l’apprentissage profond, les types de modèles spécifiques sont souvent désignés par leurs « architectures », un concept lié mais distinct des algorithmes.

  • L’architecture d’un réseau neuronal fait référence à sa disposition : le nombre et la taille des couches, l’utilisation de couches spécialisées et le(s) choix des fonctions d’activation. La même architecture de réseau neuronal peut souvent être entraînée pour effectuer plusieurs types de tâches ou traiter plusieurs modalités de données.

  • Un algorithme d’apprentissage profond comprend non seulement l’architecture de réseau de neurones utilisée pour le modèle, mais aussi la tâche à laquelle il est entraîné et les mesures prises pour l’optimiser.

Prenons l’exemple des auto-encodeurs : en termes d’architecture, un auto-encodeur est un modèle encodeur-décodeur : son réseau encodeur présente des fonctionnalités de plus en plus petites, tandis que son réseau décodeur comporte des couches de plus en plus grandes. Mais l’auto-encodeur n’est qu’un modèle d’encodeur-décodeur parmi d’autres : par exemple, les modèles de segmentation d’images ont une architecture très similaire au sein de laquelle des couches convolutives progressives plus petites sous-échantillonnent les données pour isoler et segmenter les caractéristiques principales, suivies de couches progressivement plus grandes qui sur-échantillonnent les données (segmentées) pour revenir à leur taille d’origine.

Ce qui caractérise un autoencodeur, ce n’est pas (seulement) son architecture, mais l’algorithme utilisé pour son entraînement : un autoencodeur est chargé de reconstruire l’entrée originale ; il est optimisé par l’entraînement d’un modèle afin de minimiser une fonction qui mesure la perte de reconstruction (souvent modifiée par des termes de régularisation supplémentaires). Un modèle qui possède une architecture identique, mais qui est entraîné pour effectuer une tâche différente et optimisé pour un objectif différent, n’est pas un autoencodeur.

Solutions connexes
IBM watsonx.ai

Entraînez, validez, réglez et déployez une IA générative, des modèles de fondation et des capacités de machine learning avec IBM watsonx.ai, un studio d’entreprise nouvelle génération pour les générateurs d’IA. Créez des applications d’IA en peu de temps et avec moins de données.

Découvrir watsonx.ai
Solutions d’intelligence artificielle

Mettez l’IA au service de votre entreprise en vous appuyant sur l’expertise de pointe d’IBM dans le domaine de l’IA et sur son portefeuille de solutions.

Découvrir les solutions d’IA
Conseils et services en matière d’IA

Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.

Découvrir les services d’IA
Passez à l’étape suivante

Bénéficiez d’un accès centralisé aux fonctionnalités couvrant le cycle de développement de l’IA. Produisez des solutions IA puissantes offrant des interfaces conviviales, des workflows et un accès à des API et SDK conformes aux normes du secteur.

Découvrir watsonx.ai Réserver une démo en direct
Notes de bas de page

Tous les liens sont externes à IBM.com. 
1. « Energy-Based Self-Supervised Learning », Yann LeCun (consulté sur le site UCLA), 19 novembre 2019
2. « CHARM : An Efficient Algorithm for Closed Itemset Mining », Proceedings of the 2002 SIAM International Conference on Data Mining
3. « Online Association Rule Mining », Proceedings of the 1999 ACM SIGMOD International Conference on Management of Data, 1er juin 1999
4. « Semi-Supervised Learning with Ladder Networks », arXiv, 24 novembre 2015
5. « Kolmogorov’s Mapping Neural Network Existence Theorem », Proceedings of the IEEE First International Conference on Neural Networks (consulté sur le site de l’Université de Waterloo)1987
6. « Multilayer Feedforward Networks with a Non-Polynomial Activation Function Can Approximate Any Function », Center for Research on Information Systems (Université de New York), mars 1992