티스토리 뷰
Confusion Matrix와 ROC Curve를 공부하여 나름대로 정리합니다.
Confusion Matrix는 누가 이름을 지었는지 몰라도... 완벽한 네이밍이다.
볼때마다 내 머리속을 혼동시킨다..
오늘 이해하고 넘어가보려 한다.
Confusion Matrix는 실제(Y) , 예측 (Y^)을 가지고 Matrix를 만든다.
즉, 총 4가지 경우의 수가 나온다.
Y == Y^ == T : Y 와 Y^ 이 같으면서, 예측값이 T일때
Y == Y^ == F : Y 와 Y^ 이 같으면서, 예측값이 F일때
Y != (Y^ == T) : Y 와 Y^ 이 다르면서, 예측값이 T일때
Y != (Y^ == F) : Y 와 Y^ 이 다르면서, 예측값이 F일때
즉, TP , FN, FP, TN 이런 결과가 나오게 되는데, 앞자리는 Y == Y^ 인지 나타내는 것이고, 뒷 자리는 예측이 어떤 예측을 했는가(P / N)을 나타낸다.
Matrix을 그리면 밑에 노트와 같이 행렬을 그릴 수 있다.
그럼 이제 가장 헷갈리는 Precision, Recall을 살펴보자.
필자의 개인적인 생각으로는 Precision 과 Recall은 똑같다고 본다?(거의 유사하다??)
이유는.. 기준이 어느것에 기준하느냐에 따라 달라지기 때문이다.
Precision은 '실제'값을 기준으로 구하는 지표이고, Recall은 '예측'을 기준으로 구하는 지표이다.
Precision = TP / (TP + FN)
Recall = TP / (TP + FP)
이 것중 다른 점은... 기준만 다르지 구하는 방법은 똑같다.
즉, Precision은 실제기준 / Recall은 예측기준 끝.
ROC Curve를 한번 살펴보자.
ROC Curve의 면적이 1에 가까우면 좋은 판단력을 가졌다고 한다.
왜 그럴까?
ROC Curve의 x축은 FPR / y 축은 TPR 이다.
ROC Curve를 그릴때는 반드시 예측 기준이다.
즉, TPR = Recall ( TP / (TP + FN))
FPR = FP / (FP + TN) 이 된다.
TPR은 얼마나 True를 잘 예측했는가! FPR은 얼마나 FALSE를 잘 예측했는가!
Threshold 값을 아주 높게 해버리면, 모든 경우 다 틀릴 것이니 0...
Threshold 값을 아주 낮게 해버리면, 모든 경우 다 맞다고 할 테니... 1의 지점으로 점이 이동한다.
그 사이는 Threshold값을 통해 점의 위치가 결정되고, 곡선을 만들게 되는것이다.
즉, ROC Curve의 면적이 1에 가까울수록 TPR값이 높다는 소리니.. 보다 잘 맞췄다고 볼 수 있다.
'머신러닝' 카테고리의 다른 글
[ML] iForest / Extended iForest 정리 (0) | 2023.04.29 |
---|---|
[ML] XGBoost 기본 정리 (0) | 2023.04.09 |
[ML] LGBM 기본 정리 (0) | 2023.04.09 |
[ML] MCD ( Minimum Covariance Determinent ) - 2. MCD모델 원리 (0) | 2023.03.31 |
[ML] MCD ( Minimum Covariance Determinent ) - 1. 마할라노비스 거리 (Mahalanobis distances) (0) | 2023.03.26 |
- Total
- Today
- Yesterday
- 알고리즘
- GNN
- yolov11
- github
- 초보자
- 디텍션
- V11
- 백준
- 오류
- 티스토리챌린지
- java
- 깃
- YOLOv8
- c3k2
- 욜로
- 어탠션
- docker
- 자바
- 정리
- 이미지
- CNN
- 오블완
- python
- 딥러닝
- Tree
- 도커
- YOLO
- DeepLearning
- GIT
- 뜯어보기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |