Apprentissage non supervisé : comment les machines apprennent par elles-mêmes

Publié: 2021-03-19

L'apprentissage non supervisé permet aux machines d'apprendre par elles-mêmes.

Ce type d'apprentissage automatique (ML) donne aux applications d'IA la capacité d'apprendre et de trouver des modèles cachés dans de grands ensembles de données sans supervision humaine. L'apprentissage non supervisé est également crucial pour atteindre   intelligence artificielle générale.

L'étiquetage des données demande beaucoup de travail et de temps et, dans de nombreux cas, n'est pas pratique. C'est là que l'apprentissage non supervisé apporte une grande différence en accordant aux applications d'IA la capacité d'apprendre sans étiquettes ni supervision.

Qu'est-ce que l'apprentissage non supervisé ?

L'apprentissage non supervisé (UL) est une technique d'apprentissage automatique utilisée pour identifier des modèles dans des ensembles de données contenant des points de données non classés et non étiquetés. Dans cette méthode d'apprentissage, un système d'IA ne reçoit que les données d'entrée et aucune donnée de sortie correspondante.

Contrairement à l'apprentissage supervisé , l'apprentissage automatique non supervisé ne nécessite pas qu'un humain supervise le modèle. Le scientifique des données laisse la machine apprendre en observant les données et en trouvant des modèles par elle-même. En d'autres termes, cette sous-catégorie d'apprentissage automatique permet à un système d'agir sur les informations données sans aucune aide extérieure.

Les techniques d'apprentissage non supervisé sont essentielles pour créer des systèmes d'intelligence artificielle avec l'intelligence humaine. En effet, les machines intelligentes doivent être capables de prendre des décisions (indépendantes) en analysant de gros volumes de données non étiquetées.

Comparés aux algorithmes d'apprentissage supervisé, les algorithmes UL sont plus aptes à effectuer des tâches complexes. Cependant, les modèles d'apprentissage supervisé produisent des résultats plus précis car un tuteur indique explicitement au système ce qu'il faut rechercher dans les données fournies. Mais dans le cas d'un apprentissage non supervisé, les choses peuvent être assez imprévisibles.

Les réseaux de neurones artificiels, qui font   l'apprentissage en profondeur   une réalité, peut sembler être soutenue par un apprentissage non supervisé. Bien que ce soit vrai, les algorithmes d'apprentissage des réseaux de neurones peuvent également être supervisés si la sortie souhaitée est déjà connue.

L'apprentissage non supervisé peut être un objectif en soi. Par exemple, les modèles UL peuvent être utilisés pour trouver des modèles cachés dans d'énormes volumes de données et même pour classer et étiqueter des points de données. Le regroupement des points de données non triés est effectué en identifiant leurs similitudes et leurs différences.

Quelques raisons pour lesquelles l'apprentissage non supervisé est essentiel.

  • Les données non étiquetées sont abondantes.
  • L'étiquetage des données est une tâche fastidieuse nécessitant un travail humain. Cependant, le processus même peut être alimenté par ML, ce qui facilite l'étiquetage pour les humains impliqués.
  • C'est utile pour explorer des données inconnues et brutes.
  • Il est utile pour effectuer la reconnaissance de formes dans de grands ensembles de données.
L'apprentissage non supervisé peut être divisé en deux catégories : l'apprentissage paramétrique non supervisé et l'apprentissage non paramétrique non supervisé .

Comment fonctionne l'apprentissage non supervisé

En termes simples, l'apprentissage non supervisé fonctionne en analysant des données non catégorisées et non étiquetées et en y trouvant des structures cachées.

Dans l'apprentissage supervisé, un scientifique des données alimente le système avec des données étiquetées, par exemple, les images de chats étiquetés comme des chats, lui permettant d'apprendre par l'exemple. Dans l'apprentissage non supervisé, un scientifique des données ne fournit que les photos, et c'est la responsabilité du système d'analyser les données et de conclure s'il s'agit d'images de chats.

L'apprentissage automatique non supervisé nécessite d'énormes volumes de données. Dans la plupart des cas, il en va de même pour l'apprentissage supervisé car le modèle devient plus précis avec plus d'exemples.

Le processus d'apprentissage non supervisé commence par la formation des algorithmes par les scientifiques des données à l'aide des ensembles de données de formation. Les points de données de ces ensembles de données ne sont ni étiquetés ni classés.

