본문 바로가기
AI-driven Methodology/Artificial Intelligence

[AI] 평가 모델 (2)

by goatlab 2022. 9. 27.
728x90
반응형
SMALL

Precision

 

https://www.mydatamodels.com/learn/how-good-is-your-machine-learning-algorithm/

 

Precision은 올바르게 분류된 양성 예수의 수를 양성으로 분류된 예수의 총 수로 나눈 값이다.

 

Recall

 

https://blog.roboflow.com/precision-and-recall/

 

Recall은 올바르게 분류된 양성 예제의 수를 검정 세트에서 실제 양성 예제의 총 수로 나눈 값이다.

 

F1 Score

 

https://www.analyticsvidhya.com/blog/2019/08/11-important-model-evaluation-error-metrics/

 

두 가지 측도를 사용하여 두 분류자를 비교하는 것은 어렵다. F1 점수는 precision과 recall을 하나의 척도로 결합한다. 두 숫자의 조화 평균은 둘 중 작은 숫자에 더 가까운 경향이 있다. F1 값이 크면 p와 r이 모두 크다.

 

import numpy as np
from sklearn.metrics import precision_score
from sklearn.metrics import recall_score
from sklearn.metrics import f1_score

y_true = np.array([0, 1, 1, 0, 1, 1, 1, 0])
y_pred = np.array([0, 1, 0, 0, 0, 0, 1, 1])

precision_score(y_true, y_pred)
0.6666666666666666
recall_score(y_true, y_pred)
0.4
f1_score(y_true, y_pred)
0.5

 

ROC Curve & AUC

 

precision과 recall에서 trade-off가 존재한다. precision과 recall은 일반적으로 동시에 상승하기 어렵다. precision의 임계값에 따른 recall이 변화하기 때문에 두 값을 모두 고려할 때 성능 측정이 쉽지 않다.

 

반면, ROC는 precision과 recall 사이의 비율은 분류기의 임계값을 연속적으로 조정하여 도식화한다. 모든 임계값에서 분류 모델의 성능을 보여주는 그래프이다.

 

https://www.medcalc.org/manual/roc-curves.php

 

x축과 y축에 각각 TPR (True Positive Rate)과 FPR (False Positive Rate)을 표시하여 그래프를 만들고 TPR과 FPR의 값을 연결한다.

 

https://www.researchgate.net/figure/An-illustrative-example-of-the-ROC-curve-The-values-of-TPR-and-FPR-of-each_fig4_327148996

 

AUC (Area Under Curve)는 ROC 커브 하단의 넓이를 의미한다. AUC가 높을수록 클래스를 구별하는 모델의 성능이 훌륭하다는 것을 의미한다.

 

https://sinyi-chou.github.io/classification-auc/

 

 

728x90
반응형
LIST