• Aucun résultat trouvé

Extraction de règles d’association

3.3 Génération des règles d’association

La génération de règles d’association est la seconde étape essentielle du processus d’ex-traction des règles d’association. Un algorithme efficace à ce sujet a été proposé par Agrawal dans (Agrawal et al., 1994 [AS94]). Son principe général est le suivant. Pour chaque itemset fréquent I1 ∈ F de taille supérieure ou égale à 2, tous les sous-ensembles I2 de I1 sont dé-terminés et la valeur du support supp(I1)/supp(I2) est calculée. Si ce rapport est supérieur ou égal au seuil de confiance minconf fixé par l’utilisateur, la règle d’association I1I2\I1 est générée. L’algorithme est basé sur la propriété suivante.

Propriété 6. Etant donné un itemset I, le support d’un sous-ensemble I0 est supérieur ou égal au support de I.

Etant donnés trois itemsets I1, I2, I3 tels que I1I2I3, il est possible de déduire de cette propriété que supp(I3) ≥ supp(I2) ≥ supp(I1) [Pas00]. En conséquence, la confiance de la règle r : I2I1\I2 est supérieure ou égale à la confiance de la règle r0 :I3I1\I3. Si la règle r n’est pas valide, alors la règle r0 ne le sera pas non plus. Cela signifie que si la règle d’association ACDE n’est pas valide, par conséquent les règles ACDE et CADE ne seront pas valides non plus, et il n’est pas nécessaire de calculer leurs confiances. Cette propriété permet de diminuer le nombre de règles d’association testées par l’algorithme. Réciproquement, la confiance de la règle r00 :I1\I2I2 est supérieure ou égale à la confiance de la règle r000 : I1\I3I3. Si la règle r000 est valide alors la règle r00 le sera également. Cela signifie que si la règle d’association ABC est valide, alors les règles ABC et ACB le seront également.

3.3.1 Algorithme de génération des règles d’association

Soit F un ensemble d’itemsets fréquents dans lequel chaque élément de cet ensemble possède deux champs qui sont l’itemset en lui-même et son support. Hm représente les m-itemsets qui sont les conséquences de règles valides générées à partir de l’itemset Ik. Le pseudo-code est représenté dans l’algorithme 20.

Algorithm 20 Algorithme de génération des règles d’association Require: F ensemble des itemsets fréquents ; seuil de confiance minconf Ensure: R ensemble des règles d’association valides

1: for allk-itemsets fréquents Ik ∈ F tel quek≥2 do 2: H1 ← 1-itemset sous ensembles deIk

3: for allh1H1 do

4: confiance(r)←support(Ik)/support(Ik\h1) 5: if (confiance(r)≥ minconf)then

6: RR∪ {r:Ik\hkh1}

7: else

8: H1H1\{h1} 9: end if

10: end for

11: Gen-Rules(Ik, H1) 12: end for

13: RetournerR

L’algorithme considère successivement chaque itemset fréquent de F de taille supérieur à un (lignes 1 à 12). Pour chacun des itemsets Ik, l’ensemble H1 des 1-itemsets qui sont des sous-ensembles de Ik est généré (ligne 2). Et pour chacun de ces itemsets h1, la règle Ik\h1h1 est générée si sa confiance est supérieure ou égale à minconf (lignes 4 à 6).

Sinon, si cette règle n’est pas valide, alors le 1-itemset h1 est supprimé de H1 (ligne 8).

Lorsque tous les 1-itemsets de H1 ont été testés, h1 contient la liste des 1-itemsets qui sont les conséquences des règles valides générées à partir deIk. Les règles valides générées à partir de Ik sont les règles dont l’union de l’antécédent et de la conséquence donne l’itemset Ik. La procédure Gen-Rules est alors appelée (ligne 11) afin d’insérer dans R les règles valides générées à partir de Ik dont la conséquence contient plus de un item. L’algorithme termie lorsque tous les k-itemsets fréquents pour k ≥ 2 ont été considérés. L’ensemble R renvoyé par l’algorithme (ligne 13) contient alors toutes les règles d’association valides générées à partir de l’ensemble F.

