Extraction de règles d association

Documents pareils
Etude d Algorithmes Parallèles de Data Mining

LOGO. Module «Big Data» Extraction de Connaissances à partir de Données. Claudia MARINICA MCF, ETIS UCP/ENSEA/CNRS

Application de K-means à la définition du nombre de VM optimal dans un cloud

Limites finies en un point

République Algérienne Démocratique et Populaire

Cours de Probabilités et de Statistique

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

CORRECTION EXERCICES ALGORITHME 1

Implémentation parallèle de certains algorithmes de fouille de données avec le framework MapReduce

3 ème 2 DÉVELOPPEMENT FACTORISATIONS ET IDENTITÉS REMARQUABLES 1/5 1 - Développements

Problèmes de Mathématiques Filtres et ultrafiltres

introduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives

Séminaire TEST. 1 Présentation du sujet. October 18th, 2013

AC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x =

Le théorème de Thalès et sa réciproque

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

Algèbre binaire et Circuits logiques ( )

Activités numériques [13 Points]

Feuille TD n 1 Exercices d algorithmique éléments de correction

Axiomatique de N, construction de Z

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

2.4 Représentation graphique, tableau de Karnaugh

Image d un intervalle par une fonction continue

Algorithmique et Programmation, IMA

Université de Tunis El Manar Université Montpellier 2. Thèse. En cotutelle. Pour obtenir le grade de. Docteur de l Université Montpellier II

Cours de mathématiques

Le projet logiciel E.C.D.Sagitta Un état des lieux

Priorités de calcul :

Les droites (d 1 ) et (d 2 ) sont sécantes en A Le point A est le point d intersection des 2 droites

Algorithmes de Transmission et de Recherche de l Information dans les Réseaux de Communication. Philippe Robert INRIA Paris-Rocquencourt

LES DIFFERENTS TYPES DE MESURE

1S Modèles de rédaction Enoncés

CONJUGUÉ D'UN POINT PAR RAPPORT À UN TRIANGLE

Coefficients binomiaux

Découverte des dépendances fonctionnelles conditionnelles fréquentes

Chapitre 6. Fonction réelle d une variable réelle

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

CHAPITRE 2 SYSTEMES D INEQUATIONS A DEUX INCONNUES

Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)

IFT1215 Introduction aux systèmes informatiques

Correction du bac blanc CFE Mercatique

TP Bases de données réparties

1 radian. De même, la longueur d un arc de cercle de rayon R et dont l angle au centre a pour mesure α radians est α R. R AB =R.

Programmation par contraintes. Laurent Beaudou

Plan du cours Cours théoriques. 29 septembre 2014

Développer, factoriser pour résoudre

MPI Activité.10 : Logique binaire Portes logiques

Approche data mining pour la gestion de la relation client : application à la personnalisation d'un site de e-commerce

Structures algébriques

Intégration et probabilités TD1 Espaces mesurés

1 Définition et premières propriétés des congruences

Angles orientés et trigonométrie

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

Optimisation des fonctions de plusieurs variables

Problème 1 : applications du plan affine

Statistiques Descriptives à une dimension

Cours d Informatique


Les algorithmes SLIQ et SSDM

Algorithmes récursifs

Programmation Par Contraintes

CHAPITRE IV. L axiome du choix

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Plan. Ce qu est le datawarehouse? Un modèle multidimensionnel. Architecture d un datawarehouse. Implémentation d un datawarehouse

Cours d Analyse. Fonctions de plusieurs variables

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

Amélioration des indicateurs techniques pour l analyse du marché financier

Planche n o 22. Fonctions de plusieurs variables. Corrigé

Mathématiques I Section Architecture, EPFL

Continuité et dérivabilité d une fonction

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours

Programmation avec Xcas ou Python

Distribution Uniforme Probabilité de Laplace Dénombrements Les Paris. Chapitre 2 Le calcul des probabilités

Information utiles. webpage : Google+ : digiusto/

L EQUIPE ÉTUDES ENQUÊTES: Georgeta BOARESCU psychologue coordonateur études enquêtes Florin CIOTEA sociologue

