Ingnierie des connaissances: Rgles dAssociation dans les Tables Relationnelles JeanMarc Adamo - PowerPoint PPT Presentation

1 / 37
About This Presentation
Title:

Ingnierie des connaissances: Rgles dAssociation dans les Tables Relationnelles JeanMarc Adamo

Description:

et que sup(a c) sup(a b) et conf(a c) conf(a b) ... Pr(b) = 0.25 et Pr(b a) = 0.50, donc la probabilit de b augmente (0.25 0.50) lorsqu'on conna t a. ... – PowerPoint PPT presentation

Number of Views:25
Avg rating:3.0/5.0
Slides: 38
Provided by: jeanmar92
Category:

less

Transcript and Presenter's Notes

Title: Ingnierie des connaissances: Rgles dAssociation dans les Tables Relationnelles JeanMarc Adamo


1
Ingénierie des connaissances Règles
dAssociation dans les Tables Relationnelles-2-
Jean-Marc Adamo
2
Degrés dapproximation dune règle dassociation
(autres mesures)
Observation 1 Fixons ? 25 et ? 50, On
note que a ? b et a ? c sont des règles
??-valides et que sup(a ? c) gt sup(a ? b) et
conf(a ? c) gt conf(a ? b). Pourtant Pr(c)
0.875 et Pr(c?a) 0.75, donc la probabilité de c
diminue (0.875 ? 0.750) lorsquon connaît a
alors que Pr(b) 0.25 et
Pr(b?a) 0.50, donc la probabilité de b
augmente (0.25 ? 0.50) lorsquon connaît a. On
en conclut que, du point de vue statistique,
conf(s ? u) traduit mal lidée de linfluence
exercée de s vers u qui est naturellement
entendue dans la règle s ? u.
3
Degrés dapproximation dune règle dassociation
(autres mesures)
Observation 1 (suite) Deux événements s et u
sont dits corrélés positivement si
Pr(u ? s) / Pr(u) gt 1 (ex. a et b) corrélés
négativement si Pr(u ? s) /
Pr(u) lt 1 (ex. a et c) non corrélés (donc
indépendants) si Pr(u ? s) / Pr(u) 1 (ex. a et
d) Les règles s ? u qui sont ??-valides mais
dans lesquelles u et s sont corrélés
négativement ou sont indépendants sont dites
douteuses (ex. a ? c). On note que a ? c domine
a ? b pour de simples raisons arithmétiques et
non parce que la relation entre a et c est plus
forte que la relation entre a et b lensemble
support de c est grand en comparaison de ceux de
a et b, ceci gonfle le numérateur de conf(a ? c)
dune manière qui est sans rapport avec
lintensité a ? c. On note quil ny pas moyen
de fixer ? et ? de telle sorte que la règle
douteuse a ? c disparaisse sans que la règle a ?
b disparaisse également (!!!).
4
Degrés dapproximation dune règle dassociation
(autres mesures)
Observation 2 Gardons ? 25 et ? 50, on
note que a ? b et a ? ?b sont des règles
??-valides et que ?b est négativement corrélé à
a, rendant douteuse la règle a ? ?b. Quelle que
soit la façon de fixer ? et ?, il ny pas moyen
déviter la génération Simultanée des règles
contradictoires a ? b et a ? ?b ou bien aucune
des deux règles nest générée ou bien elles le
sont simultanément.
5
Degrés dapproximation dune règle dassociation
(autres mesures)
Observation 3 Les attributs a et d ne sont pas
corrélés (donc ils sont indépendants), autrement
dit, il nexiste aucune relation statistiquement
significative entre a et d. Par suite, la
relation a ? d est générée bien quelle soit
douteuse pour ? 25 et ? 50. Nous
pourrions lever les seuils ? et ? pour la faire
disparaître mais nous ferions disparaître du
même coup a ? b qui nest pas douteuse et ne doit
pas disparaître.
6
Degrés dapproximation dune règle dassociation
(autres mesures)
1ère mesure alternative lift Mesure lintensité
de la corrélation entre s et u lift(s, u)
Pr(u ? s) / Pr(u). Tempère linfluence de la
taille du support du conséquent en normalisant
conf(s ? u) par rapport à cette taille. Noter
que lift(s, u) Pr(s ? u) / (Pr(s) ? Pr(u)).
7
Degrés dapproximation dune règle dassociation
(autres mesures)
2ème mesure alternative conv (conviction) On
interprète lintensité de la règle dassociation
comme lintensité de linfluence exercée par
lévénement s sur lévénement u, donc comme
lintensité de s implique u. Or, s implique u
? ?s ? u ? ?(s ? ?u), donc intensité de s
implique u intensité de ?(s ? ?u). Si on
décide de représenter lintensité du
complémentaire dune proposition par linverse
arithmétique de lintensité de cette
proposition intensité de s implique u
1 / intensité de (s ? ?u). Lintensité de (s ?
?u) peut être mesurée par le rapport Pr(s
? ?u s et u non indépendant) / Pr(s ? ?u s et
u indépendant) Pr(s ? ?u) / Pr(s)
Pr(?u). et en inversant pour obtenir lintensité
de s implique u conv(s ? u) Pr(s)
Pr(?u) / Pr(s ? ?u) Pr(s) Pr(?u) /
(Pr(s) Pr(s ? u) ) (1 ? Pr(u)) / (1
? (Pr(s ? u)) / Pr(s))).
8
Degrés dapproximation dune règle dassociation
(autres mesures)
Autre expression (différente) de la mesure de
conviction conv' (conviction) On interprète
lintensité de la règle dassociation comme
lintensité de linfluence exercée par
lévénement s sur lévénement u, donc comme
lintensité de s implique u. Lintensité de s
implique u peut être mesurée par le rapport
conv'(s ? u) Pr(s implique u s et u non
indépendant) / Pr(s implique u s et u
indépendant) (1
? Pr(s) Pr(s ? u)) / (1 ? Pr(s) Pr(s)
Pr(u)) (voir p. 10, partie 1)
(1 ? Pr(s)(1 ? (Pr(s ? u) / Pr(s)))) / (1 ?
Pr(s)(1 ? Pr(u))) Examples
9
Degrés dapproximation dune règle dassociation
(autres mesures)
  • Propriétés 16
  • 0. conv(s ? u) (1 ? sup(u)) / (1 ? conf(s ?
    u)).
  • 0 lt conv(s ? u) lt ?.
  • s and u are statistically independent if and only
    if conv(s ? u) 1.
  • 0 lt conv(s ? u) lt 1 if and only if Pr(u ? s) lt
    Pr(u) (i.e., u is negatively correlated with s).
  • 1 lt conv(s ? u) lt ? if and only if Pr(u ? s) gt
    Pr(u) (i.e., u is positively correlated with s).
  • lift(s, u) conf(s ? u) / sup(u).
  • conv(s ? u) (1 ? sup(u)) / (1 ? lift(s, u)
    sup(u)).