Procédure Gen-Rules La procédure Gen-Rules met à jour l’esemble R des règles d’as-sociations en y insérant les règles valides générées à partir de Ik dont la conséquence est un (m+ 1)-itemsets. Cette procédure est récursive et réalise en fin d’exécution un appel afin de générer, à partir de Ik, les règles valides dont la conséquence est un (m+ 2)-itemsets.

Ces appels se répètent récursivement jusqu’à ce que les règles, dont la conséquence est un (|Ik|+ 1)-itemsets, aient été insérées dansR. La démarche de cette procédure est représentée dans l’algorithme 21ci-après.

Algorithm 21 Algorithme Gen-Rules : Insertion de règles d’association dans R Require: k-itemsets fréquents ; Ensemble Hm de m-itemsets ; Seuilminconf

Ensure: EnsembleR de règles d’associations valides 1: if k > m+ 1then

2: Hm+1 ←Apriori-Gen(Hm)

3: for allpour chaquehm+1Hm+1 do

4: confiance(r)←support(Ik)/support(Ik\hm+1) 5: if confiance(r)≥minconfthen

6: RR∪ {r:Ik\hm+1hm+1}

7: else

8: Supprimerhm+1 de Hm+1 9: end if

10: end for

11: Gen-Rules(Ik, Hm+1) 12: end if

Le premier test de l’algorithme (ligne 1) correspond au test d’arrêt des appels récurs-sifs de la procédure. Ensuite, l’ensemble Hm+1 des (m+ 1)-itemsets qui peuvent être des conséquences de règles valides générées à partir de Ik est créé. Cette création est réalisée en appliquant la procédure Apriori-Gen à l’ensemble Hm des m-itemsets qui sont les consé-quences de règles valides générées à partir de Ik (ligne 2). Chaque règle dont la conséquence est un (m+ 1)-itemsets de Hm+1 est alors testée (lignes 3 à 10). Si la règle testée est valide, elle est insérée dans R (ligne 6). Sinon, les (m+ 1)-itemsets qui en est la conséquence est supprimée de Hm+1 (ligne 8). Cette suppression correspond à la diminution du nombre de règles testées basé sur la propriété 6 ci-dessus. En effet, si la règle d’associationACDE n’est pas valide, DE est supprimé de H2. Lors de l’appel récursif suivant, les itemsetsCDE etADE ne seront pas crées par Apriori-Gen dans H3 carDE est un sous-ensemble deCDE et deADE. Les règlesACDE etCADE ne seront donc pas testées. L’appel récursif Gen-Rules est réalisé en fin de procédure (ligne 11) avec comme paramètre l’itemset Ik et l’ensemble Hm+1.

3.4 Conclusion partielle

La réalisation de cet état de l’art a mis en exergue une suite logique à nos travaux sur l’extraction de règles d’association dans un contexte binaire, à savoir la recherche des motifs fréquents, et la génération de règles d’association au moyen d’une mesure de qualité plus pertinente, MGK (Totohasina et Feno, 2008 [TF08, Tot08]), par rapport à ladite mesure confiance d’Agrawal (Agrawal et al., 1993 [AIS93]). Cet état de l’art fait apparaître un panorama de l’existant autour de l’extraction de règles d’association, nous y avons recencé un nombre important d’approches. Il nous a permis de comparer différentes approches adaptées avec notre problématique. Il ne s’agit pas ici d’une description exhaustive de l’état de l’art, étant donné qu’il existe de nombreux travaux dans la littérature, mais les enseignements tirés de cette étude ont été exploités lors de l’élaboration de notre approche. Ce chapitre clôt notre partie état de l’art sur les différents domaines de recherche abordés par ce mémoire.