Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d...

33
Arbres de d´ ecision Intelligence Artificielle et Syst` emes Formels Master 1 I2L ebastien Verel [email protected] http://www-lisic.univ-littoral.fr/ ~ verel Universit´ e du Littoral Cˆ ote d’Opale Laboratoire LISIC Equipe OSMOSE

Transcript of Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d...

Page 1: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Arbres de decisionIntelligence Artificielle et Systemes Formels

Master 1 I2L

Sebastien [email protected]

http://www-lisic.univ-littoral.fr/~verel

Universite du Littoral Cote d’OpaleLaboratoire LISICEquipe OSMOSE

Page 2: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Objectifs de la seance 08

Savoir definir les notions d’apprentissage automatique

Savoir definir un arbre de decision

Connaitre le principe de l’algorithme d’apprentissage ID3

Savoir definir apprentissage supervise et non-supervise

Connaitre la notion de sur-apprentissage

Connaitre les methodes d’estimation de l’erreur (validationcroisee, etc.)

Page 3: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Plan

1 Apprentissage automatique

2 Arbre de decision

3 Apprentissages top-down greedy

4 Techniques de validation

Page 4: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Intelligence Artificielle

5 domaines de l’IA

Deduction logique

Resolution de problemes

Apprentissage automatique (artificiel)

Representation des connaissances

Systemes multiagents

Page 5: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Apprentissage automatique (Machine Learning)

Definition informelle

Etude et conception de systemes (methodes executees par unemachine) qui sont capables d’apprendre a partir de donnees.

Exemple

un systeme qui distinguent les courriels spam et non-spam.

Page 6: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Apprentissage automatique (Machine Learning)

E : l’ensemble de toutes les taches possibles.S : un systeme (une machine)

Definition un peu plus formelle [T.M. Mitchell, 1997]

T ⊂ E : ensemble de taches appele training setP : S × E → IR : mesure de performance d’un syst. sur des taches.

Un systeme S apprend lors d’une experience Exp sila performance de S sur les taches T , mesuree par P, s’ameliore.

P(Savant Exp,T ) ≤ P(Sapres Exp,T )

Exemple

Taches T : Classifier des emails recus durant une journeePerformance P : Taux de rejet correct des spams par SExperience Exp : 1 semaine exposition aux courriels d’un

utilisateur

Page 7: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Capacite de generalisation

Definition (informelle)

Capacite d’un systeme a fonctionner correctement sur de nouvellestaches inconnues apres avoir appris sur un ensembled’apprentissage.

T : ensemble d’apprentissage (training set)V : ensemble de test/validation (test set) avec V ∩ T = ∅

Deux systemes S1 et S2.

Supposons le resultat suivant :P(S2,T ) ≤ P(S1,T )P(S1,V ) ≤ P(S2,V )

Interpretations :S1 a mieux appris que S2 sur l’ensemble d’apprentissage TS1 generalise moins bien que S2 sur un ensemble independant V

Page 8: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Machine learning vs. Data mining

Finalites differentes a priori

Machine learning :but de prediction a partir de proprietes connues et apprises

sur un ensemble d’apprentissage

Data mining :but de decouverte de proprietes pas encore connues dans

les donnees.

Page 9: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Types d’apprentissage

Apprentissage supervise :Apprentissage sur un ensemble d’exemples etiquetes :

(entree, sortie desiree)

Apprentissage non supervise :Apprentissage sur un ensemble d’exemples non etiquetes

(cf. clustering)

Apprentissage semi-supervise :Apprentissage sur un ensemble d’exemples etiquetes / non

etiquetes

Apprentissage par renforcement :Apprentissage ou les actions sur l’environnement se

mesurent par une recompense

...

Page 10: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Liste d’algorithmes d’apprentissage automatique

Liste non exhaustive

Arbre de decision

Regles d’association

Reseau de neurones artificiels

Support vector machine

Clustering (classification)

Inference baysienne

Reseaux baysiens

Temporal difference (TD)

etc.

Page 11: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Choisir la bonne methode...source : scikit learn http://scikit-learn.org/dev/index.html

Page 12: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Logiciels et bibliotheques

Weka : http://weka.wikispaces.com/

R : http://www.r-project.org

scikit learn (python) :http://scikit-learn.org/dev/index.html

...

Page 13: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Bibliographie

Denis Robilliard, Universite du Littoral Cote d’Opale,http:

//www-lisic.univ-littoral.fr/~robillia/index.html

Fabien Teytaud, Universite du Littoral Cote d’Opale,http://www-lisic.univ-littoral.fr/~teytaud/

enseignements.html

Christine Decaestecker (ULB) et Marco Saerens, (UCL),”Les arbres de decision”

Rico Rakotomalala, Laboratoire ERIC,http://tutoriels-data-mining.blogspot.com/2008/

03/validation-croise-bootstrap-leave-one.html

Page 14: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Representation

Les techniques d’apprentissage se distinguent par lesrepresentations :

Regles d’association

Reseaux de neurone

Arbres de decision

...

Une representation est une structure de donnee (lecture/ecriture).L’etat de la structure permet la memorisation.

Lors de la phase d’apprentissage,l’etat propre a la structure est modifiee : ”le modele apprend”pour augmenter la performance sur l’ensemble d’apprentissage ettout en gardant des capacites de generalisation

Page 15: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Un exemple

Outlook Temperature Humidity Wind PlayballSunny Hot High Weak NoSunny Hot High Strong NoOvercast Hot High Weak YesRain Mild High Weak YesRain Cool Normal Weak YesRain Cool Normal Strong NoOvercast Cool Normal Strong YesSunny Mild High Weak NoSunny Cool Normal Weak YesRain Mild Normal Weak YesSunny Mild Normal Strong YesOvercast Mild High Strong YesOvercast Hot Normal Weak YesRain 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 etiquetes

Page 16: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Un arbre pour prendre une decisionClassification a l’aide d’un arbre

Outlook

Himidity Wind

Wind

sunnyovercast Rain

NO

TemperatureStrongWeak

NO

NONOYES

High Normal

StrongWeakNONOYES YES Wind

StrongWeakNONOYES

NONO

cool hotmidl

Remarque : un arbre code en fait un ensemble de regles (conjonctions,disjonctions)

Si Outlook = ”overcast” et Humidity =... alors playball = Yes

Page 17: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Un arbre pour prendre une decisionClassification a l’aide d’un arbre

Outlook

Himidity Wind

Wind

sunnyovercast Rain

NO

TemperatureStrongWeak

NO

NONOYES

High Normal

StrongWeakNONOYES YES Wind

StrongWeakNONOYES

NONO

cool hotmidl

Remarque : un arbre code en fait un ensemble de regles (conjonctions,disjonctions)

Si Outlook = ”overcast” et Humidity =... alors playball = Yes

Page 18: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Exemple

Exercice

Completer le tableau en utilisant l’arbre de decision

Calculer le taux d’erreur de cet arbre de decision

Outlook

Himidity Wind

Wind

sunnyovercast Rain

NO

TemperatureStrongWeak

NO

NONOYES

High Normal

StrongWeakNONOYES YES Wind

StrongWeakNONOYES

NONO

cool hotmidl

Outlook Temperature Humidity Wind PlayballSunny Hot High WeakSunny Hot High StrongOvercast Hot High WeakRain Mild High WeakRain Cool Normal WeakRain Cool Normal StrongOvercast Cool Normal StrongSunny Mild High WeakSunny Cool Normal WeakRain Mild Normal WeakSunny Mild Normal StrongOvercast Mild High StrongOvercast Hot Normal WeakRain Mild High Strong

Page 19: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Algorithme d’apprentissage

Apprentissage par arbre de decision

Construction un arbre :

Noeuds internes : selectionner d’un attribut comme etiquette,les arcs sont etiquetes par les valeurs de l’attribut

Feuilles : couper l’arbre avec une valeur de l’attribut cible

On veut en general :

Un taux d’erreur faible

Une bonne generalisation

Un arbre de petite taille comprehensible pour un non expert

etc.

Nombreux algos : ID3, C4.5, CART, CHAID, algo. evo., etc.

Page 20: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Une classe d’algorithmes d’apprentissage

Algorithme top-down

Procedure : construireArbre(X )if tous les exemple de X appartiennent a la meme classe then

Creer une feuille portant le nom de cette classeelse

Choisir un attribut pour creer un noeudLe test associe a ce noeud separe X en Xd et Xg

construireArbre(Xg )construireArbre(Xd)

end if

Page 21: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Une classe d’algorithmes d’apprentissage

Algorithmes top-down greedy

Pour chaque noeud interne,

le ”meilleur” attribut est selectionne selon l’ensembled’apprentissage

l’ensemble d’apprentissage est partitionne selon les valeurspossibles de l’attribut du noeud

Le processus est repete en chaque noeud et s’arrete lorsque :

tous les exemples ont la meme valeur d’attribut cible

un nouveau partitionnement n’augmente pas la qualite de laprediction

Top-down : construction a partir de la racine

Greedy : meilleur choix local, pas de remise en causeLes optima locaux guettent ! Optimalite locale vs. globale

Page 22: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Critique

Avantages

Simple a comprendre et ainterpreter

Le modele est ”white-box”(res. neurones est black-box)

Peu de preparation desdonnees : pas de normalisation,etc.

Donnees numeriques etcategorielles possibles

Robuste aux donneesaberrantes (outliers)

Inconvenients

Apprendre un arbre de decisionoptimal : NP-complet

Heuristique d’apprentissagegreedy : arbre sous optimal

Creation d’arbres tropcomplexes, sur-specialise

Biais vers certaines formes :attribut avec plus de valeurs,petit arbre, etc.

Detection difficile desinteractions entre attributs

Certains problemes sontdifficiles a apprendre sousforme d’arbre (xor, parite,multiplexer)

Page 23: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

ID3 (Iterative Dichotomiser 3)Ross Quinlan, 1986

Algorithme top-down greedybase sur le gain d’information (information gain)

Principe

1 Calculer l’entropie de tous les attributs en utilisant l’ensembled’apprentissage S

2 Partitionner l’ensemble S en utilisant l’attribut pour lequell’entropie est minimum (gain d’information maximum)

3 Construire le noeud de l’arbre avec cet attribut

4 Recommencer recursivement sur chaque sous arbre avecchaque sous-ensemble

Page 24: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Mesure d’entropie

Entropie H

Mesure de la quantite d’incertitude dans un ensemble (dispersion)

H(S) = −∑x∈X

p(x) log2 p(x)

S : ensemble des donnees

DS : ensemble des classes de S

p(s) : proportion de la classe s ∈ DS dans S

Lorsque H(S) = 0, S est parfaitement classe.

Page 25: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Mesure d’entropie

Voir exemple de calcul au tableau

Page 26: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Gain d’information

Information mutuelle (entropie croisee)

Mesure de l’information conjointe de 2 variables aleatoires(information d’une variable par rapport a l’autre)

I (S ,T ) = −∑

s∈DS ,t∈DT

p(s, t) log2p(s, t)

p(s)p(t)

Information gain ( - information mutuelle)

Mesure de la difference d’entropie entre avant et apres lepartitionnement selon un attribut

IG (S ,T ) = −I (S ,T ) = H(S)−∑t

p(St)H(St)

T = {S1, . . .} partitionnement de S = ∪tStp(St) = ]St/]S

H(S), H(St) : entropies de S et de St

Page 27: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Mesure d’entropie

Voir exemple de calcul au tableau

Page 28: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Pseudo code

ID3(exemples, cible, attributs) :si tous les exemples sont positifs (resp. negatifs) alors

retourner une feuille avec l’etiquette positif (resp. negatif)si attributs est vide alors

retourner une feuille avec l’etiquette la plus frequentesinon

A← attribut de plus grand gain d’informationconstruire un noeud avec l’etiquette Apour chaque valeurs vi de A

ajouter la branche vi au noeudsi exemples(A = vi ) est vide alors

ajouter a la branche la feuilleavec l’etiquette la plus frequente

sinonajouter a la branche le sous-arbreID3(exemples(A = vi ), cible, attributs −A)

Page 29: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

C4.5Ross Quinlan, 1993

Amelioration de ID3

Utilisation du ratio de gain d’information au lieu de IG :IG (S ,T ) biaise vers attributs ayant un grand nombre de valeursratioIG (S ,T ) = IG (S ,T )/H(T )

Possibilite de valeur ”null” :Exemple ignore lors dans le calcul du noeud

Prise en compte des attributs a valeur continue :Discretisation par P(A < ai )pour toutes les valeurs possibles de A, calcul de IG

Elagage (pruning) pour reduire la taille de l’arbre :Technique bottom-up : branches finales elagueeslorsque taux d’erreur plus grand qu’en remplacant par une feuille

Wind

StrongWeakNONOYES

3/5 1/5

avec classemajoritaire

3/10

Page 30: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Les erreurs

Relation entre erreurs

Erreur d’apprentissage : taux d’erreur sur l’ensemble desexemples d’apprentissage

Erreur ”vraie” : erreur sur l’ensemble de tous les exemplespossibles

taille ens. d'apprentissage

tx e

rreu

r erreur "vraie"erreur entrainement

Page 31: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Sur-apprentissage

Exces d’apprentissage

Sur-specialisation du modele sur l’ensemble d’entrainement⇒ Perte de capacite de generalisation≈ Apprentissage ”par coeur”

complexité du modèle

tx e

rreu

r erreur "vraie"erreur entrainement

sur-apprentissage

Mesure de complexite d’un arbre de decision : nombre de feuilles

Page 32: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Evaluation d’un modele d’apprentissage

Technique

Partitionner l’ensemble des exemples en :

un ensemble d’apprentissage (≈ 70%)

un ensemble independant de test (≈ 30%)

Le taux d’erreur est estime (sans biais) sur l’ensemble de test.

Inconvenient

Requiert un nombre important d’exemples

Dilemme :

Plus on met d’exemples dans le test, plus l’estimation estprecisePlus on met d’exemples dans l’apprentissage, meilleur est lemodele (a priori)

Page 33: Arbres de d ecisionverel/TEACHING/14-15/IASF-M1app/cm08.pdfApprentissage automatique Arbre de d ecision Apprentissages top-down greedy Techniques de validation Objectifs de la s eance

Apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Methode de re-echantillonnage

Permet d’estimer l’erreur de generalisation.

K -folds cross-validation

Partitionner aleatoirement l’echantillon en K blocsPour chaque bloc k ,

Construire le modele sur les k − 1 autres blocsCalculer l’erreur en test ek sur le block k

Calculer l’erreur moyenne des erreurs ek

Autres techniques :

Leave-one-out (K = n)

Bootstrap, bagging, etc.