Оцінювання моделі на власному наборі даних
У цій вправі ви скористаєтеся evaluator з пакета Hugging Face evaluate, щоб оцінити якість попередньо навченої моделі на власному наборі даних. Зауважте, що для багатокласової класифікації з дисбалансом у даних accuracy — ненадійний показник якості. Тому ви використаєте можливість evaluator повертати кілька метрик одночасно: precision і recall.
Набір даних (dataset) і pipeline (pipe) уже визначено. Бібліотеку evaluate та клас evaluator також уже імпортовано.
Ця вправа є частиною курсу
Багатомодальні моделі з Hugging Face
Інструкції до вправи
- Створіть екземпляр
evaluatorдля завдання"image-classification". - Витягніть зі
pipelineвідображення міток з цілого числа у рядок. - Оцініть набір даних (
dataset) і pipeline (pipe), використовуючи метрики зmetrics_dictіlabel_map.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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}")