conv et lift apparaissent comme des mesures
meilleures que conf car elles permettent déviter
la génération de règles douteuses. conv est
préférable a lift car - conv est une mesure
directionnelle conv(s ? u) ? conv(u ?
s) alors que lift(s ? u) lift(u ?
s), - conv a un pouvoir discriminant supérieur
à lift. conv présente linconvénient de ne pas
être normalisée (un nombre entre 0 et 1). On
peut écrire conv' (1 ? sup(s)(1 ? conf(s ?
u))) / (1 ? sup(s)(1 ? sup(u))). conv' possède
des propriétés 1. ? 4. semblables à celles de
conv (voir les pages suivantes).
10
Degrés dapproximation dune règle dassociation
(autres mesures)
Valeurs singulières de la mesure conv conv(s ?
u) (1 ? Pr(u)) / (1 ? Pr(us)) (1 ?
Pr(u)) / (1 ? (Pr(s ? u) / Pr(s))) Discussion si
s est un évènement impossible Pr(s) 0, s ?
u est également impossible, par suite Pr(s ? u)
0 il en résulte que Pr(s ? u) / Pr(s) 0/0
? conv(s ? u) ? sinon Pr(s) gt 0,
si u est un évènement impossible Pr(u)
0, s ? u est également impossible, par suite Pr(s
? u) 0 conv(s ? u) 1 sinon
s et u sont deux évènements possibles Pr(s) gt
0, Pr(u) gt 0 et Pr(s ? u) gt 0 si Pr(s ?
u) Pr(s) conv(s ? u) (1 ? Pr(u))
/ (1 ? 1) si u est un évènement
certain Pr(u)) 1
conv(s ? u) 0/0 ? sinon
Pr(u)) lt 1 conv(s ? u) (1
? Pr(u)) / 0 ? ? sinon
conv(s ? u) (1 ? Pr(u)) / (1 ? (Pr(s ? u)) /
Pr(s)))
11
Degrés dapproximation dune règle dassociation
(autres mesures)
Valeurs singulières de la mesure conv' conv'(s ?
u) (1 ? Pr(s)(1 ? Pr(us)) / (1 ? Pr(s)(1 ?
Pr(u))) (1 ? Pr(s)(1 ? (Pr(s ? u) /
Pr(s)))) / (1 ? Pr(s)(1 ? Pr(u))) (1
? Pr(s) Pr(s ? u)) / (1 ? Pr(s) Pr(s)
Pr(u)) Discussion Le dénominateur de conv'(s ?
u) ne peut sannuler que si s est un évènement
certain et u un évènement impossible si s est
un évènement certain et u un évènement
impossible Pr(s) 1, Pr(u) 0, s ? u est
impossible, par suite Pr(s ? u) 0
conv'(s ? u) (1 1 0) / (1 1 0) 0/0
? sinon conv'(s ? u) (1 ? Pr(s) Pr(s ? u)) /
(1 ? Pr(s) Pr(s) Pr(u))
12
Degrés dapproximation dune règle dassociation
(autres mesures)
Comparaison des mesures conv et conv
  • Deux surfaces générées par MatLab qui
    représentent respectivement les distributions des
    valeurs de conv et conv' pour toutes les paires
    de combinaisons binaires de taille 4 (16?16
    combinaisons).
  • La distribution des valeurs de conv nest pas
    bornée. On observe un nombres importants de
    jaillissements infinis de la surface selon
    certaines directions (limité à la valeur 20 ici).
  • La distribution des valeurs de conv' est bornée.
    La valeur maximale déterminée expérimentalement
    avec MatLab est 1.33.
  • En fait, labsence de jaillisements infinis
    permet à conv' de rendre compte de finesses qui
    échappent à conv (voir page suivante).

