НачатьНачать бесплатно

Оценка многоклассовой модели

Оценим наш классификатор облаков с помощью точности и полноты, чтобы понять, насколько хорошо он справляется с распознаванием семи типов облаков. В задаче многоклассовой классификации важно, как именно усредняются показатели по классам. Существует четыре подхода:

  • Без усреднения — результаты анализируются отдельно по каждому классу;
  • Микроусреднение — классы игнорируются, метрики вычисляются глобально по всем примерам;
  • Макроусреднение — метрики вычисляются по каждому классу, а затем усредняются;
  • Взвешенное усреднение — аналогично макроусреднению, но среднее взвешено по размеру классов.

Precision и Recall уже импортированы из torchmetrics. Посмотрим, насколько хорошо работает наша модель!

Это упражнение является частью курса

Глубокое обучение на PyTorch: средний уровень

Посмотреть курс

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Define metrics
metric_precision = Precision(task=____, num_classes=____, average=____)
metric_recall = ____

net.eval()
with torch.no_grad():
    for images, labels in dataloader_test:
        outputs = net(images)
        _, preds = torch.max(outputs, 1)
        metric_precision(preds, labels)
        metric_recall(preds, labels)

precision = metric_precision.compute()
recall = metric_recall.compute()
print(f"Precision: {precision}")
print(f"Recall: {recall}")
Редактировать и запускать код