HELPDESK IMAGINLAB GUIDE UTILISATION POUR IMAGINEURS. : Guide HelpDesk pour les Imagineurs-v1.2.docx. Date :

Licence Sciences et Technologies Examen janvier 2010

Jean-François Boulicaut & Mohand-Saïd Hacid

Présentation du programme d automatisation du bâtiment

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

1.1 Codage de source et test d hypothèse

Étude des formes de pratiques de la gymnastique sportive enseignées en EPS à l école primaire

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

CHAPITRE VIII : Les circuits avec résistances ohmiques

Note de cours. Introduction à Excel 2007

Bases de Données Relationnelles. Le Modèle Relationnel

Relation d ordre. Manipulation des relations d ordre. Lycée Pierre de Fermat 2012/2013 Feuille d exercices

Les Angles. I) Angles complémentaires, angles supplémentaires. 1) Angles complémentaires. 2 Angles supplémentaires. a) Définition.

Rappels sur les suites - Algorithme

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

Introduction au maillage pour le calcul scientifique

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions

Enoncé et corrigé du brevet des collèges dans les académies d Aix- Marseille, Montpellier, Nice Corse et Toulouse en Énoncé.

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Bases de données Cours 1 : Généralités sur les bases de données

Transmission d informations sur le réseau électrique

DISPOSITIF DE CONTROLE MULTIFONCTIONNEL POUR APPAREILS A GAZ

1 Recherche en table par balayage

Transcription:

Extraction de règles d association Thierry Lecroq Université de Rouen FRANCE Thierry Lecroq (Univ. Rouen) Règles d association 1 / 43

Plan 1 Présentation 2 Extraction d ensemble de mots fréquents 3 Génération des règles d association Thierry Lecroq (Univ. Rouen) Règles d association 2 / 43

Règles d association On cherche des relations entre les mots d un corpus sous forme de règles : si les mots x 1,..., x m apparaissent dans un texte alors les mots x m+1,..., x n apparaissent aussi dans le texte que l on formalise en : x 1 x m x m+1 x n et que l on appelle règle d association. Deux paramètres doivent être fournis : minsup, le pourcentage de textes où apparait la règle minconf, le pourcentage de fois où la règle est vérifiée Thierry Lecroq (Univ. Rouen) Règles d association 3 / 43

Exemple mots textes 1 2 3 4 5 A X B X X X X C X X D X X Avec minsup = 40% et minconf = 50%, les deux règles valides sont : D B et B D. Avec minconf = 100%, seule la règle D B est valide Thierry Lecroq (Univ. Rouen) Règles d association 4 / 43

Mots fréquents Soit T un ensemble de textes On considère un texte t T comme étant un ensemble de mots E est un ensemble de mots, support(e) = pourcentage de textes dans lesquels apparaissent tous les mots de E support(e) = card({t T E t}) card(t ) Un ensemble de mots E est fréquent si support(e) > minsup Thierry Lecroq (Univ. Rouen) Règles d association 5 / 43

Règles d association Une règle d association r est une implication de la forme P 1 P 2 entre deux ensembles de mots P 1 et P 2, P 1 P 2 =, telle que : support(r) = support(p 1 P 2 ) confiance(r) = support(p 1 P 2 ) support(p 1 ) Une règle r est valide si confiance(r) > minconf Une règle r est totale si confiance(r) = 1 et partielle sinon Thierry Lecroq (Univ. Rouen) Règles d association 6 / 43

Méthode Problème Déterminer l ensemble des règles dont le support est supérieur à minsup et la confiance à minconf, ce que l on décompose en deux sous-problèmes : 1 déterminer les ensembles E de mots fréquents (support(e) > minsup) 2 pour chacun de ces ensembles, générer toutes les règles r d association valides (confiance(r) > minconf ) Thierry Lecroq (Univ. Rouen) Règles d association 7 / 43

Ordre, borne sup, borne inf Un ensemble E est ordonné s il est muni d une relation binaire réflexive, antisymétrique et transitive ; Un majorant (resp. minorant) d une partie A de E est un élément x tel que y A, y x (resp. y A, y x) ; La borne supérieure (resp. borne inférieure) d une partie A est le plus petit des majorants (resp. minorants). Elle n existe pas forcément. Thierry Lecroq (Univ. Rouen) Règles d association 8 / 43

