Vous êtes sur la page 1sur 25

Apprentissage Non- Supervisé

Unsupervised Learning

1
Objectifs
• Dans ce chapitre, nous explorerons la deuxième
technique d'apprentissage utilisée en Machine
Learning : l'apprentissage non-supervisé. Vous
découvrirez l'algorithme le plus populaire de cette
approche, le K-Means Clustering. Il est utilisé pour
segmenter des données dans divers domaines, tels
que le marketing pour regrouper des clients ayant
des comportements similaires, ou dans la recherche
scientifique pour identifier des similitudes entre des
molécules, des matériaux ou des phénomènes.
2
Le problème de l’Apprentissage
Supervisé
• L'apprentissage non-supervisé vient à la rescousse dans de telles
situations. Contrairement à l'apprentissage supervisé, où nous
disposons d'un ensemble de données étiqueté avec des réponses
(𝑿 et 𝒚), l'apprentissage non-supervisé traite des données non
étiquetées, où nous n'avons pas de valeurs 𝒚 préétablies.

• Dans ces cas, l'objectif est souvent de découvrir des structures ou


des modèles cachés au sein des données. Les algorithmes
d'apprentissage non-supervisé, comme le K-Means Clustering,
peuvent regrouper automatiquement des données similaires,
trouver des tendances ou des clusters, et ainsi aider à compléter
nos connaissances en révélant des informations cachées dans les
données non étiquetées. Cette approche est très utile pour
l'exploration de données, la segmentation de marché, la réduction
de dimensionnalité, et d'autres tâches où les réponses ne sont pas
préalablement connues.

3
• Dans l'apprentissage supervisé, nous transmettons déjà à la machine des
informations que nous connaissons en utilisant un ensemble de données
comportant des questions (𝑿) et leurs réponses (𝒚).

• Mais que faire si vous disposez d'un ensemble de données sans ces réponses (𝒚) ?
Ou si vous souhaitez que la machine vous aide à découvrir des informations que
vous ignorez encore ?

• C'est là qu'intervient l'apprentissage non supervisé. Il s'agit d'une approche qui


permet d'explorer des données non étiquetées pour découvrir des structures, des
tendances ou des regroupements potentiels. En utilisant des algorithmes tels que
le K-Means Clustering, l'apprentissage non supervisé peut regrouper
automatiquement des données similaires, révéler des informations cachées, et
ainsi enrichir votre compréhension des données lorsque les réponses ne sont pas
préalablement connues. Cette approche est précieuse dans des domaines tels que
l'exploration de données, la segmentation de marché, la réduction de
dimensionnalité, et bien d'autres encore.

4
• Bien sûr, je comprends l'analogie que vous faites. Dans l'exemple précédent,
l'apprentissage supervisé était comparable à l'apprentissage du chinois à partir
d'un livre de traduction, où vous disposiez à la fois du texte original (𝑥) et de sa
traduction (𝑦).

• Maintenant, si vous retirez le livre et me laissez seul en Chine sans aucune


traduction, il existe toujours un moyen d'apprendre la langue chinoise. C'est
précisément ce que l'on appelle l'apprentissage non supervisé (Unsupervised
Learning). Dans ce scénario, je pourrais commencer à observer et à écouter les
locuteurs natifs, à déduire des modèles de la langue à partir de ces interactions, à
regrouper des mots et des phrases similaires pour comprendre leur signification,
et à progressivement acquérir des compétences linguistiques sans avoir de
traductions explicites.

• L'apprentissage non supervisé, tout comme cette situation en Chine, consiste à


découvrir des structures, des modèles et des informations à partir de données non
étiquetées, ce qui peut être extrêmement utile dans de nombreuses applications,
de l'analyse de données à la reconnaissance de formes, en passant par la
segmentation de marché.

5
6
Comment apprendre sans exemple de ce
qu’il faut
apprendre ?
Pouvez-vous classifier ces 6 photos en deux groupes en
fonction de leurs similitudes ?

7
• Vous n'avez même pas besoin de connaître la
nature exacte des objets dans ces images
(qu'il s'agisse de cellules animales, de
bactéries ou de protéines) pour être capable
de les classifier. Votre cerveau a réussi à
identifier des motifs et des structures
similaires dans les données que vous lui avez
présentées.

8
GROUPE A GROUPE B

9
• En effet, dans l'apprentissage non supervisé, on travaille avec un ensemble de données (𝑥) qui ne
comporte pas de valeurs étiquetées (𝑦), et le but est de permettre à la machine d'apprendre à
détecter des structures, des similarités ou des tendances intrinsèques dans ces données (𝑥)
fournies. Cela peut être accompli de plusieurs manières, notamment :

• Clustering : Il s'agit de regrouper les données en clusters ou en groupes qui partagent des
caractéristiques similaires, même si on ne sait pas à l'avance quelles caractéristiques sont
importantes.

• Détection d'anomalies : L'apprentissage non supervisé peut également être utilisé pour identifier
des données qui se comportent de manière inhabituelle par rapport au reste de l'ensemble, ce qui
peut être utile pour détecter des fraudes ou des erreurs.

• Réduction de la dimension : Lorsque vous travaillez avec des ensembles de données très riches
comportant de nombreuses dimensions, l'apprentissage non supervisé peut aider à réduire la
complexité en regroupant ou en sélectionnant les dimensions les plus pertinentes.

