Explorez l'apprentissage non supervisé pour découvrir des modèles cachés dans des données non étiquetées. Découvrez le clustering, la détection d'anomalies et comment cela alimente les solutions d'IA modernes.
L'apprentissage non supervisé est un type d'apprentissage automatique dans lequel un algorithme apprend des modèles à partir de données non étiquetées sans intervention humaine. Contrairement à l'apprentissage supervisé, qui s'appuie sur des paires d'entrées-sorties étiquetées pour former un modèle, l'apprentissage non supervisé traite des données qui ne comportent aucune étiquette historique. Le système tente essentiellement d'apprendre par lui-même en découvrant des structures, des modèles ou des relations cachés dans les données d'entrée. Cette approche est particulièrement précieuse car la grande majorité des données générées aujourd'hui (images, vidéos, textes et journaux de capteurs) sont non structurées et non étiquetées.
Dans les scénarios non supervisés, l'algorithme est laissé à lui-même pour découvrir des structures intéressantes dans les données. L'objectif est souvent de modéliser la distribution sous-jacente des données ou d'en savoir plus sur les données elles-mêmes. Comme aucune « réponse correcte » n'est fournie pendant l'entraînement, le modèle ne peut pas être évalué en termes de précision au sens traditionnel du terme. Au lieu de cela, les performances sont souvent mesurées en fonction de la capacité du modèle à réduire la dimensionnalité ou à regrouper des points de données similaires.
Cette méthodologie reflète la manière dont les humains apprennent souvent de nouveaux concepts. Par exemple, un enfant peut distinguer les chiens des chats en observant leurs formes et leurs comportements différents sans nécessairement connaître les noms « chien » et « chat » au départ. De même, les algorithmes non supervisés regroupent les informations en fonction de similitudes inhérentes. Cette capacité est fondamentale pour le développement de l' intelligence artificielle générale (AGI), car elle permet aux systèmes de s'adapter à de nouveaux environnements sans supervision humaine constante.
L'apprentissage non supervisé englobe plusieurs techniques distinctes, chacune étant adaptée à différents types de problèmes d'analyse de données :
Il est important de distinguer l' apprentissage non supervisé de l' apprentissage supervisé. La principale différence réside dans les données utilisées. L'apprentissage supervisé nécessite un ensemble de données étiquetées, ce qui signifie que chaque exemple d'entraînement est associé à un résultat correct (par exemple, une image d'un chat étiquetée « chat »). Le modèle apprend à mettre en correspondance les entrées et les sorties afin de minimiser les erreurs.
En revanche, l'apprentissage non supervisé utilise des données non étiquetées. Il n'y a pas de boucle de rétroaction indiquant au modèle si sa sortie est correcte. Il existe un juste milieu appelé apprentissage semi-supervisé, qui combine une petite quantité de données étiquetées avec une grande quantité de données non étiquetées afin d'améliorer la précision de l'apprentissage. Il est souvent utilisé lorsque l' étiquetage des données est coûteux ou prend beaucoup de temps.
L'apprentissage non supervisé est à la base de nombreuses technologies que nous utilisons quotidiennement. Voici deux exemples concrets :
Alors que Ultralytics YOLO26 Il s'agit principalement d'un cadre de détection d'objets supervisé
, mais des techniques non supervisées sont souvent utilisées dans les étapes de prétraitement, telles que l'analyse des distributions des boîtes d'ancrage
ou le regroupement des caractéristiques des ensembles de données. Vous trouverez ci-dessous un exemple simple utilisant sklearn pour effectuer un regroupement par la méthode des K-Moyens
, une technique fondamentale non supervisée.
import numpy as np
from sklearn.cluster import KMeans
# Generate synthetic data: 10 points with 2 features each
X = np.array([[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]])
# Initialize KMeans with 2 clusters (k=2)
kmeans = KMeans(n_clusters=2, random_state=0, n_init="auto")
# Fit the model to the data (no labels provided!)
kmeans.fit(X)
# Predict which cluster each point belongs to
print(f"Labels: {kmeans.labels_}")
# Output will group the first 3 points together (0) and the last 3 together (1)
L'apprentissage profond (DL) moderne intègre de plus en plus des principes non supervisés. Des techniques telles que l' apprentissage auto-supervisé (SSL) permettent aux modèles de générer leurs propres signaux de supervision à partir des données. Par exemple, dans le traitement du langage naturel (NLP), des modèles tels que GPT-4 sont pré-entraînés sur de grandes quantités de texte afin de prédire le mot suivant dans une phrase, apprenant ainsi efficacement la structure du langage sans étiquettes explicites.
De même, en vision par ordinateur (CV), les auto-encodeurs sont utilisés pour apprendre des encodages de données efficaces. Ces réseaux neuronaux compressent les images en une représentation de dimension inférieure , puis les reconstruisent. Ce processus enseigne au réseau les caractéristiques les plus saillantes des données visuelles , ce qui est utile pour des tâches telles que le débruitage d'images et la modélisation générative.
Pour ceux qui cherchent à gérer des ensembles de données à des fins de formation, Ultralytics propose des outils permettant de visualiser la distribution des données, ce qui peut aider à identifier des clusters ou des anomalies avant le début du processus de formation supervisée. Comprendre la structure de vos données grâce à une exploration non supervisée est souvent la première étape vers la création de solutions d'IA robustes.