13
Degrés dapproximation dune règle dassociation
(autres mesures)
Comparaison des mesures conv et conv'
(suite) Considérons les évènements s u1 u2
u3 u4 0 0 0 0 1 0 0 0 0 1 0
0 0 1 1 0 0 0 1 1 0 0 1
1 1 0 0 1 1 1 1 1 1 1 1 1
1 1 1 1 0 1 1 1 1 0 1 1
1 1 On a conv(s ? u1) conv(s ? u2)
conv(s ? u3) ? et conv(s ? u4) ? On
peut calculer conv'(s ? u1) (1-(2/10)(1-1))/(1-(
2/10)(1-4/10)) 100/88, conv'(s ? u2)
(1-(2/10)(1-1))/(1-(2/10)(1-6/10))
100/92, conv'(s ? u3) (1-(2/10)(1-1))/(1-(2/10)(1
-8/10)) 100/96, conv'(s ? u4) 1.
  • Discussion
  • On note que
  • conv'(s ? u1)
  • gt conv'(s ? u2)
  • gt conv'(s ? u3)
  • gt conv'(s ? u4) 1
  • Autrement dit, pour s lt u, plus support(s) est
    petit par rapport à support(u) plus lintensité
    de linfluence exercée de s sur u est petite en
    tendant vers 1.
  • Ce qui saccorde parfaitement avec lintuition.
  • En particulier, lorsque u représente lévènement
    certain, aucun autre évènement nest susceptible
    davoir une quelconque influence sur son
    occurence. Cest ce quexprime conv et nexprime
    pas conv.

