티스토리 뷰

딥러닝

[머신러닝] 성능평가지표

별의 별 2021. 3. 15. 19:56

Precision , Recall, Accuracy & mAP & IOU


머신러닝에서 모델이나 패턴의 분류 성능 평가에 사용되는 지표를 정리해봤다.

(내가 그냥 볼려고 만든 것임)

 

모델 평가하는 요소, 실제 정답과의 관계를 2x2 matrix로 표현

  실제 정답
positive negative
실험결과 positive True Positive False Positive
negative False Negative True Negative

가능한 결과

  • True Positive(TP) : 실제 True인 정답을 True라고 예측 (정답)
  • False Positive(FP) : 실제 False인 정답을 True라고 예측 (오답)
  • False Negative(FN) : 실제 True인 정답을 False라고 예측 (오답)
  • True Negative(TN) : 실제 False인 정답을 False라고 예측 (정답)

성능을 어떻게 평가할까?


1. 정확도 ( Accuracy)

 

2. 정밀도(Precision)

모델이 true라고 분류한 것 중에서 실제 true인 것의 비율

 

Positive Predictive Value(PPV)라고도 불린다.

내가 positive라고 예측한것들 중 얼마나 정답을 잘맞추는지 비율이라고 할 수 있다.

 

 

벤다이어그램을 보면 더 쉽게 이해 할 수 있다. 검은 점이 실제 positive이고, 빈 점이 negitive이다.

중간의 원이 내가 positive라고 예측한 부분이라고 하면, 실제와 맞으면 true positive 다르면 flase positive가 될거다.

 

precision은 정답이라 예측한데서 실제 정답이 얼만큼인가를 보는것이다.

 

3. 재현율(Recall)

recall은 실제 true에서 true라고 예측한 것의 비율

sensitivity, hit rate 라고 불린다.

실제 positive 영역에서 내가 예측한 positive의 비율이라고 보면 된다.

recall

참고블로그

sumniya.tistory.com/26


Precision-recall 그래프

알고리즘의 파라미터 조절에 따른 precision 과 recall 값의 변화를 그래프로 표현한 것

 

mAP(mean Average Precision)

 

AP(Average Precision)

Recall value [0.0, 0.1, …, 1.0] 값들에 대응하는 Precision 값들의 Average 이다.
Precision-recall곡선에서 얻어진 precision 평균이다.

 

mAP (mean Average Precision) 

1개의 object당 1개의 AP 값을 구하고, 여러 object-detector 에 대해서 mean 값을 구한 것이 mAP 이다.




IoU(intersection over union)

정확도를 측정하는데 이용되는 평가지표

ground-truth bounding boxes : 학습할때 사용자가 위치를 라벨링한 박스 (초록)

prediceted bounding boxes :  model이 출력한 objects 위치 예측값 (빨간)

 

알고리즘이 설정한 바운더리 박스가 맞는지 틀린지 결정하기 위해서 나온 것이다.

 

예측된 바운더리 박스와 사용자가 설정한 바운더리 박스 간 중첩되는 부분의 면적을 측정해서 중첩된 면적을 합집합의 면적으로 나눠준다. IoU의 계산 결과 값이 0.5 이상이면 제대로 검출(TP)되었다고 판단한다. 만약 0.5 미만이면 잘못 검출(FP)되었다고 판단한다. (이 값은 임의의 값으로 설정할 수 있다.)

 

 

 

 



출처: https://ctkim.tistory.com/79 [DEVELOPER]

'딥러닝' 카테고리의 다른 글

Data Augmentation (데이터 증강)  (0) 2021.03.15
object detection  (0) 2021.03.02
댓글