Treillis Un treillis est un ensemble dans lequel chaque couple d éléments possède une borne supérieure et une borne inférieure Si une seule des deux propriétés est vérifiée, on parle alors de demi-treillis L ensemble des mots fréquents forme un demi-treillis : l intersection de deux ensembles de mots fréquents est fréquente l union de deux ensembles de mots non fréquents est non fréquente Thierry Lecroq (Univ. Rouen) Règles d association 9 / 43

Treillis Exemple Thierry Lecroq (Univ. Rouen) Règles d association 10 / 43

Demi-treillis Exemple Thierry Lecroq (Univ. Rouen) Règles d association 11 / 43

Plan 1 Présentation 2 Extraction d ensemble de mots fréquents 3 Génération des règles d association Thierry Lecroq (Univ. Rouen) Règles d association 12 / 43

Algorithme Apriori Schéma de l algorithme Parcours du treillis des ensembles de mots fréquents 1 les ensembles de cardinal k sont générés à partir de ceux de cardinal k 1 2 une fois les ensembles de cardinal k générés, on calcul leurs supports et on ne conserve que les fréquents Thierry Lecroq (Univ. Rouen) Règles d association 13 / 43

Algorithme Apriori - Génération On fait l union de tous les ensembles de mots n ayant qu un seul élément différent Seuls les ensembles dont tous les sous-ensembles sont fréquents sont conservés Exemple Thierry Lecroq (Univ. Rouen) Règles d association 14 / 43

Algorithme Apriori - Génération Exemple avec minsup = 2/5 mots textes 1 2 3 4 5 A X B X X X X C X X D X X ensemble support {A} 1 {B} 4 {C} 2 {D} 2 F 1 = {{B}, {C}, {D}} C 2 = {{B, C}, {B, D}, {C, D}} Thierry Lecroq (Univ. Rouen) Règles d association 15 / 43

Algorithme Apriori - Génération Exemple avec minsup = 2/5 mots textes 1 2 3 4 5 A X B X X X X C X X D X X ensemble support {B, C} 1 {B, D} 2 {C, D} 0 F 2 = {{B, D}} C 3 = F = {{B}, {C}, {D}, {B, D}} Thierry Lecroq (Univ. Rouen) Règles d association 16 / 43

Algorithme Apriori - Génération Apriori-gen(F ) Entrée : F : ensembles de mots fréquents de cardinal k 1 Début 2 C {c = f 1 f 2 tels que (f 1, f 2 ) F F, card(c) = k + 1} 3 pour chaque c C faire 4 pour chaque s c, card(s) = k faire 5 si s F alors 6 C C \ {c} 7 Retourner C 8 Fin Thierry Lecroq (Univ. Rouen) Règles d association 17 / 43

Algorithme Apriori Apriori(T, minsup) Entrée : T : corpus, minsup : entier Sortie : k F k 1 Début 2 C 1 {singletons} 3 k 1 4 tantque C k faire 5 pour chaque c C k faire 6 pour chaque t T faire 7 si c t alors 8 support(c) support(c) + 1 9 F k {c C k support(c) minsup} 10 k k + 1 11 C k Apriori-gen(F k 1 ) 12 Retourner k F k 13 Fin university-logo Thierry Lecroq (Univ. Rouen) Règles d association 18 / 43

Algorithme Close repose sur l extraction de générateurs d ensemble de mots fermés fréquents le nombre d ensembles de mots fermés fréquents est généralement bien inférieur au nombre d ensembles de mots fréquents Thierry Lecroq (Univ. Rouen) Règles d association 19 / 43

Fermeture La fermeture d un ensemble de mots A est un ensemble de mots B tel que B apparaît dans les mêmes textes que A. Pour la calculer on utilise deux fonctions : f : associe à un ensemble de mots les textes où il apparaît g : associe à un ensemble de textes les mots qu ils ont en commun Soit A un ensemble de mots : fermeture(a) = g f(a) Thierry Lecroq (Univ. Rouen) Règles d association 20 / 43