14
Génération des règles dassociation ?k-valides
  • On note k le niveau de conviction k ? 1, ?.
  • Question lalgorithme de génération des règles
    dassociation ??-valides peut-il être utilisé
  • sans aucun changement pour les
    règles dassociation ?k-valides?
  • Réponse non!
  • lalgorithme de génération des règles
    dassociation ??-valides repose sur
  • Proposition 11 (rappel)
  • Soient s, u et s' trois séquences (cass) telles
    que u ? s ?, s' ? s (donc s' ? u ?).
  • On suppose que sup(s ? u) ? ?.
  • Si s ? u nest pas ??-valide alors (s
    s') ? (u s') nest pas ??-valide.
  • (2) Soient s, u et s' trois séquences (cass)
    telles que u ? s ?, u' ? u (donc u' ? s ?).
  • On suppose que sup(s ? u) ? ?.
  • Si s ? u est ??-valide alors (s u') ?
    (u - u') est ??-valide.

15
Génération des règles dassociation ?k-valides
Pour contourner la difficulté, nous allons
construire un algorithme (1) qui, pour chaque
séquence ?-fréquente v, génère les règles
comme pour conf - en partant de v ? ?
et - en transférant les attributs, lun après
lautre, de lantécédent vers le
conséquent. (2) qui sappuie sur conf pour
décider sil faut continuer ou arrêter la
génération de nouvelles règles (3) qui filtre
chaque nouvelle règle générée pour naccepter
que les règles vérifiant la condition sur conv
qui permet de garantir leur
?k-validité. Il faudra garantir que la décision
prise sur conf pour continuer ou arrêter la
génération de nouvelles règles soit bien fondée,
en ce sens quelle ne doit pas conduire à
manquer la génération daucune règle ?k-valide.
16
Génération des règles dassociation ?k-valides
Procédure 17 Soit k le seuil de conviction
souhaité. Pour chaque séquence ?-fréquente v
identifiée à létape 1 de Procédure 1 Calculer
le seuil de confiance ?(v, k) (k ? 1 sup(v))
/ k) C1 ensemble des attributs composants
v Construire les règles s ? a telles que s
v a, a ? C1 Tester la ??(v, k)-validité de
chaque règle s ? a en testant
conf(s ? a) ?(v) / ?(s) gt (k ? 1 sup(v))
/ k) Filtrer les règles qui ne satisfont pas
conv(s ? a) (1 ? sup(a)) / (1 ? conf(s ? a)) ?
k Retirer de C1 tout attribut a produisant
une règle non ??(v, k)-valide Marquer dans C1
tout attribut a associé une règle écartée par
filtrage i 2 while(Ci 1 gt 1 i lt
v 1) Former Ci par jointure des
séquences de Ci 1 if(Ci 0) break
Construire toutes les règles s ? u telles que
s v u, u ? Ci Tester la ??(v,
k)-validité de chaque règle s ? u en testant
conf(s ? u) ?(v) / ?(s)
gt (k ? 1 sup(v)) / k) Filtrer les
règles qui ne satisfont pas conv(s ? u) (1 ?
sup(u)) / (1 ? conf(s ? u)) ? k Retirer de
Ci toute séquence u produisant une règle non
??(v, k)-valide Marquer dans Ci toute
séquence u associée une règle écartée par
filtrage i i 1 Dans tout Ci,
retirer tout attribut a (si i1) ou séquence u
(si igt1) marqué Former les règles dont les
conséquents figurent dans les Ci (correspondent
aux attributs non retirés dans les Ci)
Chaque règle associée à v est entièrement
définie par son conséquent le fait davoir
retiré les conséquents marqués permettra déviter
la génération des règles non ?k-valides.
17
Génération des règles dassociation ?k-valides
Dans Procédure 17, on observe que la génération
dune lignée de règles dérivée de v est arrêtée
dès que lon rencontre une règle s ? u avec s v
u, telle que ?(v) / ?(s) lt ?(v, k) (k
? 1 sup(v)) / k) Question ce critère
darrêt des lignées de règles est-il bien fondé?
Réponse il faut montrer que, sil avait
poursuivi la génération de la lignée au delà
de s ? u lalgorithme naurait produit que des
règles s ? u' avec s v u', u' gt u ne
satisfaisant pas la condition de ?k-validité,
cest-à-dire telles que conv(s ? u') lt
k. Sachant que nous savons que conf(s ? u') lt (k
? 1 sup(v)) / k pour tout u' tel que s v
u', et u' gt u, la réponse à cette question est
apportée par la Proposition (démonstration page
suivante) Proposition 18 Soit v une séquence
?-fréquente, u' lt v. Si conf(v u' ? u') lt (k ?
1 sup(v)) / k alors conv(v u' ? u') lt k.
18
Génération des règles dassociation ?k-valides
Proposition 18 Soient v une séquence ?-fréquente
et u' lt v. Si conf(v u' ? u') lt (k ? 1
sup(v)) / k alors conv(v u' ? u') lt
k. Preuve conv(v u' ? u') (1 ? sup(u')) / (1
? conf(v u' ? u')), Si conv(v u' ? u') ? k
alors (1 ? sup(u')) / (1 ? conf(v u' ? u')) ?
k. Si (1 ? sup(u')) / (1 ?
conf(v u' ? u')) ? k, alors (1 ?
sup(u')) ? k (1 ? conf(v u' ? u')) Cest-à-dire
conf(v u' ? u')) ? (k 1 sup(u')) /
k Puisque sup(u') ? sup(v), (k ? 1 sup(u')) /
k ? (k ? 1 sup(v)) / k et conf (v u' ? u') ?
(k ? 1 sup(v)) / k On obtient ainsi
limplication Si conv(v u' ? u') ? k alors conf
(v u' ? u') ? (k ? 1 sup(v)) / k En
prenant limplication duale Si conf (v u' ? u')
lt (k ? 1 sup(v)) / k alors conv(v u' ? u')
lt k
19
Génération des règles dassociation ?k-valides
Filtrage Dans Procédure 17 la condition de
filtrage est exprimée sous la forme conv(s ?
u) ? k Pour des raisons defficacité de calcul
il est avantageux de remplacer la condition de
filtrage par une autre qui lui est équivalente.
On sait que conv(s ? u) (1 ? sup(u)) / (1 ?
conf(s ? u)) La condition de filtrage
devient (1 ? sup(u)) / (1 ? conf(s ? u)) ?
k Cest-à-dire conf(s ? u)) ? (k 1 sup(u))
/ k
20
Génération de règles dassociation à conséquent
fixe
Hypothèse On sintéresse ici aux règles de la
forme s ? C, où s représente une séquence
et C est une séquence fixée à priori. Principe
de construction La construction de lalgorithme
repose sur deux propositions (page
suivante). Ces propositions permettent de
prédire en nimporte quel point du processus
dénumération (i.e., la règle s ? C en cours
dexamen) la valeur maximale des indices de
confiance ou de conviction attachés à toutes les
règles dérivées de s ? C. La prédiction
effectuée au point dexamen de toute règle s ? C
permet de décider sil est utile ou non de
sintéresser aux règles dérivées de cette règle,
puisquon sait à priori si leurs indices
dépasseront ou non le seuil fixé.
21
Génération de règles dassociation à conséquent
fixe
Définition 19 Soient s, s?, and C trois séquences
telles que s ? C ? et s? ? C ?. La règle s?
? C est dite dérivable de s ? C si s? vérifie les
conditions s ? s? ? s ? tail(s) , où tail(s)
a ? a est un attribut tel que a gt
last(s). Proposition 20 Soit bconf(s, C)
sup(s ? C) / (sup(s ? C) sup(s ? tail(s) ?
?C)). Pour toute règle s? ? C dérivable de s
? C, le ratio bconf(s, C) est une borne
supérieure pour lindice de confiance
cest-à-dire, conf(s? ? C) ? bconf(s, C).
Proposition 21 Soient s et C deux séquences et
soit bconv(s, C) (1 sup(C)) / (1 ? bconf(s,
C)), où bconf(s, C) est définie plus haut.
Pour toute règle s? ? C dérivable de s ? C, le
ratio bconv(s, C) est une borne supérieure pour
lindice de conviction cest-à-dire, conv(s??C)
? bconv(s, C). Proposition 21' Soient s et C
deux séquences et soit bconv'(s, C) (1
sup(s)(1 bconf(s, C))) / (1 ? sup(s)(1
sup(C))), où bconf(s, C) est définie plus haut.
Pour toute règle s? ? C dérivable de s ? C, le
ratio bconv'(s, C) est une borne supérieure pour
lindice de conviction cest-à-dire, conv'(s??C)
? bconv'(s, C).
"gt" est lordre lexicographique sur A
22
Génération de règles dassociation à conséquent
fixe
  • On note s.a ? C la règle en cours dexamen.
  • Cas possibles (discutés pour conf mais également
    valides pour conv et conv')
  • conf(s.a ? C) ? ? et bconf(s.a, C) ? ?
  • conf(s.a ? C) ? ? et bconf(s.a, C) lt ?
  • conf(s.a ? C) lt ? et bconf(s.a, C) ? ?
  • conf(s.a ? C) lt ? et bconf(s.a, C) lt ?

23
Génération de règles dassociation à conséquent
fixe
  • 1er cas (discuté pour conf mais également valide
    pour conv et conv')
  • conf(s.a ? C) ? ? et bconf(s.a, C) ? ?
  • Nous savons par Proposition 20 que conf(s.a? ?
    C) ? bconf(s.a, C).
  • Par conséquent, le positionnement relatif des
    valeurs ?, bconf(s.a, C),
  • conf(s.a ? C) et conf(s.a? ? C) peut être
    illustré par le schéma
  • Conclusion

24
Génération de règles dassociation à conséquent
fixe
  • 2ème cas (discuté pour conf mais également valide
    pour conv et conv')
  • conf(s.a ? C) ? ? et bconf(s.a, C) lt ?
  • avec conf(s.a ? C) ? bconf(s.a, C)
  • (Proposition 20)
  • Conclusion

25
Génération de règles dassociation à conséquent
fixe
3ème cas (discuté pour conf mais également valide
pour conv et conv') conf(s.a ? C) lt
? et bconf(s.a, C) ? ?
(conf(s.a ? C) et conf(s.a? ? C) sont dans un
ordre quelconque Sils sont simultanément
inférieurs à ?)
  • s.a ? C ne satisfait pas le seuil de confiance ?
    et nous ne savons pas à priori si les règles s.a?
    ? C dérivées de s.a ? C satisferont le seuil de
    confiance.
  • Conclusion
  • s.a ? C doit être écartée dans lensemble
    des règles ??-valides,
  • mais
  • on ne peut rien affirmer pour ce qui
    concerne les règles s.a? ? C dérivées
  • de s.a ? C qui peuvent ou non se révéler
    ??-valides.
  • Il faut donc les générer pour vérifier.
  • Par conséquent, toutes les règles
    ?-fréquentes s.a.b ? C qui peuvent être
  • dérivées de s.a ? C au niveau suivant
    doivent lêtre.

26
Génération de règles dassociation à conséquent
fixe
4ème cas (discuté pour conf mais également valide
pour conv et conv') conf(s.a ? C) lt ? et
bconf(s.a, C) lt ?
(conf(s.a ? C) et conf(s.a? ? C) sont dans un
ordre quelconque)
  • s.a ? C ne satisfait pas le seuil de confiance ?
    et nous savons à priori que les règles s.a? ? C
    dérivées de s.a ? C ne satisferont pas
    satisferont le seuil de confiance.
  • Conclusion
  • - s.a ? C doit être écarté de lensemble des
    règles ??-valides,
  • et
  • - aucune des règles s.a.b ? C dérivées de s.a
    ? C au niveau suivant
  • ne doit être générée.

27
Génération de règles dassociation à conséquent
fixe
Procédure 22 Stack L SetofCasRecs F(1, ?)
make a CasRec with each attribute in A
passing the check-frequency test record it in
F(1, ?) L1 F(1, ?) for(int i 1 Li
! i) for all F(i, s) in Li for
all cr in F(i, s) //the cas in cr is of
the form s.a for some attribute a in A
float cr.bconf compute_bconf(cr, F(i, s))
if(cr.bconf gt ?) for all cr' in
F(i, s) with rank greater than rank of cr
CasRec cr join(cr, cr')
if(cr ! none)
record_in_L(i 1, cr)
delete member ? in cr if(cr.conf lt ?)
delete cr with void
record_in_L(int i, CasRec cr) let s be the
cas member in cr if(F(i, s ? last(s)) has
not already been created) create F(i, s
? last(s)) new empty SetofCasRecs(i, s ?
last(s)) Li Li ? F(i, s ?
last(s)) F(i, s ? last(s)) F(i, s ?
last(s)) ? cr
mconf et flag initialisés ici, pour être
utilisés la procédure délagage
CasRec join(CasRec cr_a, CasRec cr_b) let
s.a and s.b be the cass in cr_a and cr_b,
respectively Set ? ?(s.a) ? ?(s.b)
float sup ? ? ?(C) / D float conf ?
? ?(C) / ? if(check_frequency(sup))
create cr new CasRec(s.a.b, ?, sup, conf, 0,
KEEP) return cr return
none float compute_bconf(CasRec cr, F_set
F) let s.a be the cas in cr Set ?_tail
cr.? for all cr' in F with rank greater
than rank of cr let s.b be the cas in
cr' ?_tail ?_tail ? cr'.? //this
computes ?_tail ?(s.a) ? ?b gt a ?(s.b)
?_tail ?_tail ? (?_tail ? ?(C))
//this is ?(s.a ? tail(s.a) ? ?C) Set ?
cr.? ? ?(C) float bconf ? / (?
?_tail) return bconf
Note un procédure identique peut être écrite
pour conv et conv'.
28
Génération de règles dassociation à conséquent
fixe
Preuve de Proposition 20 Soit bconf(s, C) sup(s
? C) / (sup(s ? C) sup(s ? tail(s) ? ?C)).
Pour toute règle s? ? C dérivable de s ? C, le
ratio bconf(s, C) est une borne supérieure pour
lindice de confiance cest-à-dire, conf(s? ? C)
? bconf(s, C). Preuve De la définition de
lindice de confiance 1. conf(s??C) ?(s? ?
C) / ?(s?)
?(s? ? C) / (?(s? ? C) (?(s?) ? ?(s? ?
C))). On observe que lexpression de conf(s? ?
C) est une fonction de la forme x / (x y),
avec x ?(s? ? C) et y (?(s?) ? ?(s? ?
C)). On peut montrer que cette fonction est
monotone croissante en x cest-à-dire x ? x' si
et seulement si x / (x y) ? x' / (x' y), et
monotone décroissante en y, cest-à-dire y ? y'
si et seulement si x / (x y) ? x / (x
y'). Puisque ? est monotone décroissante et
conf(s? ? C) is monotone croissante en x ?(s?
? C) 2. conf(s? ? C) ? ?(s ? C) / (?(s ?
C) (?(s?) ? ?(s? ? C))), pour tout s? gt
s. Suposons que s s? s ? tail(s), 3. s? ? ?C
? s ? tail(s) ? ?C 4. ?(s? ? ?C) ? ?(s ? tail(s)
? ?C). En développant ?(s? ? ?C) on
obtient 5. ?(s? ? ?C) ?(s?) ? ?(?C)
?(s?) ? (?(?)
? ?(C))
?(s?) ? (?(s?) ? ?(C))
?(s?) ? ?(s? ? C). En
combinant (4) et (5) 6. ?(s?) ? ?(s? ? C) ? ?(s
? tail(s) ? ?C).
Puisque ?(s?) ? ?(s? ? C) on obtient, 7. ?(s?)
? ?(s? ? C) ?(s?) ? ?(s? ? C) ? ?(s ?
tail(s) ? ?C. On termine la preuve en combinant
les lignes (7) et (2) puis en utilisant le fait
que conf(s??C) est monotone décroissante en y
(?(s?) ? ?(s? ? C)). On note que cette
preuve pourrait être également faite pour s,
doù on conclut que conf(s ? C) ? bconf(s, C)
29
Génération de règles dassociation à conséquent
fixe
Preuve de Proposition 21 Soient s and C deux
séquences et soit bconv(s, C) (1 sup(C)) / (1
? bconf(s, C)), où bconf(s, C) est définie plus
haut. Pour toute règle s? ? C dérivable de s ?
C, le ratio bconv(s, C) est une borne supérieure
pour lindice de conviction cest-à-dire,
conv(s??C) ? bconv(s, C). Preuve On sait de la
proposition précédente que pour toute règle s?
? C dérivable de s ? C, on a conf(s? ? C) ?
bconf(s, C). Dautre part, soit f(x) cte / (1
x), avec cte ? 0 il es facile de sassurer que
f(x) est monotone (i.e., x ? x' ssi f(x) ?
f(x')). Il en résulte que conv(s? ? C) (1 ?
sup(C)) / (1 ? conf(s? ? C)) ? (1 ? sup(C))
/ (1 ? bconf(s, C)) bconv(s, C). Note.
On peut faire une preuve identique pour
Proposition 21'
30
Élagage des ensembles de règles dassociation à
conséquent fixe
  • Objectif Elimination des règles redondantes.
  • Définition 23
  • On mesure la quantité damélioration de la
    qualité dune règle résultant du développement de
    son antécédent par
  • ??-imp(s ? C) minconf(s ? C) ? conf(s' ? C) ?
    s' lt s et s' ? C est ??-valide.
  • ??-imp(s ? C) est indéfinie si s' ? s' lt s and
    s' ? C est ??-valide .
  • ou
  • ?k-imp(s ? C) minconv(s ? C) ? conv(s' ? C) ?
    s' lt s et s' ? C est ?k-valide.
  • ?k-imp(s ? C) est indéfinie si s' ? s' lt s and
    s' ? C est ?k-valide .
  • Discussion 24
  • Si la ?(?/k)-imp(s ? C) gt 0 (amélioration) alors
    il nexiste aucune façon de
  • simplifier lantécédent de la règle s ? u afin
    dobtenir une règle plus simple
  • qui soit de meilleure qualité (meilleure
    confiance ou conviction).
  • Conséquence la règle s ? C doit être
    conservée.
  • Si la ?(?/k)-imp(s ? C) ? 0 (dégradation) alors
    il existe au moins une façon de

amélioration
dégradation
31
Élagage des ensembles de règles dassociation à
conséquent fixe
Rappel des résultats de Discussion 24
  • si la ?(?/k)-imp(s ? C) gt 0
  • ? amélioration observée pour s ? u
  • ? on garde s ? u
  • si la ?(?/k)-imp(s ? C) ? 0
  • ? dégradation observée pour s ? u
  • ? on supprime s ? u

Généralisation 25
  • on introduit un seuil ? ? 0 en dessous duquel
    on juge une quantité
  • damélioration insuffisante pour justifier la
    conservation dune règle.
  • si ?(?/k)-imp(s ? C) gt ?
  • ? amélioration suffisante observée pour s ? u
  • ? on garde s ? u
  • si ?(?/k)-imp(s ? C) ? ?
  • ? amélioration insuffisante observée pour s ? u
  • ? on supprime s ? u

32
Élagage des ensembles de règles dassociation à
conséquent fixe
  • La procédure délagage repose sur les deux
    propositions suivantes
  • Expression de la quantité damélioration/dégradati
    on pour s ? C
  • Proposition 26
  • Soient s, C deux cass et soient
  • mconf(s, C) maxconf(s'?C) ? s' lt s
    et s' ? C est ??-valide et
  • mconv(s, C) maxconv(s'?C) ? s' lt s
    et s' ? C est ?k-valide.
  • Les deux égalités suivantes sont vraies.
  • ??-imp(s ? C) conf(s ? C) ? mconf(s, C).
  • ?k-imp(s ? C) conv(s ? C) ? mconv(s, C).
  • Borne sur lamélioration/dégradation applicable
    aux règles dérivées de s ? C
  • Proposition 27
  • Soient s et C deux cass,
  • bconf(s, C) sup(s ? C) / (sup(s ?
    C) sup(s ? tail(s) ? ?C)),

33
Élagage des ensembles de règles dassociation à
conséquent fixe
Prise en compte des propositions 26 et 27 dans la
reformulation de Généralisation 27 et de son
élargissement à la prédiction pour les règles
dérivées (discutée pour conf mais également
valide pour conv)
  • on introduit un seuil ? en dessous duquel une
    quantité damélioration
  • est jugée insuffisante pour justifier la
    conservation dune règle (donc
  • en dessous duquel on supprime la règle).
  • on calcule
  • mconf(s, C) maxconf(s'?C) ? s' lt s et s' ?
    C est ??-valid
  • ??-imp(s ? C) conf(s ? C) ? mconf(s, C),
  • bconf(s, C) sup(s ? C) / (sup(s ? C) sup(s
    ? tail(s) ? ?C)),
  • Elagage immédiat
  • si conf(s ? C) ? mconf(s, C) gt ?
  • ? ??-imp(s ? C) gt ?
  • ? amélioration suffisante observée pour s ? u
  • ? on garde s ? u
  • si conf(s ? C) ? mconf(s, C) ? ?
  • ? ??-imp(s ? C) ? ?
  • ? amélioration insuffisante observée pour s ? u
  • Elagage en avant ? on supprime s ? u
  • si bconf(s, C) ? maxmconf(s, C), conf(s ? C) ?
    ?
  • ? ??-imp(s? ? C) ? bconf(s, C) ?
    maxmconf(s, C), conf(s ? C) ? ?

34
Élagage des ensembles de règles dassociation à
conséquent fixe
Procédure délagage Principe (décrit pour conf,
également valide pour conv) On se donne un seuil
? ? 0 (en dessous duquel on élague). Pour toute
règle s ? C, - calculer mconf(s, C)
maxconf(s'?C) ? s' lt s et s' ? C est
??-valide, - si ??-imp(s ? C) conf(s ? C) ?
mconf(s, C) ? ? marquer s ? C comme
supprimée, - si bconf(s, C) ? maxmconf(s,C),
conf(s ? C) ? ? alors ??-imp(s? ? C) ?
? marquer s? ? C comme supprimée pour tout cas
s? gt s.
35
Élagage des ensembles de règles dassociation à
conséquent fixe
Procédure 28 (délagage) for(int i 2 Li !
i) // No rule in L1 is pruned for
all F-set in Li for all cr in F-set
let s be the cas in cr if(i gt 1)
for all s' in S(s, i ? 1)
let cr' be the CasRec attached to s'
cr.mconf maxcr.mconf, maxcr'.conf,
cr'.mconf
if (cr.flag ! PRUNE) if(cr.conf ? cr.mconf
lt ?) //first proposition
cr.flag PRUNE if(cr.bconf ?
maxcr.mconf, cr.conf lt ?) //second
Proposition for all s? such that s? ? C
is derivable from s ? C let cr? be
the CasRec attached to s? cr?.flag
PRUNE
Notes - le champ mconf de tout CasRec est
initialisé à 0 dans la procédure de génération,
il est mise à jour niveau après niveau. -
le champs flag de tout CasRec est initialisé à la
valeur KEEP.
36
Élagage des ensembles de règles dassociation à
conséquent fixe
  • Preuve de Proposition 26
  • Soient s, C deux cass,
  • mconf(s, C) maxconf(s'?C) ? s' lt s
    et s' ? C est ??-valide et
  • mconv(s, C) maxconv(s'?C) ? s' lt s
    et s' ? C est ?k-valide.
  • Les deux égalités suivantes sont vraies.
  • ??-imp(s ? C) conf(s ? C) ? mconf(s, C).
  • ?k-imp(s ? C) conv(s ? C) ? mconv(s, C).
  • Preuve (idem pour conv et conv')
  • Par définition
  • ??-imp(s ? C)
  • minconf(s ? C) ? conf(s' ? C) ? s' lt s et s' ?
    u est ??-valide
  • conf(s ? C) ? max conf(s' ? C) ? s' lt s et s'
    ? u est ??-valide
  • conf(s ? C) ? mconf(s, C).

37
Élagage des ensembles de règles dassociation à
conséquent fixe
  • Preuve de Proposition 27
  • Soient s et C deux cass,
  • bconf(s, C) sup(s ? C) / (sup(s ?
    C) sup(s ? tail(s) ? ?C)),
  • mconf(s, C) maxconf(s'?C) ? s' lt s
    et s' ? C et ??-valide et
  • mconv(s, C) maxconv(s'?C) ? s' lt s
    et s' ? C et ?k-valide.
  • Pour toute règle s? ? C dérivable de s ? C, les
    deux inégalités suivantes sont vraies.
  • ??-imp(s? ? C) ? bconf(s, C) ? maxmconf(s, C),
    conf(s ? C),
  • ?k-imp(s? ? C) ? bconv(s, C) ? maxmconv(s, C),
    conv(s ? C),
  • Preuve (idem pour conv et conv')
  • Soit s? tel que s? gt s. De la definition de
    ??-imp
  • 1. ??-imp(s? ? C) minconf(s? ? C) ? conf(s' ?
    C) ? s' lt s? et s' ? C est ??-valid
  • conf(s? ? C) ?
    maxconf(s' ? C) ? s' lt s? et s' ? C est
    ??-valid.
  • On sait que
  • 2. conf(s? ? C) ? bconf(s, C).
  • Dautre part,
  • maxconf(s' ? C) ? s' lt s? et s' ? C est
    ??-valide
  • maxmaxconf(s' ? C) ? s' ? s et s'
    ? C est ??-valide,
Write a Comment
User Comments (0)
About PowerShow.com