CommencezCommencez gratuitement

Évaluation d'un modèle sur un jeu de données personnalisé

Dans cet exercice, vous allez utiliser un evaluator du paquet evaluate de Hugging Face pour mesurer la performance d'un modèle préentraîné sur un jeu de données personnalisé. Notez que, pour une classification multi-classe avec déséquilibre des données, l'exactitude (accuracy) n'est pas un indicateur fiable. Vous exploiterez donc la capacité de l'évaluateur à fournir plusieurs mesures à la fois : la précision et le rappel.

Un jeu de données (dataset) et un pipeline (pipe) ont été prédéfinis. La bibliothèque evaluate et la classe evaluator ont aussi déjà été importées.

Cette activité fait partie du cours

Modèles multimodaux avec Hugging Face

Voir le cours

Instructions de l’exercice

  • Instanciez un evaluator pour votre tâche "image-classification".
  • Extrayez la correspondance des étiquettes d'entiers vers chaînes de caractères à partir du pipeline.
  • Évaluez le jeu de données (dataset) et le pipeline (pipe) en utilisant les mesures stockées dans metrics_dict et label_map.

Exercice interactif pratique

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

# Instantiate the task evaluator
task_evaluator = ____("____")

task_evaluator.METRIC_KWARGS = {"average": "weighted"}

# Get label map from pipeline
label_map = pipe.model.config.____

# Compute the metrics
eval_results = task_evaluator.____(model_or_pipeline=pipe, data=dataset, 
                         metric=evaluate.____(metrics_dict), label_mapping=____)

print(f"Precision: {eval_results['precision']:.2f}, Recall: {eval_results['recall']:.2f}")
Modifier et exécuter le code