Я начал использовать cocoapi для оценки модели, обученной с помощью API обнаружения объектов. После прочтения различных источников, которые объясняют среднюю точность (MAP) и отзыв, я смущен параметром «максимальное обнаружение», используемым в cocoapi.
Насколько я понял (например, здесь, здесь или здесь), рассчитывается MAP путем вычисления точности и отзыва для различных пороговых значений оценки модели. Это дает кривую точности-отзыва, и mAP рассчитывается как приближение к площади под этой кривой. Или, иначе говоря, как среднее значение максимальной точности в определенных диапазонах отзыва (0: 0,1: 1).
Тем не менее, cocoapi, кажется, вычисляет точность и отзыв для заданного количества максимальных обнаружений (maxDet
) с наивысшими баллами. И оттуда получите кривую точности-отзыва для maxDets = 1, 10, 100
. Почему это хорошая метрика, поскольку она явно не совпадает с указанным выше (потенциально исключает точки данных)?
В моем примере у меня ~ 3000 объектов на изображение. Оценка результата с помощью cocoapi плохо отзывается, потому что ограничивает количество обнаруженных объектов до 100.
В целях тестирования я использую набор оценочных данных как основную истину и обнаруженные объекты (с некоторыми искусственными оценками). Я ожидал, что точность и отзывчивость будут довольно хорошими, что и происходит на самом деле. Но как только я загружаю более 100 объектов, точность и запоминание падают с увеличением числа «обнаруженных объектов». Хотя все они «правильные»! Как это имеет смысл?