Telechargé par hbkstudio1

fouille donn es

publicité
Propriétés des ensembles fréquents
1
Propriétés des ensembles fréquents
Exemple: Extracion des itemsets fréquents
Min_sup=2/9 (min_freq=2)
2
Généraion des candidats
Exemple:
Supposons que la table Transacion(Tid, Item). On a :
107 transacions et l’on a 105 items diférents.
En moyenne chaque transacion concerne 10 items.
10
Pour chaque transacion on a
paires à regarder ainsi la jointure a 45*10 7
2
tuples
Remarque: si {item_1} n’est pas fréquent alors certainement la paire {item_1, item_i}
ne l’est pas.
Considérons la requête si seuil = 0,01
Pour qu’un item soit fréquent il faut qu’il apparaisse 0,01 * 10 7 =105 fois.
C 45
3
Généraion des candidats
 Constat : généraion d ’un trop grand nombre de candidats
s ’il y a 10^4 (1-itemset) => généraion de 10^7 candidats 2-itemsets
 Pour un fréquent de 100, il faut générer plus de 10^30 candidats au total
 Est-il possible de proposer une méthode qui évite de générer des candidats ?
4
Problèmes d’Apriori
•
•
5
Le principe de l’algorithme:
– Uiliser les (k – 1)-itemsets fréquents pour générer les k-itemsets
candidats
– Scanner la base pour tester le support des candidats
Là où l’algo pèche : généraion des candidats
– Beaucoup:
• 104 1-itemsets fréquents générant 107 2-itemsets candidats
• Pour trouver les 100-itemsets on doit générer 2100  1030
candidats.
– Plusieurs scans de la base:
Problèmes d’Apriori
Principe de base
• Apriori utlise l’approche : ≪ générer et tester ≫ :
générer les ensembles; et puis tester leurs fréquences
▫ la généraion des ensembles candidats est couteuse (en espace et en temps)
▫ le calcul de fréquence est couteux
-le test d’appartenance d’un ensemble candidat a une transacion est couteux nécessite plusieurs E/S disques
6
FP-tree
Exemple:
7
Phase 2: Règles fortes
8
Règles fortes
Concept de base
Règles fortes
Recherche des règles pour les itemsets fréquent
les itemsets de card= 2:
Il faut tester toutes les combinaisons : 2 tests par itemset
{P1,P2} :
P1->p2 : conf. = 2/4 = 50% (refusé)
P2->p1 : conf. = 2/3 = 67% (refusé)
{P1, P3}
P1->P3 : conf. = 4/4 = 100% (accepté)
P3->P1 : conf. = 4/5 = 80% (accepté)
{P2,P3}
P2->P3 : conf. = 3/3 = 100% (accepté)
P3->P2 : conf. = 3/5 = 60% (refusé)
Rq: Règles avec conséquent de card = 1
10
Règles fortes
Recherche des règles pour les itemsets de card= 3 et plus…
Règles avec antécédent de card = 2
11
Règles fortes
Exemple:
12
Règles fortes
Complexité temporelle
Théorème 1:
Transférer les éléments d’un ensemble fréquent de l’antécédent d’une règle au
conséquent ne peut pas augmenter son degré de coniance.
Démonstraion:
Règles fortes
Ainsi, on peut dégager à parir du théorème 1 les résultats suivants
Théorème 2
Tout sur-ensemble (superset) du ‘conséquent’ d’une règle non-conidente est aussi no
conident
Tout sous-ensemble du ‘conséquent’ d’une règle conidente est aussi conident
Exemple: ?
Propriété 1 : pas de composiion des règles
Si X → Z et Y → Z sont vrais dans D, X U Y → Z n’est pas nécessairement vrai.
Propriété 2 : décomposiion des règles
Si X U Y → Z convient, X → Z et Y → Z peut ne pas être vrai.
Propriété 3 : pas de transiivité
Si X → Y et Y → Z , nous ne pouvons pas en déduire que X → Z.
Règles fortes
Amélioraions cherchées
Éliminaion des règles redondantes
• R1: A ⇒ BC
R2: AB ⇒ C
R2 redondante par rapport à R1
– pour un k-ensemble fréquent, présenter les règles de condiion minimale
• R1: A ⇒ BCD
R2: AB ⇒ C
R2 redondante par rapport à R1
– chercher les règles issues du plus grand k-ensemble fréquent; si on trouve une
règle ayant une condiion minimale, on évite de chercher les règles dont la
prémisse conient cete condiion minimale.
15
Règles fortes
Mesures d’évaluaion des règles
Support et coniance:
En termes probabilistes:
R : p1->p2
Sup ( R ) = prob(p1p2)
Conf( R )= prob(p1/p2)=2/4
Problème: Une règle peut avoir d’excellents supports et coniance sans être pour
autant «intéressante»
Soluion: une mesure d’intérêt
Qui caractérise une forme de causalité c.-à-d. l’idée «la connaissance de l’antécédent
amène de l’informaion (supplémentaire) sur la connaissance du conséquent»
Indice de perinence des règles: la métrique Lit(R: A-> B)=P(B/A)/P(B)
= conf (R )/sup (B)
Surcroît d’occurrence du B quand A est présent
RQ:
Le LIFT ne peut être calculé qu’après coup pour iltrer les règles.
16
Règles fortes
Mesures d’évaluaion des règles
Leverage=sup(AB)/|D| - sup(A)/|D| * sup(B)/|D|
Convicion =sup(A) *(|D| -sup(B))/|D| *(sup(A)-sup(AB))
17
Généraion des ISF et règles d’associaion dans les logiciels
Etudes de cas:
1)SIPINA
2)TANAGRA
3)Logiciel R
18
Fouilles des données
Chapitre4: Apprenissage
automaique
Introducion:
Apprenissage automaique (Machine Learning)
Déiniion1:
Etude et concepion de systèmes (méthodes exécutées par une machine) qui sont capables
d'apprendre à parir de données.
Exemple:
un système qui disinguent les courriels spam et non-spam.
Déiniion 2:
Capacité d'un système à foncionner correctement sur de nouvelles tâches inconnues
après avoir appris sur un ensemble d'apprenissage.
Types d'apprenissage
Apprenissage supervisée :
Apprenissage sur un ensemble d'exemples éiquetés :
(entrée, sorie désirée)
Apprenissage non supervise :
Apprenissage sur un ensemble d'exemples non éiquetés (cf. clustering)
Liste d'algorithmes d'apprenissage automaique
Arbre de décision
Réseau de neurones ariiciels
Support vector machine
Clustering (classiicaion)
Réseaux bayésiens
Logiciels et bibliothèques
Apprenissage automaique : les
arbres de décision
Le principe des arbres de décision
• L’arbre de décision c’est une méthode très populaire en datamining parce qu’elle est assez
intuiive et donne des résultats faciles à implémenter.
• Dans le cas du classement, l’algorithme permet d’afecter chaque individu à une catégorie
à l’aide de règles de décision. D’un point de vue méier c’est idéal puisque les règles sont
clairement ideniiées et il n’y a pas d’efet boîte noire
• Les résultats peuvent être représentés visuellement, justement sous forme d’arbre
• Pour certains domaines d'applicaion, il est esseniel de produire des procédures de
classiicaion compréhensibles par l'uilisateur. C'est en pariculier le cas pour l'aide au
diagnosic médical où le médecin doit pouvoir interpréter les raisons du diagnosic.
• Les arbres de décision répondent à cete contrainte car ils représentent graphiquement
un ensemble de règles et sont aisément interprétables.
• Pour les arbres de grande taille, la procédure globale peut être diicile à appréhender,
cependant, la classiicaion d'un élément pariculier est toujours compréhensible.
• Les algorithmes d'apprenissage par arbres de décision sont eicaces, disponibles dans la
plupart des environnements de fouille de données.
Le principe des arbres de décision
• Ensemble de règles de classiicaion basant leur décision sur des tests associés aux
atributs, organisés de manière arborescente.
•L'arbre débute par la racine qui se divise en banches
• Les branches conduisent à des nœuds qui peuvent à leur tour se diviser en branches.
•Les nœuds de l'arbre testent les atributs. Un nœud est déini par le choix conjoint d'une
variable test parmi les explicaives et d'une division qui induit une pariion en deux
classes.
•Il y a une branche pour chaque valeur de l'atribut testé,
•Les feuilles spéciient les catégories et coniennent les décisions de classement inal
Avantage des arbres de décision
1. Facile à comprendre et à uiliser.
2. Nombre de tests limités par le nombre d’atributs (de quesion).
3. Construcion eicace (mais technique) à l’aide d’apprenissage par opimisaion (pour
obtenir un arbre peit et « correct »).
Construcion d’arbres de décision
Les principaux buts de la construcion des arbres de décision sont :
1. une meilleure généralisaion des exemples de la base d’apprenissage
2. une meilleure classiicaion de nouveaux exemples.
Moivaion:
•Pour certains domaines d’applicaion, il est esseniel de produire des classiicaions
compréhensible pour l’uilisateur
•Dans les méthodes classiques (hiérarchique, k-means, PAM), l’informaion est perdus
dans les classes
Exemple introducif:
Décider si un paient est malade ou bien portant selon sa température et s’il à la gorge
irritée
Arbre de décision:
- 2 classes (malade, bien portant)
toute descripion complète est associée une
- 2 variables (température, gorge irritée)
seule feuille de l'arbre de décision. Cete
associaion est déinie en commençant à la
racine de l'arbre et en descendant dans l'arbre
selon les réponses aux tests qui éiquetent les
nœuds internes.
Généralités
Arbre de décision:
• Algorithme de classiicaion supervisée
•Permet de classer un ensemble d’individus (observaions) décrits par des variables
qualiicaives et quanitaives
• Produit des classes les plus homogènes possibles
Un peu de vocabulaire
Données et notaion
Algorithme d’apprenissage
Entrées:
-n individus
-p variables
-Une variable supplémentaire contenant la basse de chaque individu (c classes)
Sorie:
N(p)= nbre d’individus associés à la posiion (nœud)p
N(k/p)= nbre d’individus appartenant à la classe k en sachant qu’ils sont associés à la posiion p
P(k/p) =N(k/p) /N(p)= proporion des individus appartenant à la classe K parmi ceux de la
posiion p
Remarque:
Un nœud est pur si tous les individus associés appariennent à la mm classe!
Construcion de l’arbre: exemple
Construire un arbre de décision qui classe et détermine les caractérisiques des clients qui
consultent leurs comptes sur internet
- L'atribut M décrit la moyenne des montants sur le compte client.
- L'atribut A donne la tranche d'âge du client.
- L'atribut R décrit la localité de résidence du client.
- L'atribut binaire E a la valeur oui si le client a un niveau d'études
supérieures.
- I (variable explicaive) dit si oui ou non le client a consulté son compte bancaire par internet
PRINCIPE ALGORITHMIQUE DES ARBRES DE DÉCISIONS
Procédure: construire-arbre(X)
SI tous les individus I appariennent à la même modalité de la variable décisionnelle
ALORS créer un nœud feuille portant le nom de cete classe : Décision
SINON
 choisir le meilleur atribut pour créer un nœud // l’atribut qui sépare le mieux
 Le test associé à ce nœud sépare X en des branches : Xd………Xg