Fermeture Exemple mots textes 1 2 3 4 5 A X B X X X X C X X D X X f({d}) = {1, 5} g({1, 5}) = {B, D} fermeture({d}) = {B, D} {D} est un générateur de {B, D} Thierry Lecroq (Univ. Rouen) Règles d association 21 / 43

Algorithme close 1 Initialisation de l ensemble des générateurs avec l ensemble des singletons formés par les mots du corpus 2 Calcul de la fermeture des générateurs de niveau k et de leur support 3 Ajout des fermetures des générateurs à l ensemble des ensembles de mots fermés fréquents 4 Génération des générateurs de niveau k + 1 Thierry Lecroq (Univ. Rouen) Règles d association 22 / 43

Calcul fermeture/support Exemple avec minsup = 2/5 mots textes 1 2 3 4 5 A X B X X X X C X X D X X générateur fermeture support {A} 0 {B} 0 {C} 0 {D} 0 Thierry Lecroq (Univ. Rouen) Règles d association 23 / 43

Calcul fermeture/support Exemple avec minsup = 2/5 mots textes 1 2 3 4 5 A X B X X X X C X X D X X générateur fermeture support {A} {A, B, D} 1 {B} {A, B, D} 1 {C} 0 {D} {A, B, D} 1 Thierry Lecroq (Univ. Rouen) Règles d association 24 / 43

Calcul fermeture/support Exemple avec minsup = 2/5 mots textes 1 2 3 4 5 A X B X X X X C X X D X X générateur fermeture support {A} {A, B, D} 1 {B} {B} 2 {C} 0 {D} {A, B, D} 1 Thierry Lecroq (Univ. Rouen) Règles d association 25 / 43

Calcul fermeture/support Exemple avec minsup = 2/5 mots textes 1 2 3 4 5 A X B X X X X C X X D X X générateur fermeture support {A} {A, B, D} 1 {B} {B} 2 {C} {C} 1 {D} {A, B, D} 1 Thierry Lecroq (Univ. Rouen) Règles d association 26 / 43

Calcul fermeture/support Exemple avec minsup = 2/5 mots textes 1 2 3 4 5 A X B X X X X C X X D X X générateur fermeture support {A} {A, B, D} 1 {B} {B} 3 {C} {C} 2 {D} {A, B, D} 1 Thierry Lecroq (Univ. Rouen) Règles d association 27 / 43

Calcul fermeture/support Exemple avec minsup = 2/5 mots textes 1 2 3 4 5 A X B X X X X C X X D X X générateur fermeture support {A} {A, B, D} 1 {B} {B} 4 {C} {C} 2 {D} {B, D} 2 Thierry Lecroq (Univ. Rouen) Règles d association 28 / 43

Calcul fermeture/support Exemple avec minsup = 2/5 mots textes 1 2 3 4 5 A X B X X X X C X X D X X générateur fermeture support {A} {A, B, D} 1/5 {B} {B} 4/5 {C} {C} 2/5 {D} {B, D} 2/5 On ajoute {B}, {C} et {B, D} à l ensemble des ensembles de mots fréquents On conserve {B}, {C} et {D} pour calculer les générateurs de niveau supérieur Thierry Lecroq (Univ. Rouen) Règles d association 29 / 43

Algorithme close Les générateurs de niveau k + 1 sont obtenus de la même manière que dans l algorithme Apriori, mais ceux appartenant à la fermeture d un générateur de niveau k sont supprimés. Thierry Lecroq (Univ. Rouen) Règles d association 30 / 43

mots À partir de {{B}, {C}, {D}}, on génère les ensembles {BC}, {BD}, {CD} {B, D} f({d}) textes 1 2 3 4 5 A X B X X X X C X X D X X Pas de nouvel ensemble de mots fréquents générateur fermeture support {BC} {BC} 1/5 {CD} 0/5 Thierry Lecroq (Univ. Rouen) Règles d association 31 / 43

Algorithme fermeture Fermeture(E, T ) Entrée : E : ensemble d ensembles de mots, T : corpus 1 Début 2 pour chaque t T faire 3 pour chaque e E faire 4 si e T alors 5 G G e 6 pour chaque e G faire 7 si fermeture(e) = alors 8 fermeture(e) G 9 sinon fermeture(e) fermeture(e) G 10 support(e) support(e) + 1 11 Fin Thierry Lecroq (Univ. Rouen) Règles d association 32 / 43

