Rechercher sur le site:
 
Web Memoire Online
Consulter les autres mémoires    Publier un mémoire    Une page au hasard

Extraction des bases génériques informatives de règles sans calcul de fermetures


par Tarek Hamrouni
Faculté des Sciences de Tunis, Université Tunis El Manar (Tunisie)
Traductions: Original: fr Source:

précédent sommaire suivant

3.4 Preuves theoriques

Dans cette section, nous allons montrer la validite de l'algorithme PRINCE. Ensuite, nous allons prouver la terminaison et la completude de l'algorithme PRINCE.

Proposition 5 L'algorithme PRINCE est valide. En effet, il permet de déterminer tous les itemsets fermés fréquents, leurs générateurs minimaux associés ainsi que toutes les règles généri ques informatives valides.

Preuve.

Nous allons montrer la validité de PRINCE en montrant la validité de chacune des étapes le constituant.

1. Première étape : Détermination des générateurs minimaux

PRINCE détermine tous les générateurs minimaux fréquents et la bordure négative des générateurs minimaux. En effet, PRINCE parcourt l'espace de recherche par niveau (et donc par taille croissante des candidats générateurs minimaux). Tout au long de ce parcours, PRINCE élimine un candidat g de taille k ayant un de ses sous-ensemble de taille (k-1), disons g1, vérifiant une des deux conditions suivantes :

(a) g1 n'est pas un générateur minimal fréquent alors, d'après la propriété d'idéal d'ordre des générateurs minimaux fréquents (cf. Proposition 1 page 24), g ne pourra pas être un générateur minimal fréquent.

(b) g1 a un support égal a celui de g. Ce dernier ne pourra pas être un générateur minimal car il existe un sous-ensemble de g (en l'occurrence g1) ayant la même fermeture que g (cf. Lemme 1 page 46).

Si aucune de ces deux conditions n'est vérifiée, g est un générateur minimal. S'il est fréquent, il sera introduit lors de la deuxième étape dans le treillis des générateurs minimaux. Si g est infréquent, g appartient a la bordure négative des générateurs minimaux. En effet, tous les sous-ensembles de g sont des générateurs minimaux fréquents et g sera alors utilisé dans le mécanisme de comptage par inférence utilisé lors de la deuxième étape.

2. Deuxième étape : Construction du treillis des générateurs minimaux

Le résultat de cette étape est le treillis des générateurs minimaux. Cette étape per-met, d'une part, de déterminer la classe d'équivalence adéquate relative a chaque générateur minimal fréquent. D'autre part, elle permet de trouver tous les successeurs immédiats d'une classe d'équivalence. Montrons que cette étape est valide. Chaque générateur minimal g est introduit dans le treillis des générateurs minimaux via sa comparaison avec les listes des successeurs immédiats des classes d'équivalence aux quelles appartiennent ses sous-ensembles de taille (k-1). En effet, au moment de l'introduction de g, les classes d'équivalence de ses sous-ensembles de taille (k-1) ont déjà été introduites dans le treillis des générateurs minimaux. Ceci est dii au fait que le support des générateurs minimaux fréquents composant chacune de ces classes d'équivalence est strictement supérieur a celui de g. Ainsi, la fonction REPRESENTANT permet de retrouver, pour chacun de ses sous-ensembles, disons g1, le

representant de Cg1 et donc le generateur minimal frequent oft est stockee la liste L des successeurs immediats de Cg1 0). Lors des comparaisons de g avec L, deux cas sont a distinguer (cf. Proposition 3 page 47) :

(a) Si g est compare avec le representant R de Cg, les comparaisons avec les elements de L s'arretent. Ensuite, la fonction GESTION-CLASSE-EQUIV est executee. Elle remplace toutes les occurrences de g par R, dans les listes des successeurs immediats oft g a ete ajoute. Ceci permet de n'avoir que des representants dans les listes des successeurs immediats et n'affecte en rien le resultat de la deuxieme etape, etant donne que g et R appartiennent a la meme classe d'equivalence. Pour la meme raison - n'avoir que des representants dans les listes des successeurs immediats - les comparaisons a faire avec g seront effectuees avec R.