- construire-arbre(Xd)
…
…
…
- construire-arbre(Xg)
FIN
Construcion de l’arbre: exemple
BUT : On souhaite trouver un arbre de décision qui soit capable de dire si un
client efectue des consultaions de ses comptes par Internet en connaissant les
valeurs des atributs M (montant), A (âge), R (résidence) et E (études) pour ce client.
À parir de ce tableau, il s'agit donc de construire un arbre de décision qui classier les
clients.
- La construcion est descendante
- Au début tous les individus sont regroupés
- Est-ce que les neoud iniial (3,5) c’est un nœud terminal ou est-ce qu’on peut construire
un test sur une variable qui permetra de mieux discriminer les individus?
- Quatre construcions possible, suivant les variables Montant(M), Age(A), Résidence(R),
Etudes(E)
Quesion : quel atribut choisir en premier ? En second ? ...
Construcion de l’arbre: exemple
Construcion de l'arbre
Il est toujours possible de trouver un arbre de décision minimisant le risque empirique
(= erreur sur l‘ échanillon) sur un jeu de données
Qu'est-ce qu'on peut faire ?
Construire un pett arbre de décision compatble avec le maximum de données.
Construcion :
Idée principale : Diviser récursivement et le plus eicacement possible l'échanillon
d'apprenissage par des tests déinis à l'aide des atributs jusqu'à obtenir
des sous-échanillons ne contenant (presque) que des exemples appartenant à une même
classe.
Méthodes de construcion Top-Down, gloutonnes et récursives.
On a besoin de trois operateurs permetant de :
Décider si un nœud est terminal
- Si un nœud n'est pas terminal, lui associer un test
- Si un nœud est terminal, lui afecter une classe
Répéter
Décider si le nœud courant est terminal
Si le nœud est terminal alors lui afecter une classe
Sinon sélecionner un test et créer autant de nœuds ils qu'il y a de réponses au test
Passer au nœud suivant (si il existe)
Jusqu'à obtenir un arbre de décision consistant
Les trois operateurs (en général)
Un nœud est terminal lorsque :
Soit (presque) tous les exemples correspondant à ce nœud sont dans la même classe,
Soit il n'y a plus d'atribut non uilisé dans la branche correspondante,
On atribue a un nœud terminal la classe majoritaire (en cas de conlit, on peut choisir la
classe majoritaire dans l‘ échanillon, ou en choisir une au hasard),
On sélecionne le test qui fait le plus progresser la classiicaion des données d'apprenissage.
Comment mesurer cete progression ?
CHOIX DU MEILLEUR ATTRIBUT POUR CRÉER UN NOEUD
 Il existe plusieurs méthodes pour choisir le meilleur atribut à placer dans un nœud :