Algorithme génération Close-gen(F, k) Entrée : F : ensemble d ensembles de mots fréquents de cardinal k 1 Début 2 C {c = f 1 f 2, (f 1, f 2 ) F F, card(c) = k + 1} 3 pour chaque c C faire 4 si c fermeture(f 1 ) et c fermeture(f 2 ) alors 5 pour chaque s c faire 6 si s F alors 7 C C \ {c} 8 Retourner C 9 Fin Thierry Lecroq (Univ. Rouen) Règles d association 33 / 43

Algorithme close Close(T, minsup) Entrée : T : corpus, minsup : entier 1 Début 2 G 1 ensemble de mots de cardinal 1 3 k 1 4 tantque G k faire 5 C k Fermeture(G k, T ) 6 pour chaque c C k faire 7 si support(c) minsup alors 8 F k F k {c} 9 ferm k ferm k ferm({c}) 10 G k+1 Close-gen(F, k) 11 Retourner k ferm k 12 Fin Thierry Lecroq (Univ. Rouen) Règles d association 34 / 43

Plan 1 Présentation 2 Extraction d ensemble de mots fréquents 3 Génération des règles d association Thierry Lecroq (Univ. Rouen) Règles d association 35 / 43

Génération des règles d association e {ensemble de mots fréquents}, card(e) 2 générer les sous-ensembles h de e, h, h e calculer c = support(e)/support(e h) ; si c minconf alors générer la règle (e h) h. Thierry Lecroq (Univ. Rouen) Règles d association 36 / 43

ensemble mots fréquents e = {ABC} sous-ensemble h {A} {B} {C} {AB} {AC} {BC} règle (e h) h BC A AC B AB C C AB B AC A BC Thierry Lecroq (Univ. Rouen) Règles d association 37 / 43

Réduction du nombre de règles support(a) support(a, B) support(a, B, C)/support(A) support(a, B, C)/support(A, B) confiance(a BC) confiance(ab C) A BC valide AB C non valide AB C AC B A BC B AC } valides } non valides Thierry Lecroq (Univ. Rouen) Règles d association 38 / 43

Générer l ensemble H des singletons de e Pour chaque h H, calculer c = support(e)/support(e h) Si c minconf alors ajouter la règle r : (e h) h Sinon enlever h de l ensemble H Générer un nouvel ensemble H d ensembles de cardinal 2 Thierry Lecroq (Univ. Rouen) Règles d association 39 / 43

ensemble de mots fréquents {ABC} H = {{A}, {B}, {C}} sous-ensemble {A} {B} {C} règle BC A AC B AB C Si BC A non valide, H = {{B, C}} sous-ensemble {BC} règle A BC Thierry Lecroq (Univ. Rouen) Règles d association 40 / 43

Génération des règles d association Gen-règles(E, minsup, minconf ) Entrée : E : ensemble d ensembles de mots, minsup, minconf : entier 1 Début 2 pour chaque e E, card(e) 2 faire 3 m 1 4 H {singletons sous-ensemble de e} 5 tantque m card(e) faire 6 pour chaque h H faire 7 confiance(r) support(e)/support(e h) 8 si confiance(r) minconf alors 9 R R {(e h) h} 10 sinon H H \ {h} 11 H Apriori-gen(H) 12 m m + 1 13 Retourner R 14 Fin university-logo Thierry Lecroq (Univ. Rouen) Règles d association 41 / 43

Références R. Agrawal et R. Srikant. Fast algorithms for mining association rules in large databases. In proceedings of the 20th international conference on Very Large Data Bases (VLDB 94), pages 478 499, 1994. N. Pasquier Y. Bastide R. Taouil et L. Lakhal. Pruning closed itemset lattices for association rules. In Actes des 14 e journées Bases de Données Avancées (BDA 98), pages 177 196, 1998. Thierry Lecroq (Univ. Rouen) Règles d association 42 / 43

Remerciements Guillaume Duhamel Thierry Lecroq (Univ. Rouen) Règles d association 43 / 43