Vous êtes sur la page 1sur 28

Analyse des réseaux sociaux

Chapitre 3
Détection des communautés dans les réseaux sociaux
Cours et exercices

©Dr. Aoudia, 2023


Plan
Network communities

Partitionnement de graphe

Cut metrics,

Edge betweenness,

Modularity clustering

Exercices
Network communities

L’existence des zones est l’une des caractéristiques


communes dans de nombreux réseaux sociaux.

Ces zones sont appelées communautés et correspondent


intuitivement à des groupes de nœuds plus fortement
connectés entre eux qu'avec les autres nœuds du réseau.

La détection de ces zones dites communautaires est un


outil important pour la compréhension des structures et
des fonctionnements des grands réseaux.
Network communities https://www.mycmmag.com/communaute-cest-quoi-sur-les-reseaux-sociaux

« Une communauté est un ensemble de


personnes développant des interactions
sociales, des échanges et des discussions
autour d’un même centre d’intérêt, d’un
personnage ou d’une marque, sur
l’ensemble des médias sociaux. »

Source:
https://www.researchgate.net/publication/298899797_Estimating_the_extent_and_structure_of_tr
ade_in_horticultural_orchids_via_social_media/figures?lo=1
Network communities: Pourquoi?
https://www.mycmmag.com/communaute-cest-quoi-sur-les-reseaux-sociaux

Améliorer le
Être reconnu sur les Amélioration du trafic
référencement de son Fidélisation des clients
réseaux sociaux de son site web
site web ou blog

Gagner de la visibilité Créer des synergies ou


Créer des ambassadeurs
en tant que marque, Possibilité de connaître des liens professionnels
ou des représentants de
entreprise, école, votre public cible avec d’autres membres
votre marque
agence ou entrepreneur sur les réseaux sociaux

Améliorer votre e- Vous serez en mesure Vous serez une


Vos produits ou services
réputation en tant que de recueillir et référence dans votre
seront plus vite reçus
marque d’analyser des données domaine
Network communities: Types
Communauté Il s’agit d’un type de communauté qui rassemble des individus qui partagent des idées,
des croyances, une cause commune ou simplement une proximité propice à l’échange. Ces
d'intérêt: communautés sont parfois implicites.

Communauté es membres s’identifient par des pratiques communes.


Ils s’engagent à s’entraider, échanger de l’information, apprendre les uns des autres, construire
pratique des relations, partager leurs savoir-faire.

Communauté Pour ce type de communauté, le flux d’information et de connaissance y est important, mais
complètement dédié au projet. Il s’agit de délivrer un rendu, un produit ou une prestation, dans un
de projet délai alloué. Les acteurs ont
un rôle donné
Partitionnement de graphe

Recherche de communautés = partitionnement du graphe en N communautés.

• Soit P = {C1, C2, . . . , Cn} une partition du graphe.


• Soit Q(P) une fonction de qualité de la partition
• Objectif trouver Pm qui maximise Q(P).
• Problème NP-difficile.
• Trouver des heuristiques pour résoudre le problème en complexité raisonnable
Partitionnement de graphe

Soit un ensemble S quelconque. Un ensemble P de sous-ensembles de S est


appelé une partition de S si :
1. Aucun élément de P n’est vide ;
2. L’union des éléments de P est égale à S ;
3. Les éléments de P sont deux à deux disjoints.
4. Les éléments de P sont appelés les parties de la partition P
Partitionnement de graphe: Pourquoi?

1. Répartition de charge dans les machines parallèles ;


2. Conception de circuits intégrés électroniques ;
3. Segmentation d’image ;
4. Exploration de données ;
5. Trafic aérien ;
La modularité
• Modularity clustering

• Étant donné un graphe, l’objectif est de le décomposer en un


ensemble de communautés de sorte que la densité des
connexions internes est plus forte que la densité des
connexions externes.

• Il existe de nombreuses fonctions pour juger de la qualité


d’une partition d’un graphe donné, parmi elles, nous citons la
modularité introduite par Girvan et Newman [1].
La modularité
• La modularité est un concept qui permet de sélectionner le
nombre de clusters en mesurant leur qualité.
• Premier terme: fraction d’arêtes observées dans la
communauté s.
• Second terme, fraction des arêtes attendues dans la
communauté s, si le graphe était aléatoire, sous la contrainte
de la conservation du degré des sommets.
• Dans ce cas un sommet peut être lié à n’importe quel
autre sommet du graphe et la probabilité d’un lien entre
deux sommets est proportionnel au produit de leur degré.
Modularity clustering:
Exercice 1
•Calculer la modularité de la partition du graphe suivant
Modularity clustering:
Exercice 1
•Calculer la modularité de la partition du graphe suivant

