Vous êtes sur la page 1sur 18

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/225284894

TWITTER : EXTRACTION, REGROUPEMENT ET VISUALISATION POUR LA


VEILLE STRATEGIQUE

Conference Paper · May 2012

CITATIONS READS

0 2,186

3 authors, including:

Alina Stoica Beck Philippe Suignard


Maana Électricité de France (EDF)
9 PUBLICATIONS   79 CITATIONS    34 PUBLICATIONS   81 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Smart Home View project

Conception IHM View project

All content following this page was uploaded by Philippe Suignard on 05 June 2014.

The user has requested enhancement of the downloaded file.


TWITTER : EXTRACTION, REGROUPEMENT ET VISUALISATION POUR LA VEILLE
STRATEGIQUE
Alina STOICA (*), Philippe SUIGNARD (*), Lambert PEPIN (**)
alina.stoica@edf.fr, philippe.suignard@edf.fr, lambert-ext.pepin@edf.f
(*) EDF, 1, avenue du Général de Gaulle, 92141 Clamart Cedex (France),
(**) KeyConsulting, 41 rue Emile Duclaux 92150 Suresnes (France).

Mots clefs :
Twitter, Clustering, Visualisation, Veille scientifique et technologique
Keywords:
Twitter, Clustering, Visualization, Scientific and technical observation
Palabras clave :
Twitter, Clustering, Visualización, Escudriñar científico y tecnológico

Résumé
Pour EDF comme pour d’autres grandes entreprises, il est essentiel de connaître les opinions et les attentes de ses clients et, pour cela, Internet représente une source
de données importante. Parmi les différents sites où les clients s’expriment, la plateforme sociale Twitter est particulièrement intéressante grâce à son utilisation en
forte croissance, à la facilité d’accès à ses contenus ainsi qu’à son caractère à la fois média d’information et réseau social.

Cet article présente une chaine de traitements s’appuyant sur Twitter et composée d’une série de méthodes et d’outils. Grâce à cette chaine, le veilleur pourra
analyser les thématiques et les opinions concernant EDF telles qu’elles sont exprimées sur ce réseau social. Cette chaine de traitements commence par la collecte des
tweets relatifs à EDF, qu’il va ensuite falloir filtrer parce que contenant beaucoup de bruit. Ensuite, les contenus « redondants » vont être identifiés et regroupés
ensemble au sein de groupes ou « clusters » qui pourront ensuite être visualisés afin de suivre leurs évolutions dans le temps.

Pour finir, l’article présente les résultats de cette chaine de traitements sur un corpus de tweets relatifs à la thématique EDF récupérés entre mars et juin 2011 et
présente des exemples de visualisations de clusters ainsi que de « hashtags ».

Abstract
For EDF as for other big companies, it is essential to be aware of their customers’ opinions and expectations, and, for that, the Internet represents an important
source of data. Among the different sites where customers express themselves, the social platform Twitter is particularly interesting due to its highly growing
utilization, to the easy access to its contents and to its status of both information media and social network.
This paper presents a Twitter-based processing chain composed of several methods and tools. Due to this chain, analysts will be able to study topics and opinions
concerning EDF as they are expressed on the social platform. The processing begins with the collecting of EDF-related tweets from which noisy contents are filtered
out. Then, “redundant” tweets are identified and grouped together into “clusters” that can be graphically represented in order to follow their time evolution.

Finally, the paper presents the results of the processing chain on a dataset of EDF-related tweets that were collected between March and June 2011, along with
several graphical representations of clusters and “hash-tags”.

1 Introduction
Dans un contexte de veille concurrentielle et stratégique et dans un souci permanent d’améliorer la qualité de sa relation avec les clients, le groupe EDF se doit d’être
à l’écoute de ce qui se dit dans la presse et sur internet en général et plus particulièrement sur les blogs, les forums et sur les réseaux sociaux. Depuis ces dernières
années, ceux-ci ont connu un formidable essor et constituent, à ce titre, des sources d’informations très importantes.

Parmi celles-ci, Twitter occupe une place intéressante pour plusieurs raisons :
- il s’agit d’un réseau social très populaire en France dont le nombre d’utilisateurs a connu une augmentation récente très importante ;
- de par son format de message court, il oblige les rédacteurs à adopter un style très synthétique tout en leur permettant d’inclure des liens vers les sources d’origine ;
- il est particulièrement bien adapté à la diffusion et à la propagation d’information ;
- Twitter offre un accès, relativement facile, à ses contenus, ce qui permet de connaître les sujets qui intéressent les utilisateurs ainsi que leurs réactions.

Twitter constitue ainsi un support idéal pour contribuer à la veille qu’EDF réalise de manière continue. Mais pour être efficace, cette veille doit être outillée afin de
faciliter le travail du veilleur. C’est cette phase d’outillage que nous décrivons dans la suite de cet article et qui a pour objectif de mettre en place une chaîne de
traitements, permettant d’analyser « ce qui se dit sur EDF ». Dans cet article, nous présentons un ensemble de méthodes et outils qui vont aider l’analyste.

