Classification 모델의 성능을 알아보기 위해서는 precision과 recall,accuracy 개념들이 필요하다.
- True Positive(TP) : 모델이 True라고 예측한(positive) 실제 정답이 true->맞춰서 True
- False Positive(FP) : 모델이 True라고 예측한(positive) 실제 정답이 false->틀려서 false
- Flase Negative(FN) : 모델이 false라고 예측한(negative) 실제 정답이 true->틀려서 flase
- True Negative(TN) : 모델이 false라고 예측한(negative) 실제 정답이 false->맞춰서 True
1.precision(정밀도)
정밀도란 모델이 True라고 분류한 것 중에서 실제 True인 것의 비율입니다. 즉, 아래와 같은 식으로 표현
positive predictive calue(PPV)로 불리기도 한다.
2.recall(재현율)
재현율이란 실제 True인 것 중에서 모델이 True라고 예측한 것의 비율
통계학에서는 sensitivity으로, 그리고 다른 분야에서는 hit rate라는 용어로도 사용한다.
Precision이나 Recall은 모두 실제 True인 정답을 모델이 True라고 예측한 경우에 관심이 있으나, 바라보고자 하는 관점만 다릅니다. Precision은 모델의 입장에서, 그리고 Recall은 실제 정답(data)의 입장에서 정답을 정답이라고 맞춘 경우를 바라보고 있다.
예를 들어 한달 30일동안 맑은 날이 20일이었는데, 확실한 2일만 맑다고 예측(FP : 모델이 true라고 예측했지만 실제 false 가 0)한다면, 당연히 맑다고 한 날 중에 실제 맑은 날(Precision)은 100%가 나온다. 하지만 과연, 이러한 모델이 이상적인 모델일까요?
따라서,우리는 실제 맑은 20일 중에서 예측한 맑은 날의 수도 고려해 보아야합니다. 이 경우에는 Precision만큼 높은 결과가 나오지 않습니다. Precision과 함께 Recall을 함께 고려하면 실제 맑은 날들(즉, 분류의 대상이 되는 정의역, 실제 data)의 입장에서 우리의 모델이 맑다고 예측한 비율을 함께 고려하게 되어 ㅈ대로 평가할 수 있습니다. Precision과 Recall은 상호보완적으로 사용할 수 있으며, 두 지표가 모두 높을 수록 좋은 모델입니다.
3.Precision-Recall Trade-off
Type 1 Error(FP)와 Type 2 Error(FN)은 둘다 커지거나 둘다 작아지는 경우가 없는 trade-off관계이다.
그래서 precision과 recall 또한 trade-off관계라고 할 수 있다.
벤다이어그램으로 두 관계를 생각해본다면
A : 실제 날씨가 맑은 날
B : 모델에서 예측한 날씨가 맑은 날
a : FN
b : TP
c : FP
d : TN
c인 날씨가 맑다고 예측했지만 실제로 맑지는 않은 것으로 c가 커진다면 a,d(맑지않다고 예측한) 부분이 작아지므로
즉, Precision이 작아지면 Recall은 커지므로 trade-off관계가 되는것이다.
4. Accuracy(정확도)
위 두 지표는 모두 True를 True라고 옳게 예측한 경우에 대해서만 다루었습니다. 하지만, False를 False라고 예측한 경우도 옳은 경우입니다. 이때, 해당 경우를 고려하는 지표가 바로 정확도(Accuracy)입니다.
5. FLOPS(Float point Operations Per Second)
FLOPS는 컴퓨터의 성능을 표현하는데 굉장희 중요한 지표이다.
초당 부동소수점을 계산하는 능력을 의미한다. 딥러닝을 사용해보신 분들은 하시겠지만 대부분 계산들이 부동소서점(실수형태 : float 자료형)으로 계산이 되는걸 볼 수 있을거다.
그렇기 때문에 FLOPS라는 지표가 딥러닝과 같이 소수점을 기반으로 한 과학연산에서 시간을 측정하는 중요한 지표가 된다.
출처:
https://89douner.tistory.com/159
https://sumniya.tistory.com/m/26
추가 참고자료:https://bskyvision.com/465
'Programmer > Deep Learning' 카테고리의 다른 글
[논문리뷰] Rapid Object Detection using a Boosted Cascade of Simple Features (0) | 2020.04.21 |
---|---|
[논문리뷰] An Overview Of Face Liveness Detection 2 (0) | 2020.04.19 |
[논문리뷰] An Overview of Face Liveness Detection1 (0) | 2020.04.18 |
[논문리뷰] SSD : Single Shot MultiBox Detector (2) | 2020.04.04 |
[논문리뷰] YOLACT ( Real-time Instance Segmentation ) (0) | 2020.03.28 |