L’objet de cet article est de présenter les méthodes et les techniques d’apprentissage statistique non supervisé, c’est-à-dire utilisant des données non labellisées au préalable.
La notion d’apprentissage statistique non supervisé, peut paraître difficile à appréhender quand on la compare avec celle d’apprentissage statistique supervisé, qui consiste simplement à apprendre une fonction f:y = f(x) à partir d’un très grand nombre d’exemples de couples (xi ,yi ) où xi est la donnée d’entrée et yi est le résultat en sortie, ou label.
Il est cependant difficile et coûteux d’obtenir une base de données labellisées dans la mesure où une intervention humaine est généralement nécessaire pour obtenir les labels yi correspondant aux données xi disponibles. La constitution de la base de données ImageNet, qui contient actuellement plus de 14 millions d’images et est à l’origine des succès spectaculaires observés ces dernières années en matière d’analyse d’image, a ainsi nécessité de nombreuses années et l’intervention de plusieurs dizaines de milliers d’« annotateurs » chargés de visualiser des images téléchargées sur Internet et d’identifier les objets ou les animaux présents sur ces images.
La baisse continue des coûts de captation, de communication, de stockage et de traitement des données conduit cependant naturellement à la disponibilité de bases de données beaucoup plus importantes dont une analyse exhaustive par l’homme est manifestement impossible.
Dans un tel contexte, l’apprentissage non supervisé se développe actuellement autour de deux axes.
Une première façon d’exploiter un ensemble de données de façon statistique sans intervention humaine est de chercher à apprendre la distribution de ces données. À titre d’exemple, les modèles de langage sont des programmes s’appuyant souvent sur des réseaux de neurones et cherchant, pour un langage donné, à assigner une probabilité, ou valeur de vraisemblance, à chaque phrase ou groupe de phrases que l’on leur propose, ce qui permet entre autres d’optimiser les logiciels de reconnaissance vocale ou de traduction en évitant de proposer des phrases qui seraient considérées comme trop peu probables dans le langage et le contexte considérés, par exemple si elles sont grammaticalement incorrectes. Les données utilisées pour construire ces modèles de langage sont des corpus de textes librement disponibles sur Internet et ne nécessitant donc pas d’effort particulier d’annotation.
Une deuxième façon d’exploiter un vaste ensemble de données est de chercher à les utiliser pour construire une représentation de ce type de données, optimisée pour une ou plusieurs classes d’utilisations. Si l’on cherche simplement à visualiser des données se présentant sous forme de vecteurs comprenant un grand nombre de coordonnées, une réduction de dimensionnalité à deux ou trois dimensions semble à l’évidence nécessaire. Si l’on envisage d’utiliser des données pour faire de la classification mais que l’on ne dispose que de peu d’exemples labellisés, un regroupement préalable de ces données en un nombre limité de groupes ou clusters semble, là encore, une approche utile. En matière de traitement du langage, des technologies ont été développées ces dernières années permettant de représenter chaque mot de notre vocabulaire par un vecteur de moyenne dimension, par exemple en dimension 300, de telle sorte que des mots représentés par des vecteurs proches les uns des autres aient des significations qui soient elles aussi proches. La représentation vectorielle de ces mots serait en quelque sorte leur contenu sémantique, leur « sens », ce qui permet le développement d’applications inimaginables auparavant en matière d’analyse de contenu. Là encore, ces représentations sont élaborées à partir de corpus de textes non annotés et librement disponibles.
Aussi décrirons-nous dans cet article non seulement les principales techniques d’apprentissage non supervisé (le partitionnement ou clustering, la réduction de dimensionnalité et l’estimation de densité) ainsi que la façon dont ces techniques ont évolué avec le développement de l’apprentissage profond, mais surtout de quelles façons ces méthodes peuvent être utiles, utilisées seules ou en s’insérant dans un ensemble de traitements plus complexes.