Cette chaine de traitements commence par la phase de collecte des tweets grâce à l’API proposée par Twitter. Nous décrivons d’abord une méthode de clustering des
tweets quasi-identiques. Cette méthode de « dédoublement » de contenus permet de regrouper les tweets très similaires qui reprennent une même information,
rendant ainsi leurs analyses ultérieures plus simples et plus efficaces. Nous continuons avec la présentation d’un outil de visualisation de contenus que nous avons
mis en place. Cet outil permet de suivre l’évolution temporelle des clusters identifiés auparavant, ainsi que d’autres paramètres comme, par exemple, les hash-tags.
Nous passons ensuite à la présentation du corpus que nous avons collecté et expliquons rapidement les filtrages de données que nous avons effectués. Cette étape est
essentielle, les données bruitées pouvant biaiser les analyses, et doit être adaptée aux spécificités du corpus. Nous présentons les résultats obtenus sur le corpus
nettoyé : statistiques sur les clusters obtenus, ainsi que des exemples de visualisation de clusters et hash-tags. Enfin, nous concluons l’article et évoquons quelques
perspectives pour des travaux futurs.
2 Le réseau social Twitter
2.1 Présentation générale
Comme le présente Wikipédia1, « Twitter est un outil de réseau social et de microblogage qui permet à l’utilisateur d’envoyer gratuitement des messages brefs,
appelés tweets (« gazouillis »), par Internet, par messagerie instantanée ou par SMS. Twitter a été créé en mars 2006 par Jack Dorsey. Le site a très rapidement gagné
en popularité, jusqu'à réunir plus de 300 millions d'utilisateurs en 2011 ».

