[Навыки развития]·Метод расчета индикатора TopN

искусственный интеллект Python

[Навыки развития]·Метод расчета индикатора 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 состоит в том, чтобы отсортировать список от маленького к большому и, наконец, вывести исходный индекс каждого элемента после сортировки. Вот код для объяснения: