Évaluation du modèle sur un ensemble de données personnalisé
Dans cet exercice, vous utiliserez une interface utilisateur ( evaluator
) du package Hugging Face evaluate
pour évaluer les performances d'un modèle pré-entraîné sur un ensemble de données personnalisé. Veuillez noter que, pour la classification multi-classes avec des déséquilibres dans les ensembles de données, la précision n'est pas un indicateur de performance fiable. Par conséquent, vous utiliserez la capacité de l'évaluateur à fournir plusieurs mesures à la fois : la précision et le rappel.
Un ensemble 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
- Instancier une instance d'
evaluator
pour votre tâche d'"image-classification"
. - Extrayez le mappage des étiquettes entier-chaîne de caractères du pipeline.
- Évaluez l'ensemble de données (
dataset
) et le pipeline (pipe
) à l'aide des métriques stockées dansmetrics_dict
etlabel_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}")