Les utilisateurs de Twitter publient des messages (appelés « tweets ») qui sont visibles par tout le monde et qui sont envoyés directement à leurs abonnés appelés
« followers ». Twitter est surtout utilisé pour la publication d’informations, allant d’informations d’intérêt général (comme les interventions d’hommes politiques) à
des informations personnelles (cela peut être « je viens de prendre un café »). Les tweets ont quelques spécificités :
- ils sont limités à 140 caractères ;
- ils peuvent être republiés : une personne A qui reçoit un tweet de la part d’une personne B peut le republier (tous les followers de A reçoivent alors le même
tweet) ; un tweet republié s’appelle un retweet et commence souvent par le texte «RT@ B» ;
- ils contiennent fréquemment des URLs ; puisque les tweets sont limités à 140 caractères, les internautes utilisent souvent des services pour « raccourcir » les
URLs (bit.ly ou tinyurl.com vont transformer par exemple une URL comme «http://www.tradingsat.com/actu-bourse-187756-EEN.html» dans
«http://tinyurl.com/3gdlt5j») ; selon [3], 92% des retweets contiennent une URL ;
- ils peuvent contenir des hash-tags, c’est-à-dire des mots (qui font partie ou non de la phrase, dans ce deuxième cas se trouvant à la fin du tweet) précédés par
le symbole # ; les hash-tags sont des étiquettes attribuées par les auteurs des tweets pour caractériser brièvement le sujet du tweet. Ils permettent de retrouver
tous les tweets parlant du même sujet à l’aide d’une recherche par mots clés ;
- ils peuvent être adressés à une personne spécifique A (même s’ils ne sont pas forcement privés). Ce serait l’équivalent de la situation où, pendant une
conversation à plusieurs, une personne s’adresse à une personne spécifiquement, même si tout le monde entend cet échange. Dans ce cas, le tweet contient le
texte «@A» et A est automatiquement informé.

Voici quelques exemples de tweets :


- RT @MoreNicolas : Le compteur #Linky, son fonctionnement et ses avantages expliqués ! http://goo.gl/T7VEe ;
- EDF Energies Nouvelles : Recul des ventes au 1er trimestre, objectifs 2011 confirmés : http://tinyurl.com/3gdlt5j ;
- @maximeprunet bah si tu économises sur la pellicule, tu te fais 1 pt’it magot pour acheter EDF et tu transformes le réseau français en us.

1
- Informations issues du site http://fr.wikipedia.org/wiki/Twitter
2.2 Utilisation en forte croissance
Le réseau Twitter a connu une forte croissance, comme le montre la figure 1, pour le cas de la
France. En mars 2011, on estimait à 2,4 millions le nombre de comptes Twitter localisés en
France et selon la dernière étude du cabinet Semiocast2, la France compte aujourd’hui 5,2
millions de comptes Twitter, dont 1,25 million actifs (24%). La France se classe à la 16 ème place
mondiale dans un classement dominé par les Etats-Unis, le Japon et le Brésil. Un million de
nouveaux comptes ont été créés au 4ème trimestre 2011.

De leur côté, les entreprises sont de plus en plus présentes sur Twitter. Après avoir passé la
phase leur permettant « d’occuper » le terrain, elles utilisent ce canal comme un véritable canal
de relation avec leurs clients pour y publier des réponses à des problèmes généraux pouvant
intéresser leurs clients. Parmi celles-ci ont citera les banques (Crédit Agricole, Société Générale
et autres), les opérateurs télécoms (Orange, SFR, Bouygues, Free), La Poste, La RATP, EDF,
GDF-Suez, etc.

Le réseau Twitter dispose d’une API (en anglais Application Programming Interface) qui permet
de chercher et de télécharger des données du réseau. Même si la collecte de données est limitée
(en nombre de requêtes par heure par exemple), elle est rendue facile par l’existence de l’API. Figure 1. Évolution du nombre d’utilisateurs de Twitter
en France (mars2006 - mars 2011),
source Semiocast.

2.3 Twitter comme sujet d’étude


La forte popularité de Twitter et la facilité d’accès aux contenus textuels qui y sont publiés offrent d’énormes opportunités aux chercheurs en informatique, en
sociologie, en traitement automatique de la langue ou en physique. Cela explique le grand nombre d’études qui lui sont dédiées et les nombreuses méthodes
envisagées pour analyser les tweets. Nous exposons ici quelques travaux réalisés sur Twitter, beaucoup d’autres étant présentés dans des articles publiés, ces
dernières années, au sein des conférences3 KDD, CHI, WWW, ICWSM, etc.

Plusieurs chercheurs se sont intéressés au caractère événementiel très fort des tweets. Quand un événement est important ou jugé comme tel, il va être tweeté,
retweeté, parfois de nombreuses fois. Plusieurs auteurs ont développé des méthodes permettant de détecter les événements dont on parle sur Twitter et de les résumer
[4] et [20] ou encore de détecter les tendances [14]. D’autres études se sont intéressées à la réputation et l’influence des auteurs de tweets en analysant le nombre de
followers, de citations et de retweets d’un auteur [3], observant que les auteurs les plus influents ne sont pas forcement ceux qui ont le plus de followers. Ces études
montrent le caractère de « media d’information » de Twitter, les internautes utilisant la plateforme pour publier et diffuser des actualités. Même si dans une moindre
proportion qu’à son lancement, Twitter est aussi utilisé pour communiquer avec des connaissances et échanger sur des sujets d’intérêt personnel, comme dans un

2
- http://semiocast.com/
3
- http://www.kdd.org/, http://chi2012.acm.org/, http://www2012.wwwconference.org/, http://www.icwsm.org
réseau social « classique ». Dans cette optique, Kwak et al. ont essayé de déterminer le caractère de Twitter : média d’information ou réseau social [11] ? En
analysant les tweets et les profils de tous les comptes Twitter existants au moment de l’étude, ils ont découvert des distributions (de followers par exemple)
différentes de celles des réseaux sociaux habituels.

3 Regroupement des tweets quasiment identiques


3.1 Enjeux
Les tweets sont des contenus textuels assez particuliers, outre leur taille limitée à 140 caractères, de nombreux tweets présentent des textes quasiment identiques.
Ceci peut être dû à plusieurs situations :
- Un tweet est republié (c’est un retweet). Le retweet contient généralement le même texte que le tweet, avec « RT@auteur » ajouté au début (la partie «
RT@auteur » peut être enlevée par l’auteur du retweet) ;
- Plusieurs internautes ont cliqué sur un bouton « publier sur Twitter » présent sur un site externe au réseau. Par exemple, le site lemonde.fr permet aux
lecteurs de publier sur Twitter une information (généralement le titre d’un article) trouvée sur le site ; dans ce cas, un tweet est publié de la part du lecteur et
comprend le titre et le lien vers l’article ;
- Plusieurs internautes ont vu une même information quelque part (par exemple à la télévision) et ont publié un tweet la reprenant. Il peut s’agir du titre d’un
reportage qui est publié approximativement comme il a été présenté à la télévision.

Nous souhaitons regrouper les tweets qui ont un contenu très similaire dans des clusters, chaque cluster étant censé contenir les tweets qui reprennent une même
information telle qu’elle a été vue dans les médias. Cela faciliterait les analyses en diminuant la quantité d’information à traiter, en effet, les études qualitatives ou de
traitement automatique de texte pourraient identifier l’ensemble des tweets d’un cluster avec un représentant unique.

Un cluster doit donc comprendre des tweets avec un contenu très similaire ; en plus, les tweets d’un même cluster doivent avoir été publiés à des dates assez proches.
Cette restriction est imposée pour s’assurer de regrouper des tweets qui reproduisent le même fait : un tweet ou un titre de journal ou une information vue à la
télévision par exemple. Ces faits ont une date d’apparition (publication du journal, émission télé, publication de tweet) et ont une durée de vie assez courte (dans le
sens où d’autres événements, même si sur le même sujet mais avec un titre et un texte différents, prennent vite leur place dans les médias.

Cette approche est différente de la détection d’événements ou de tendances présentée précédemment. Dans le cadre de la détection d’événements, on souhaite
regrouper les tweets qui parlent d’une même actualité, même s’ils utilisent des mots différents ; les groupes de tweets obtenus sont en conséquence très grands,
comprenant des tweets avec des contenus assez différents. A l’inverse, notre but est de regrouper des tweets quasiment identiques pour éviter de surcharger
inutilement les analyses avec des contenus qui se répètent. Cette approche peut être vue comme le dédoublement des contenus, une première étape avant d’autres
traitements. Nous nous approchons ainsi de la démarche adoptée dans [12] où les auteurs cherchent la présence de phrases quasiment identiques dans des contenus
de blogs. A la différence de cette étude qui se concentre sur la recherche des phrases suffisamment longues et fréquentes, nous identifions et regroupons tous les
tweets quasiment identiques quelques soient leur longueur et leur nombre d’apparitions dans le corpus. De plus, nous imposons une contrainte temporelle qui
empêche de regrouper des tweets trop éloignés dans le temps.
3.2 Méthode
Pour regrouper les tweets, il faut définir une distance entre leurs contenus. Aussi, il faut choisir deux seuils, un pour la distance textuelle (nous notons ce seuil sd) et
l’autre pour le temps (noté st), au-dessus desquels deux tweets ne peuvent pas se retrouver dans un même cluster. Pour la distance textuelle, on impose que tous les
tweets d’un même cluster, pris deux à deux, se trouvent à une distance inferieure au seuil choisi. Pour le temps, on impose que l’écart entre deux tweets consécutifs
(si l’on trie les tweets d’un même cluster en ordre chronologique) soit inferieur au seuil choisi.

Nous commençons par décrire chaque tweet par l’ensemble des mots qu’il contient après l’élimination :
- des noms précédés par le symbole «@» : généralement des noms d’autres utilisateurs de Twitter auxquels le tweet est adressé ou d’où le tweet provient ;
- des URLs présentes dans les tweets ;
- du mot final, s’il est suivi par « … » et il n’y a pas d’espace entre le mot et « … »; cette situation correspond très souvent à la reprise incomplète d’une
information où le dernier mot n’est pas repris entièrement (par exemple : Fukushima : EDF veut créer une force d'intervention rapide en cas d'accident: -
Cette force d'intervention rapi... http://da.feedsportal.com ) ;
- des mots « blancs » qui n’apportent aucune information dans la phrase (« y », « en », « à », « et » et les articles définis et indéfinis).

Pour calculer la distance entre les textes, plusieurs approches sont possibles, notamment l’approche vectorielle utilisée dans [15]. Ici, nous utilisons la distance de
Jaccard améliorée [1], présentée en figure 2, pour calculer la distance entre deux tweets A et B, après avoir calculé l’ensemble des mots de chaque tweet.

1 𝑛 𝐴 −𝑛 𝐴𝐵 𝑛 𝐵 −𝑛 𝐴𝐵
𝑑𝑖𝑠𝑡 𝐴, 𝐵 = 2 ( 𝑛𝐴
+ 𝑛𝐵
)

Figure 2. Distance de Jaccard améliorée


où 𝑛𝐴 et 𝑛𝐵 représentent le nombre de mots dans les ensembles correspondants aux tweets A et B, et 𝑛𝐴𝐵 représente le nombre de mots communs aux deux
ensembles. La distance est égale à 0 si les ensembles des mots sont identiques (à l’ordre des mots près) et est égale à 1 si les deux ensembles n’ont aucun mot en
commun.

Nous pouvons maintenant effectuer un clustering hiérarchique pour regrouper les tweets similaires. En règle générale, le clustering hiérarchique est une méthode trop
chronophage puisqu’elle calcule et évalue les distances entre tous les clusters à chacune de ses nombreuses itérations. Pour surmonter ce problème, nous nous
appuyons sur l’observation simple qu’il n’est pas nécessaire d’évaluer à chaque étape les distances entre tous les clusters, mais seulement les distances entre chaque
cluster et ceux des quelques jours précédents. Ainsi, au lieu de calculer la distance entre tous les clusters pris deux à deux et de vérifier ensuite que leurs tweets
consécutifs ne se trouvent pas à des dates plus éloignées que le seuil choisi, nous ne calculons que les distances entre les clusters pour lesquels nous savons que la
contrainte de temps est respectée.

Nous commençons par faire toutes les fusions possibles pour un même jour parce que les tweets quasi-identiques ont des fortes chances d’avoir été publiés le même
jour. Nous calculons ensuite les distances entre les clusters de chaque jour et ceux des jours précédents et nous fusionnons les clusters les plus proches identifiés
après l’évaluation de tous les jours.
Nous procédons donc comme suit :
1. chaque tweet est attribué à un cluster (qui ne contient que lui) et à un jour (son jour de publication) ;
2. on regroupe d’abord dans des clusters les tweets d’un même jour ; pour chaque jour, on répète jusqu’à ce qu’on ne puisse plus fusionner des clusters :
- pour chaque couple de clusters, on calcule la distance comme la moyenne des distances de Jaccard améliorées de tous leurs tweets ; si la distance entre deux
tweets est supérieure au seuil sd, la distance entre les deux clusters devient égale à infini ;
- on choisit parmi tous les couples de clusters dont la distance n’est pas infinie le couple pour lequel la distance est minimale et on fusionne les deux clusters
(on crée un nouveau cluster comprenant leurs tweets) ;
3. on répète jusqu’à ce qu’on ne puisse plus fusionner des clusters :
- pour chaque jour j, on calcule la distance entre les clusters du jour j et ceux des jours précédents (j-1 jusqu’à j-st) : comme précédemment, la distance entre
deux clusters est égale à la moyenne des distances Jaccard améliorées de tous leurs tweets ; si la distance entre deux tweets est supérieure au seuil de sd, la
distance entre les deux clusters devient égale à infini ;
- on choisit parmi tous les couples de clusters dont la distance n’est pas infinie le couple pour lequel la distance est minimale et on fusionne les deux clusters
(on crée un nouveau cluster comprenant leurs tweets) et on met à jour la correspondance cluster-jour : si un cluster contient des tweets de plusieurs jours, ce
cluster est associé à tous leurs jours.

Cette méthode qui tire profit de la contrainte temporelle, donc du caractère événementiel des tweets, permet de diminuer considérablement le temps de calcul. Sur
notre corpus, les clusters sont calculés en quelques minutes pour tous les seuils que nous avons testés ; le plus grand temps de calcul est de 9 minutes dans le cas des
seuils maximaux que nous avons essayés (0,6 pour sd et 3 jours pour st). La méthode classique de clustering hiérarchique a un temps de calcul sur nos données de
presque 3 heures, avec des résultats presque identiques à ceux de l’algorithme proposé : les clusters calculés par les deux méthodes sont identiques dans une
proportion de 97 à 98% pour tous les seuils testés.

4 Visualisation
4.1 Travaux existants
Avec la mise à disposition de données de plus en plus volumineuses, la visualisation de données connaît, de nos jours, un regain d’intérêt. Des techniques de
visualisation et d’analyse textuelle constituent des préoccupations de recherche actuelles comme en témoignent la tenue du premier workshop4 sur le thème des
« interfaces visuelles intelligentes pour le texte » ou les sessions « Text Visualization » des conférences InfoVis5 et « Text Analytics » des conférences Vast6. Tous
ces efforts correspondent au besoin croissant d’analyser des données textuelles de plus en plus nombreuses issues de mails, blogs, forum et réseaux sociaux. Des
outils et techniques de visualisation s’imposent pour représenter des résultats de recherche (par mot clé par exemple) ou encore pour visualiser des résultats d’un
clustering. Le simple affichage de la « time line » de twitter ne suffit pas et de nombreuses initiatives voient le jour dans ce domaine pour proposer des visualisations
toutes plus spectaculaires les unes que les autres. On citera, par exemple le concours7 de visualisation organisé par Google pour les élections présidentielles
françaises de 2012.

4
- IVITA, First International Workshop on Intelligent Visual Interfaces for Text Analysis, Hong-Kong, Chine, Février 2010.
5
- IEEE Information Visualization Conference (IEEE InfoVis)
6
- IEEE Symposium on Visual Analytics Science and Technology (IEEE VAST)
7
- https://sites.google.com/site/concoursdataviz2012/
Bien que Twitter soit un thème de recherche récent, un sujet comme la visualisation en général et plus particulièrement la visualisation de l’évolution des thèmes
dans des corpus textuels de type news, blog et plus récemment réseaux sociaux, n’est pas nouveau. Il a fait l’objet de plusieurs travaux et plusieurs systèmes de
représentations ont été proposées depuis ThemeRiver [8], un peu ancien, jusqu’à de plus récents comme TextFlow[5] qui montre comment un thème peut se scinder
en plusieurs ou au contraire plusieurs thèmes fusionner ensemble au cours du temps. On citera ici des logiciels fortement interactifs (pour naviguer dans les données
afin de mieux les comprendre) comme Jigsaw [16], PosVis [19], ou encore Harvest [7]. Il existe également des bibliothèques graphiques ou des techniques de
visualisation, plus ou moins adaptées à chaque domaine, plus ou moins généralistes comme ManyEyes [18] ou Prefuse [9].

Par ailleurs, des visualisations ont spécialement été développées pour Twitter (avec quelques copies d’écran en figure 3) :
- Nokia Internet Pulse [10] qui balaie automatiquement le site de micro-bloging en fonction de mots clés particuliers, puis classe, en deux catégories, les messages
relevés, ceux faisant acte de sentiments positifs, et ceux qui véhiculent plutôt un message négatif. L'ensemble des données est organisé sur une plate-forme en ligne,
qui met en avant un nuage de mots-clés correspondant aux commentaires des internautes ;

- VoxCivitas [6], un outil, fortement interactif, d’analyse visuelle permettant de naviguer au sein d’une base de données composées de vidéos et de tweets relatifs à
ces vidéos. L’application permet de visualiser les tweets au fur à mesure de la lecture de la vidéo, ou encore de naviguer dans ces tweets et de se positionner sur la
vidéo au moment de l’émission du tweet. Cette application s’appuie sur les discours de B. Obama pendant la campagne électorale américaine ;

- TweetTopicExplorer8 qui commence par récupérer les tweets d’un compte donné et les assemble en un nuage de bulles crées à partir des mots les plus fréquents des
tweets émis par ce compte ;

- TwitInfo [13] qui permet d’explorer un événement, comme un discours ou une rencontre sportive, en détectant et labellisant automatiquement des pics dans le flux
d’arrivée des tweets, et en proposant une interface regroupant géolocalisation, sentiments, liens populaires et tweets significatifs ;

- Twitt3D9 qui récupère les tweets d’un compte donné et qui les affiche avec la photo de leur auteur, le tout en trois dimensions.

8
- http://tweettopicexplorer.neoformix.com, créé par Jeff Clark
9
- http://www.twitt3d.com
Figure 3. Quelques exemples de visualisation de tweets : Nokia Internet Pulse, VoxCivitas, TweetTopicExplorer, TwitInfo et Twitt3D.
4.2 Visualisation réalisée

Parmi les techniques de visualisation existantes, deux nous semblent particulièrement


adaptées à notre contexte, il s’agit des « Stream Graphs» [2] et de « Movie Box Office10 »
inspiré du précédent. « Movie Box Office » a été imaginée pour représenter l’évolution du
nombre d’entrées, dans les cinémas, réalisées par les films au cours du temps. Elle permet
assez rapidement de comprendre quels sont les films les plus vus et ceux qui sont restés
longtemps présents au box office.

En observant la figure 4, on constate une similarité entre les tweets et le box-office des
films : un message va être tweeté, retweeté, parfois de nombreuses fois, parfois sur une
période assez longue, puis sa popularité va décroître comme l’audience d’un film.
Figure 4. Exemple de « Movie Box Office »

Largeur de barre
Ces différentes raisons nous ont poussés à reprendre à notre compte les principes de cet algorithme et proposer une
visualisation très similaire fonctionnant de la manière suivante :
- Pour chaque période (ici le jour), on calcule la liste des thèmes (terme générique pour désigner un cluster, une
méta-donnée, etc.) et leur occurrence ; Espacement
- On classe les thèmes par ordre décroissant, puis on affiche chaque thème proportionnellement à son occurrence, en A inter barre
plaçant le plus important en haut de l’écran ;
- Pour la couleur, si le thème a déjà été rencontré par le passé, on lui attribue la même couleur que précédemment, si
le thème n’a pas encore été rencontré on lui attribue une nouvelle couleur. D
- Si le thème ne se trouve pas dans la période concernée (comme A en période J sur la figure 5), on regarde si on va
le retrouver ultérieurement. Si c’est le cas, alors on lui attribue la taille la plus petite qui soit et on le fait passer sous B
l’axe des ordonnées, ce qui permet de maintenir une continuité visuelle. Cette particularité n’existe pas dans
l’algorithme d’origine. A
- Ensuite on relie les thèmes entre deux périodes successives via des courbes de Béziers afin de produire un rendu C
C
« lissé ».

J-1 J J+1

Figure 5. Principe de l’algorithme


mis en œuvre.

10
- http://www.xach.com/moviecharts, réalisé par Zach Beane
En jouant sur la largeur des barres et sur leur espacement, on fait apparaître des phénomènes différents. Ainsi, sur la figure 6 :
- à gauche, un faible espacement inter-barre met d’avantage en évidence les thèmes et leur score pour une période donnée ;
- à droite, un espacement inter-barre plus important et une taille de barre plus petite mettent d’avantage en évidence les évolutions d’un thème au cours du temps.

Evolution d’un thème

Figure 6. Mêmes données visualisées selon des paramètres différents


Cette visualisation est implémentée en Java au sein d’un logiciel développé en interne [17]. Celui-ci permet de fouiller dans des corpus textuels accompagnés de
méta-données (jour, semaine, mois, retweet ou pas, thème, etc.). Ce logiciel s’appuie sur plusieurs bibliothèques Open Source comme Lucene11 pour la partie moteur
de recherche et sur JFreeChart12 pour la représentation sous forme de courbe ou d’histogramme. Il se présente sous la forme de deux modules : le premier pour

11
- http://lucene.apache.org
12
- http://www.jfree.org/jfreechart/
indexer les données (une fois pour toute) et le second pour naviguer au sein des données, ici les tweets. Il permet donc de chercher tous les tweets contenant un mot
particulier et de voir comment ceux-ci et leurs clusters associés se répartissent en fonction du temps.

5 Expérimentation
5.1 Collecte de tweets
Nous avons utilisé l’API de Twitter pour télécharger tous les tweets écrits en français contenant un mot clé donné, ainsi que les informations disponibles sur leurs
auteurs.

Comme notre but était de récupérer tous les tweets susceptibles de concerner EDF, nous avons utilisé comme mot clé unique le mot « EDF ». L’avantage d’utiliser
une requête aussi générale consiste dans l’identification de tweets couvrant beaucoup de thématiques, à l’opposée d’une requête trop spécifique où certains sujets
peuvent être « oubliés ». En revanche, une requête très générale peut entraîner du bruit, i.e. la collecte de données non-pertinentes. Dans notre cas, le mot clé EDF
peut être utilisé dans des interventions d’internautes pour parler, par exemple, de justificatifs de domicile, ou bien pire encore faire référence à d’autres noms
qu’Électricité de France, comme par exemple « équipe de France ». C’est d’autant plus le cas sur Twitter où les messages sont limités à 140 caractères, ce qui pousse
les internautes à utiliser le mot plus court « EDF » quand ils parlent d’« équipe de France ». Les données non-pertinentes doivent être filtrées avant toute analyse
parce qu’elles peuvent fausser les résultats : détection d’opinions qui ne portent pas sur EDF, fausses statistiques sur l’intérêt des utilisateurs pour EDF, etc.

Le corpus que nous avons collecté comprend les tweets publiés entre le 3 mars 2011 et le 25 juin 2011 qui contiennent le mot « EDF ». Il y a 23 574 tweets dans le
corpus. Pour filtrer les tweets parlant de sport, nous avons défini une liste « noire » de mots liés aux sport («entraineur », « match », « football », « Domenech » etc.)
et éliminé du corpus tous les tweets qui contiennent des mots de cette liste ou dont la description de l’auteur contient des mots de la liste. Au final, le corpus filtré
contient 8 567 tweets. L’écart entre le corpus filtré et celui non-filtré montre l’importance de ce prétraitement ; une analyse sur le corpus initial générerait surement
des résultats erronés.

Quand on s’intéresse plus en particulièrement aux « hashtags » contenus dans ces tweets, et en gardant uniquement les plus fréquents sur la période des 4 mois, on
peut les regrouper selon différentes thématiques :
- thématique du nucléaire : #nucleaire (384), #areva (165), #fukushima(208), #tepco (41) ;
- thématique du nouveau compteur déployé dans la région lyonnaise : #erdf (64), #linky (63), #lyon (22) ;
- thématique de l’écologie : #eelv (58), #hulot (53), #renouvelable (23) ;
- thématique de l’énergie en général : #energie (50), #production (36) ;
- thématique de l’emploi : #emploi (38).

5.2 Résultat du clustering

Nous avons appliqué la méthode présentée dans la section 3.2 pour regrouper les tweets quasi-identiques de notre corpus. L’algorithme proposé comprend deux
paramètres : un seuil sd pour la distance et un seuil st pour le temps. Nous avons effectué plusieurs essais avec des valeurs différentes pour les deux paramètres ; nous
présentons les effectifs des ensembles de clusters obtenus pour les différentes valeurs dans le tableau 1 :
Seuil distance sd seuil temps st nb. clusters
0,5 1 jour 4618
0,55 1 jour 4494
0,6 1 jour 4310
0,65 1 jour 3197
0,5 2 jours 4553
0,55 2 jours 4419
0,6 2 jours 4214
0,5 3 jours 4 494
0,55 3 jours 4 349
0,6 3 jours 4114
Tableau 1. Nombre de clusters obtenus en fonction des différentes valeurs de seuil.

Dans la suite du document, nous utilisions les clusters obtenus avec les valeurs sd = 0,6 et st = 3 jours. Parmi les 4 114 clusters obtenus avec ces valeurs de seuil,
2 853 clusters contiennent un seul tweet. Le plus grand cluster comprend 155 tweets dont nous présentons quelques exemples:
- Publié par alexbongibault le 08/04/2011 à 05:40:08: « Avec une petite éolienne, j'ai baissé ma facture EDF de 40% » -
http://www.lemonde.fr/planete/article/2011/04/06/avec-une-petite-eolienne-j-ai-baisse-ma-facture-edf-de-40_1503641_3244.html
- Publié par vodka083 le 08/04/2011 à 01:56:58: RT @lemondefr : « Avec une petite éolienne, j'ai baissé ma facture EDF de 40% »
http://www.lemonde.fr/planete/article/2011/04/06/avec-une-petite-eolienne-j-ai-baisse-ma-facture-edf-de-40_1503641_3244.html
- Publié par mezig75 le 07/04/2011 à 17:51:12: « Avec une petite éolienne, j'ai baissé ma facture EDF de 40% » - LeMonde.fr:
http://www.lemonde.fr/planete/article/2011/04/06/avec-une-petite-eolienne-j-ai-baisse-ma-facture-edf-de-40_1503641_3244.html via @addthis Top ça:)!
- Publié par chikkitita le 07/04/2011 à 07:29:53: Adoptons tous une éolienne RT @lemondefr [TEMOIGNAGES] "Avec une petite éolienne, j'ai baissé ma
facture EDF de 40%" http://www.lemonde.fr/planete/article/2011/04/06/avec-une-petite-eolienne-j-ai-baisse-ma-facture-edf-de-40_1503641_3244.html
- Publié par homeenergyperf le 06/04/2011 à 22:50:23: « Avec une petite éolienne, j'ai baissé ma facture EDF de 40% » Invités à faire part de leur
expérience en matière... http://www.lemonde.fr/planete/article/2011/04/06/avec-une-petite-eolienne-j-ai-baisse-ma-facture-edf-de-40_1503641_3244.html

5.3 Visualisation des clusters


Pour réaliser la figure 7, nous avons récupéré tous les tweets de la période considérée, et avons représenté leur répartition dans le temps selon leur cluster
d’appartenance avec l’algorithme décrit en 4.2. En cliquant, sur les barres colorées, ici les clusters, on récupère le premier tweet de chaque cluster. Cette
visualisation permet de voir rapidement :
- Les périodes qui ont connues beaucoup de tweets ;
- Les clusters importants en volume caractérisés par des barres de couleur placées sur le haut de la courbe ;
- Les clusters récurrents, dont la durée de vie peut-être plus ou moins longue et s’étalent sur plusieurs jours, contrairement à ceux qui ont une faible durée de vie.
Avec une petite éolienne, j’ai baissé Pour Henri Proglio, les centrales
ma facture de 40% ! nucléaires « sont en excellent état ».

Mars 2011 Avril 2011 Mai 2011 Juin 2011

Figure 7. Représentation des tweets et leur répartition dans le temps selon leur cluster d’appartenance.
Pour les besoins de l’article, nous avons affiché une vue d’ensemble, mais il est possible de restreindre la visualisation à une période plus courte afin de favoriser
l’exploration des résultats.
5.4 Visualisation des hashtags
Sur la figure 8, nous nous sommes intéressés aux « hashtags » contenus dans les tweets, en ne gardant que ceux apparaissant au moins 15 fois dans le corpus, puis
nous avons représenté leur nombre d’apparition par semaine.

#nucléaire

#fukushima

#areva

#ERDF

Figure 8. Visualisation des « hashtags » en fonction des semaines


6 Conclusion et perspectives
Dans cet article, nous avons présenté une chaine de traitements s’appuyant sur Twitter et composée d’une série de méthodes et d’outils : récupération des données,
filtrage, regroupement et visualisation. Cette chaine de traitements est encore à l’état de développement et plusieurs pistes sont envisagées pour l’améliorer :
- la phase dite de regroupement, qui consiste à regrouper des contenus très proches ou contenant le même texte à quelques mots près, que nous avons appelée « dé
doublonnage », produit une liste de « clusters » trop grande. Il faudra sans doute opérer un deuxième niveau de « clustering » pour obtenir des groupes de
« clusters », ces groupes étant plus thématiques que les premiers ;
- un module de détection de sentiments et d’opinions pourrait être intégré dans la chaine de traitements. Il permettrait de rechercher ou visualiser les « clusters »
positifs ou négatifs. Pour cela nous nous appuierons sur des outils du commerce.

Enfin, ce travail devra être testé d’un point de vue métier, c'est-à-dire par ou avec les personnes concernées par la veille, ceci afin de voir dans quelle mesure un tel
outil peut être intéressant et complémentaire avec les outils et pratiques existants. Cette confrontation permettra aussi de faire évoluer la chaine de traitements décrite
dans cet article.

7 Bibliographie
[1] BRUNET E., Peut-on mesurer la distance entre deux texts ? Corpus [En ligne] http://corpus.revues.org/index30.html, 2003
[2] BYRON, L. and WATTENBERG, M. Stacked Graphs–Geometry & Aesthetics. IEEE Transactions on Visualization and Computer Graphics, 14(6):1245–1252, 2008
[3] CHA M., HADDADI H., BENEVENUTO F., GUMMADI K., Measuring user influence in Twitter: The million follower fallacy. In 4 th International AAAI Conference on Weblogs
and Social Media (ICWSM), 2010
[4] CHAKRABARTI D., PUNERA K., Event summarization using tweets, In 5 th International AAAI Conference on Weblogs and Social Media (ICWSM), 2011
[5] CUI, W., LIU, S., TAN, L., SHI, C., SONG, Y., GAO, Z., TONG, X., QU, H. TextFlow: Towards Better Understanding of Evolving Topics in Text. IEEE Transactions on
Visualization and Computer Graphics (InfoVis'11)
[6] DIAKOPOULOS, N., NAAMAN, M., KIVRAN-SWAINE, F. Diamonds in the Rough: Social Media Visual Analytics for Journalistic Inquiry . Conference on Visual Analytics
Science and Technology (VAST). 2010.
[7] GOTZ, D., WHEN, Z., LU, J., KISSA, P., CAO, N., QIAN, W.H., LIU, S.X. Harvest : An intelligent Visual Analytic Tool for the Masses, IVITA, First International Workshop on
Intelligent Visual Interfaces for Text Analysis, Hong-Kong, Chine, Février 2010.
[8] HAVRE, S., HETZLER, B., NOWELL, L. ThemeRiver: Visualizing Theme Changes over Time. Proceedings of the IEEE Symposium on Information Visualization, 2000
[9] HEER, J. Prefuse : a software framework for interactive information visualization in Masters of Science , Computer Science Division, University of California, Berkeley, 2004
[10] KAYE, J., LILLIE, A., JAGDISH, D., WALKUP, J., PARADA, R., MORI, K. Nokia Internet Pulse: A Long Term Deployment and Iteration of a Twitter Visualization , CHI, ACM
Press, Austin, TX (2012)
[11] KWAK H., LEE C., PARK H., MOON S., What is Twitter, a Social Network or a News Media? In Proceedings of the 19th international conference on World wide web, ACM,
2010
[12] LESKOVEC J., BACKSTROM L., KLEINBERG J., Meme-tracking and the dynamics of the news cycle, In KDD: Proceedings of the 15th ACM SIGKDD international conference
on Knowledge discovery and data mining, 2009
[13] MARCUS, A., BERNSTEIN, M. S., BADAR, O., KARGER, D. R., MADDEN, S., MILLER, R. C. Twitinfo : aggregating and visualizing microblogs for event exploration. CHI,
2011.
[14] MATHIOUDAKIS M., KOUDAS N., TwitterMonitor: trend detection over the twitter stream. In SIGMOD Conference, ACM, 2010
[15] ROSOOR B., SEBAG L., BRINGAY S, PONCELET P., ROCHE M., Quand un tweet détecte une catastrophe naturelle... Proceedings of VSST (Veille Stratégique Scientifique et
Technologique), 2010
[16] STASKO, J., GORG, C., LIU, Z., SINGHAL, K. Jigsaw: Supporting investigative analysis through interactive visualization . In Proceedings of IEEE, VAST ’07, Sacramento, CA,
Octobre 2007
[17] SUIGNARD, Ph., NaviQuest : un outil pour naviguer dans une base de questions posées à un Agent Conversationnel, WACA, Quatrième Workshop sur les Agents
Conversationnels Animés, 2010
[18] VIEGAS, F. B., WATTENBERG, M., VAN HAM, F., KRISS, J., MCKEAON, M. Many Eyes: A Site for Visualization at Internet Scale,. Infovis, 2007.
[19] VUILLEMOT, R., CLEMENT, T., PLAISANT, C., KUMAR, A. What’s Being Said Near “Martha” ? Exploring Name Entities in Literary Text Collections In Proceedings of
IEEE VAST 2009
[20] WENG J., YAO Y., LEONARDI E., LEE F., Event Detection in Twitter, In 5 th International AAAI Conference on Weblogs and Social Media (ICWSM), 2011

View publication stats

Vous aimerez peut-être aussi