L'objectif d'apprentissage de l'algorithme est d'identifier des modèles dans l'ensemble de données et de catégoriser les points de données en fonction des mêmes modèles identifiés. Dans l'exemple des images de chat, l'algorithme d'apprentissage non supervisé peut apprendre à identifier les caractéristiques distinctes des chats, telles que leurs moustaches, leurs longues queues et leurs griffes rétractables.

Si vous y réfléchissez, l'apprentissage non supervisé est la façon dont nous apprenons à identifier et à catégoriser les choses. Supposons que vous n'ayez jamais goûté de ketchup ou de sauce chili. Si on vous donne deux bouteilles "sans étiquette" de ketchup et de sauce chili chacune et qu'on vous demande de les goûter, vous serez en mesure de différencier leurs saveurs.

Vous pourrez également identifier les particularités des deux sauces (l'une étant aigre et l'autre épicée) même si vous ne connaissez pas le nom de l'une ou l'autre. Goûter chacun quelques fois de plus vous familiarisera avec la saveur. Bientôt, vous pourrez regrouper les plats en fonction de la sauce ajoutée juste en les goûtant.

En analysant le goût, vous pouvez trouver des caractéristiques spécifiques qui différencient les deux sauces et les plats de groupe. Vous n'avez pas besoin de connaître le nom des sauces ou celui des plats pour les catégoriser. Vous pourriez même finir par appeler l'une la sauce sucrée et l'autre la sauce piquante .

Ceci est similaire à la façon dont les machines identifient les modèles et classent les points de données à l'aide d'un apprentissage non supervisé. Dans le même exemple, l'apprentissage supervisé serait quelqu'un qui vous dirait à l'avance les noms des sauces et leur goût.

Types d'apprentissage non supervisé

Les problèmes d'apprentissage non supervisé peuvent être classés en problèmes de regroupement et d' association .

Regroupement

Le clustering ou l'analyse de cluster est le processus de regroupement d'objets en clusters. Les éléments présentant le plus de similitudes sont regroupés, tandis que le reste tombe dans d'autres groupes. Un exemple de regroupement consisterait à regrouper les utilisateurs de YouTube en fonction de leur historique de visionnage.

Selon leur fonctionnement, le clustering peut être classé en quatre groupes comme suit :

  • Clustering exclusif : comme son nom l'indique, le clustering exclusif spécifie qu'un point de données ou un objet ne peut exister que dans un seul cluster.
  • Clustering hiérarchique : Hierarchical essaie de créer une hiérarchie de clusters. Il existe deux types de clustering hiérarchique : agglomératif et diviseur . Agglomerative suit l'approche ascendante, traite initialement chaque point de données comme un cluster individuel, et les paires de clusters sont fusionnées à mesure qu'elles montent dans la hiérarchie. Diviser est tout le contraire d'agglomérer. Chaque point de données commence dans un seul cluster et est divisé à mesure qu'il descend dans la hiérarchie.
  • Regroupement avec chevauchement : le chevauchement permet de regrouper un point de données en deux clusters ou plus.
  • Clustering probabiliste : Probabilistic utilise des distributions de probabilité pour créer des clusters. Par exemple, « chaussettes vertes », « chaussettes bleues », « t-shirt vert » et « t-shirt bleu » peuvent être regroupés en deux catégories : « vert » et « bleu » ou « chaussettes » et « t-shirt ".

Association

L'apprentissage des règles d'association (ARL) est une méthode d'apprentissage non supervisée utilisée pour trouver des relations entre des variables dans de grandes bases de données. Contrairement à certains algorithmes d'apprentissage automatique, ARL est capable de gérer des points de données non numériques.

Dans un sens plus simple, ARL consiste à trouver comment certaines variables sont associées les unes aux autres. Par exemple, les personnes qui achètent une moto sont plus susceptibles d'acheter un casque.

Trouver de telles relations peut être lucratif. Par exemple, si les clients qui achètent le produit X ont tendance à acheter le produit Y, un détaillant en ligne peut recommander le produit Y à quiconque achète le produit X.

L'apprentissage des règles d'association utilise des instructions if/then dans son cœur. Ces déclarations peuvent révéler des associations entre des données indépendantes. De plus, les modèles ou relations si/alors sont observés à l'aide de support et de confiance .

Support spécifie la fréquence d'apparition de la relation si/alors dans la base de données. La confiance définit le nombre de fois où la relation si/alors s'est avérée valide.

Analyse du panier de consommation   et   exploration de l'utilisation du Web   sont rendus possibles grâce à la règle d'association.