• En fin de compte, l'apprentissage non supervisé est une approche puissante pour découvrir des
informations cachées dans les données et en tirer des insights utiles, même lorsque l'on ne dispose
pas de réponses préalablement étiquetées.

10
Algorithme de K-Mean Clustering
• Le K-Mean Clustering est en effet l'un des algorithmes
les plus couramment utilisés pour le regroupement de
données, notamment en marketing pour cibler des
groupes de clients partageant des caractéristiques
similaires pour des campagnes publicitaires
spécifiques.

• Le fonctionnement de l'algorithme peut être décrit en


deux étapes répétées en boucle. Tout d'abord, nous
commençons par placer de manière aléatoire un
certain nombre de centres (K) dans notre ensemble de
données. Dans l'exemple ci-dessous, K est égal à 2.
Ensuite :

11
• L'étape 1 de l'algorithme consiste à attribuer
chaque exemple au centre le plus proche, ce
qui crée K clusters (dans cet exemple, 2
clusters). Ensuite, l'étape 2 consiste à déplacer
les centres au centre de leur cluster respectif.

12
13
• Effectivement, on répète les étapes 1 et 2 en boucle jusqu'à
ce que les centres ne bougent plus de manière significative.
Cela signifie que les centres sont devenus stables, et à ce
stade, nous avons atteint une convergence, et les clusters sont
formés de manière optimale en fonction des données
fournies.

14
Programmer un K-Mean Clustering

• La librairie Sklearn nous permet aussi de faire


du Unsupervised Learning ! La fonction
make_blobs permet de simuler des clusters
dans un Dataset.
• import numpy as np
• import matplotlib.pyplot as plt
• from sklearn.datasets import make_blobs
• from sklearn.cluster import KMeans
15
• Pour cet exemple, nous allons créer un
Dataset de 100 exemples à 2 features, en
simulant 3 clusters.
• # Générer des données:
• X, y = make_blobs(n_samples=100, centers =
3, cluster_std=0.5, random_state=0) #nb_feat
• ures = 2 par défaut
• plt.scatter(X[:,0], X[:, 1])
16
plt.scatter(X[:,0], X[:, 1])

17
• vous entraînez un modèle de K-Mean
Clustering avec 3 centres (K=3) en utilisant la
bibliothèque scikit-learn. Vous pouvez
également voir les résultats obtenus pour K=2
et K=4. Le modèle K-Means va regrouper les
données en 3 clusters distincts en fonction de
leurs caractéristiques. Ce nombre de clusters
est spécifié par le paramètre n_clusters.

18
• #Visualiser les Clusters
• predictions = model.predict(X)
• plt.scatter(X[:,0], X[:,1], c=predictions)

K=2 K=3 K=4


19
• La prochaine fois que vous avez un tableau de
données contenant des informations sur vos
clients, sur les caractéristiques d'un produit, ou
sur des documents que vous devez classer,
envisagez d'utiliser l'algorithme de K-Mean
Clustering pour permettre à la machine de
proposer sa propre méthode de regroupement et
de classification. Cela peut être une approche
puissante pour découvrir des structures cachées
dans vos données et prendre des décisions
éclairées en fonction de ces regroupements.

20
• l'algorithme de K-Mean Clustering pour explorer comment les
données des fleurs d'Iris se regroupent naturellement en
fonction de leurs caractéristiques. Cela pourrait vous donner
des informations supplémentaires sur la structure des
données et les similitudes entre les différentes espèces de
fleurs.

Neural Network K-Mean Clustering 21


• C'est remarquable de constater que les résultats
obtenus avec l'algorithme de K-Mean Clustering sont
très similaires à ceux que vous avez obtenus
précédemment avec l'apprentissage supervisé pour
classifier les fleurs d'Iris. Cela démontre la capacité de
l'apprentissage non-supervisé à découvrir des
structures et des regroupements de données, même
en l'absence de valeurs cibles (𝑦).
• C'est une illustration convaincante de l'efficacité de
l'apprentissage non-supervisé dans l'exploration et
l'analyse de données..

22
Conclusion sur le Unsupervised
Learning
• En apprentissage supervisé, nous travaillons
généralement avec un ensemble de données
étiqueté où chaque exemple (𝒙) est associé à une
valeur cible (𝒚), ce que l'on appelle un "Labelled
Dataset". Cela nous permet de découvrir des
relations générales entre (𝑥) et (𝑦).

• En revanche, en apprentissage non-supervisé,


nous faisons face à un ensemble de données non
étiqueté, où la variable cible (𝑦) est absente, ce
qui rend le Dataset "Unlabelled".

23
• En dépit de l'absence d'étiquettes dans les ensembles de données
en apprentissage non-supervisé, nous avons la possibilité de
segmenter ces données en différents clusters à l'aide du K-Mean
Clustering. De plus, nous pouvons détecter des anomalies en
calculant des densités de probabilité (bien que cela n'ait pas été
abordé ici). En utilisant d'autres algorithmes comme l'Analyse en
Composantes Principales (PCA), nous pouvons également réduire
efficacement les dimensions d'un ensemble de données.

• Ces techniques trouvent des applications dans divers domaines,


notamment la segmentation de marchés, le développement de
systèmes de détection de fraudes bancaires, et la contribution à la
recherche scientifique.

24
Apprentissage Supervisé Apprentissage Non-Supervisé
Labelled Dataset (x, y) Unlabelled Dataset (x)
25

Vous aimerez peut-être aussi