Cliques & Bicliques Maximales

Slides:



Advertisements
Présentations similaires
Structures de données avancées : MTH ( Multidimensional trie hashing )
Advertisements

Comparaison de deux algorithmes d’approximation
Chap. 4 Recherche en Table
Approximation CHEBYSHEV.
Algorithmes et structures de données avancées Cours 7
Le hasard et la 0-connaissance Université Paris II Michel de Rougemont Algorithme et hasard Protocoles interactifs et.
Algorithmes et structures de données avancés
Classification et prédiction
Graphes et Applications Thème de léquipe « Combinatoire et Algorithmique » LaBRI – janvier 2008.
Propositionnalisation. Passage dune description structurelle à une description propositionnelle équivalente. Interêt gain en utilisation, réutilisation,
Sujet de Thèse "Gestion des méta données dans une architecture de médiation à large échelle" Federico DEL RAZO
Introduction à l’Algorithmique
Cours n° 8 Conception et Programmation à Objets
Modélisation par le concept de graphe
Yann Chevaleyre et Jean-Daniel Zucker
Algèbre relationnelle
Points de référence en décision multicritère J.F.R.O. Antoine ROLLAND LIP6 15 décembre 2006.
Cours dinformatique théorique INF f5 Alain Lecomte novembre 2005.
1 Modifications controlées des implications de la base de Guigues-Duquenne LIMOS – Clermont-Ferrand Alain Gély 6 Février 2006 Séminaire Maison des Sciences.
Problème de génération : Illustration & Méthodes
Séminaire Florin Périer Alain Gély LIMOS
Journées Graphes & Algorithmes, Novembre 2006, Orléans
Treillis démantelables & X-hyper-arbres
Journées Treillis Rochelais – La Rochelle – 30/31 Mai Alain Gély Autour des implications Unitaires Université
Alain Casali, Rosine Cicchetti, Lotfi Lakhal
Alexandre Aussem, Jean-Marc Petit LIMOS, Clermont-Ferrand
Chap. 1 INTRODUCTION Beaucoup de problèmes de la vie courante, tels la gestion de réseaux de communication ou l'ordonnancement de tâches, correspondent.
Automate asynchrone.
Tests et Validation du logiciel
Ordonnancement des mouvements de deux robots
Chapitre 2 : Matrice de répartition (S)
Comparaison de 4 algorithmes pour le problème du vertex cover
Des RRA à la diagnosticabilité
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
Algorithmes Branch & Bound
Les algorithmes: complexité et notation asymptotique
MODULE 6 Optimisation de GRAPHES
L’extraction de rôles Role mining
Détection de co-évolution de gènes Master 2 : Informatique à Finalité Professionnelle et Recherche Unifiée (IFPRU) Parcours Ingénierie de lIntelligence.
Méthode des k plus proches voisins
LES ARBRES IUP 2 Génie Informatique
Courbes de Bézier.

Universté de la Manouba
Article présentée par : Étudiante en 2ème année mastère F.S.T. Tunisie
Algorithmes d ’approximation
Page de garde présentation
Calcul des groupes d'homologie d’objets discrets
Les droites (MN) et (BC) sont parallèles
ASI 3 Méthodes numériques pour l’ingénieur
Vers l'échantillonnage d'un entrepôt de données
Un peu de maths (et d’info)
Apérisentation Sur les graphes évolutifs Mardi 22 novembre 16h30.
Supports de formation au SQ Unifié
Méthodes de tri.
1 Alain Casali Christian Ernst Extraction de Règles de Corrélation Décisionnelles 29 Janvier 2009.
Complexité des Problèmes Combinatoires Module IAD/RP/RO/Complexité Philippe Chrétienne.
Algorithmes Branch & Bound
Les Techniques d’enquête quantitative
1 JEUX DE TESTS la méthode générale modèle de données critères fonctionnels d’extractions jeux de données jeux de données avant tests sélection exécution.
Initiation à la conception des systèmes d'informations
2008/ Plan du cours 1.Introduction –Contenu du cours 2.Logique mathématique –Calcul propositionnel –Calcul des prédicats –Logique floue et aide à.
Présentation AICHA REVEL INGENIEUR D’ÉTUDE STERIA DEPARTEMENT TRD
1 Licence d’informatique Algorithmique des graphes Utilisation de ce document strictement réservée aux étudiants de l ’IFSIC dans le cadre de leur formation.
20/06/2015propagation de signatures lexicales dans le graphe du Web 1 Propagation de signatures lexicales dans le graphe du Web M. Bouklit M. Lafourcade.
ELE6306 : Test de systèmes électroniques Test intégré et Modèle de faute de délai Etudiante : S. BENCHIKH Professeur : A. Khouas Département de génie électrique.
Cours 5 - Trois algorithmes de tri d'un tableau
Le Jeu et l’intelligence artificielle
Compilation & Apprentissage dans les Réseaux de Contraintes Hervé Cros Directeurs :Frédéric Koriche Joël Quinqueton.
Calculer efficacement les générateurs et les fermetures associées : l’algorithme Flake FRANÇOIS WEBER 22/06/2016.
Transcription de la présentation:

Cliques & Bicliques Maximales Vers une présentation unifiée des algorithmes d’énumération Alain Gély – LIMOS – Clermont-Ferrand GDR fouille de données – Lyon - 21 Novembre 2005

Cliques maximales & fouille de données Bio-Informatique Web Mining

Bicliques maximales & fouille de données Itemset fermés (fréquent ou non) Utile pour les règles d’implications…

Enumération vs Construction D C B A 5 4 3 2 1 X DE AC AB ABC ABCDE Entrée Sortie CONSTRUCTION Graphe de couverture Taille exponentielle Complexité théorique O(n²).|C| GENERATION E D C B A 5 4 3 2 1 X , A, AB, ABC, AC, D, DE, ABCDE Enumération des fermés Espace polynomial Complexité théorique O(n3).|C|

Generation vs Construction Entrée Sortie E D C B A 5 4 3 2 1 X , A, AB, ABC, AC, D, DE, ABCDE

Pourquoi juste énumérer ? Délai polynomial Utile en «pipe line » Enumération Construction / Traitement

Plusieurs sources d’algorithmes Fouille de données Analyse de Concept Formel Algorithmique des systèmes de fermeture Analyse de données / problèmes matriciels Algorithmes de graphes

Fouille de données CHARM CLOSET, CLOSET+ LCM, LCM v2 Apriori

Analyse de concepts formel Lindig (Fast Concept Analysis) Vatchev et al. Godin et al.

Algorithmique des systèmes de fermeture Ganter (Next-closure) Nourine-Raynaud

Analyse de données / problèmes matriciels Algorithme de Chein Algorithme de Bordat

Algorithmes de graphe Enumération des cliques maximales Algorithme de Tsukiyama et al Algorithme de Johnson et al Algorithmes de Makino et Uno …

Cliques & bicliques maximales Transformation classique

Graphe de transition : Cas des bicliques maximales

Comparaisons des algorithmes ?

Comparaisons des algorithmes ? Pour un algorithme… Etudier la complexité au pire Comportement sur Benchmark Influence de l’implémentation

Comparaisons des algorithmes ? Deux questions Peut-on expliquer les différences de comportement des algorithmes par des Propriétés structurelles ? Les structures de données peuvent jouer un rôle important sur l’efficacité. Y-a-t-il d’autres facteurs influençant les performances ?

Graphe de transition des cliques maximales d’un graphe

Unifier la présentation des algorithmes existants ? Structure élémentaire Briques élémentaires sur cette structure Passage d’un élément à un autre Vérification d’appartenance [ Graphe ] [ arêtes ] [ arbre couvrant ]

Graphe de transition des bicliques maximales Cas particulier des graphes Propriétés particulières de numérotation G(U,V,E) Hypothèse : U > V Partitionnement sur les éléments de V Transitions « lexicographique » Graphe de couverture contenu dans le graphe de transition

Graphe de transition entre bicliques 5 5 4 4 3 3 2 2 1 1

Next-Closure & Ordre Lectique  , {A1} Pomme/Apple , {A2} Orge/Barley , {A3} Litchi/Lychee , {A4} Légume/Vegetable ,  Même structure de treillis Mais Un comportement différent des algorithmes