Algorithmes d'apprentissage non supervisé

L'apprentissage des règles de regroupement et d'association est mis en œuvre à l'aide d'algorithmes.

L'algorithme Apriori, l'algorithme ECLAT et l'algorithme de croissance de modèle fréquent (FP) sont quelques-uns des algorithmes notables utilisés pour implémenter la règle d'association. Le clustering est rendu possible par des algorithmes tels que le clustering k-means et l'analyse en composantes principales (PCA).

Algorithme a priori

L'algorithme Apriori est conçu pour l'exploration de données. Il est utile pour extraire des bases de données contenant un grand nombre de transactions, par exemple, une base de données contenant la liste des articles achetés par les acheteurs dans un supermarché. Il est utilisé pour identifier les effets nocifs des drogues et dans l'analyse du panier de consommation pour trouver l'ensemble d'articles que les clients sont plus susceptibles d'acheter ensemble.

Algorithme ECLAT

Equivalence Class Clustering and bottom-up Lattice Traversal , ou ECLAT en abrégé, est un algorithme d'exploration de données utilisé pour réaliser l'extraction d'éléments et trouver des éléments fréquents.

L'algorithme Apriori utilise un format de données horizontal et doit donc analyser la base de données plusieurs fois pour identifier les éléments fréquents. D'autre part, ECLAT suit une approche verticale et est généralement plus rapide car il n'a besoin de parcourir la base de données qu'une seule fois.

Algorithme de croissance à motif fréquent (FP)

L' algorithme de croissance à motif fréquent (FP) est une version améliorée de l'algorithme Apriori. Cet algorithme représente la base de données sous la forme d'une arborescence appelée arbre fréquentiel ou pattern .

Un tel arbre fréquent est utilisé pour extraire les modèles les plus fréquents. Alors que l'algorithme Apriori doit parcourir la base de données n + 1 fois (où n est la longueur du modèle le plus long), l'algorithme de croissance FP ne nécessite que deux analyses.

K-means clustering

De nombreuses itérations de l'algorithme k-means sont largement utilisées dans le domaine de la science des données. En termes simples, l'algorithme de clustering k-means regroupe des éléments similaires en clusters. Le nombre de clusters est représenté par k . Donc, si la valeur de k est 3, il y aura trois clusters au total.

Cette méthode de clustering divise l'ensemble de données non étiqueté afin que chaque point de données n'appartienne qu'à un seul groupe avec des propriétés similaires. La clé est de trouver des centres K appelés centroïdes de cluster .

Chaque cluster aura un centroïde de cluster, et en voyant un nouveau point de données, l'algorithme déterminera le cluster le plus proche auquel appartient le point de données en fonction de métriques telles que la distance euclidienne.

Analyse en composantes principales (ACP)

L' analyse en composantes principales (ACP) est une méthode de réduction de dimensionnalité généralement utilisée pour réduire la dimensionnalité de grands ensembles de données. Pour ce faire, il convertit un grand nombre de variables en une variable plus petite contenant presque toutes les informations du grand ensemble de données.

Réduire le nombre de variables peut affecter légèrement la précision, mais cela pourrait être un compromis acceptable pour la simplicité. En effet, les ensembles de données plus petits sont plus faciles à analyser et les algorithmes d'apprentissage automatique n'ont pas à transpirer beaucoup pour en tirer des informations précieuses.

Apprentissage supervisé ou non supervisé

L'apprentissage supervisé est similaire au fait qu'un enseignant supervise l'ensemble du processus d'apprentissage. Il existe également un ensemble de données d'entraînement étiqueté, similaire aux réponses correctes à chaque problème que vous essayez de résoudre.

Il est plus facile de comprendre si votre réponse est correcte ou non, et l'enseignant vous corrigera également lorsque vous faites une erreur. Dans le cas de l'apprentissage non supervisé, il n'y a pas d'enseignant ni de bonnes réponses.

D'un point de vue informatique, l'apprentissage non supervisé est plus compliqué et prend plus de temps que l'apprentissage supervisé. Cependant, il est utile pour l'exploration de données et pour obtenir des informations sur la structure des données avant d'attribuer un classificateur (un algorithme d'apprentissage automatique qui classe automatiquement les données).

Bien qu'il soit utile lorsque les données non étiquetées sont énormes, l'apprentissage non supervisé peut causer peu d'inconvénients aux scientifiques des données. Étant donné que l'ensemble de données de validation utilisé dans l'apprentissage supervisé est également étiqueté, il est plus facile pour les scientifiques des données de mesurer la précision des modèles. Mais il n'en va pas de même pour les modèles d'apprentissage non supervisés.

