본 차시에서는 멀티레이블일때 메저방법 살펴봄
아래 매트릭스는 컨퓨전매트릭스.
레이블이 4개 있다.
프레딕션도 4가지 할 수 있다.
의료분석분류문제에서 grading을 하는 다양한 문제들이 있다.
즉, 상태가 좋은 경우, 상태가 약간 않좋아진 경우, 꽤 안좋아진 경우, 아주 안좋아진 경우
이런 식으로 등급을 나누는 문제에 confusion matrix만들어 볼 수 있다.
컨퓨전 매트릭스로부터 저번 차시에서 배웠던 accuracy, F1-score 구할 수 있다.
A인데 A로 프레딕션한 부분은 맞는 부분.
(진한파란색 대각선 부분은 맞다고 판단된 부분이다.)
그 외는 틀린 부분들이다.
accuracy 생각해보면
accuracy는 (맞는 개수 / 전체 데이터)
F1-score도 프리시전과 리콜을 구하면 구할 수 있다.
프리시전은 FP가 연관이 된 매저
리콜은 FN가 연관이 된 매저
그럼 FP, FN를 어떻게 구할 수 있는지 살펴보자.
A클래스에 대해 생각을 해보자.
A인데, 프레딕션도 A라 했다면 TP.
A가 아닌데, 프레딕션도 A가 아니라고 판단한 경우 -> TN
A가 아닌데, A라고 판단했는데 FP
나머지는 FN(실제 A인데, 프레딕션은 다른걸로 얘기)
FP, FN알았으니 값들을 계산할 수 있다.
A에 대한 프리시즌과 리콜을 구할 수 있다.
B에 대한 프리시즌, 리콜
C에 대한것, D에 대한것 다 구한 뒤
프리시즌들의 평균구할 수 있다. -> 최종 민 프리시즌
마찬가지로 리콜값에 대해 민값을 취할 수 있다. -> 최종 민 리콜
최종 민 프리시즌과 최종 민 리콜값을 바탕으로 F1-Score구할 수 있다.
예시를 봐보자.
예시들은 invalanced 데이터에 대한 결과를 보여줌.
첫번째 이미지는 전반 적으로 프레딕션으로 A로 판단을 내림.
두번째 이미지는 프레딕션 값을 만들어내는 모델이 다 A라고 판단 내림.
(A인 경우는 다 맞췄으며, A는 데이터가 많아서)
두번째가 어큐러시가 높다.
그렇지만 D를 놓치는 것이 크리티컬하다.
(여기서는 A만 맞췄으니)
여기서 F1-Score구해보면,
TP계산해보면
첫번째 이미지는 ABCD각각에 대한 TP : 100, 10, 10, 10
FP : 0, 50 , 10, 10
FN : 70, 0, 0, 0
프리시즌 계산해보면(TP, FP만 이용)
TP/(TP+FP) = 1, 5/6 1/2, 1/2
리콜 구해보면
TP/(TP+FN) = 100/170, 1, 1, 1
이값들을 더해서 4로 나누면 2.xxx/4, 3.xxx/4
오른쪽 이미지 구해보자.
TP : 170, 0, 0, 0
FP : 30, 0, 0, 0
FN : 0, 10, 10, 10
프리시즌 : 170/200, 0, 0, 0
리콜 : 1, 0, 0, 0
프리시즌과 리콜을 더한값이 왼쪽표가 더 크므로,
F-Score는 왼쪽 이미지가 더 크다.
여기서는 어큐러시와 F1스코어 어케 구하는지 이해,
언제 어큐러시 쓰는게 좋은지, F1-스코어 쓰는게 좋은지 확인할 필요가 있다.
이것 외에도 여러가지 메저가 있다.
센시티비티, 스페시티스트
이런 값들을 구해서 매저를 하게 된다.
여기까지 클래시파이어를 만든 뒤, 성능 평가하기 위한 다양한 메저들에 대해 살펴보았다.
'Deep learning' 카테고리의 다른 글
5-2.Feature selection using Entropy / Mutual information (0) | 2020.12.22 |
---|---|
5-1. Feature selection using L1 regularization (0) | 2020.12.07 |
4-6. Evaluation of classification model (0) | 2020.11.05 |
4-5. Data Augmentation (0) | 2020.11.05 |
4-4. Transfer Learning (0) | 2020.11.05 |
4-3. Overfitting / Regularization (0) | 2020.11.02 |
4-2. Validation (0) | 2020.11.02 |