-Algorithme C4.5, C5.0 ,ID3 uilise l’entropie de Shannon
- CHAID Chi-squared Automaic Interacion Detector
- CART Classiicaion and regression trees : Indice de GINI
Degré de pureté
On a besoin de comparer les diférents choix possibles
On introduit des fcts qui permetent de mesurer le degré de pureté dans les diférentes
classes
Propriétés des fcts:
Une telle foncion doit vériier la propriété suivante : elle doit prendre son
- minimum lorsque tous les exemples sont dans une même classe (le nœud est pur) et
- maximum lorsque les exemples sont équiréparis
Choisir un test
On introduit la foncion de gain :
On cherche donc à obtenir le gain maximum.
On souhaite obtenir des entropies les plus faibles
possibles car, d'après les propriétés de la foncion
entropie, si l'entropie est faible, la plupart des
éléments se trouvent dans une même classe.
l’indice de GINI est le meilleur moyen pour la construcion de l’arbre car il est le seul indice
qui répond aux quesions suivantes :
- Lorsque la variable est coninue, comment déterminer le seuil de coupe ?
- Comment déterminer la bonne taille de l’arbre ?
ALGORITHME DE CART
Parmi les plus performants et plus répandus
Accepte tout type de variables
Uilise le Critère de séparaion : Indice de Gini
Avec n : nombre de classes à prédire
i : fréquence de la classe dans le nœud
 Plus l’indice de Gini est bas, plus le nœud est pure
 En séparant 1 nœud en 2 nœuds ils on cherche la plus grande hausse de la pureté
 La variable la plus discriminante doit maximiser
