25 mars 2011

Bibliographic Coupling

Une première carte que l'on peut fabriquer à partir de nos données est une carte de l'organisation de nos 7584 articles en communautés "naturelles". Ainsi, chaque noeud de la carte ci-dessous correspond à un regroupement d'articles traitant de sujets similaires, la taille de chaque noeud est proportionnelle au nombre d'articles dans la communauté correspondante, les liens indiquent des relations  de similarité entre communautés et les labels correspondent à un auteur et un mot-clé caractéristique de la communauté correspondante.
[EDIT: les couleurs sont ici mises à la main, elles correspondent aux différents départements]

Voyons de manière plus concrète et plus détaillée comment cette carte est fabriquée et ce que représentent exactement les différents éléments qui la compose.


Etape 1: Réseau Bibliographic Coupling

On parle de bibliographic coupling entre deux articles lorsqu'ils partagent au moins une référence commune. Une manière commune de mesurer la "force de couplage bibliographique" entre deux articles i et j est d'utiliser le cosine similarity introduit par [Kessler, 1963]:

 où Ri correspond à l'ensemble des références de l'article i. Cette mesure est d'autant plus grande que les deux articles possèdent de références communes et peut être utilisée comme proxy pour évaluer la similarité entre les sujets abordés dans les deux articles.



Une fois le calcul des wij effectué, on construit un réseau dont les noeuds sont les 7584 articles de notre base de donnée, les liens reflétant le bibliographic coupling (un lien de poids wij entre deux noeuds i et j lorsque wij >0, pas de liens sinon). Ci-dessous, une visualisation de ce réseau obtenu via gephi. L'aspect final du réseau est obtenu grâce à un algorithme force-based, qui peut être décrit comme une analogie physique des composants du graphe: 
  • Les nœuds sont représentés par des particules de même charge (force répulsion entre tout les noeuds)
  • Les liens sont assimilables à des ressorts de constante wij (force d'attraction entre deux noeuds proportionnelle au BC)
À chaque passe, l'algorithme fait la somme des forces appliquées sur chacun des nœuds puis les déplace suivant des règles de physique classique jusqu'à trouver un état stable.

Réseau BC obtenu à partir de 7584 articles de l'ENS Lyon



Etape 2: Regroupement des articles en communautés

Le graphe précèdant suggère fortement une organisation des articles en communautés d'articles fortement reliés les uns aux autres. On distingue "à l'oeil" au moins 6 régions clairement distinctes.

Il existe un certain nombre d'algorithmes permettant de partitionner un graphe en communautés relevantes. Une manière courante de mesurer la qualité d'une partition est d'utiliser la modularité
qui - en gros - compare le poids des liens à l'intérieur des communautés à la valeur qu'aurait ce poids si les liens étaient distribués de manière aléatoire entre les noeuds tout en conservant le poids total wi jwij associé à chaque noeud.

Nous utilisons pour notre part l'algorithme de Louvain, conçu pour détecter de manière efficace des partitions de graphes maximisant la modularité. Sur notre exemple, on obtient le résultat suivant (chaque couleur représentant une communauté):


Mise en évidence des communautés du réseau BC

On peut ensuite regrouper tous les articles d'une communauté dans un seul noeud dont la surface est proportionnelle au nombre d'articles qu'il contient. On définit le poids wIJ entre deux communautés I et J comme la moyenne <wij> des poids entre chaque paire d'article (i∈I, j∈J). En utilisant le même algorithme de layout que précèdemment, on obtient enfin le graphe suivant:

Regroupement des articles en communautés
Par souci de clarté, les communautés de moins de 10 articles ne sont pas représentées. Ne reste plus qu'à répondre à une question: que représentent ces communautés, quels articles contiennent-elles?


Etape 3: Labelisation des communautés.

On dispose de la liste des articles contenus dans chaque communauté. On peut facilement calculer la fréquence d'apparition des auteurs, mots-clés, références, etc... de chacune de ces communautés. On peut également faire des mesures de significativité en comparant la fréquence d'apparition d'un item donné dans une communauté à sa fréquence moyenne dans l'ensemble des articles: le pays France est obviously le pays de rattachement le plus fréquent dans chaque communauté et n'est donc jamais significatif...

Vous trouverez dans ce pdf des "ID cards" de chacune des communautés, rassemblant pour chacune
  • le nombre d'articles qu'elle contient et sa cohérence interne <wij>-1: en gros, deux articles de la communautés partagent une référence sur <wij>-1
  • les listes des 10 auteurs, institutions, pays, sujets, journaux de publication, journaux de références et des 20 mots-clés et références les plus fréquents, avec les fréquences et significativités correspondantes.
Les labels choisis sur la première figure de ce post correspondent ainsi à l'auteur le plus "prolifique" et au mot-clé le plus fréquent ou significatif de chaque communauté. On peut vérifier en parcourant ces "ID cards" que les communautés trouvées correspondent très bien aux différentes équipes de recherche!

Vous pouvez également retrouver une partie de ces informations sur l'animation suivante (réalisée via gexfWalker), qui permet de visualiser les liens entre communautés et auteurs / mots-clés / références / etc...
Attention: la taille des noeuds ne se rapporte pas ici un un nombre d'article et les liens n'ont pas de poids (une distance plus courte ne reflète pas une fréquence plus forte). Cliquez sur une commnauté donnée (en rouge) pour obtenir dans l'ordre des aiguilles d'une montre: le top 20 des mots-clés, puis les top 10 des références, sujets, auteurs, pays, institutions, journaux de publication. Astuce: cliquez sur le pays France pour retrouver l'ensemble des communautés.


Aucun commentaire:

Enregistrer un commentaire