[Навыки развития]·Метод расчета индикатора TopN
1. Введение концепции
Показатели точности TopN (или коэффициенты ошибок по времени), такие как Top-1, Top-5 и т. д., часто можно увидеть при классификации изображений.
Так что же означает этот TopN?В первую очередь лучше всего понятна точность Топ-1, то есть точность предсказанного индекса и реального индекса, полученного из вывода сети с помощью argmax.
Точность Top-5 означает, что вероятность прогноза, полученная на выходе сети, сравнивается с реальным индексом с максимальным индексом 5. Если любой из 5 сравнивается успешно, прогноз правильный. Точно так же Top-3 относится к 3 индексам с наибольшей вероятностью.
2. Анализ проблемы
Можно обнаружить, что точность Top-1 легко вычислить напрямую через argmax, демо-код выглядит следующим образом:
import numpy as np
lists = np.array([0.4,0.2,0.3,0.1])
index = np.argmax(lists)
score = lists[index]
Когда оно больше 1, argmax использовать нельзя.На самом деле, в Numpy есть argsort, который может нам помочь.
Функция np.argmax состоит в том, чтобы отсортировать список от маленького к большому и, наконец, вывести исходный индекс каждого элемента после сортировки. Вот код для объяснения: