torchTextClassifiers, un framework en PyTorch pour la classification de texte

Meilame Tayebjee

Insee, SSP Lab

2025-12-12

Pour suivre la présentation…

1️⃣ Contexte

fastText : en production, mais archivé

  • fastText : le go-to pour la classification de texte à l’Insee
  • Efficace, performant, mis en production pour la codification APE…
  • …mais repo archivé depuis le 19/03/2024

Enjeux

  • La non-maintenance de la librairie : à terme, risques de maintenance, de compatibilité…
  • Surtout : freine les possibilités de modernisation
  • Dans le même temps, un éco-système deep learning/ NLP très dynamique: PyTorch, Hugging Face

2024 : passage à PyTorch !

  • Modèle PyTorch proche du modèle fastText : transition en douceur
  • On en parlait ici
    • PyTorch permet de customiser l’architecture et l’adapter à nos besoins (gestion des variables catégorielles)
    • Meilleur monitoring de l’entraînement
    • Opportunités de modernisation: explicabilité, calibration, modèles plus performants
  • Les défis de temps d’inférence ont été relevés
    • dimensionnement du modèle plus raisonné
    • le modèle est déployé ici

Pourquoi faire un package ?

  • au début, le modèle a été mis à disposition sous la forme d’un package Python, torchFastText. Pourquoi ?

    • le modèle se balade beaucoup : repo d’entraînement, repo API (inférence), puis prod
      • il faut s’assurer d’une source de vérité unique
      • PyPI (avec connexion au Nexus interne) permet portabilité, installation et mise à jour
    • le modèle / la méthodologie a une existence propre, ce qui justifie de le séparer des autres codes (entraînement, inférence)
      • pour la diffuser
      • pour collaborer dessus

de torchFastText à torchTextClassifiers

  • évolution du package initial vers un toolkit (ou un unifying framework) de la classification de texte avec variables catégorielles
    • d’autres exemples de toolkits en PyTorch : Pythae pour les VAE, TorchSeg pour la segmentation…
  • conceptualisation des différents composants d’un modèle de classification de texte
  • connexion avec l’eco-système Hugging Face
  • Objectif:
    • manipulation de ces composants, instantiation rapide et entraînement facilité de différentes architectures classiques
    • en faire le standard de codification automatique au niveau institutionnel (Insee / SSM / INS européens)
  • Destinataires: tous ceux qui veulent entraîner leur propre modèles maisons à taille réduite, avoir la main sur leur architecture et qui ne peuvent utiliser les gros modèles d’Hugging Face !

Zone d’intérêt de la librairie

D’un point de vue production

2️⃣ Présentation du package

Structure générale

Une démo ?

Lien vers le notebook de démo

Lien vers la documentation

https://inseefrlab.github.io/torchTextClassifiers/

Merci de votre attention !