(b) Si g est un successeur d'un des elements de L, disons g2, g sera compare aux elements de la liste des successeurs de Cg2. Pour chaque element g3 appartenant au reste des elements de L, g ne pourra etre qu'un successeur de Cg3. En effet, le cas (a) ne peut avoir lieu car sinon g ne serait pas un successeur de g2.

Si aucun de ces deux cas ne se presente, g est un successeur immédiat de g1 et est ajoute a L et ne sera plus enleve(6). Cet ajout est valide etant donne que si un generateur minimal frequent, disons h, est compare dans la suite a g, alors h ne peut que verifier qu'un des deux cas (a) ou (b) si Ch et Cg sont comparables (cad h ? Cg ou Ch est un successeur de Cg). En effet, h a un support inferieur ou egal = celui de g.

Ainsi, chaque liste des successeurs immediats est comparee a tous les generateurs minimaux frequents susceptibles d'y appartenir. Les traitements s'arrêtent lorsqu'il n'y a plus de generateurs minimaux frequents a introduire dans le treillis des générateurs minimaux.

3. Troisième étape : Extraction des bases générigues informatives de règles

Dans cette etape, le parcours du treillis des générateurs minimaux se fait en partant de Co. Montrons que cette etape est valide. Toute classe d'equivalence autre que Co admet au moins un predecesseur immediat et sera donc incluse dans au moins une liste des successeurs immediats d'une autre classe d'equivalence. Ceci permettra de

5Comme mentionné précédemment, les générateurs minimaux fréquents autres que les représentants

ont des listes de successeurs immédiats vides.

6Eventuellement, g ne pourra qu'être remplacé par le représentant de Cg.

