J’ai eu le plaisir de mener récemment un workshop sur le topic modeling dans le cadre du Master Méthode computationnelle et analyse de contenu à l’Université Paris Est Marne la vallée.

Il y a assez peu de ressources en français sur le topic modeling. Le seul résultat que j’ai pu trouver semble etre ce cours ci.

Le workshop est organisé autour de 2 datasets. Un premier corpus assez propre construit à partir de résumés d’articles de IEEE et Arstechnica, deux sites de publications autour de la high tech. Un deuxième corpus constitué du contenu d’un forum Facebook de la droite américaine. Le deuxième corpus est bien plus délicat à traiter, les textes étant particulièrement bruités.

J’utilise l’excellent package STM en R pour la partie topic model. Il offre de nombreuses fonctionnalités et métriques pour determiner le nombre optimal de topics dans le corpus, préparer le texte ou visualizer les résultats.

Les slides du cours sont disponibles à l’adresse: https://www.slideshare.net/alexip/cours-de-topic-modeling, les datasets, et les scripts en python sont sur la repo github: https://github.com/alexperrier/upem-topic-modeling

Voici le plan du cours

I: Topic Modeling

  • Nature et applications
  • Approche Deterministe: LSA
  • Approche Probabiliste: LDA
  • Quelques librairies en R et python

II: Le package STM en R

  • Paramètres
  • Métriques: exclusivité et cohérence sémantique
  • Appliqué à un corpus propre

LAB - R STM

  • Le corpus: résumés d’articles tech, IEEE et Arstechnica
  • Le package STM en R
  • Comment determiner le nombre optimal de topics?
  • Comment interpreter les résultats?
  • Jupyter Notebook et Script R

III: forum Alt-right sur Facebook

  • 500.000 commentaires provenant du forum alt-right God Trump Emperor
  • De la nécessité de travailler le contenu
  • Filtrer le bruit avec
    • Lemmatization, tokenization
    • Part of Speech tagging
    • Named entity recognition
  • Jupyter Notebook et Script R

IV: Application au Français

  • Quelles sont les librairies pour:
    • Part of Speech
    • Tokenization
    • Lemmatization

V: Resources

  • Articles et blogs