IG(avant séparaion)-[IG(ils1)+……+IG(ilsn)]
EXEMPLE – INFORMATION QUALITATIVE
Une banque dispose des informaions suivantes sur un
ensemble de clients:
M : moyenne des montants sur le compte client.
A : tranche d'âge du client. R : localité de résidence du
client.
E : valeur oui si le client a un niveau d'études
supérieures.
I : classe oui correspond à un client qui efectue une
consultaion de ses comptes bancaires en uilisant
Internet
CALCUL DE L’INDICE DE GINI
 Indice de Gini avant séparaion au NIVEAU DE LA RACINE :
 Indice de Gini de la variable M (Moyenne des montants sur le compte client ):
 Indice de Gini de ils M = Faible :
 Indice de Gini de ils M = Moyen :
 Indice de Gini de ils M = Elevé :
Indice de Gini de M:
IG(avant séparaion)-[IG(M=Faible)+IG(M=Moyen)+IG(M=Elevé)]
= 0.46875 – [0.4444444 + 0.4444444 + 0] = -0.4201388
Indice de Gini de la variable A (Tranche d'âge du client):
Indice de Gini de A:
IG(avant séparaion)-[IG(A=Jeune)+IG(A=Moyen)+IG(A=Agé)]
= 0.46875 – [0 + 0.5 + 0]
= -0.03125
Indice de Gini de R:
IG(avant séparaion)-[IG(R=Village)+IG(R=Bourg)+IG(R=Ville)]
= 0.46875 – [0.4444444 + 0.5 + 0.4444444] = -0.9201388
Indice de Gini de E:
IG(avant séparaion)-[IG(E=Oui)+IG(E=Non)]=0.46875 – [0.48+0]
= -0.01125388
La variable la plus séparatrice est celle qui maximise :
IG(avant séparaion)-[IG(ils1)+IG(ils2)+……+IG(ilsn)]
CONSTRUCTION DE L’ARBRE
CALCUL DE L’INDICE DE GINI : E=OUI
 Indice de Gini avant séparaion avec E = Oui :
 Indice de Gini de la variable M avec E=Oui:
Indice de Gini de ils M = Faible & E = Oui :
 Indice de Gini de ils M = Moyen & E = Oui :
IG(M=Moyen & E=Oui) = 1 – ( (2/3)² + (1/3)² ) = 0.4444444
 Indice de Gini de ils M = Elevé & E = Oui:
IG(M=Elevé & E=Oui) = 1 – ( (0/1)² + (1/1)² ) = 0
Indice de Gini de M avec E=Oui :
IG(avant séparaion1)-[IG(M=Faible)+IG(M=Moyen)+IG(M=Elevé)]=
0.48 – [0 + 0.4444444 + 0] = 0.0355556
Indice de Gini de la variable A (Tranche d'âge du client) avec E=Oui :
 Indice de Gini de ils A = Jeune & E = Oui :
IG(A=Jeune & E = Oui) = 1 – ( (1/1)² + (0/1)² ) = 0
 Indice de Gini de ils A = Agé & E = Oui :
IG(A=Agé & E = Oui ) = 1 – ( (0/2)² + (2/2)² ) = 0
Indice de Gini de A avec E=Oui: IG(avant séparaion1)-[IG(A=Jeune)+IG(A=Moyen)
+IG(A=Agé)]
Indice de Gini de la variable R avec E=Oui :
 Indice de Gini de ils R= Village & E = Oui : IG(R= Village & E = Oui ) = 1 – ( (1/1)² + (0/1)² ) = 0
 Indice de Gini de ils R= Bourg & E = Oui : IG(R= Bourg & E = Oui ) = 1 – ( (1/1)² + (0/1)² ) = 0
Indice de Gini de ils R= Ville & E = Oui : IG(R=Ville & E = Oui ) = 1 – ( (1/3)² + (2/3)² ) = 0.4444444
Indice de Gini de R avec E=Oui: IG(avant séparaion1)-[IG(R=Village)+IG(R=Bourg)+IG(R=Ville)] =
0.48 – [0 + 0 + 0.4444444] = 0.035
L’ARBRE DE DÉCISION
Téléchargement