Personnaliser les modèles spaCy

Traitement du langage naturel avec spaCy

Azadeh Mobasher

Principal data scientist

Pourquoi entraîner des modèles spaCy ?

  • Très utiles pour les cas d'usage NLP généraux
  • Mais ils n'ont pas forcément vu des données de domaines précis pendant l'entraînement, p. ex.
    • Données Twitter
    • Données médicales

Exemple de NER en domaine médical

Traitement du langage naturel avec spaCy

Pourquoi entraîner des modèles spaCy ?

 

  • Meilleurs résultats sur votre domaine
  • Essentiel pour la classification de texte par domaine

 

Avant d'entraîner, posez-vous ces questions :

  • Les modèles spaCy sont-ils assez performants sur nos données ?
  • Notre domaine comprend-il plusieurs étiquettes absentes des modèles spaCy ?
Traitement du langage naturel avec spaCy

Performance des modèles sur nos données

  • Les modèles spaCy sont-ils assez performants sur nos données ?
  • Oxford Street n'est pas correctement classée avec l'étiquette GPE :
import spacy
nlp = spacy.load("en_core_web_sm")

text = "The car was navigating to the Oxford Street."
doc = nlp(text)
print([(ent.text, ent.label_) for ent in doc.ents])
[('the Oxford Street', 'ORG')]
Traitement du langage naturel avec spaCy

Étiquettes de sortie dans les modèles spaCy

  • Notre domaine comprend-il plusieurs étiquettes absentes des modèles spaCy ?

Exemple de NER : général vs médical

Traitement du langage naturel avec spaCy

Étiquettes de sortie dans les modèles spaCy

 

Si un entraînement personnalisé s'impose, suivez ces étapes :

  • Rassembler des données propres au domaine
  • Annoter ces données
  • Choisir de mettre à jour un modèle existant ou d'en entraîner un de zéro
Traitement du langage naturel avec spaCy

Passons à la pratique !

Traitement du langage naturel avec spaCy

Preparing Video For Download...