Dans de nombreux cas, l'apprentissage non supervisé est appliqué avant l'apprentissage supervisé. Cela permet d'identifier les fonctionnalités et de créer des classes.

Le processus d'apprentissage non supervisé se déroule en ligne, tandis que l'apprentissage supervisé se déroule hors ligne. Cela permet aux algorithmes UL de traiter les données en temps réel.

Alors que les problèmes d'apprentissage non supervisé sont divisés en problèmes d'association et de regroupement, l'apprentissage supervisé peut être davantage catégorisé en régression et classification.

Outre l'apprentissage supervisé et non supervisé, il existe un apprentissage semi-supervisé et un apprentissage par renforcement .

L'apprentissage semi-supervisé est un mélange d'apprentissage supervisé et non supervisé. Dans cette technique d'apprentissage automatique, le système est entraîné un peu afin d'obtenir une vue d'ensemble de haut niveau. Une fraction des données d'apprentissage sera étiquetée et le reste ne sera pas étiqueté.

Dans l'apprentissage par renforcement (RL) , le système d'intelligence artificielle rencontrera un environnement de type jeu dans lequel il doit maximiser la récompense. Le système doit apprendre en suivant la méthode d'essai et d'erreur et améliorer ses chances d'obtenir la récompense à chaque étape.

Voici un bref aperçu des principales différences entre l'apprentissage supervisé et non supervisé.

Apprentissage non supervisé Enseignement supervisé
C'est un processus complexe, qui nécessite plus de ressources informatiques et qui prend du temps. C'est relativement simple et nécessite moins de ressources de calcul.
L'ensemble de données d'entraînement n'est pas étiqueté. L'ensemble de données d'entraînement est étiqueté.
Moins précis, mais pas forcément Haute précision
Divisé en association et regroupement Divisé en régression et classification
Il est fastidieux de mesurer la précision du modèle avec l'incertitude. Il est plus facile de mesurer la précision du modèle.
Le nombre de classes est inconnu. Le nombre de classes est connu.
L'apprentissage se fait en temps réel. L'apprentissage se fait hors ligne.
Apriori, ECLAT, k-means clustering et l'algorithme de croissance à motif fréquent (FP) sont quelques-uns des algorithmes utilisés. La régression linéaire, la régression logistique, Naive Bayes et la machine à vecteurs de support (SVM) sont quelques-uns des algorithmes utilisés.

Exemples d'apprentissage automatique non supervisé

Comme mentionné précédemment, l'apprentissage non supervisé peut être un objectif en soi et peut être utilisé pour trouver des modèles cachés dans de vastes volumes de données - une tâche irréaliste pour les humains.

Certaines applications réelles de l'apprentissage automatique non supervisé.

  • Détection d'anomalies : il s'agit d'un processus de recherche de points de données atypiques dans des ensembles de données et, par conséquent, utile pour détecter les activités frauduleuses.
  • Vision par ordinateur : également connue sous le nom de   la reconnaissance d'images, cette prouesse d'identification d'objets dans les images est essentielle pour les voitures autonomes et même précieuse pour l'industrie de la santé pour la segmentation des images.
  • Systèmes de recommandation : en analysant les données historiques, les algorithmes d'apprentissage non supervisé recommandent les produits qu'un client est le plus susceptible d'acheter.
  • Personnalité client : l'apprentissage non supervisé peut aider les entreprises à créer des personnalités client précises en analysant les données sur les habitudes d'achat.

Laisser les algorithmes à eux-mêmes

La capacité d'apprendre par lui-même fait de l'apprentissage non supervisé le moyen le plus rapide d'analyser d'énormes volumes de données. Bien sûr, choisir entre un apprentissage supervisé ou non supervisé (ou même semi-supervisé) dépend du problème que vous essayez de résoudre et du temps et de l'immensité des données disponibles. Néanmoins, l'apprentissage non supervisé peut rendre l'ensemble de votre effort plus évolutif.

L'IA que nous avons aujourd'hui n'est pas capable de dominer le monde, et encore moins de désobéir aux ordres de ses créateurs. Mais cela rend possible des exploits incroyables comme les voitures autonomes et les chatbots. C'est ce qu'on appelle une IA étroite , mais elle n'est pas aussi faible qu'il n'y paraît.