Académique Documents
Professionnel Documents
Culture Documents
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Par renforcement
I Quels attributs sélectionner pour construire l’arbre ?
I Comment évaluer un arbre ? A priori on souhaite
minimiser le nombre de tests (en moyenne) pour classifier
un exemple (il existe une borne max sur le nombre
d’attributs).
Les arbres de décisions
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Par renforcement
I La force du vent : attribut numérique {1 ...12}.
I La direction du vent : attribut nominal {face, terre, côté}
I La marée : attribut nominal {montante, descendante}
Fabien Teytaud
Intro
Supervisé
direction du vent Les k plus proches voisins
Les arbres de décisions
Le perceptron
rre
Classification naïve
te
bayésienne
Non supervisé
de
te
e
sc
sc
nt
an
en
en
ta
t
on
on
da
da
m
m
nt
nt
e
e
force du vent force du vent force du vent force du vent
7
7
v
v
v
v
sino
sino
sino
sino
n
n
5
5
5
4
Oui Non Oui Non Oui Non Oui Non
Les arbres de décisions
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
Non supervisé
I Parcours exhaustif des arbres impossible. Par renforcement
I Exponentiel en fonction de
I nombre d’attributs d.
I nombre moyen de valeurs par attribut : v .
d 1
X i
I (d i)v
i=0
I Par exemple, avec 6 attributs et v = 2 on a déjà 72385.
Construction intelligente
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
then
3: Créer une feuille portant le nom de cette classe
4: else
5: Choisir le meilleur attribut pour créer un noeud
6: Le test associé à ce noeud sépare X en Xg et Xd .
7: construireArbre(Xg )
8: construireArbre(Xd )
9: end if
Une interprétation probabiliste
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
Non supervisé
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
de probabilités.
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Non supervisé
Quelques propriétés Par renforcement
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
X Par renforcement
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Y
X lj lj /n rj rj /n Non supervisé
Y
X l lj lj r rj rj
I Ĥ(u|a) = log2 + log2
nl l nr r
j=1
Une mesure pour choisir l’attribut
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Non supervisé
l r Par renforcement
Ĥ(u|a) = J(a = vrai) + J(a = faux)
n n
avec
U
X lj lj
J(a = vrai) = log2
l l
j=1
U
X rj rj
J(a = faux) = log2
r r
j=1
Une mesure pour choisir l’attribut
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Par renforcement
I On veut choisir l’attribut qui possède la plus grande
corrélation avec la répartition des classes.
I On va donc chercher à minimiser l’entropie :
i ⇤ = arg min(Ĥ(u|ai )
i=1,...,d
Un exemple de construction
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Par renforcement
Le problème consiste à prédire si un enfant peut aller jouer
avec son voisin.
Base d’exemples
Les décisions prises sur les 8 derniers jours étant donnés 4
attributs binaires et 1 classe.
Un exemple de construction
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
On obtient
Classification naïve
bayésienne
Non supervisé
I H(oui|DF ) ⇡ 0.9 Par renforcement
I H(oui|BT ) ⇡ 0.8
I H(oui|BH) ⇡ 0.9
I H(oui|GP) ⇡ 1
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
Non supervisé
Par renforcement
Devoirs Bonne humeur Gouter Décision
finis ? de la mère ? pris ?
1 vrai faux faux oui
3 vrai vrai faux oui
4 vrai faux vrai oui
5 faux vrai vrai non
Un exemple de construction
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
Non supervisé
Par renforcement
Devoirs Bonne humeur Gouter Décision
finis ? de la mère ? pris ?
2 faux vrai vrai oui
6 faux vrai faux non
7 vrai faux vrai non
8 vrai vrai faux non
Un exemple de construction
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
est-ce qu’il fait beau ? Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
i fau
vra x Classification naïve
bayésienne
Non supervisé
Par renforcement
mes devoirs sont-ils terminés ? mon gouter est-il pris ?
faux
vrai
fa
ai
u
vr
x
Oui Non Maman est-elle de bonne humeur ? Non
faux
vrai
Oui Non
Élagage des arbres de décisions
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Par renforcement
I Il y a un risque de sous estimer la probabilité d’erreur.
Le pré-élagage
I On cesse de diviser un noeud lorsque la pureté des points
est suffisantes (inférieure à un certain seuil).
I Utilisation de critères locaux (à une feuille) : on peut
manquer un très bon développement.
I Donc, utilisation du post-élégage.
Élagage des arbres de décisions
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Le post-élagage Les k plus proches voisins
Les arbres de décisions
Le perceptron
I Élaguer l’arbre lorsqu’il est parfaitement développé. Les réseaux de neurones
Classification naïve
I Utiliser un ensemble indépendant de l’ensemble bayésienne
Par renforcement
I Mesurer l’erreur commise sur cet ensemble.
Méthode
I En partant des feuilles, construire une séquence d’arbres
{Tmax , T1 , T2 , . . . , Tn } (Tn est l’arbre constitué d’une seule
feuille).
I A chaque étape un noeud est transformé en feuille.
I L’idée est de comparer le coût de l’arbre élagué et de
l’arbre non élagué. On s’arrête si le coût du premier est
supérieur.
Élagage des arbres de décisions
Apprentissage artificiel
Fabien Teytaud
Supervisé
Choisir le noeud v qui minimise : Les k plus proches voisins
Les arbres de décisions
MCela (v , k ) MC(v , k )
Le perceptron
ŵ(Tk , v ) =
Les réseaux de neurones
nk .(nt(v , k ) 1)
Classification naïve
bayésienne
Non supervisé
Par renforcement
I MCela (v , k ) : nombre d’exemples de l’ensemble
d’apprentissage mal classés par le noeud v de Tk dans
l’arbre élagué à v .
I MC(v , k ) : nombre d’exemples de l’ensemble
d’apprentissage mal classés sous le noeud v de Tk dans
l’arbre non élagué à v .
I nk : nombre de feuilles de Tk .
I nt(v , k ) : nombre de feuilles du sous-arbre de Tk situé
sous le noeud v .
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Algorithm 2 Algorithme d’élagage Les réseaux de neurones
Classification naïve
1: Procédure : elaguer(Tmax ) bayésienne
2: k 0 Non supervisé
Par renforcement
3: Tk Tmax
4: while nbNoeud(Tk ) > 1 do
5: for chaque noeud v de Tk m do
6: calculer ŵ(Tk , v ) sur l’ensemble d’apprentissage
7: end for
8: Choisir le noeud vm pour lequel ŵ est minimum
9: Tk +1 se déduit de Tk en y remplaçant vm par une feuille
10: k k +1
11: end while
Un exemple d’élagage
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
X2 Classification naïve
bayésienne
* * o o Non supervisé
* * o
Par renforcement
c
o
o o
o
d o
o
* o
b *
* *
*
a X1
Un exemple d’élagage
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
x1 > a ?
Classification naïve
bayésienne
Non supervisé
vr
u
Par renforcement
ai
fa
x2 > c ? x2 > b ?
faux
x
vrai
vra
fau
x2 > d ? * * o
faux
vrai
* o
Un exemple d’élagage
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Calculer ŵ(Tmax , v1 ), ŵ(Tmax , v2 ), ŵ(Tmax , v3 ), Les k plus proches voisins
Les arbres de décisions
ŵ(Tmax , v4 ) Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Par renforcement
ux
vr
ai
v2 x2 > c ?fa x2 > b ? v3
faux
x
vrai
vra
fau
v4 x2 > d ? * * o
faux
vrai
* o
Un exemple d’élagage
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
1 0 1
I ŵ(Tmax , v2 ) = =
5(3 1) 10
2 0 2
I ŵ(Tmax , v3 ) = =
5(2 1) 5
1 0 1
I ŵ(Tmax , v4 ) = =
5(2 1) 5
Un exemple d’élagage
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Non supervisé
x1 > a ? Par renforcement
vra
fau
i
* x2 > b ?
faux
vrai
* o
Un exemple d’élagage
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Non supervisé
Calcul des valeurs sur T1 Par renforcement
9 1 4
I ŵ(T1 , v1 ) = =
3(3 1) 3
2 1 1
I ŵ(T1 , v3 ) = =
3(2 1) 3
Un exemple d’élagage
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Non supervisé
Calcul des valeurs sur T1 Par renforcement
9 1 4
I ŵ(T1 , v1 ) = =
3(3 1) 3
2 1 1
I ŵ(T1 , v3 ) = =
3(2 1) 3
Un exemple d’élagage
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Par renforcement
x1 > a ?
faux
vrai
* o
Un exemple d’élagage
Apprentissage artificiel
Fabien Teytaud
Intro
Supervisé
Les k plus proches voisins
Les arbres de décisions
Le perceptron
Les réseaux de neurones
Classification naïve
bayésienne
Non supervisé
Choix de l’arbre Par renforcement
Fabien Teytaud
Intro
Par exemple, sur cet ensemble de validation Supervisé
Les k plus proches voisins
a X1
3
I Erreur Tmax :
16
1
I Erreur T1 :
16
2
I Erreur T2 :
16