l'inclure dans la liste des classes d'équivalence a traiter lors de la prochaine itération (cad dans la liste L2 de l'algorithme 4 page 53). Les traitements s'arrêtent lorsque la (resp. les) liste(s) des successeurs immédiats de la (resp. des) classe(s) d'équivalence traitée(s) en dernier est (resp. sont) vide(s). Ainsi, toutes les classes d'équivalence seront traitées. En appliquant la proposition 4 (cf. page 51), tous les itemsets fermés fréquents sont retrouvés au fur et a mesure de ce parcours ascendant et les regles génériques informatives valides sont alors extraites d'une maniere directe.

Proposition 6 L'algorithme PRINCE termine et son résultat est complet.

Preuve.

Montrons que l'algorithme PRINCE termine quel que soit le contexte d'extraction 1C donné en entrée et quelles que soient les valeurs de minsup et minconf. Etant donné que le nombre de couples du contexte d'extraction est fini, le nombre de générateurs minimaux fréquents extraits du contexte 1C lors de la premiere étape, et qui est donc a traiter lors de la deuxieme étape, est aussi fini. De même, le treillis des générateurs minimaux a parcourir lors de la troisieme étape a une taille finie, égale au nombre de classes d'équivalence.

Le résultat de l'algorithme PRINCE est complet étant donné que la construction du treillis des générateurs minimaux assure l'exhaustivité des éléments (les générateurs minimaux fréquents) de chaque classe d'équivalence. De même, elle assure l'exhaustivité des éléments de la liste des successeurs immédiats de chaque classe d'équivalence. Les traitements effectués lors de la troisieme étape prennent ainsi en compte toutes les classes d'équivalence et le résultat est donc complet.

3.5 Complexite

Dans cette section, nous allons étudier la complexité théorique au pire des cas de l'algorithme PRINCE.

Soit un contexte d'extraction 1C = (O, Z, 7Z), le pire des cas est obtenu quand le nombre de générateurs minimaux fréquents est égal au nombre d'itemsets fréquents et est égal au nombre d'itemsets fermés fréquents (cad 2111) . En d'autres termes, chaque générateur

minimal frequent est aussi un ferme et le treillis des generateurs minimaux se confond avec le treillis des itemsets frequents.

Soient m=1O1 et n=1I1. La taille maximale d'une transaction est egale au nombre maximum d'items distincts, cad n. Nous allons considerer que toutes les transactions ont pour longueur n. Pour chaque transaction et dans le pire des cas, nous determinons ses 2n sous-ensembles afin de calculer les supports des itemsets. Nous allons calculer la complexite theorique au pire des cas de l'algorithme PRINCE en calculant la complexite au pire des cas de chacune des trois etapes le constituant.

Premiere etape : Determination des generateurs minimaux

1. L'initialisation de l'ensemble des items candidats se fait en O(1) (ligne 3 dans Algorithme 1 page 43).

2. Le cofit du calcul des supports des items est de l'ordre de O(m × n) (ligne 4).

3. Les affectations des lignes 5-6 se font en O(1).

4. Le cofit de l'elagage par rapport aux supports des items est de l'ordre de O(n) (lignes 7-15).

5. Le cofit de la determination des generateurs minimaux frequents de tailles superieures ou egales a 2 (lignes 16-17) est egal a la somme des cofits suivants :

(a) APRIORI-GEN : il y a (2n - n - 1) candidats a generer. Ainsi, le cofit de cette phase est de l'ordre de O(2n - n) (lignes 3-4 dans Algorithme 2 page 44) ;

(b) Le cofit de la verification de l'ideal d'ordre, et en meme temps, le calcul du support estime et le stockage des liens vers les sous-ensembles adequats est de l'ordre de O(n2 × (2n - n)) (lignes 5-14) ;

(c) Le cofit du calcul des supports des candidats de tailles superieures ou egales a 2 est de l'ordre de O(m × (2n - n)) (ligne 16) ;

(d) Le cofit de l'elagage par rapport aux supports des candidats est de l'ordre de O(2n - n) (lignes 17-22).

La complexite Cl de cette etape est alors : Cl = O(m × n + n + (2n - n) + n2 × (2n - n) + m × (2n - n) + 2n - n) = O(m × 2n + 2n + (n2 + 1) × (2n - n)).

Etant donne que 2n est largement superieur a n, alors Cl = O(2n+2n+(n2+1)×2n) : O(m × 2n + (n2 + 2) × 2n) = O(m × 2n + n2 × 2n) :O((n2 + m) × 2n).

D'ofi, C, = O((n2 + m) × 2n).

G Deuxieme etape : Construction du treillis des generateurs minimaux

1. La boucle pour de la ligne 3 (dans Algorithme 3 page 50) se repetent 2n fois etant donne que dans le pire des cas, nous avons 2n generateurs minimaux frequents.

2. Pour chaque generateur minimal frequent g de taille k, la boucle pour de la ligne 4 se repete k fois etant donne que g admet k sous-ensembles de taille (k-1) (k, le nombre de sous-ensembles, sera largement majore par n). Pour chaque sous-ensemble de g de taille (k-1), disons g1, les traitements suivants sont realises :

(a) Le coUt de l'instruction de la ligne 5 est en O(1) etant donne que dans le pire des cas, g1 est le seul generateur minimal frequent de sa classe d'equivalence et est donc son representant (g1 est egal a R).

(b) La boucle pour de la ligne 6 se repete au maximum (n-k) fois. En effet, g1, etant de taille egale a (k-1), possede au maximum n - (k - 1) - 1 successeurs immediats, au moment de l'integration de g dans le treillis des generateurs minimaux ((n-k), le nombre maximal de successeurs immediats, sera largement majore par n). Dans chaque iteration de cette boucle, g est compare a un element de g1.succs-immediats , disons g2. Le coUt de la comparaison de g avec g2 est la somme des deux coUts suivants :

i. Le premier coUt est relatif a l'union de g et g2 et est, au pire des cas, de l'ordre de O(n). Soit q, l'itemset resultat de cette union.

ii. Le second coUt est relatif a la recherche du support adequat de q et est, au pire des cas, de l'ordre de O(n). Notons que l'itemset q est un generateur minimal frequent. En effet, q est inclus dans l'itemset contenant tous les items, cad l'itemset I. Or, ce dernier -- dans le pire des cas -- est un generateur minimal frequent et d'apres la propriete de l'ideal d'ordre des generateurs minimaux frequents (cf. Proposition 1 page 24), q est un generateur minimal frequent.

Etant donne que l'union de g avec tout element de g1.succs-immediats donne toujours un generateur minimal, aucune des deux conditions specifiees par la proposition 3 (cf. page 47) n'est verifiee (ces conditions sont decrites par les lignes 7-12). Ainsi, Cg est incomparable avec toutes les classes d'equivalence des representants appartenant a g1.succs-immediats . g est donc ajoute a cette liste en O(1) (lignes 13-14).

Ainsi, la complexite C2 de cette etape est de l'ordre de : C2 = O(2n × n × (1 + (n ×

(n + n)) + 1)) = O(2n × n × (n × (n + n))).

