Text Mining – Appel du 18 Juin

Temps de lecture : 4 minutes
Share on facebook
Share on twitter
Share on linkedin
Share on email
Qui d’entre vous n’a jamais rêvé d’une analyse de textes automatisée ? Avec le Machine Learning, certaines perspectives auparavant de l’ordre de l’imaginaire sont désormais accessibles. Grâce au text mining (extraction d’une information de haute qualité d’un texte) notamment, l’analyse de textes comme des tweets,critiques de film, discours, extraits de livre est rendue possible par l’établissement de modèles d’apprentissage .

Text Mining - Discours du Général De Gaulle

Chez DataScientest, on essaie toujours de concrétiser l’apprentissage. La date de cet article n’est pas une coïncidence, on s’est dit qu’il serait intéressant d’analyser les discours prononcés par une des plus grandes figures politiques françaises, rendue célèbre notamment par son fameux appel du 18 juin lancé à la radio BBC de Londres : Charles de Gaulle

Pour ce faire, nous avons étudié un corpus de textes constitué de 25 de ses discours.

Afin de rendre notre analyse la plus robuste possible, nous avons dans un premiers temps regroupé les différents discours par ordre chronologique, le but étant de retracer les différentes étapes de la vie politique du Général de Gaulle. Nous avons donc affecté aux variables text1940_1945, text1946_1957 et text1958_1969, toutes les allocutions datant respectivement de 1940 à 1945, de 1946 à 1957 et de 1958 à 1969

L’idée ensuite est de créer un nuage de mots;  wordcloud en anglais; pour chaque période.

Qu'est ce qu'un nuage de mots ?

Un nuage de mots n’est ni plus ni moins qu’une représentation visuelle permettant :

  • d’identifier rapidement les mots clés présentant le plus d’occurrences dans un texte (plus un mot apparaît fréquemment, plus la taille de la police dans le nuage de mots est grande)
  • de faciliter la compréhension d’un texte
  • de repérer rapidement les idées principales d’un texte en faisant apparaître les champs lexicaux présents dans ce dernier.

Essayons d’implémenter tout ça en Python :

Voici ce que cela nous affiche : 

word cloud 1
Discours 1940-1945
word cloud 2
Discours 1946-1957
nuage de mots 3
Discours 1958-1969

Pour davantage de visibilité, on peut également afficher un graphique en barres présentant les 20 mots clés les plus présents pour chaque période :

Graphiquement, on obtient :

graphique en barre 1
graphique en barre 2
graphique en barre3
À l’aide de ces deux différentes représentations visuelles, on peut ainsi facilement et rapidement retracer les 3 différentes grandes étapes de la vie politique de Charles de Gaulle :
  1. La période 1940-1945 : il semble assez logique que les mots ‘france’, ‘ennemi’, ‘victoire’, ‘alliés’, ‘bataille’ ressortent. En effet, durant cette période marquée par la Résistance incarnée par son chef, le général De Gaulle, la ‘France’ ainsi que tous les pays des ‘Alliés’ sont écrasés par la pression ‘ennemie’ Allemande. De Gaulle fait ainsi figure de sauveur et envoie à travers ses discours, des messages d’espoirs dans l’optique d’une ‘victoire’.
  2. La période 1946-1957 : Cette période est synonyme de traversée du désert pour De Gaulle. Il disparaît progressivement du paysage politique français et prépare en secret l’instauration de la Vème République d’où l’apparition de ce terme dans la liste des mots les plus fréquents.
  3. La période 1958-1969 : Une fois encore, les mots clés qui se démarquent par leur fréquence semblent assez cohérents par rapport au contexte. Cette période est en effet marquée par la crise d’’Algérie’ qui va notamment lui permettre de revenir sur le devant de la scène et de s’imposer comme un leader charismatique, lui permettant de fonder une ‘république’ ;à son image : la Vème république. Il traversera ensuite la fameuse crise de mai 1968 durant laquelle se déroule des manifestations étudiantes et grèves générales avant de démissionner de son poste de Président en avril 1969.

Si on passait par du Sentiment Analysis ?

A l’aide de librairies Python comme NLTK (Natural Language Toolkit) et de sa fonction VADER Sentiment Analysis, on peut également effectuer une analyse de sentiments dont voici l’implémentation :

sentiment analysis

→ La moyenne de la variable sentiment_score est proche de 0

accuracy

Cela signifie qu’en moyenne, les messages envoyés par le Président De Gaulle à travers ses discours sont plutôt neutres. Toutefois, comme on peut voir dans les 5 premières lignes du DataFrame (commande df_new.head()), l’algorithme est capable de détecter la négativité d’une phrase contenant le mot ‘défaite’ (ligne 2 du DataFrame).

Envie d’en découvrir davantage sur le Text Mining et de maîtriser les techniques du Machine Learning ? N’attendez plus, formez-vous !

S’abonner
Notifier de
guest
0 Commentaires
Inline Feedbacks
View all comments
Fermer le menu
0
Would love your thoughts, please comment.x
()
x