Intelligence Artificielle et Syst`emes Formels Master 1 I2L
S´ebastien Verel verel@lisic.univ-littoral.fr
http://www-lisic.univ-littoral.fr/∼verel
Universit´e du Littoral Cˆote d’Opale Laboratoire LISIC Equipe CAMOME
Objectifs de la s´ eance 10
Savoir d´efinir un arbre de d´ecision
Connaitre le principe de l’algorithme d’apprentissage ID3 Savoir d´efinir apprentissage supervis´e et non-supervis´e Connaitre la notion de sur-apprentissage
Connaitre les m´ethodes d’estimation de l’erreur (validation crois´ee, etc.)
Plan
1 Retour sur l’apprentissage automatique
2 Arbre de d´ecision
3 Apprentissages top-down greedy
4 Techniques de validation
Intelligence Artificielle
5 domaines de l’IA D´eduction logique R´esolution de probl`emes
Apprentissage automatique(artificiel) Repr´esentation des connaissances Syst`emes multiagents
Apprentissage automatique
D´efinition informelle (Machine Learning)
Etude et conception de syst`emes (m´ethodes ex´ecut´ees par une machine) qui sont capables d’apprendre `a partir de donn´ees.
Exemple : un syst`eme qui distinguent les courriels spam et non-spam.
D´efinition un peu plus formelle [T.M. Mitchell, 1997]
Soient un ensemble de tachesT (training set) et une mesureP de performance sur ces taches.
Un syst`emeapprend lors d’une exp´erience E si
la performance sur les tachesT, mesur´ee par P, s’am´eliore avec E.
Exemple :
Taches T : Les emails re¸cus durant une journ´ee Performance P : Taux de rejet correct des spams
Exp´erience E : 1 semaine exposition aux courriels d’un utilisateur
G´ en´ eralisation
D´efinition (informelle)
Capacit´e d’un syst`eme `a fonctionner correctement sur de nouvelles taches inconnues apr`es avoir appris sur un ensemble
d’apprentissage.
T : ensemble d’apprentissage (training set)
V : ensemble de test/validation (test set) avecV∩T =∅ Deux syst`emesS1 etS2.
Supposons le r´esultat suivant : P(S1(T)) meilleur queP(S2(T)) P(S2(V)) meilleur queP(S1(V)) Interpr´etations :
S1a mieux appris queS2sur l’ensemble d’apprentissage S1g´en´eralise moins bien queS2
Machine learning vs. data Mining
Finalit´es diff´erentesa priori Machine learning :
but depr´ediction`a partir de propri´et´es connues et apprises sur un ensemble d’apprentissage
Data mining :
but ded´ecouverte de propri´et´es pas encore connues dans les donn´ees.
Types d’apprentissage
Apprentissage supervis´e :
Apprentissage sur un ensemble d’exemples ´etiquet´es : (entr´ee, sortie d´esir´ee)
Apprentissage non supervis´e :
Apprentissage sur un ensemble d’exemples non ´etiquet´es (cf. clustering)
Apprentissage semi-supervis´e :
Apprentissage sur un ensemble d’exemples ´etiquet´es / non
´
etiquet´es
Apprentissage par renforcement :
Apprentissage o`u les actions sur l’environnement se mesurent par une r´ecompense
...
Liste d’algorithmes d’apprentissage automatique
Liste non exhaustive Arbre de d´ecision R´egles d’association
R´eseau de neurones artificiels Support vector machine Clustering (classification) Inf´erence baysienne R´eseaux baysiens
Temporal difference (TD) etc.
Logiciels
Weka R ...
Bibliographie
Denis Robilliard, Universit´e du Littoral Cˆote d’Opale, http:
//www-lisic.univ-littoral.fr/∼robillia/index.html Christine Decaestecker (ULB) et Marco Saerens, (UCL),
”Les arbres de d´ecision”
Rico Rakotomalala, Laboratoire ERIC,
http://tutoriels-data-mining.blogspot.com/2008/
03/validation-croise-bootstrap-leave-one.html
Repr´ esentation
Les techniques d’apprentissage se distinguent par les repr´esentations :
R`egles d’association R´eseaux de neurone Arbres de d´ecision ...
Une repr´esentation est une structure de donn´ee (lecture/´ecriture).
L’´etat de la structure permet la m´emorisation.
Lors de la phase d’apprentissage,
l’´etat propre `a la structure est modifi´ee : ”le mod`ele apprend”
pour augmenter la performance sur l’ensemble d’apprentissage et tout en gardant des capacit´es de g´en´eralisation
Un exemple
Outlook Temperature Humidity Wind Playball
Sunny Hot High Weak No
Sunny Hot High Strong No
Overcast Hot High Weak Yes
Rain Mild High Weak Yes
Rain Cool Normal Weak Yes
Rain Cool Normal Strong No
Overcast Cool Normal Strong Yes
Sunny Mild High Weak No
Sunny Cool Normal Weak Yes
Rain Mild Normal Weak Yes
Sunny Mild Normal Strong Yes
Overcast Mild High Strong Yes
Overcast Hot Normal Weak Yes
Rain Mild High Strong No
4 attributs :
Outlook∈ {Sunny , Overcast, Rain }; Temperature∈ {Hot, Mild, Cool }; Humidity ∈ {High , Normal}; Wind∈ {Strong , Weak}
1 cible : Playball∈ {No, Yes} 14 exemples ´etiquet´es
Retour sur l’apprentissage automatique Arbre de d´ecision Apprentissages top-down greedy Techniques de validation
Un arbre pour prendre une d´ ecision
Classification `a l’aide d’un arbre
Outlook
Himidity Wind
Wind
sunny
overcast Rain
NO Temperature Weak Strong
NO NO
YES NO
High Normal
Strong Weak
NO
YES NO YES Wind
Strong Weak
NO YES NO
NO NO cool midl hot
disjonctions)
Si Outlook = ”overcast” et Humidity =... alors playball = Yes
Un arbre pour prendre une d´ ecision
Classification `a l’aide d’un arbre
Outlook
Himidity Wind
Wind
sunny
overcast Rain
NO Temperature Weak Strong
NO NO
YES NO
High Normal
Strong Weak
NO
YES NO YES Wind
Strong Weak
NO YES NO
NO NO cool midl hot
Remarque : un arbre code en fait un ensemble de r`egles (conjonctions, disjonctions)
Si Outlook = ”overcast” et Humidity =... alors playball = Yes
Exemple
Exercice
Compl´eter le tableau en utilisant l’arbre de d´ecision Calculer le taux d’erreur de cet arbre de d´ecision
Outlook
Himidity Wind
Wind
sunny
overcast Rain
NO Temperature Weak Strong
NO NO YES NO
High Normal
Strong Weak
NO NO
YES YES Wind
Strong Weak
NO YES NO
NO NO cool midl hot
Outlook Temperature Humidity Wind Playball
Sunny Hot High Weak
Sunny Hot High Strong
Overcast Hot High Weak
Rain Mild High Weak
Rain Cool Normal Weak
Rain Cool Normal Strong
Overcast Cool Normal Strong
Sunny Mild High Weak
Sunny Cool Normal Weak
Rain Mild Normal Weak
Sunny Mild Normal Strong
Overcast Mild High Strong
Overcast Hot Normal Weak
Rain Mild High Strong
Algorithme d’apprentissage
Apprentissage par arbre de d´ecision Construction un arbre :
Noeuds internes :s´electionnerd’un attribut comme ´etiquette, les arcs sont ´etiquet´es par les valeurs de l’attribut
Feuilles : couper l’arbre avec une valeur de l’attribut cible
On veut en g´en´eral : Un taux d’erreur faible Une bonne g´en´eralisation
Un arbre de petite taille compr´ehensible pour un non expert etc.
Nombreux algos : ID3, C4.5, CART, CHAID, algo. ´evo., etc.
Une classe d’algorithmes d’apprentissage
Algorithmes top-down greedy Pour chaque noeud interne,
un attribut est s´electionn´e selon l’ensemble d’apprentissage l’ensemble d’apprentissage est partitionn´e selon les valeurs possibles de l’attribut du noeud
Le processus est r´ep´et´e en chaque noeud et s’arrˆete lorsque : tous les exemples ont la mˆeme valeur d’attribut cible un nouveau partionnement n’augmente pas la qualit´e de la pr´ediction
Top-down : construction `a partir de la racine
Greedy : meilleur choix local, pas de remise en cause Les optima locaux guettent ! Optimalit´e localevs. globale
Critique
Avantages
Simple `a comprendre et `a interpr´eter
Le mod`ele est ”white-box”
(r´es. neurones est black-box) Peu de pr´eparation des
donn´ees : pas de normalisation, etc.
Donn´ees num´eriques et cat´egorielles possibles Robuste aux donn´ees aberrantes (outliers)
Inconv´enients
Apprendre un arbre de d´ecision optimal : NP-complet
Heuristique d’apprentissage greedy : arbre sous optimal Cr´eation d’arbres trop complexes, sur-sp´ecialis´e Biais vers certaines formes : attribut avec plus de valeurs, petit arbre, etc.
D´etection difficile des interactions entre attributs Certains probl`emes sont difficiles `a apprendre sous forme d’arbre (xor, parit´e, multiplexer)
ID3 (Iterative Dichotomiser 3)
Ross Quinlan, 1986
Algorithme top-down greedy
bas´e sur le gain d’information (information gain) Principe
1 Calculer l’entropie de tous les attributs en utilisant l’ensemble d’apprentissage S
2 Partitionner l’ensemble S en utilisant l’attribut pour lequel l’entropie est minimum (gain d’information maximum)
3 Construire le noeud de l’arbre avec cet attribut
4 Recommencer r´ecursivement sur chaque sous arbre avec chaque sous-ensemble
Mesure d’entropie
EntropieH
Mesure de la quantit´e d’incertitude dans un ensemble (dispersion) H(S) =−X
x∈X
p(x) log2p(x)
S : ensemble des donn´ees X : ensemble des classes deS
p(x) : proportion de la classex ∈X dansS
LorsqueH(S) = 0, S est parfaitement class´e.
Mesure d’entropie
Voir exemple de calcul au tableau
Gain d’information
Information gain (information mutuelle)
Mesure de la diff´erence d’entropie entre avant et apr`es le partitionnement selon un attribut
IG(S,T) =H(S)−X
t
p(St)H(St)
T ={S1, . . . ,} sous-ensembles du partitionnement deS, S =∪tSt
p(St) =]St/]S
H(S),H(St) : entropies de S et de St
Mesure d’entropie
Voir exemple de calcul au tableau
Pseudo code
ID3(exemples, cible, attributs) :
sitous les exemples sont positifs (resp. n´egatifs) alors
retourner une feuille avec l’´etiquette positif (resp. n´egatif) siattributs est vide alors
retourner une feuille avec l’´etiquette la plus fr´equente sinon
A←attribut de plus grand gain d’information construireun noeud avec l’´etiquette A pour chaque valeursvi deA
ajouterla branchevi au noeud siexemples(A=vi) est videalors
ajouter`a la branche la feuille avec l’´etiquette la plus fr´equente sinon
ajouter`a la branche le sous-arbre
ID3(exemples(A=vi), cible, attributs −A)
C4.5
Ross Quinlan, 1993
Am´elioration de ID3
Utilisation du ratio de gain d’information au lieu de IG : IG(S,T) biais´e vers attributs ayant un grand nombre de valeurs
ratioIG(S,T) =IG(S,T)/H(T) Possibilit´e de valeur ”null” :
Exemple ignor´e lors dans le calcul du noeud Prise en compte des attributs `a valeur continue :
Discr´etisation parP(A<ai)
pour toutes les valeurs possibles deA, calcul deIG Elagage (pruning) pour r´eduire la taille de l’arbre :
Technique bottom-up : branches finales ´elagu´ees
lorsque taux d’erreur plus grand qu’en rempla¸cant par une feuille
Wind Strong Weak
NO YES NO 3/5 1/5 avec classe
majoritaire 3/10
Les erreurs
Relation entre erreurs
Erreur d’apprentissage : taux d’erreur sur l’ensemble des exemples d’apprentissage
Erreur ”vraie” : erreur sur l’ensemble de tous les exemples possibles
taille ens. d'apprentissage tx erreur erreur "vraie"
erreur entrainement
Sur-apprentissage
Exces d’apprentissage
Sur-sp´ecialisation du mod`ele sur l’ensemble d’entrainement
⇒Perte de capacit´e de g´en´eralisation
≈Apprentissage ”par coeur”
complexité du modèle tx erreur erreur "vraie"
erreur entrainement
sur-apprentissage
Mesure de complexit´e d’un arbre de d´ecision : nombre de feuilles
Evaluation d’un mod` ele d’apprentissage
Technique
Partitionner l’ensemble des exemples en : un ensemble d’apprentissage (≈70%) un ensemble ind´ependant de test (≈30%)
Le taux d’erreur est estim´e (sans biais) sur l’ensemble de test.
Inconv´enient
Requiert un nombre important d’exemples Dilemme :
Plus on met d’exemples dans le test, plus l’estimation est pr´ecise
Plus on met d’exemples dans l’apprentissage, meilleur est le mod`ele (a priori)
M´ ethode de r´ e-´ echantillonnage
Permet d’estimer l’erreur de g´en´eralisation.
K-folds cross-validation
Partitionner al´eatoirement l’´echantillon enK blocs Pour chaque bloc k,
Construire le mod´ele sur les k−1 autres blocs Calculer l’erreur en test ek sur le blockk Calculer l’erreur moyenne des erreursek
Autres techniques :
Leave-one-out (K =n) Bootstrap, bagging, etc.