D'oft, C2 = O(n3 × 2n).

Troisieme etape : Extraction des bases generigues informatives de regles

1. Le cofit des initialisations des lignes 3-6 (dans Algorithme 4 page 53) se fait en

O(1).

2. La condition de la boucle tant que est verifiee tant qu'il y a des classes d'equivalence a traiter (ligne 7). Dans le pire des cas, chaque generateur minimal frequent ferme forme une classe d'equivalence. Ainsi, 2n classes d'equivalence sont traitees. Pour chaque classe d'equivalence C (ligne 8), le coilt total de cette etape est egal a la somme des deux cofits suivants :

(a) Le premier cofit consiste a deriver la fermeture correspondante a C. Cette derniere est le resultat de l'union du generateur minimal frequent de C avec la fermeture d'un de ses predecesseurs immediats (lignes 12-14). Ceci est realise, au pire des cas, en O(n).

(b) Le deuxieme cofit est relatif a l'extraction des regles d'association informatives.

i. Etant donne que, le generateur minimal frequent de C est egal A sa fermeture, la condition de la ligne 9, testee en O(1), n'est pas verifiee. Ainsi, aucune regle exacte informative n'est extraite (ligne 10).

ii. Soit k la taille de l'itemset ferme frequent de C. C possede alors k predecesseurs immediats. Ainsi, pour une valeur de minconf egale a 0, k regles approximatives informatives valides sont extraites (lignes 15-16). Le cont de l'extraction de chacune des regles approximatives est egal au cont du calcul de la difference entre la premisse et la conclusion et est, au pire des cas, de l'ordre de O(n).

Le cont total, pour chaque classe d'equivalence, est alors de l'ordre de O(n+
1 + n × n) (la taille k d'un itemset ferme frequent etant largement majoree

par n).

La complexite C3 de cette etape est alors de l'ordre de : C3 = O(1 + (n+ 1 +n2)×2n).

D'oft, C3 = O(n2 × 2n).

Au pire des cas, la complexite totale de l'algorithme PRINCE est de l'ordre de :

Cpire = C1 -h C2 -h C3 = O((n2 + m) × 2n) -h O(n3 × 2n) -h O(n2 × 2n) = O((n3 + 2 × n2 + m)2n) = O((n3 + m) × 2n).

D'oft, Cpire = O((n3 + m) × 2n).

Ainsi, la complexite de PRINCE est de même ordre de grandeur que celle des algorithmes dedies a l'extraction des itemsets fermes frequents [29, 47], bien qu'il determine les trois composantes necessaires a l'extraction des bases generiques de regles d'association.

3.6 Conclusion

Dans ce chapitre, nous avons introduit un nouvel algorithme, appele PRINCE, pour l'extraction des bases generiques de regles. L'algorithme PRINCE determine les generateurs minimaux frequents. Ensuite, il les ordonne partiellement sous la forme d'un treillis des generateurs minimaux. Un balayage de bas en haut de cette structure permet de retrouver les itemsets fermes frequents et d'extraire les regles d'association informatives. Des preuves theoriques ainsi qu'une etude de la complexite theorique relatives au nouvel algorithme ont ete proposees.

Dans le chapitre suivant, nous allons essayer d'evaluer experimentalement notre algorithme sur la base d'une serie de tests. Ces tests permettront de voir l'influence de quelques optimisations que nous introduisons, d'analyser les caracteristiques de notre algorithme, ainsi que de comparer ses performances aux algorithmes d'exploration par niveau existants.

précédent sommaire suivant








® Memoire Online 2007 - Pour tout problème de consultation ou si vous voulez publier un mémoire: webmaster@memoireonline.com