Fouille de données sur des grands graphes
Nathalie Villa-Vialaneix
http://www.nathalievilla.org
Toulouse School of Economi...
Sommaire
1 Motivations
2 Méthodes à noyau pour graphes
3 Optimisation de la modularité
Luminy (18/12/08) Nathalie Villa Da...
Motivations
Sommaire
1 Motivations
2 Méthodes à noyau pour graphes
3 Optimisation de la modularité
Luminy (18/12/08) Natha...
Motivations
Comprendre la structure de grands graphes
Quelques exemples de problèmes modélisés par de grands graphes
1 Rés...
Motivations
Comprendre la structure de grands graphes
Quelques exemples de problèmes modélisés par de grands graphes
1 Rés...
Motivations
Comprendre la structure de grands graphes
Quelques exemples de problèmes modélisés par de grands graphes
1 Rés...
Motivations
Comprendre la structure de grands graphes
Quelques exemples de problèmes modélisés par de grands graphes
1 Rés...
Motivations
Exemple réel 1 : un graphe venu du Moyen-Âge
Un très grand corpus
Aux archives de Cahors (Lot), corpus de 5000...
Motivations
Exemple réel 1 : un graphe venu du Moyen-Âge
Un très grand corpus
Aux archives de Cahors (Lot), corpus de 5000...
Motivations
Modélisation du réseau social par un graphe
À partir de 1000 contracts datant d’avant la guerre de 100 ans, no...
Motivations
Modélisation du réseau social par un graphe
À partir de 1000 contracts datant d’avant la guerre de 100 ans, no...
Motivations
Modélisation du réseau social par un graphe
À partir de 1000 contracts datant d’avant la guerre de 100 ans, no...
Motivations
Modélisation du réseau social par un graphe
À partir de 1000 contracts datant d’avant la guerre de 100 ans, no...
Motivations
Première description du graphe
La plus grande composante connexe du réseau social médiéval :
• a 615 sommets (...
Motivations
Première description du graphe
La plus grande composante connexe du réseau social médiéval :
• a 615 sommets (...
Motivations
Première description du graphe
La plus grande composante connexe du réseau social médiéval :
• a 615 sommets (...
Motivations
Première description du graphe
La plus grande composante connexe du réseau social médiéval :
• a 615 sommets (...
Motivations
Exemple réel 2 : Réseau de collaborations scientifiques
[Newman, 2006]
Un réseau de collaborations scientifiques...
Motivations
Point de vue adopté
[Newman and Girvan, 2004]
“reducing [the] level of complexity [of a network] to one that c...
Motivations
Point de vue adopté
[Newman and Girvan, 2004]
“reducing [the] level of complexity [of a network] to one that c...
Motivations
Point de vue adopté
[Newman and Girvan, 2004]
“reducing [the] level of complexity [of a network] to one that c...
Méthodes à noyau pour graphes
Sommaire
1 Motivations
2 Méthodes à noyau pour graphes
3 Optimisation de la modularité
Lumin...
Méthodes à noyau pour graphes
Principe général de “Batch kernel SOM”
[Villa and Rossi, 2007, Boulet et al., 2008]
Les somm...
Méthodes à noyau pour graphes
Principe général de “Batch kernel SOM”
[Villa and Rossi, 2007, Boulet et al., 2008]
Chaque s...
Méthodes à noyau pour graphes
Principe général de “Batch kernel SOM”
[Villa and Rossi, 2007, Boulet et al., 2008]
p1
p2
p3...
Méthodes à noyau pour graphes
“Astuce noyau” et calcul de l’énergie
On utilise les propriétés de noyau reproduisant de K p...
Méthodes à noyau pour graphes
“Astuce noyau” et calcul de l’énergie
On utilise les propriétés de noyau reproduisant de K p...
Méthodes à noyau pour graphes
“Astuce noyau” et calcul de l’énergie
On utilise les propriétés de noyau reproduisant de K p...
Méthodes à noyau pour graphes
Quel noyau ?
Définition du Laplacien [Kondor and Lafferty, 2002]
Pour un graphe de sommets V ...
Méthodes à noyau pour graphes
Propriétés du Laplacien I [von Luxburg, 2007]
Composantes connexes
KerL = Span{IA1
, . . . ,...
Méthodes à noyau pour graphes
Propriétés du Laplacien II [Boulet et al., 2008]
Communauté parfaite : Sous-graphe complet (...
Méthodes à noyau pour graphes
Propriétés du Laplacien II [Boulet et al., 2008]
Communauté parfaite : Sous-graphe complet (...
Méthodes à noyau pour graphes
Propriétés du Laplacien II [Boulet et al., 2008]
Communauté parfaite : Sous-graphe complet (...
Méthodes à noyau pour graphes
Propriétés du Laplacien III [von Luxburg, 2007]
Problème de la coupe optimale : Supposons qu...
Méthodes à noyau pour graphes
Propriétés du Laplacien III [von Luxburg, 2007]
Problème de la coupe optimale : Supposons qu...
Méthodes à noyau pour graphes
Propriétés du Laplacien III [von Luxburg, 2007]
Problème de la coupe optimale : Supposons qu...
Méthodes à noyau pour graphes
Propriétés du Laplacien III [von Luxburg, 2007]
Problème de la coupe optimale : Supposons qu...
Méthodes à noyau pour graphes
Propriétés du Laplacien III [von Luxburg, 2007]
Problème de la coupe optimale : Supposons qu...
Méthodes à noyau pour graphes
Des versions régularisées de L
1 La matrice de diffusion [Kondor and Lafferty, 2002] : pour ...
Méthodes à noyau pour graphes
Des versions régularisées de L
1 La matrice de diffusion [Kondor and Lafferty, 2002] : pour ...
Méthodes à noyau pour graphes
Des versions régularisées de L
1 La matrice de diffusion [Kondor and Lafferty, 2002] : pour ...
Méthodes à noyau pour graphes
Des versions régularisées de L
1 La matrice de diffusion [Kondor and Lafferty, 2002] : pour ...
Méthodes à noyau pour graphes
Exemple de résultat obtenu
Réseau social médiéval avec noyau de la chaleur [Boulet et al., 2...
Méthodes à noyau pour graphes
Exemple de résultat obtenu
Réseau social médiéval avec noyau de la chaleur [Boulet et al., 2...
Méthodes à noyau pour graphes
Exemple de résultat obtenu
Réseau social médiéval avec noyau de la chaleur [Boulet et al., 2...
Méthodes à noyau pour graphes
Exemple de résultat obtenu
Réseau de collaborations avec inverse généralisée
Questions : Com...
Méthodes à noyau pour graphes
Algorithmes force et repousse contraints
[Truong et al., 2007, Truong et al., 2008, Villa et...
Optimisation de la modularité
Sommaire
1 Motivations
2 Méthodes à noyau pour graphes
3 Optimisation de la modularité
Lumin...
Optimisation de la modularité
Pourquoi une approche alternative aux approches à
noyau ?
Limites de ces approches :
• néces...
Optimisation de la modularité
Un critère de mesure de la qualité de la classification
[Newman and Girvan, 2004] ont proposé...
Optimisation de la modularité
Un critère de mesure de la qualité de la classification
[Newman and Girvan, 2004] ont proposé...
Optimisation de la modularité
Un critère de mesure de la qualité de la classification
[Newman and Girvan, 2004] ont proposé...
Optimisation de la modularité
Comment adapter un tel critère dans le cadre
“classification organisée” ? [Rossi and Villa, 2...
Optimisation de la modularité
Comment adapter un tel critère dans le cadre
“classification organisée” ? [Rossi and Villa, 2...
Optimisation de la modularité
Comment adapter un tel critère dans le cadre
“classification organisée” ? [Rossi and Villa, 2...
Optimisation de la modularité
Optimisation de modularité par recuit simulé en cours avec
Sébastien Gadat, IMT
Principe : L...
Optimisation de la modularité
Optimisation de modularité par recuit simulé en cours avec
Sébastien Gadat, IMT
Principe : L...
Optimisation de la modularité
Algorithme de recuit simulé pour optimisation de la
modularité
Algorithme
1 On initialise la...
Optimisation de la modularité
Algorithme de recuit simulé pour optimisation de la
modularité
Algorithme
1 On initialise la...
Optimisation de la modularité
Exemples
Optimisation de la modularité sur le réseau de collaborations
Luminy (18/12/08) Nat...
Optimisation de la modularité
Exemples
Optimisation de la modularité sur le réseau de collaborations
Luminy (18/12/08) Nat...
Optimisation de la modularité
Optimisation de modularité organisée par recuit
déterministe [Rossi and Villa, 2008]
Princip...
Optimisation de la modularité
Optimisation de modularité organisée par recuit
déterministe [Rossi and Villa, 2008]
Princip...
Optimisation de la modularité
Optimisation de modularité organisée par recuit
déterministe [Rossi and Villa, 2008]
Princip...
Optimisation de la modularité
Optimisation de modularité organisée par recuit
déterministe [Rossi and Villa, 2008]
Princip...
Optimisation de la modularité
Algorithme de recuit déterministe pour optimisation de la
modularité organisée
Algorithme
Po...
Optimisation de la modularité
Exemple : Analyse du réseau de collaborations
scientifiques
Recuit déterministe Kernel SOM (I...
Optimisation de la modularité
Conclusions et perspectives
Conclusions
• Présentation d’algorithmes d’organisation pour les...
Optimisation de la modularité
Conclusions et perspectives
Conclusions
• Présentation d’algorithmes d’organisation pour les...
Optimisation de la modularité
Boulet, R., Jouve, B., Rossi, F., and Villa, N. (2008).
Batch kernel SOM and related laplaci...
Optimisation de la modularité
In Proceedings of the 6th Workshop on Self-Organizing Maps (WSOM 07), Bielefield, Germany.
Vi...
Fouille de données pour des grands graphes
Fouille de données pour des grands graphes
Prochain SlideShare
Chargement dans…5
×

Fouille de données pour des grands graphes

518 vues

Publié le

Séminaire de statistiques et applications, Institut de Mathématiques de Luminy
18 décembre 2008

Publié dans : Sciences
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
518
Sur SlideShare
0
Issues des intégrations
0
Intégrations
27
Actions
Partages
0
Téléchargements
17
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Fouille de données pour des grands graphes

  1. 1. Fouille de données sur des grands graphes Nathalie Villa-Vialaneix http://www.nathalievilla.org Toulouse School of Economics Séminaire de Statistique et Applications, Luminy 18 décembre 2008 Luminy (18/12/08) Nathalie Villa Data mining & graphes 1 / 31
  2. 2. Sommaire 1 Motivations 2 Méthodes à noyau pour graphes 3 Optimisation de la modularité Luminy (18/12/08) Nathalie Villa Data mining & graphes 2 / 31
  3. 3. Motivations Sommaire 1 Motivations 2 Méthodes à noyau pour graphes 3 Optimisation de la modularité Luminy (18/12/08) Nathalie Villa Data mining & graphes 3 / 31
  4. 4. Motivations Comprendre la structure de grands graphes Quelques exemples de problèmes modélisés par de grands graphes 1 Réseaux sociaux • réseaux de connaissances • réseaux de l’internet • réseaux de citations Luminy (18/12/08) Nathalie Villa Data mining & graphes 4 / 31
  5. 5. Motivations Comprendre la structure de grands graphes Quelques exemples de problèmes modélisés par de grands graphes 1 Réseaux sociaux • réseaux de connaissances • réseaux de l’internet • réseaux de citations 2 Réseaux biologiques • réseaux d’interactions de protéines, de gènes Luminy (18/12/08) Nathalie Villa Data mining & graphes 4 / 31
  6. 6. Motivations Comprendre la structure de grands graphes Quelques exemples de problèmes modélisés par de grands graphes 1 Réseaux sociaux • réseaux de connaissances • réseaux de l’internet • réseaux de citations 2 Réseaux biologiques • réseaux d’interactions de protéines, de gènes 3 documents, préférences (graphes bipartis), . . . Luminy (18/12/08) Nathalie Villa Data mining & graphes 4 / 31
  7. 7. Motivations Comprendre la structure de grands graphes Quelques exemples de problèmes modélisés par de grands graphes 1 Réseaux sociaux • réseaux de connaissances • réseaux de l’internet • réseaux de citations 2 Réseaux biologiques • réseaux d’interactions de protéines, de gènes 3 documents, préférences (graphes bipartis), . . . Problèmes rencontrés lors de la manipulation de ce type de données : • comment représenter le graphe de manière lisible et interprétable ? • quelles méthodes de fouille de données car aucune structure euclidienne ? • taille des données (plusieurs centaines ou plusieurs milliers de sommets...) nécessite de faire attention à la complexité. Luminy (18/12/08) Nathalie Villa Data mining & graphes 4 / 31
  8. 8. Motivations Exemple réel 1 : un graphe venu du Moyen-Âge Un très grand corpus Aux archives de Cahors (Lot), corpus de 5000 contrats agraires. Ces contrats • viennent de 4 seigneuries (environ 25 petits villages au total) du Sud-Ouest de la France ; • ont été établis entre 1240 et 1520 (avant et après la guerre de cent ans) ; Luminy (18/12/08) Nathalie Villa Data mining & graphes 5 / 31
  9. 9. Motivations Exemple réel 1 : un graphe venu du Moyen-Âge Un très grand corpus Aux archives de Cahors (Lot), corpus de 5000 contrats agraires. Ces contrats • viennent de 4 seigneuries (environ 25 petits villages au total) du Sud-Ouest de la France ; • ont été établis entre 1240 et 1520 (avant et après la guerre de cent ans) ; Ce corpus intéresse les historiens car : • seul un petit nombre de documents du Moyen-Âge parlent de la vie quotidienne des paysans ; • il peut permettre d’étudier sans a priori l’évolution de la structure du réseau social avant et après la guerre de 100 ans. Luminy (18/12/08) Nathalie Villa Data mining & graphes 5 / 31
  10. 10. Motivations Modélisation du réseau social par un graphe À partir de 1000 contracts datant d’avant la guerre de 100 ans, nous avons modélisé le réseau social par un graphe pondéré : • sommets : les paysans nommés dans les contrats (sans les nobles); Luminy (18/12/08) Nathalie Villa Data mining & graphes 6 / 31
  11. 11. Motivations Modélisation du réseau social par un graphe À partir de 1000 contracts datant d’avant la guerre de 100 ans, nous avons modélisé le réseau social par un graphe pondéré : • sommets : les paysans nommés dans les contrats (sans les nobles); • 2 paysans sont liés par une arête si : • ils apparaissent ensemble dans le même contrat ; • ils apparaissent dans deux contrats différents dans lesquels ils sont affiliés au même seigneur et qui différent l’un de l’autre de moins de 15 ans. Luminy (18/12/08) Nathalie Villa Data mining & graphes 6 / 31
  12. 12. Motivations Modélisation du réseau social par un graphe À partir de 1000 contracts datant d’avant la guerre de 100 ans, nous avons modélisé le réseau social par un graphe pondéré : • sommets : les paysans nommés dans les contrats (sans les nobles); • 2 paysans sont liés par une arête si : • ils apparaissent ensemble dans le même contrat ; • ils apparaissent dans deux contrats différents dans lesquels ils sont affiliés au même seigneur et qui différent l’un de l’autre de moins de 15 ans. • les arêtes du graphe sont pondérés par (wi,j)i,j=1...,n qui correspondent au nombre de contrats satisfaisant ces conditions. Les poids vérifient : • wi,j = wj,i ≥ 0 • wi,i = 0. Luminy (18/12/08) Nathalie Villa Data mining & graphes 6 / 31
  13. 13. Motivations Modélisation du réseau social par un graphe À partir de 1000 contracts datant d’avant la guerre de 100 ans, nous avons modélisé le réseau social par un graphe pondéré : • sommets : les paysans nommés dans les contrats (sans les nobles); • 2 paysans sont liés par une arête si : • ils apparaissent ensemble dans le même contrat ; • ils apparaissent dans deux contrats différents dans lesquels ils sont affiliés au même seigneur et qui différent l’un de l’autre de moins de 15 ans. • les arêtes du graphe sont pondérés par (wi,j)i,j=1...,n qui correspondent au nombre de contrats satisfaisant ces conditions. Les poids vérifient : • wi,j = wj,i ≥ 0 • wi,i = 0. But : Fournir aux historiens des outils pour les aider à comprendre la structure de ce réseau social. Luminy (18/12/08) Nathalie Villa Data mining & graphes 6 / 31
  14. 14. Motivations Première description du graphe La plus grande composante connexe du réseau social médiéval : • a 615 sommets (i.e. 615 paysans différents cités dans les contrats), Luminy (18/12/08) Nathalie Villa Data mining & graphes 7 / 31
  15. 15. Motivations Première description du graphe La plus grande composante connexe du réseau social médiéval : • a 615 sommets (i.e. 615 paysans différents cités dans les contrats), • a 4193 arêtes dont la somme des poids est 40 329 mais 50% de ces arêtes ont un poids égal à 1 et moins de 2% ont un poids supérieur à 100, Luminy (18/12/08) Nathalie Villa Data mining & graphes 7 / 31
  16. 16. Motivations Première description du graphe La plus grande composante connexe du réseau social médiéval : • a 615 sommets (i.e. 615 paysans différents cités dans les contrats), • a 4193 arêtes dont la somme des poids est 40 329 mais 50% de ces arêtes ont un poids égal à 1 et moins de 2% ont un poids supérieur à 100, • est un “graphe petit monde” avec une petite densité globale (2.2%) et une grande connectivité locale (77%), Luminy (18/12/08) Nathalie Villa Data mining & graphes 7 / 31
  17. 17. Motivations Première description du graphe La plus grande composante connexe du réseau social médiéval : • a 615 sommets (i.e. 615 paysans différents cités dans les contrats), • a 4193 arêtes dont la somme des poids est 40 329 mais 50% de ces arêtes ont un poids égal à 1 et moins de 2% ont un poids supérieur à 100, • est un “graphe petit monde” avec une petite densité globale (2.2%) et une grande connectivité locale (77%), • est un “graphe sans échelle typique”. Luminy (18/12/08) Nathalie Villa Data mining & graphes 7 / 31
  18. 18. Motivations Exemple réel 2 : Réseau de collaborations scientifiques [Newman, 2006] Un réseau de collaborations scientifiques autour de la thématique des réseaux sociaux : graphe connexe pondéré avec 379 sommets. Luminy (18/12/08) Nathalie Villa Data mining & graphes 8 / 31
  19. 19. Motivations Point de vue adopté [Newman and Girvan, 2004] “reducing [the] level of complexity [of a network] to one that can be interpreted readily by the human eye, will be invaluable in helping us to understand the large-scale structure of these new network data” Luminy (18/12/08) Nathalie Villa Data mining & graphes 9 / 31
  20. 20. Motivations Point de vue adopté [Newman and Girvan, 2004] “reducing [the] level of complexity [of a network] to one that can be interpreted readily by the human eye, will be invaluable in helping us to understand the large-scale structure of these new network data” Méthodologie : Mise en valeur de groupes homogènes (ou fortement connectés) liés à une visualisation permettant de comprendre facilement les relations entre ces groupes : outils statistiques liés à la classification (de sommets d’un graphe) et/ou à l’organisation. Luminy (18/12/08) Nathalie Villa Data mining & graphes 9 / 31
  21. 21. Motivations Point de vue adopté [Newman and Girvan, 2004] “reducing [the] level of complexity [of a network] to one that can be interpreted readily by the human eye, will be invaluable in helping us to understand the large-scale structure of these new network data” Méthodologie : Mise en valeur de groupes homogènes (ou fortement connectés) liés à une visualisation permettant de comprendre facilement les relations entre ces groupes : outils statistiques liés à la classification (de sommets d’un graphe) et/ou à l’organisation. Problématique de la recherche de communautés: groupes sociaux homogènes, groupes de protéines, de gènes fortement liés, etc... Luminy (18/12/08) Nathalie Villa Data mining & graphes 9 / 31
  22. 22. Méthodes à noyau pour graphes Sommaire 1 Motivations 2 Méthodes à noyau pour graphes 3 Optimisation de la modularité Luminy (18/12/08) Nathalie Villa Data mining & graphes 10 / 31
  23. 23. Méthodes à noyau pour graphes Principe général de “Batch kernel SOM” [Villa and Rossi, 2007, Boulet et al., 2008] Les sommets du graphe sont plongés dans un espace euclidien (par le biais d’un noyau). Luminy (18/12/08) Nathalie Villa Data mining & graphes 11 / 31
  24. 24. Méthodes à noyau pour graphes Principe général de “Batch kernel SOM” [Villa and Rossi, 2007, Boulet et al., 2008] Chaque sommet xi est assigné à un neurone (une classe) de la carte de Kohonen, f(xi). Les neurones sont dépendants les un des autres par une relation de voisinage (“distance”: d). Luminy (18/12/08) Nathalie Villa Data mining & graphes 11 / 31
  25. 25. Méthodes à noyau pour graphes Principe général de “Batch kernel SOM” [Villa and Rossi, 2007, Boulet et al., 2008] p1 p2 p3 1 2 3 Chaque neurone j de la carte est représenté par un prototype pj. Les couples (j, pj) et (xi, f(xi)) dépendent l’un de l’autre et sont mis à jour alternativement afin d’approcher la minimisation de l’énergie de la carte : En = n j=1 M i=1 h(d(f(xj), i)) φ(xi) − pj 2 Luminy (18/12/08) Nathalie Villa Data mining & graphes 11 / 31
  26. 26. Méthodes à noyau pour graphes “Astuce noyau” et calcul de l’énergie On utilise les propriétés de noyau reproduisant de K pour écrire l’énergie : En = n j=1 M i=1 h(d(f(xj), i)) φ(xi) − pj 2 Luminy (18/12/08) Nathalie Villa Data mining & graphes 12 / 31
  27. 27. Méthodes à noyau pour graphes “Astuce noyau” et calcul de l’énergie On utilise les propriétés de noyau reproduisant de K pour écrire l’énergie : En = n j=1 M i=1 h(d(f(xj), i)) φ(xi) − pj 2 = n j=1 M i=1 h(d(f(xj), i)) φ(xi) − n k=1 αj k φ(xk ) 2 Luminy (18/12/08) Nathalie Villa Data mining & graphes 12 / 31
  28. 28. Méthodes à noyau pour graphes “Astuce noyau” et calcul de l’énergie On utilise les propriétés de noyau reproduisant de K pour écrire l’énergie : En = n j=1 M i=1 h(d(f(xj), i)) φ(xi) − pj 2 = n j=1 M i=1 h(d(f(xj), i)) φ(xi) − n k=1 αj k φ(xk ) 2 = n j=1 M i=1 h(d(f(xj), i))  K(xi, xi) − 2 n k=1 αj k K(xi, xk ) + n k,k =1 αk αk K(xk , xk )   où K(x, x ) = φ(x), φ(x ) H . Luminy (18/12/08) Nathalie Villa Data mining & graphes 12 / 31
  29. 29. Méthodes à noyau pour graphes Quel noyau ? Définition du Laplacien [Kondor and Lafferty, 2002] Pour un graphe de sommets V = {x1, . . . , xn} et de poids positifs (wi,j)i,j=1,...,n tels que, pour tout i, j = 1, . . . , n, wi,j = wj,i and di = n j=1 wi,j, Laplacien : L = (Li,j)i,j=1,...,n où Li,j = −wi,j if i j di if i = j ; Luminy (18/12/08) Nathalie Villa Data mining & graphes 13 / 31
  30. 30. Méthodes à noyau pour graphes Propriétés du Laplacien I [von Luxburg, 2007] Composantes connexes KerL = Span{IA1 , . . . , IAk } où Ai indique les positions des sommets de la ième composante connexe du graphe. 1 4 5 2 3 KerL = Span      1 0 0 1 1   ;   0 1 1 0 0      Luminy (18/12/08) Nathalie Villa Data mining & graphes 14 / 31
  31. 31. Méthodes à noyau pour graphes Propriétés du Laplacien II [Boulet et al., 2008] Communauté parfaite : Sous-graphe complet (clique) dont les sommets possèdent les mêmes voisins à l’extérieur de la clique. Laplacien and communautés parfaites Pour un graphe non pondéré, Le graphe a une communauté parfaite à m sommets ⇔ L possède m vecteurs propres qui ont les mêmes n − m coordonnées nulles. Luminy (18/12/08) Nathalie Villa Data mining & graphes 15 / 31
  32. 32. Méthodes à noyau pour graphes Propriétés du Laplacien II [Boulet et al., 2008] Communauté parfaite : Sous-graphe complet (clique) dont les sommets possèdent les mêmes voisins à l’extérieur de la clique. Application : Luminy (18/12/08) Nathalie Villa Data mining & graphes 15 / 31
  33. 33. Méthodes à noyau pour graphes Propriétés du Laplacien II [Boulet et al., 2008] Communauté parfaite : Sous-graphe complet (clique) dont les sommets possèdent les mêmes voisins à l’extérieur de la clique. Application : Limite : Seuls 1/3 des sommets du graphe peuvent être représentés de cette manière. Luminy (18/12/08) Nathalie Villa Data mining & graphes 15 / 31
  34. 34. Méthodes à noyau pour graphes Propriétés du Laplacien III [von Luxburg, 2007] Problème de la coupe optimale : Supposons que le graphe soit connexe. Trouver une classification des sommets du graphe, A1, . . . , Ak telle que 1 2 k i=1 j∈Ai,j Ai wj,j est minimale , est équivalent à H = arg min h∈Rn×k Tr hT Lh subject to hT h = I hi = 1/ √ |Ai|1Ai Luminy (18/12/08) Nathalie Villa Data mining & graphes 16 / 31
  35. 35. Méthodes à noyau pour graphes Propriétés du Laplacien III [von Luxburg, 2007] Problème de la coupe optimale : Supposons que le graphe soit connexe. Trouver une classification des sommets du graphe, A1, . . . , Ak telle que 1 2 k i=1 j∈Ai,j Ai wj,j est minimale , est équivalent à H = arg min h∈Rn×k Tr hT Lh subject to hT h = I hi = 1/ √ |Ai|1Ai ⇒ problème NP-complet. Luminy (18/12/08) Nathalie Villa Data mining & graphes 16 / 31
  36. 36. Méthodes à noyau pour graphes Propriétés du Laplacien III [von Luxburg, 2007] Problème de la coupe optimale : Supposons que le graphe soit connexe. Trouver une classification des sommets du graphe, A1, . . . , Ak telle que 1 2 k i=1 j∈Ai,j Ai wj,j est minimale peut être approché par H = arg min h∈Rn×k Tr hT Lh subject to hT h = I Luminy (18/12/08) Nathalie Villa Data mining & graphes 16 / 31
  37. 37. Méthodes à noyau pour graphes Propriétés du Laplacien III [von Luxburg, 2007] Problème de la coupe optimale : Supposons que le graphe soit connexe. Trouver une classification des sommets du graphe, A1, . . . , Ak telle que 1 2 k i=1 j∈Ai,j Ai wj,j est minimale peut être approché par H = arg min h∈Rn×k Tr hT Lh subject to hT h = I Spectral clustering : Trouver les vecteurs propres associés aux k plus petites valeurs propres de L, H, et faire la classification sur les colonnes de H. Luminy (18/12/08) Nathalie Villa Data mining & graphes 16 / 31
  38. 38. Méthodes à noyau pour graphes Propriétés du Laplacien III [von Luxburg, 2007] Problème de la coupe optimale : Supposons que le graphe soit connexe. Trouver une classification des sommets du graphe, A1, . . . , Ak telle que 1 2 k i=1 j∈Ai,j Ai wj,j est minimale peut être approché par H = arg min h∈Rn×k Tr hT Lh subject to hT h = I Spectral clustering : Trouver les vecteurs propres associés aux k plus petites valeurs propres de L, H, et faire la classification sur les colonnes de H. Quelques problèmes du “spectral clustering” : Utilisation d’une partie du spectre seulement (laquelle ?), a tendance à produire un faible nombre de classes de très grosses tailles et beaucoup de micro classes (un à cinq individus). Luminy (18/12/08) Nathalie Villa Data mining & graphes 16 / 31
  39. 39. Méthodes à noyau pour graphes Des versions régularisées de L 1 La matrice de diffusion [Kondor and Lafferty, 2002] : pour β > 0, Kβ = e−βL = +∞ k=1 (−βL)k k! . ⇒ Kβ : V × V → R (xi, xj) → K β i,j noyau de diffusion (ou noyau de la chaleur) Luminy (18/12/08) Nathalie Villa Data mining & graphes 17 / 31
  40. 40. Méthodes à noyau pour graphes Des versions régularisées de L 1 La matrice de diffusion [Kondor and Lafferty, 2002] : pour β > 0, Kβ = e−βL = +∞ k=1 (−βL)k k! . ⇒ Kβ : V × V → R (xi, xj) → K β i,j noyau de diffusion (ou noyau de la chaleur) Quantité d’énergie reçue en xi lorsque l’énergie est injectée en xj et que la diffusion se fait de manière continue le long des arêtes du graphe. Luminy (18/12/08) Nathalie Villa Data mining & graphes 17 / 31
  41. 41. Méthodes à noyau pour graphes Des versions régularisées de L 1 La matrice de diffusion [Kondor and Lafferty, 2002] : pour β > 0, Kβ = e−βL = +∞ k=1 (−βL)k k! . ⇒ Kβ : V × V → R (xi, xj) → K β i,j noyau de diffusion (ou noyau de la chaleur) Quantité d’énergie reçue en xi lorsque l’énergie est injectée en xj et que la diffusion se fait de manière continue le long des arêtes du graphe. 2 L’inverse généralisée du Laplacien [Fouss et al., 2007] : K = L+. Luminy (18/12/08) Nathalie Villa Data mining & graphes 17 / 31
  42. 42. Méthodes à noyau pour graphes Des versions régularisées de L 1 La matrice de diffusion [Kondor and Lafferty, 2002] : pour β > 0, Kβ = e−βL = +∞ k=1 (−βL)k k! . ⇒ Kβ : V × V → R (xi, xj) → K β i,j noyau de diffusion (ou noyau de la chaleur) Quantité d’énergie reçue en xi lorsque l’énergie est injectée en xj et que la diffusion se fait de manière continue le long des arêtes du graphe. 2 L’inverse généralisée du Laplacien [Fouss et al., 2007] : K = L+. Temps moyen pour atteindre xi à partir de xj lors d’une marche aléatoire sur le graphe. Luminy (18/12/08) Nathalie Villa Data mining & graphes 17 / 31
  43. 43. Méthodes à noyau pour graphes Exemple de résultat obtenu Réseau social médiéval avec noyau de la chaleur [Boulet et al., 2008] Luminy (18/12/08) Nathalie Villa Data mining & graphes 18 / 31
  44. 44. Méthodes à noyau pour graphes Exemple de résultat obtenu Réseau social médiéval avec noyau de la chaleur [Boulet et al., 2008] Luminy (18/12/08) Nathalie Villa Data mining & graphes 18 / 31
  45. 45. Méthodes à noyau pour graphes Exemple de résultat obtenu Réseau social médiéval avec noyau de la chaleur [Boulet et al., 2008] Luminy (18/12/08) Nathalie Villa Data mining & graphes 18 / 31
  46. 46. Méthodes à noyau pour graphes Exemple de résultat obtenu Réseau de collaborations avec inverse généralisée Questions : Comment utiliser ce travail de classification comme première étape d’une représentation complète du graphe ? Comment représenter complètement la classification (ie, le plongement du graphe sur la carte) ? Luminy (18/12/08) Nathalie Villa Data mining & graphes 18 / 31
  47. 47. Méthodes à noyau pour graphes Algorithmes force et repousse contraints [Truong et al., 2007, Truong et al., 2008, Villa et al., 2008] La Suite... En ajoutant des contraintes sur les algorithmes de force et repousse Luminy (18/12/08) Nathalie Villa Data mining & graphes 19 / 31
  48. 48. Optimisation de la modularité Sommaire 1 Motivations 2 Méthodes à noyau pour graphes 3 Optimisation de la modularité Luminy (18/12/08) Nathalie Villa Data mining & graphes 21 / 31
  49. 49. Optimisation de la modularité Pourquoi une approche alternative aux approches à noyau ? Limites de ces approches : • nécessitent une décomposition spectrale du Laplacien : trop coûteuse si le graphe a plusieurs milliers de sommets ; • dépendent du choix du noyau (ie, de la structure euclidienne placée sur les sommets) ; • problèmes de sélection des paramètres (noyau, taille de la carte) car le critère de qualité habituel de l’algorithme de Kohonen (énergie) dépend de ces paramètres. Luminy (18/12/08) Nathalie Villa Data mining & graphes 22 / 31
  50. 50. Optimisation de la modularité Un critère de mesure de la qualité de la classification [Newman and Girvan, 2004] ont proposé une mesure de qualité d’un découpage en communautés, la modularité : Q = {arêtes à l’intérieur des communautés} − {arêtes attendues dans un modèle “nul”} Luminy (18/12/08) Nathalie Villa Data mining & graphes 23 / 31
  51. 51. Optimisation de la modularité Un critère de mesure de la qualité de la classification [Newman and Girvan, 2004] ont proposé une mesure de qualité d’un découpage en communautés, la modularité : Q = {arêtes à l’intérieur des communautés} − {arêtes attendues dans un modèle “nul”} Que peut-être le modèle nul ? Différentes définitions sont possibles. . . [Newman, 2006] propose • le nombre d’arêtes du modèle nul est celui du graphe observé ; • le degré de chaque sommet du modèle nul est celui du graphe observé (l’attachement à un individu de fort degré est plus probable). Luminy (18/12/08) Nathalie Villa Data mining & graphes 23 / 31
  52. 52. Optimisation de la modularité Un critère de mesure de la qualité de la classification [Newman and Girvan, 2004] ont proposé une mesure de qualité d’un découpage en communautés, la modularité : Q = {arêtes à l’intérieur des communautés} − {arêtes attendues dans un modèle “nul”} Que peut-être le modèle nul ? Différentes définitions sont possibles. . . [Newman, 2006] propose • le nombre d’arêtes du modèle nul est celui du graphe observé ; • le degré de chaque sommet du modèle nul est celui du graphe observé (l’attachement à un individu de fort degré est plus probable). Le modèle nul donne pij = didj n où di est le degré du sommet xi. On a donc Q = 1 2p i,j [aij − pij] I[C(xi)=C(xj)] où A = (aij)ij est la matrice d’adjacence du graphe et 2p = aij. Luminy (18/12/08) Nathalie Villa Data mining & graphes 23 / 31
  53. 53. Optimisation de la modularité Comment adapter un tel critère dans le cadre “classification organisée” ? [Rossi and Villa, 2008] Si h est une similarité sur la carte (h(i, j) = e−γd(i,j)2 ), Luminy (18/12/08) Nathalie Villa Data mining & graphes 24 / 31
  54. 54. Optimisation de la modularité Comment adapter un tel critère dans le cadre “classification organisée” ? [Rossi and Villa, 2008] Si h est une similarité sur la carte (h(i, j) = e−γd(i,j)2 ), une approche organisée de la modularité est obtenue par maximisation sur l’ensemble des plongements possibles sur la carte des noeuds du graphe de : S = i,j h(f(xi), f(xj)) (aij − pij) où f(xi) désigne le neurone dans lequel le sommet xi est classé. Luminy (18/12/08) Nathalie Villa Data mining & graphes 24 / 31
  55. 55. Optimisation de la modularité Comment adapter un tel critère dans le cadre “classification organisée” ? [Rossi and Villa, 2008] Si h est une similarité sur la carte (h(i, j) = e−γd(i,j)2 ), une approche organisée de la modularité est obtenue par maximisation sur l’ensemble des plongements possibles sur la carte des noeuds du graphe de : S = i,j h(f(xi), f(xj)) (aij − pij) où f(xi) désigne le neurone dans lequel le sommet xi est classé. Problème : La maximisation de Q ou de S sont des problèmes NP-complets (nombre de classifications possibles sur la carte : m2n ). Luminy (18/12/08) Nathalie Villa Data mining & graphes 24 / 31
  56. 56. Optimisation de la modularité Optimisation de modularité par recuit simulé en cours avec Sébastien Gadat, IMT Principe : Lorsque l’on cherche à minimiser une énergie E(f) (= −Q(f) ou −S(f)), on simule de manière stochastique (chaîne de Markov sur les états, f : classifications des sommets),la probabilité PT (f) = e−E(f)/T g e−E(g)/T . Luminy (18/12/08) Nathalie Villa Data mining & graphes 25 / 31
  57. 57. Optimisation de la modularité Optimisation de modularité par recuit simulé en cours avec Sébastien Gadat, IMT Principe : Lorsque l’on cherche à minimiser une énergie E(f) (= −Q(f) ou −S(f)), on simule de manière stochastique (chaîne de Markov sur les états, f : classifications des sommets),la probabilité PT (f) = e−E(f)/T g e−E(g)/T . Lorque T → 0, PT (f) se concentre sur minf E(f). Luminy (18/12/08) Nathalie Villa Data mining & graphes 25 / 31
  58. 58. Optimisation de la modularité Algorithme de recuit simulé pour optimisation de la modularité Algorithme 1 On initialise la classification des sommets à un état aléatoire f0 ∈ {1, . . . , m}⊗n 2 On répète 1 On tire deux classes j1 et j2 dans {1, . . . , m} et un sommet xi dans (f0 )−1 (j1) ∩ (f0 )−1 (j2) (les deux opérations équiprobables) 2 Notons ˜f l’état dans lequel xi a subi un échange de classe entre j1 et j2. On note ∆E = Q(˜f) − Q(f0 ) 3 si ∆E > 0 alors f1 = ˜f 4 sinon f1 = ˜f avec probabilité e∆E/T et f1 = f0 avec probabilité e−∆E/T 5 On diminue T 3 On stoppe à stabilisation de l’algorithme. Luminy (18/12/08) Nathalie Villa Data mining & graphes 26 / 31
  59. 59. Optimisation de la modularité Algorithme de recuit simulé pour optimisation de la modularité Algorithme 1 On initialise la classification des sommets à un état aléatoire f0 ∈ {1, . . . , m}⊗n 2 On répète 1 On tire deux classes j1 et j2 dans {1, . . . , m} et un sommet xi dans (f0 )−1 (j1) ∩ (f0 )−1 (j2) (les deux opérations équiprobables) 2 Notons ˜f l’état dans lequel xi a subi un échange de classe entre j1 et j2. On note ∆E = Q(˜f) − Q(f0 ) 3 si ∆E > 0 alors f1 = ˜f 4 sinon f1 = ˜f avec probabilité e∆E/T et f1 = f0 avec probabilité e−∆E/T 5 On diminue T 3 On stoppe à stabilisation de l’algorithme. Chacun des calculs ∆E ne coûte “presque rien” (multiplication vectorielle). Luminy (18/12/08) Nathalie Villa Data mining & graphes 26 / 31
  60. 60. Optimisation de la modularité Exemples Optimisation de la modularité sur le réseau de collaborations Luminy (18/12/08) Nathalie Villa Data mining & graphes 27 / 31
  61. 61. Optimisation de la modularité Exemples Optimisation de la modularité sur le réseau de collaborations Luminy (18/12/08) Nathalie Villa Data mining & graphes 27 / 31
  62. 62. Optimisation de la modularité Optimisation de modularité organisée par recuit déterministe [Rossi and Villa, 2008] Principe général : Approcher EPT (f) = eS(f)/T g eS(g)/T en approchant PT par une distribution qui se factorise: • PT (f) est approchée par RE T (f) = e i,k Fik Eik /T g e i,k Gik Eik /T où F (resp. G) est la matrice d’affectation de taille n × m de la classification f (resp. g) et E est une matrice réelle de même taille. Luminy (18/12/08) Nathalie Villa Data mining & graphes 28 / 31
  63. 63. Optimisation de la modularité Optimisation de modularité organisée par recuit déterministe [Rossi and Villa, 2008] Principe général : Approcher EPT (f) = eS(f)/T g eS(g)/T en approchant PT par une distribution qui se factorise: • PT (f) est approchée par RE T (f) = e i,k Fik Eik /T g e i,k Gik Eik /T où F (resp. G) est la matrice d’affectation de taille n × m de la classification f (resp. g) et E est une matrice réelle de même taille. Sous RE T (f), les Fik sont indépendants pour i = 1, . . . , n. Luminy (18/12/08) Nathalie Villa Data mining & graphes 28 / 31
  64. 64. Optimisation de la modularité Optimisation de modularité organisée par recuit déterministe [Rossi and Villa, 2008] Principe général : Approcher EPT (f) = eS(f)/T g eS(g)/T en approchant PT par une distribution qui se factorise: • PT (f) est approchée par RE T (f) = e i,k Fik Eik /T g e i,k Gik Eik /T où F (resp. G) est la matrice d’affectation de taille n × m de la classification f (resp. g) et E est une matrice réelle de même taille. Sous RE T (f), les Fik sont indépendants pour i = 1, . . . , n. • On choisit E de manière à minimiser la distance de Kullback-Leibler : KL(R|P) = f RE T (f) log RE T (f) PT (f) . Luminy (18/12/08) Nathalie Villa Data mining & graphes 28 / 31
  65. 65. Optimisation de la modularité Optimisation de modularité organisée par recuit déterministe [Rossi and Villa, 2008] Principe général : Approcher EPT (f) = eS(f)/T g eS(g)/T en approchant PT par une distribution qui se factorise: • PT (f) est approchée par RE T (f) = e i,k Fik Eik /T g e i,k Gik Eik /T où F (resp. G) est la matrice d’affectation de taille n × m de la classification f (resp. g) et E est une matrice réelle de même taille. Sous RE T (f), les Fik sont indépendants pour i = 1, . . . , n. • On choisit E de manière à minimiser la distance de Kullback-Leibler : KL(R|P) = f RE T (f) log RE T (f) PT (f) . • Les quantités E et ERE T (Fik ) sont estimées itérativement alternativement par un algorithme EM. Luminy (18/12/08) Nathalie Villa Data mining & graphes 28 / 31
  66. 66. Optimisation de la modularité Algorithme de recuit déterministe pour optimisation de la modularité organisée Algorithme Pour une suite décroissante de valeurs T1, T2, . . . , TL , 1 On initialise ERE T (Fik ) de manière aléatoire dans [0, 1] 2 On répète pour l = 1, . . . , L 1 Phase E : Eik = 2 j i k ERE T (Fjk )Hkk Bji où H est la matrice des similarités sur la carte et B = 1 2p (A − P); 2 Phase M : ERE T (Fik ) = eEik /Tl k eEik /Tl 3 On convertit ERE T (Fik ) en classification : f(xi) = arg max k=1,...,m ERE T (Fik ). Luminy (18/12/08) Nathalie Villa Data mining & graphes 29 / 31
  67. 67. Optimisation de la modularité Exemple : Analyse du réseau de collaborations scientifiques Recuit déterministe Kernel SOM (Inv. généralisée) Modularité = 0,836 Modularité = 0,816 % d’arêtes coupées sur la carte : 0 % d’arêtes coupées : 0,04 Luminy (18/12/08) Nathalie Villa Data mining & graphes 30 / 31
  68. 68. Optimisation de la modularité Conclusions et perspectives Conclusions • Présentation d’algorithmes d’organisation pour les graphes • Approches spectrales, approches issues de l’optimisation • Ajout d’un aspect visuel Luminy (18/12/08) Nathalie Villa Data mining & graphes 31 / 31
  69. 69. Optimisation de la modularité Conclusions et perspectives Conclusions • Présentation d’algorithmes d’organisation pour les graphes • Approches spectrales, approches issues de l’optimisation • Ajout d’un aspect visuel Perspectives • Essai sur de très grands graphes (plusieurs milliers de sommets) : réseaux biologiques, recherche d’informations • Comparaison / Évolution ??? Luminy (18/12/08) Nathalie Villa Data mining & graphes 31 / 31
  70. 70. Optimisation de la modularité Boulet, R., Jouve, B., Rossi, F., and Villa, N. (2008). Batch kernel SOM and related laplacian methods for social network analysis. Neurocomputing, 71(7-9):1257–1273. Fouss, F., Pirotte, A., Renders, J., and Saerens, M. (2007). Random-walk computation of similarities between nodes of a graph, with application to collaborative recommendation. IEEE Transactions on Knowledge and Data Engineering, 19(3):355–369. Kondor, R. and Lafferty, J. (2002). Diffusion kernels on graphs and other discrete structures. In Proceedings of the 19th International Conference on Machine Learning, pages 315–322. Newman, M. (2006). Finding community structure in networks using the eigenvectors of matrices. Physical Review, E, 74(036104). Newman, M. and Girvan, M. (2004). Finding and evaluating community structure in networks. Physical Review, E, 69:026113. Rossi, F. and Villa, N. (2008). Topologically ordered graph clustering via deterministic annealing. soumis. Truong, Q., Dkaki, T., and Charrel, P. (2007). An energy model for the drawing of clustered graphs. In Proceedings of Vème colloque international VSST, Marrakech, Maroc. Truong, Q., Dkaki, T., and Charrel, P. (2008). Clustered graphs drawing. In Proceedings of Stimulating Manufacturing Excellence in SME, Hammamet, Tunisie. Villa, N. and Rossi, F. (2007). A comparison between dissimilarity SOM and kernel SOM for clustering the vertices of a graph. Luminy (18/12/08) Nathalie Villa Data mining & graphes 31 / 31
  71. 71. Optimisation de la modularité In Proceedings of the 6th Workshop on Self-Organizing Maps (WSOM 07), Bielefield, Germany. Villa, N., Rossi, F., and Truong, Q. (2008). Mining a medieval social network by kernel som and related methods. In Proceedings of MASHS 2008 (Modèles et Apprentissages en Sciences Humaines et Sociales), Créteil, France. von Luxburg, U. (2007). A tutorial on spectral clustering. Statistics and Computing, 17(4):395–416. Luminy (18/12/08) Nathalie Villa Data mining & graphes 31 / 31

×