Note: Si la modularité Q est un bon indicateur de la qualité d’une partition, alors la partition qui maximise Q doit être la meilleure
Cut metrics

• Coupe graphe
• On appelle coupe dans un graphe une partition (VS, VP)
de l'ensemble des sommets, telle que S∈VS et P∈VP.
Cut metrics

• On appelle valeur d'une coupe (VS, VP) la somme


des capacités des arcs ayant leur sommet de départ
dans VS, et leur sommet d'arrivée dans VP.

• La valeur de la coupe ici est 10= 2+2+1+5

• Min cutc’est la coupe avec la valeur minimale


Cut metrics
Exercice 2:
• Trouver la mincut du réseau ci-contre
Cut metrics
Exercice 3:

• Soit le graphe ci-contre avec quatre coupes.


• Calculer les valeurs des coupes. Classer les coupes par
ordre décroissant.
• Calculer la coupe minimale, ou la déterminer si elle figure
parmi les coupes déjà calculées.
• Nombre de chemins les plus courts passant par un arc

• L’arc avec une plus grande betweenness tend à être le pont entre deux
communautés. Sa suppression permet de créer des partitions dans le graphe.

• la centralité d’intermédiarité d’une arête est donnée par la fraction du nombre de


plus courts chemins passant par l’arête et reliant n’importe quels couples de
nœuds dans le graphe sur le nombre total de plus courts chemins dans le graphe

Edge betweenness
Approches de partitionnement

• Approches de bissection de graphes


• Approches centrées groupes
• Approches séparatives
• Approches de classification hiérarchiques
•. . .
Approches de partitionnement:
Bissection de graphe

• Basées sur la bissection du graphe.


• Chercher une ligne qui partage le
graphe en coupant le moins d’arêtes
Approches de partitionnement:
Bissection de graphe

Méthode de Kernighan et Lin


• Trouver la coupe du graphe minimisant le nombre
d’arêtes tombant entre les deux groupes.
• Une coupe est choisie arbitrairement comme point
de départ
• La bissection est améliorée itérativement en faisant
des échanges de sommets entre les communautés.
Approche de
partitionnement:
Approches
centrées groupes
Approches de partitionnement: Approche
séparative
 La méthode présentée par Newman trouve et enlève, de façon
itérative, l’arête avec le degré d’intermédiation le plus élevé.

 Ce processus permet de trouver des groupes connectés de façon


souple avec d’autres groupes mais fortement connectés à l’intérieur
de chacun d’eux.

 La partition sélectionnée est celle avec la modularité la plus haute


Approches de partitionnement: Approche
séparative
Approches de partitionnement: Approche
Hiérarchique
On ne peut pas connaitre le nombre de partitions à priori

Le système prend en entrée l’ensemble de sommets et fournit en


sortie une arborescence (dendogramme ) représentant un découpage
du graphe en communautés.

La distance entre les communautés qui est choisie peut varier, on peut
opter pour le minimum, le maximum ou la moyenne des distances
entre paires de nœuds.

https://cedric.cnam.fr/vertigo/Cours/RCP216/coursGraphesCommunautes.html
Approches de partitionnement: Approche
Hiérarchique ascendante (HA)
 Chaque sommet est dans une communauté.

 Calculer une distance entre chaque paire de communautés.

 Fusionner les deux plus proches.

 Revenir à 2.

Vidéo explicative: https://www.youtube.com/watch?v=_CYaoWTc8HU

https://cedric.cnam.fr/vertigo/Cours/RCP216/coursGraphesCommunautes.html
Approches de partitionnement:
Approche Bissection de graphe

1.Représenter le graphe G des individus, où chaque sommet I est localisé au point Mi.
2.Calculer les distances Euclidiennes entre les individus
3.Partionner le graphe en utilisant la méthode hiérarchique ascendante.
Références
[1] Newman, M.E.J., & Girvan, M. (2004) ‘Finding and evaluating community structure in networks’, Physical
review E, Vol. 69, No. 2.

Vous aimerez peut-être aussi