CommencezCommencez gratuitement

Performance du modèle sur vos données

Dans cet exercice, vous allez vous exercer à évaluer un modèle existant sur vos données. Ici, l'objectif est d'examiner la performance du modèle sur une étiquette d'entité précise, PRODUCT. Si un modèle peut classer correctement un fort pourcentage d'entités PRODUCT (p. ex. plus de 75 %), vous n'avez pas besoin d'entraîner le modèle sur des exemples d'entités PRODUCT. Sinon, vous devriez envisager d'entraîner le modèle pour améliorer sa performance de prédiction des entités PRODUCT.

Vous utiliserez deux critiques tirées du jeu de données Amazon Fine Food Reviews pour cet exercice. Vous pouvez y accéder en utilisant la liste texts.

Le modèle en_core_web_sm est déjà chargé pour vous. Vous pouvez y accéder en appelant nlp(). Le modèle a déjà été exécuté sur la liste texts, et documents, une liste de conteneurs Doc, est à votre disposition.

Cette activité fait partie du cours

Traitement du langage naturel avec spaCy

Voir le cours

Instructions de l’exercice

  • Constituez une liste target_entities de toutes les entités pour chacun des documents, et ajoutez un tuple (texte de l'entité, étiquette de l'entité) seulement si Jumbo se trouve dans le texte de l'entité.
  • Pour tout tuple dans target_entities, ajoutez True à une liste correct_labels si l'étiquette de l'entité (le deuxième élément du tuple) est PRODUCT, sinon ajoutez False.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Append a tuple of (entities text, entities label) if Jumbo is in the entity
target_entities = []
for doc in ____:
  target_entities.extend([(ent.____, ent.____) for ent in doc.____ if "Jumbo" in ent.text])
print(target_entities)

# Append True to the correct_labels list if the entity label is `PRODUCT`
correct_labels = []
for ent in target_entities:
  if ____[1] == "PRODUCT":
    correct_labels.append(____)
  else:
    correct_labels.append(____)
print(correct_labels)
Modifier et exécuter le code