Arbres de d´ecision - LISIC - Laboratoire d ...verel/TEACHING/13-14/IASF-M1app/cm10.pdf · Un...

30
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 CAMOME

Transcript of Arbres de d´ecision - LISIC - Laboratoire d ...verel/TEACHING/13-14/IASF-M1app/cm10.pdf · Un...

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 CAMOME

Retour sur l’apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Objectifs de la seance 10

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.)

Retour sur l’apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Plan

1 Retour sur l’apprentissage automatique

2 Arbre de decision

3 Apprentissages top-down greedy

4 Techniques de validation

Retour sur l’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

Retour sur l’apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Apprentissage automatique

Definition informelle (Machine Learning)

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.

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

Soient un ensemble de taches T (training set)et une mesure P de performance sur ces taches.

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

Exemple :Taches T : Les emails recus durant une journeePerformance P : Taux de rejet correct des spams

Experience E : 1 semaine exposition aux courriels d’un utilisateur

Retour sur l’apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

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(S1(T )) meilleur que P(S2(T ))P(S2(V )) meilleur que P(S1(V ))

Interpretations :S1 a mieux appris que S2 sur l’ensemble d’apprentissageS1 generalise moins bien que S2

Retour sur l’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.

Retour sur l’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

...

Retour sur l’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.

Retour sur l’apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Logiciels

Weka

R

...

Retour sur l’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

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

Retour sur l’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

Retour sur l’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

Retour sur l’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

Retour sur l’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

Retour sur l’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

Retour sur l’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.

Retour sur l’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,

un attribut est selectionne selon l’ensemble d’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 partionnement 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

Retour sur l’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)

Retour sur l’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

Retour sur l’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

X : ensemble des classes de S

p(x) : proportion de la classe x ∈ X dans S

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

Retour sur l’apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Mesure d’entropie

Voir exemple de calcul au tableau

Retour sur l’apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Gain d’information

Information gain (information mutuelle)

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

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

t

p(St)H(St)

T = {S1, . . . , } sous-ensembles du partitionnement de S ,S = ∪tSt

p(St) = ]St/]S

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

Retour sur l’apprentissage automatique Arbre de decision Apprentissages top-down greedy Techniques de validation

Mesure d’entropie

Voir exemple de calcul au tableau

Retour sur l’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)

Retour sur l’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 valeurs

ratioIG (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

Retour sur l’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

Retour sur l’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

Retour sur l’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)

Retour sur l’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.