Données « En français » 10 Calculs de fermeture B C(B) F<iC(B) Réponse Next-Closure()=1 {123}4 C(4)=1234 <41234 Non (invalide) {123}4 C(3)=123 <3 123 Non (invalide) {123}4 C(2)=12 <2 12 Non (invalide) {123}4 C(2)=12 <1 1 Oui Next-Closure(1)=12 10 Calculs de fermeture {1123}4 C(14)=1234 1<41234 Non (invalide) {12}3 C(13)=123 <3123 Non (invalide) {11}2 C(12)=12 1<212 Oui Next-Closure(12)=123 {12123}4 C(124)=1234 12<41234 Non (invalide) {1212}3 C(123)=123 12<3123 Oui Next-Closure(123)=1234 {123123}4 C(1234)=1234 123<41234 Oui

Données « En anglais » 4 Calculs de fermeture B C(B) F<iC(B) Réponse Next-Closure()=4 {123}4 C(4)=4 <4 4 Oui Next-Closure(4)=34 4 Calculs de fermeture {412}3 C(3)=34 4<334 Oui Next-Closure(34)=234 {341}2 C(2)=234 34<2234 Oui Next-Closure(123)=1234 {234}1 C(1234)=234 123<11234 Oui

Exécution de Next-closure 1234 A1 A2 A3 A4 123 1 X X X 12 2 X X C(123)=123 C(124)=1234 1 3 X 123 124 4  C(14)=1234 C(14)=1234 12 13 14 C(12)=12 C(2)=12 C(3)=123 C(4)=1234 1 2 3 4 C(1)=1

Exécution de Next-closure - Amélioration 1234 A1 A2 A3 A4 123 1 X X X 12 2 X X C(123)=123 124 C(124)=1234 1 3 X 123 4  ↑12=34 13 14 C(14)=1234 12 C(12)=12 2 3 4 C(4)=1234 C(3)=123 C(2)=12 ↑1=234 1 C(1)=1

Algorithmes parcourant le graphe de couverture Approche « top-down » D’un élément vers un prédécesseur Test d’unicité

Parcours de graphes en profondeur 1 2 3 4 5 A X B C D E D/3 E/5 C/2 B/1 4 A 1 2 3 4 5 A B C D E

Connaître une arête de l’arbre couvrant ? 4 4 D/3 E/5 E/5 B/1 C/2 D/3 A A B C D E 2 3 1 4 5 1 2 3 5 4 1 2 3 4 5 A B C A B C D E D E

Enumérer les ensembles fermés GENERER(R) Choisir un élément a de J Calculer C(a) Afficher C(a) R1←(J, a’,I1) ; GENERER (R1) R2←(J\↑a,M,I2) ; GENERER (R2)

Systèmes de fermeture résultant B,2 C,3 D,4 C,3 1 2 3 4 3 1 2 4 A B C D A B C D A B D

Méthode générique d’énumération GENERER(R) Choisir un élément a de J Calculer C(a) Si C(a) est valide R1←(J, a’,I1) ; GENERER (R1) Afficher C(a) R2←(J\↑a,M,I2) ; GENERER (R2)

Next-closure (ordre lectique) GENERER(R) Choisir a, élément de plus petit label de J Calculer C(a) R1←(J, a’,I1) ; GENERER (R1) Si C(a)est valide Afficher C(a) R2←(J\↑a,M,I2) ; GENERER (R2)

Next-closure (ordre lexicographique) GENERER(R) Choisir j élément de plus petit label de J Calculer C(a) Si C(a)est valide R1←(J, a’,I1) ; GENERER(R1) Afficher C(a) R2←(J\↑a,M,I2) ; GENERER(R2)

Algorithme parcourant le graphe de couverture GENERER(R) Choisir a, élément minimal de J Calculer C(a) Si C(a)est valide R1←(J, j’,I1) ; GENERER(R1) R2←(J\↑j,M,I2) ; GENERER(R2)

Choix d’un élément non irréductible a c d e f g Pour séparer le système de fermeture Un élément non Sup-irreductible n’est pas un bon choix d f e g a b c

Heuristique de choix d’élément Au hasard Elément de plus petit label (Next Closure) Elément maximal (de l’ordre induit par J) Elément minimal (parcours du graphe de couverture) …

Conclusion Trouver un compromis entre : La complexité de la fonction choix Le nombre de fermeture calculé (#invalide) Perspectives : methode de comparaison d’algorithmes Etude de l’influence pratique de fonctions choix Fonctions choix spécifiques à certaines situations ?