Combiner classification et visualisation pour
l’exploration de grands réseaux
Nathalie Villa-Vialaneix
http://www.nathaliev...
Visualisation de graphes : pourquoi ?
Plan
1 Visualisation de graphes : pourquoi ?
2 Visualisation par classification hiéra...
Visualisation de graphes : pourquoi ?
Contexte et problématique
Un réseau (graphe) G = (V, E, W) avec
• n sommets V = {x1,...
Visualisation de graphes : pourquoi ?
Visualisation : un outil pour comprendre le graphe
Approche courante pour explorer l...
Visualisation de graphes : pourquoi ?
Visualisation : un outil pour comprendre le graphe
Approche courante pour explorer l...
Visualisation de graphes : pourquoi ?
Visualisation : un outil pour comprendre le graphe
Approche courante pour explorer l...
Visualisation de graphes : pourquoi ?
Visualisation : un outil pour comprendre le graphe
Approche courante pour explorer l...
Visualisation de graphes : pourquoi ?
Limites des approches FDP
• lents (difficiles à mettre en œuvre pour des graphes de t...
Visualisation de graphes : pourquoi ?
Limites des approches FDP
• lents (difficiles à mettre en œuvre pour des graphes de t...
Visualisation de graphes : pourquoi ?
Limites des approches FDP
• lents (difficiles à mettre en œuvre pour des graphes de t...
Visualisation de graphes : pourquoi ?
Mettre en valeur les “communautés” lors de la
représentation
1 approche globale : re...
Visualisation de graphes : pourquoi ?
Mettre en valeur les “communautés” lors de la
représentation
1 approche globale : re...
Visualisation de graphes : pourquoi ?
Mettre en valeur les “communautés” lors de la
représentation
1 approche globale : re...
Visualisation de graphes : pourquoi ?
Mettre en valeur les “communautés” lors de la
représentation
1 approche globale : re...
Visualisation de graphes : pourquoi ?
Mettre en valeur les “communautés” lors de la
représentation
1 approche globale : re...
Visualisation de graphes : pourquoi ?
Approches combinant classification et visualisation...
... basées sur la modularité :...
Visualisation de graphes : pourquoi ?
Interprétation
Une bonne classification maximise la modularité :
• Q quand (xi, xj) s...
Visualisation de graphes : pourquoi ?
Interprétation
Une bonne classification maximise la modularité :
• Q quand (xi, xj) s...
Visualisation de graphes : pourquoi ?
Interprétation
Une bonne classification maximise la modularité :
• Q quand (xi, xj) s...
Visualisation par classification hiérarchique
Plan
1 Visualisation de graphes : pourquoi ?
2 Visualisation par classificatio...
Visualisation par classification hiérarchique
Présentation générale de la méthodologie
2 étapes combinées :
• Obtention d’u...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Plan
1 Visualisation de graphes ...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Méthodes d’approximation de l’op...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Méthodes d’approximation de l’op...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Méthodes d’approximation de l’op...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Description de l’approche de cla...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Obtention d’une hiérarchie de cl...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Obtention d’une hiérarchie de cl...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Obtention d’une hiérarchie de cl...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Critère d’arrêt de la hiérarchie...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Critère d’arrêt de la hiérarchie...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Critère d’arrêt de la hiérarchie...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Critère d’arrêt de la hiérarchie...
Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications
Critère d’arrêt de la hiérarchie...
Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications
Plan
1 Visualisation de grap...
Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications
Principe général de la visua...
Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications
Principe général de la visua...
Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications
Représenter une hiérarchie d...
Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications
Représenter une hiérarchie d...
Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications
Représenter une hiérarchie d...
Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications
Représenter la contribution ...
Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications
Représenter la contribution ...
Visualisation par classification hiérarchique Exemples et comparaisons
Plan
1 Visualisation de graphes : pourquoi ?
2 Visua...
Visualisation par classification hiérarchique Exemples et comparaisons
« Political books »
Description :
• sommets : 105 li...
Visualisation par classification hiérarchique Exemples et comparaisons
« Political books »
Description :
• sommets : 105 li...
Visualisation par classification hiérarchique Exemples et comparaisons
« Political books »
Description :
• sommets : 105 li...
Visualisation par classification hiérarchique Exemples et comparaisons
« Political books »
Description :
• sommets : 105 li...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Description : graphe...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Description : graphe...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Description : graphe...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Visualisation de rés...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Visualisation de rés...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Visualisation de rés...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Visualisation de rés...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Visualisation de rés...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Visualisation de rés...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Visualisation de rés...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation d’un grand graphe
Visualisation de rés...
Visualisation par classification hiérarchique Exemples et comparaisons
Conclusion et limites
Résumé des avantages de l’appr...
Visualisation par classification hiérarchique Exemples et comparaisons
Conclusion et limites
Résumé des avantages de l’appr...
Visualisation par classification hiérarchique Exemples et comparaisons
Conclusion et limites
Résumé des avantages de l’appr...
Visualisation par classification hiérarchique Exemples et comparaisons
Références
Auber, D., Chiricota, Y., Jourdan, F., an...
Visualisation par classification hiérarchique Exemples et comparaisons
Herman, I., Melançon, G., and Scott Marshall, M. (20...
Visualisation par classification hiérarchique Exemples et comparaisons
Visualisation interactive multi-échelle des grands g...
Prochain SlideShare
Chargement dans…5
×

Combiner classification et visualisation pour l’exploration de grands réseaux

394 vues

Publié le

November 8th, 2011
12èmes Journées MSTGA, INRA d’Auzeville.

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
394
Sur SlideShare
0
Issues des intégrations
0
Intégrations
36
Actions
Partages
0
Téléchargements
4
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Combiner classification et visualisation pour l’exploration de grands réseaux

  1. 1. Combiner classification et visualisation pour l’exploration de grands réseaux Nathalie Villa-Vialaneix http://www.nathalievilla.org nathalie.villa@univ-paris1.fr Journées MSTGA, INRA Toulouse, 7-8/11/2011 Travail joint avec Fabrice Rossi (SAMM, Université Paris 1) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 1 / 23
  2. 2. Visualisation de graphes : pourquoi ? Plan 1 Visualisation de graphes : pourquoi ? 2 Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Visualisation d’une hiérarchie de classifications Exemples et comparaisons Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 2 / 23
  3. 3. Visualisation de graphes : pourquoi ? Contexte et problématique Un réseau (graphe) G = (V, E, W) avec • n sommets V = {x1, . . . , xn} ; • des arêtes, E, pondérées par des poids Wij = Wji ≥ 0 (Wii = 0). Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 3 / 23
  4. 4. Visualisation de graphes : pourquoi ? Visualisation : un outil pour comprendre le graphe Approche courante pour explorer le graphe : visualisation par algorithme de forces (FDP), par exemple [Fruchterman and Reingold, 1991] Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 4 / 23
  5. 5. Visualisation de graphes : pourquoi ? Visualisation : un outil pour comprendre le graphe Approche courante pour explorer le graphe : visualisation par algorithme de forces (FDP), par exemple [Fruchterman and Reingold, 1991] • forces attractives : le long des arêtes (analogues à des ressorts) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 4 / 23
  6. 6. Visualisation de graphes : pourquoi ? Visualisation : un outil pour comprendre le graphe Approche courante pour explorer le graphe : visualisation par algorithme de forces (FDP), par exemple [Fruchterman and Reingold, 1991] • forces attractives : le long des arêtes (analogues à des ressorts) • forces répulsives : entre toutes les paires de sommets (analogues à des forces électriques) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 4 / 23
  7. 7. Visualisation de graphes : pourquoi ? Visualisation : un outil pour comprendre le graphe Approche courante pour explorer le graphe : visualisation par algorithme de forces (FDP), par exemple [Fruchterman and Reingold, 1991] • forces attractives : le long des arêtes (analogues à des ressorts) • forces répulsives : entre toutes les paires de sommets (analogues à des forces électriques) algorithme itératif jusqu’à stabilisation des positions des sommets. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 4 / 23
  8. 8. Visualisation de graphes : pourquoi ? Limites des approches FDP • lents (difficiles à mettre en œuvre pour des graphes de très grande taille) ; Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 5 / 23
  9. 9. Visualisation de graphes : pourquoi ? Limites des approches FDP • lents (difficiles à mettre en œuvre pour des graphes de très grande taille) ; • privilégient l’esthétique à l’interprétabilité : • Tendance : arêtes courtes et de tailles uniformes • Conséquence négative : regroupement des nœuds de forts degrés au centre de la figure Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 5 / 23
  10. 10. Visualisation de graphes : pourquoi ? Limites des approches FDP • lents (difficiles à mettre en œuvre pour des graphes de très grande taille) ; • privilégient l’esthétique à l’interprétabilité : • Tendance : arêtes courtes et de tailles uniformes • Conséquence négative : regroupement des nœuds de forts degrés au centre de la figure Or, approche naturelle d’exploration d’un graphe : 1 repérer la structure macroscopique : recherche de “communautés” et de leurs relations ; 2 affiner les détails dans certaines parties. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 5 / 23
  11. 11. Visualisation de graphes : pourquoi ? Mettre en valeur les “communautés” lors de la représentation 1 approche globale : représenter tous les sommets du graphe en modifiant les forces de manière à mettre en valeur les zones denses : [Noack, 2007] algorithme LinLog Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 6 / 23
  12. 12. Visualisation de graphes : pourquoi ? Mettre en valeur les “communautés” lors de la représentation 1 approche globale : représenter tous les sommets du graphe en modifiant les forces de manière à mettre en valeur les zones denses : [Noack, 2007] algorithme LinLog 2 faire une classification des sommets puis une représentation simplifiée [Herman et al., 2000] • classification des sommets en classes V1, . . . , VC ; • représenter le graphe des classes : sommets V1, . . . , VC (aire proportionnelle à |Vj|) et arêtes d’épaisseur proportionnelle à xk ∈Vi ,xk ∈Vj Wij Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 6 / 23
  13. 13. Visualisation de graphes : pourquoi ? Mettre en valeur les “communautés” lors de la représentation 1 approche globale : représenter tous les sommets du graphe en modifiant les forces de manière à mettre en valeur les zones denses : [Noack, 2007] algorithme LinLog 2 faire une classification des sommets puis une représentation simplifiée [Herman et al., 2000] • classification des sommets en classes V1, . . . , VC ; • représenter le graphe des classes : sommets V1, . . . , VC (aire proportionnelle à |Vj|) et arêtes d’épaisseur proportionnelle à xk ∈Vi ,xk ∈Vj Wij problème : Modifier FDP pour sommets de tailles variables. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 6 / 23
  14. 14. Visualisation de graphes : pourquoi ? Mettre en valeur les “communautés” lors de la représentation 1 approche globale : représenter tous les sommets du graphe en modifiant les forces de manière à mettre en valeur les zones denses : [Noack, 2007] algorithme LinLog 2 faire une classification des sommets puis une représentation simplifiée approche alternative : classification et placement simultanés sur une carte auto-organisatrice [Rossi and Villa-Vialaneix, 2010] Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 6 / 23
  15. 15. Visualisation de graphes : pourquoi ? Mettre en valeur les “communautés” lors de la représentation 1 approche globale : représenter tous les sommets du graphe en modifiant les forces de manière à mettre en valeur les zones denses : [Noack, 2007] algorithme LinLog 2 faire une classification des sommets puis une représentation simplifiée 3 approche hybride : représentations hiérarchiques dont la précision augmente [Auber et al., 2003, Auber and Jourdan, 2005, Seifi et al., 2010] Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 6 / 23
  16. 16. Visualisation de graphes : pourquoi ? Approches combinant classification et visualisation... ... basées sur la modularité : Q(V1, . . . , VC) = 1 2m C k=1 xi,xj∈Vk (Wij − Pij) avec Pij poids d’un « modèle nul »(poids dépendant seulement des degrés des sommets et non de leurs classes) : Pij = didj 2m avec di = 1 2 j i Wij. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 7 / 23
  17. 17. Visualisation de graphes : pourquoi ? Interprétation Une bonne classification maximise la modularité : • Q quand (xi, xj) sont dans la même classe et Wij >> Pij • Q quand (xi, xj) sont dans deux classes différentes et Wij << Pij car Q(C) + 1 2m k k i∈Ck , j∈Ck (Wij − Pij) = 0. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 8 / 23
  18. 18. Visualisation de graphes : pourquoi ? Interprétation Une bonne classification maximise la modularité : • Q quand (xi, xj) sont dans la même classe et Wij >> Pij • Q quand (xi, xj) sont dans deux classes différentes et Wij << Pij car Q(C) + 1 2m k k i∈Ck , j∈Ck (Wij − Pij) = 0. • Modularité : aide à séparer des hubs ( spectral clustering ou critère de coupe minimal) mais petit défaut de résolution (voir [Fortunato and Barthélémy, 2007]). Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 8 / 23
  19. 19. Visualisation de graphes : pourquoi ? Interprétation Une bonne classification maximise la modularité : • Q quand (xi, xj) sont dans la même classe et Wij >> Pij • Q quand (xi, xj) sont dans deux classes différentes et Wij << Pij car Q(C) + 1 2m k k i∈Ck , j∈Ck (Wij − Pij) = 0. • Modularité : aide à séparer des hubs ( spectral clustering ou critère de coupe minimal) mais petit défaut de résolution (voir [Fortunato and Barthélémy, 2007]). Problème : Optimisation = Pb NP-complet (pas possible pour des graphes de plus de qq centaines de sommets) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 8 / 23
  20. 20. Visualisation par classification hiérarchique Plan 1 Visualisation de graphes : pourquoi ? 2 Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Visualisation d’une hiérarchie de classifications Exemples et comparaisons Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 9 / 23
  21. 21. Visualisation par classification hiérarchique Présentation générale de la méthodologie 2 étapes combinées : • Obtention d’une hiérarchie de classifications (par optimisation de la modularité) + test de la significativité du partitionnement à chaque niveau ; • Représentations des divers niveaux de la hiérarchie avec algorithme de forces modifié. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 10 / 23
  22. 22. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Plan 1 Visualisation de graphes : pourquoi ? 2 Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Visualisation d’une hiérarchie de classifications Exemples et comparaisons Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 11 / 23
  23. 23. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Méthodes d’approximation de l’optimisation de la modularité Méthode rapide : « Algorithme de Louvain » [Blondel et al., 2008] (méthode gloutonne multi-niveaux) : peut traiter des graphes avec des millions de nœuds ; légèrement sous efficace en terme d’optimisation. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 12 / 23
  24. 24. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Méthodes d’approximation de l’optimisation de la modularité Méthode rapide : « Algorithme de Louvain » [Blondel et al., 2008] (méthode gloutonne multi-niveaux) : peut traiter des graphes avec des millions de nœuds ; légèrement sous efficace en terme d’optimisation. [Noack and Rotta, 2009] : travail expérimental comparatif ⇒ recommandation pour des améliorations de l’approche précédente (rapide et plus efficace) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 12 / 23
  25. 25. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Méthodes d’approximation de l’optimisation de la modularité Méthode rapide : « Algorithme de Louvain » [Blondel et al., 2008] (méthode gloutonne multi-niveaux) : peut traiter des graphes avec des millions de nœuds ; légèrement sous efficace en terme d’optimisation. [Noack and Rotta, 2009] : travail expérimental comparatif ⇒ recommandation pour des améliorations de l’approche précédente (rapide et plus efficace) Ici : méthodologie basée sur [Noack and Rotta, 2009] avec quelques améliorations (dont ajout d’un test de connexité) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 12 / 23
  26. 26. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition • Initialiser les classes : C (1) 1 = {x1}, . . . , C (1) n = {xn} • Répéter : fusionner 2 classes qui maximisent Sig(Ci, Cj) = ∆QCi ,Cj deg(Ci)deg(Cj) jusqu’à ne plus pouvoir augmenter la modularité par fusion. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  27. 27. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  28. 28. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  29. 29. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  30. 30. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  31. 31. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  32. 32. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition • Au cours de l’algorithme, conservation des étapes correspondant à une diminution de 25% du nombre de classes . . . Niveau 1 Niveau 2 ... Niveau L (final) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  33. 33. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition • Au cours de l’algorithme, conservation des étapes correspondant à une diminution de 25% du nombre de classes • Raffinement multi-niveaux des niveaux l = L − 1 → 1 • Déterminer le graphe induit par la classification au niveau l... Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  34. 34. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition • Au cours de l’algorithme, conservation des étapes correspondant à une diminution de 25% du nombre de classes • Raffinement multi-niveaux des niveaux l = L − 1 → 1 • Déterminer le graphe induit par la classification au niveau l... • ... et utiliser la classification de ses sommets selon le niveau l + 1... Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  35. 35. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition • Au cours de l’algorithme, conservation des étapes correspondant à une diminution de 25% du nombre de classes • Raffinement multi-niveaux des niveaux l = L − 1 → 1 • Déterminer le graphe induit par la classification au niveau l... • ... et utiliser la classification de ses sommets selon le niveau l + 1... • ... pour effectuer des changements de classes opportunistes de certains « super-sommets » Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  36. 36. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition • Construction gloutonne d’une partition • Au cours de l’algorithme, conservation des étapes correspondant à une diminution de 25% du nombre de classes • Raffinement multi-niveaux des niveaux l = L − 1 → 1 • Contrôle de connexité : au niveau L, vérifier la connexité et scinder les classes non connexes selon leurs composantes connexes Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  37. 37. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Description de l’approche de classification retenue Étape 1 : Obtention d’une première partition Étape 2 : Itérations jusqu’à stabilisation • Fusion éventuelle des classes de la classification de niveau L ; • Raffinement multi-niveaux aux niveaux 1, L et L + 1 ; • Contrôle de connexité. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 13 / 23
  38. 38. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Obtention d’une hiérarchie de classifications But : Limiter le défaut de résolution de la modularité. Principe : Itérer l’optimisation de la modularité dans chacune des classes trouvées. Niveau 1 Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 14 / 23
  39. 39. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Obtention d’une hiérarchie de classifications But : Limiter le défaut de résolution de la modularité. Principe : Itérer l’optimisation de la modularité dans chacune des classes trouvées. Niveau 2 Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 14 / 23
  40. 40. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Obtention d’une hiérarchie de classifications But : Limiter le défaut de résolution de la modularité. Principe : Itérer l’optimisation de la modularité dans chacune des classes trouvées. Niveau 3 Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 14 / 23
  41. 41. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Critère d’arrêt de la hiérarchie Limite des algorithmes de classification : ils fournissent toujours un résultat ! Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 15 / 23
  42. 42. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Critère d’arrêt de la hiérarchie Limite des algorithmes de classification : ils fournissent toujours un résultat ! Significativité d’une partition : 1 Générer des graphes aléatoires dans l’ensemble des graphes de même distribution de degrés ; Approche utilisée : algorithme MCMC de [Roberts Jr., 2000] par permutations aléatoires d’arêtes du graphe observé Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 15 / 23
  43. 43. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Critère d’arrêt de la hiérarchie Limite des algorithmes de classification : ils fournissent toujours un résultat ! Significativité d’une partition : 1 Générer des graphes aléatoires dans l’ensemble des graphes de même distribution de degrés ; Approche utilisée : algorithme MCMC de [Roberts Jr., 2000] par permutations aléatoires d’arêtes du graphe observé Après Q|E| permutations, obtention d’un graphe aléatoire pour la distribution uniforme dans l’ensemble des graphes de distribution de degrés fixée. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 15 / 23
  44. 44. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Critère d’arrêt de la hiérarchie Limite des algorithmes de classification : ils fournissent toujours un résultat ! Significativité d’une partition : 1 Générer des graphes aléatoires dans l’ensemble des graphes de même distribution de degrés ; 2 Chercher l’optimum de la modularité ; 3 Déterminer la p-value de l’optimum selon la distribution empirique ; Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 15 / 23
  45. 45. Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Critère d’arrêt de la hiérarchie Limite des algorithmes de classification : ils fournissent toujours un résultat ! Significativité d’une partition : 1 Générer des graphes aléatoires dans l’ensemble des graphes de même distribution de degrés ; 2 Chercher l’optimum de la modularité ; 3 Déterminer la p-value de l’optimum selon la distribution empirique ; 4 Si maximum de la modularité observée significatif (supérieure à la modularité maximum de 100 graphes aléatoires), on conserve la partition ; sinon, on arrête le partitionnement. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 15 / 23
  46. 46. Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications Plan 1 Visualisation de graphes : pourquoi ? 2 Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Visualisation d’une hiérarchie de classifications Exemples et comparaisons Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 16 / 23
  47. 47. Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications Principe général de la visualisation d’une classification À partir d’un graphe G = (V, E, W) et d’une classification C1, . . . , CK , • déterminer le graphe induit par la classification : • sommets : classes ; • arêtes pondérées par la somme des arêtes entre les classes. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 17 / 23
  48. 48. Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications Principe général de la visualisation d’une classification À partir d’un graphe G = (V, E, W) et d’une classification C1, . . . , CK , • déterminer le graphe induit par la classification : • sommets : classes ; • arêtes pondérées par la somme des arêtes entre les classes. • représenter le graphe induit : • classes représentées par un symbole de surface proportionnelle à |C| ; • arêtes représentées par un trait d’épaisseur proportionnelle à la contribution à la modularité. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 17 / 23
  49. 49. Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications Représenter une hiérarchie de classifications Principe général • partir de la classification la plus grossière • développer les classes par ordre de plus faible réduction de la modularité. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 18 / 23
  50. 50. Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications Représenter une hiérarchie de classifications Principe général • partir de la classification la plus grossière • développer les classes par ordre de plus faible réduction de la modularité. Problèmes 1 tenir compte de la taille des sommets : [Tunkelang, 1999] (modification des forces de l’algorithme de Fruchterman et Reingold) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 18 / 23
  51. 51. Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications Représenter une hiérarchie de classifications Principe général • partir de la classification la plus grossière • développer les classes par ordre de plus faible réduction de la modularité. Problèmes 1 tenir compte de la taille des sommets : [Tunkelang, 1999] (modification des forces de l’algorithme de Fruchterman et Reingold) 2 anticiper l’espace nécessaire au développement d’une classe donnée : estimation récursive de l’espace nécessaire à la représentation par la méthode précédente (en partant du niveau le plus fin) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 18 / 23
  52. 52. Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications Représenter la contribution à la modularité des liens entre classes Fusion des classes Ci et Cj induit une modification de modularité égale à ∆QCi,Cj = 1 m WCi,Cj − d(Ci)d(Cj) 2m Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 19 / 23
  53. 53. Visualisation par classification hiérarchique Visualisation d’une hiérarchie de classifications Représenter la contribution à la modularité des liens entre classes Fusion des classes Ci et Cj induit une modification de modularité égale à ∆QCi,Cj = 1 m WCi,Cj − d(Ci)d(Cj) 2m Proposition • arêtes telles que ∆QCi,Cj < 0 en pointillés bleus (lien faible au sens de la modularité) d’épaisseur égale à 1 ; • arêtes telles que ∆QCi,Cj > 0 en rouge (lien fort au sens de la modularité) d’épaisseur comprise entre 1 et 5 (proportionnellement à la valeur) ; Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 19 / 23
  54. 54. Visualisation par classification hiérarchique Exemples et comparaisons Plan 1 Visualisation de graphes : pourquoi ? 2 Visualisation par classification hiérarchique Obtention d’une hiérarchie de classifications Visualisation d’une hiérarchie de classifications Exemples et comparaisons Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 20 / 23
  55. 55. Visualisation par classification hiérarchique Exemples et comparaisons « Political books » Description : • sommets : 105 livres politiques américains ; • arêtes pondérées par le nombre d’achats communs sur amazon. Représentation FDP Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 21 / 23
  56. 56. Visualisation par classification hiérarchique Exemples et comparaisons « Political books » Description : • sommets : 105 livres politiques américains ; • arêtes pondérées par le nombre d’achats communs sur amazon. Représentation LinLog Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 21 / 23
  57. 57. Visualisation par classification hiérarchique Exemples et comparaisons « Political books » Description : • sommets : 105 livres politiques américains ; • arêtes pondérées par le nombre d’achats communs sur amazon. Représentation hiérarchique (niveau 1/2) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 21 / 23
  58. 58. Visualisation par classification hiérarchique Exemples et comparaisons « Political books » Description : • sommets : 105 livres politiques américains ; • arêtes pondérées par le nombre d’achats communs sur amazon. Représentation hiérarchique (niveau 2/2) Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 21 / 23
  59. 59. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Description : graphe issu d’un corpus d’archives médiévales http://graphcomp.univ-tlse2.fr/ : • sommets : transactions du corpus et personnes actives (seigneurs, tenanciers). 3 918 individus impliqués dans 6 455 transactions (total : 10 373 sommets) ; • arêtes modélisent l’implication active d’une personne dans une transaction. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  60. 60. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Description : graphe issu d’un corpus d’archives médiévales http://graphcomp.univ-tlse2.fr/ : • sommets : transactions du corpus et personnes actives (seigneurs, tenanciers). 3 918 individus impliqués dans 6 455 transactions (total : 10 373 sommets) ; • arêtes modélisent l’implication active d’une personne dans une transaction. Optimisation de la modularité : 48 classes composées de 10 à 740 sommets. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  61. 61. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Description : graphe issu d’un corpus d’archives médiévales http://graphcomp.univ-tlse2.fr/ : • sommets : transactions du corpus et personnes actives (seigneurs, tenanciers). 3 918 individus impliqués dans 6 455 transactions (total : 10 373 sommets) ; • arêtes modélisent l’implication active d’une personne dans une transaction. Optimisation de la modularité : 48 classes composées de 10 à 740 sommets. Hiérarchie : 4 niveaux (limitée à 100 classes maximum) : 89 classes retenues sur le niveau le plus fin. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  62. 62. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  63. 63. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  64. 64. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  65. 65. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  66. 66. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  67. 67. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  68. 68. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  69. 69. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation d’un grand graphe Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 22 / 23
  70. 70. Visualisation par classification hiérarchique Exemples et comparaisons Conclusion et limites Résumé des avantages de l’approche • rapide • totalement automatisée Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 23 / 23
  71. 71. Visualisation par classification hiérarchique Exemples et comparaisons Conclusion et limites Résumé des avantages de l’approche • rapide • totalement automatisée Principale limite : estimation récursive de la place occupée par une classe parfois surestimée ⇒ arêtes inutilement longues et biais de visualisation Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 23 / 23
  72. 72. Visualisation par classification hiérarchique Exemples et comparaisons Conclusion et limites Résumé des avantages de l’approche • rapide • totalement automatisée Principale limite : estimation récursive de la place occupée par une classe parfois surestimée ⇒ arêtes inutilement longues et biais de visualisation Merci pour votre attention Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 23 / 23
  73. 73. Visualisation par classification hiérarchique Exemples et comparaisons Références Auber, D., Chiricota, Y., Jourdan, F., and Melançon, G. (2003). Multiscale visualization of small world networks. In INFOVIS’03. Auber, D. and Jourdan, F. (2005). Interactive refinement of multi-scale network clusterings. In International Conference on Information Visualisation, International Conference, pages 703–709, Los Alamitos, CA, USA. IEEE Computer Society. Blondel, V., Guillaume, J., Lambiotte, R., and Lefebvre, E. (2008). Fast unfolding of communites in large networks. Journal of Statistical Mechanics : Theory and Experiment, P10008 :1742–5468. Fortunato, S. and Barthélémy, M. (2007). Resolution limit in community detection. In Proceedings of the National Academy of Sciences, volume 104, pages 36–41. doi :10.1073/pnas.0605965104 ; URL : http://www.pnas.org/content/104/1/36.abstract. Fruchterman, T. and Reingold, B. (1991). Graph drawing by force-directed placement. Software-Practice and Experience, 21 :1129–1164. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 23 / 23
  74. 74. Visualisation par classification hiérarchique Exemples et comparaisons Herman, I., Melançon, G., and Scott Marshall, M. (2000). Graph visualization and navigation in information visualisation. IEEE Transactions on Visualization and Computer Graphics, 6(1) :24–43. Noack, A. (2007). Energy models for graph clustering. Journal of Graph Algorithms and Applications, 11(2) :453–480. Noack, A. and Rotta, R. (2009). Multi-level algorithms for modularity clustering. In SEA ’09 : Proceedings of the 8th International Symposium on Experimental Algorithms, pages 257–268, Berlin, Heidelberg. Springer-Verlag. Roberts Jr., J. M. (2000). Simple methods for simulating sociomatrices with given marginal totals. Social Networks, 22(3) :273 – 283. Rossi, F. and Villa-Vialaneix, N. (2010). Optimizing an organized modularity measure for topographic graph clustering : a deterministic annealing approach. Neurocomputing, 73(7-9) :1142–1163. Seifi, M., Guillaume, J., Latapy, M., and Le Grand, B. (2010). Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 23 / 23
  75. 75. Visualisation par classification hiérarchique Exemples et comparaisons Visualisation interactive multi-échelle des grands graphes : application à un réseau de blogs. In Atelier EGC 2010, Visualisation et Extraction de Connaissances, Hammamet, Tunisie. Tunkelang, D. (1999). A Numerical Optimization Approach to General Graph Drawing. PhD thesis, School of Computer Science, Carnegie Mellon University. CMU-CS-98-189. Visualisation de réseaux (Journées MSTGA) Nathalie Villa-Vialaneix & Fabrice Rossi Toulouse, 8/11/2011 23 / 23

×