Оценка качества детекции
По корректности распознавания класса объекта и по точности его выделения мерой IoU обнаружения в задаче детекции объектов делятся на следующие виды:
-
верноположительные (true positives): модель корректно распознала класс объекта и выделила его рамкой, сильно пересекающейся с истинной рамкой ();
-
ложноположительные (false positives): модель выделила рамкой объект, которого на самом деле нет либо выделила присутствующий объект, но неточно ();
-
ложноотрицательные (false negatives): модель не распознала реально присутствующий объект.
Случаи верноотрицательных детекций (true negatives), как в бинарной классификации, в задаче детекции не рассматриваются, поскольку, строго говоря, им соответствуют все случаи, когда модель корректно не сработала на отсутствие объектов, а нас интересуют только корректные/некорректные выделения объектов целевых классов.
Далее для конкретного класса (например, "машина") считаются меры Precision и Recall, как в бинарной классификации:
Например, для класса "машина":
-
мера Precision показывает, как часто среди детекций машин действительно оказывались корректно выделенные машины;
-
мера Recall показывает, какую долю машин среди реально присутствующих на изображении автомобилей детектор сумел корректно выделить.
Как и в бинарной классификации, можно вычислять F-меру, агрегирующую Precision и Recall (через среднее гармоническое):
Важно понимать, что меры Precision и Recall вычисляются для фиксированного значения порога . При изменении этого порога они будут некоторыми функциями от него:
Как будут изменяться Precision и Recall при увеличении ?
При увеличении детектор будет осторожнее выделять объекты - только там, где он больше в них уверен. Соответственно, Precision будет увеличиваться ценой того, что Recall будет становиться ниже.
Варьируя от 0 до 1, можно построить график зависимости P(R)=Precision(Recall), которы й называется графиком зависимости точности от полноты (precision-recall curve), с которым мы уже сталкивались при оценке качества семантической сегментации.
Пример этого графика приведён ниже (синяя кривая, источник):
Как видим, график имеет пилообразную форму, поэтому его сглаживают, заменяя значение precision для каждого значения recall на максимальное значение precision при всевозможных значениях recall выше порога:
Точность называют интерполированной точностью (interpolated precision), и её зависимость от Recall показана на графике выше красной кривой.
Для оценки качества детектора при всевозможных порогах вычисляют меру Average Precision (AP) как площадь под графиком интерполированной точности:
На практике для этого часто разбивают значения Recall на равномерно распределённые значения (обычно ) и вычисляют приближённую площадь:
Если усреднять по каждому из классов в многоклассовой классификации, то получим величину Mean Average Precision (mAP):