Évaluation d’un modèle sur un jeu de données personnalisé
Dans cet exercice, vous allez utiliser un evaluator du package Hugging Face evaluate pour mesurer les performances d’un modèle préentraîné sur un jeu de données personnalisé. Notez que, pour une classification multiclasses avec déséquilibres, l’accuracy n’est pas un indicateur fiable. Vous utiliserez donc la capacité de l’evaluator à 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 également déjà été importées.
Cet exercice fait partie du cours
Modèles multimodaux avec Hugging Face
Instructions
- Instanciez un
evaluatorpour votre tâche"image-classification". - Extrayez la correspondance d’étiquettes entier-vers-chaîne à partir du pipeline.
- Évaluez le jeu de données (
dataset) et le pipeline (pipe) en utilisant les métriques stockées dansmetrics_dictetlabel_map.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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}")