Pascal VOC 리더 보드의 감지 작업에 대한 mAP (평균 평균 정밀도)를 계산하는 방법은 무엇입니까? http://host.robots.ox.ac.uk:8080/leaderboard/displaylb.php?challengeid=11&compid=4
11 페이지 에서 : http://homepages.inf.ed.ac.uk/ckiw/postscript/ijcv_voc09.pdf
평균 정밀도 (AP). VOC2007 챌린지의 경우, 보간 평균 정밀도 (Salton and Mcgill 1986)를 사용하여 분류 및 탐지를 평가했습니다. 주어진 작업과 클래스에 대해 정밀도 / 리콜 곡선은 메서드의 순위 출력에서 계산됩니다. 리콜은 주어진 순위보다 순위가 높은 모든 긍정적 인 예의 비율로 정의됩니다. 정밀도는 양의 클래스에서 나온 위의 모든 예의 비율입니다. AP는 정밀도 / 리콜 곡선의 형태를 요약하고 11 개의 동일 간격 간격의 리콜 레벨 [0,0.1, ..., 1]에서 평균 정밀도로 정의됩니다.
AP = 1/11 ∑ r∈{0,0.1,...,1} pinterp(r)
각 리콜 레벨 r의 정밀도는 해당 리콜이 r을 초과하는 방법에 대해 측정 된 최대 정밀도를 취함으로써 보간됩니다.
pinterp(r) = max p(r˜)
여기서, p ( r ~)는 리콜시 측정 된 정밀도 ~ r입니다.
mAP 소개 : http://0agr.ru/wiki/index.php/Precision_and_Recall#Average_Precision
그것은 다음을 의미합니까?
우리는 정밀 및 호출을 계산 :
- A) 많은 다른 경우
IoU
> {0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1}
True / False Positive / Negative 값을 계산합니다.
경우
True positive = Number_of_detection with IoU > {0, 0.1,..., 1}
: 같은 여기 말했다 /datascience//a/16813/37736 후 우리는 계산 :Precision = True positive / (True positive + False positive)
Recall = True positive / (True positive + False negative)
- A) 많은 다른 경우
B) 또는 탐지 알고리즘의 여러 임계 값 에 대해 다음을 계산합니다.
Precision = True positive / (True positive + False positive)
Recall = True positive / (True positive + False negative)
어디
True positive = Number_of_detection with IoU > 0.5
여기 말했듯이 : /programming//a/43168882/1558037
C) 또는 탐지 알고리즘의 여러 임계 값 에 대해 다음을 계산합니다.
Precision = Intersect / Detected_box
Recall = Intersect / Object
여기에 표시된대로? https://ko.wikipedia.org/wiki/Precision_and_recall
- 그럼 우리는 다음과 같이 AP (평균 정밀도)를 계산 의 11 개 값의 평균
Precision
점에서 경우Recall = {0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1}
, 즉,AP = 1/11 ∑ recall∈{0,0.1,...,1} Precision(Recall)
(일반적으로 각 포인트 (예 : 0.3)에 대해이 시점의 정밀도 값 대신 리콜에 대한 정밀도 <= 0.3의 MAX를 얻습니다. = Recall = 0.3)
- 그리고 모든 이미지에서 1 개의 객체 클래스에 대해서만 AP를 계산하면 이 클래스에 대한 AP (평균 정밀도) 를 얻을 수 있습니다 ( 예 :)
air
.
따라서 AP는 필수 요소입니다 (곡선 아래) : /stats//a/157019/111998
그러나 모든 이미지의 모든 객체 클래스에 대한 AP를 계산할 때 R4D_faster_rcnn 과 같은 모든 이미지 데이터 세트에 대한 mAP (평균 평균 정밀도)88.6
를 얻습니다. http://host.robots.ox.ac.uk:8080/leaderboard /displaylb.php?challengeid=11&compid=4
질문 :
- 맞습니까? 그렇지 않다면 Pascal VOC Challenge의 mAP를 계산하는 방법은 무엇입니까?
- 그리고 단락 1에서 정밀도와 리콜을 계산하기 위해 3 가지 공식 (A, B 또는 C) 중 올바른 것은 무엇입니까?
짧은 답변:
- mAP = AVG (각 객체 클래스에 대한 AP)
- AP = AVG (11 회 리콜 각각의 정밀도 {정밀도 = 0, 0.1, ..., 1})
- PR- 곡선 = 정밀도 및 회수 (예측 경계 상자에있는 각 임계 값에 대해)
- 정밀도 = TP / (TP + FP)
- 리콜 = TP / (TP + FN)
- TP = IoU> 0.5 인 탐지 수
- FP = IoU <= 0.5 인 탐지 횟수 또는 두 번 이상 탐지 된 횟수
- FN = IoU <= 0.5로 감지되거나 감지되지 않은 개체 수