회귀분석은 변수들 사이의 경향성 파악 및 실제값을 예측하는 모형을 구축하는 문제로, 예측값과 실제값 간 차이를 표현할 수 있는 metric을 사용한다.
따라서 MAE, MSE, RMSE 등의 값의 차이를 표현하는 metric을 사용한다.
- MAE (L1 Loss)
예측값과 실제값의 차이의 절댓값 평균 → MSE보다 이상치에 덜 민감하지만 MAE로 학습된 결과가 데이터의 중앙값으로 수렴하기 때문에 MSE에 비해 상대적으로 해석이 어렵다.
- MSE (L2 Loss) / RMSE
예측값과 실제값의 차이들의 제곱 평균 → 제곱을 하기 때문에 이상치에 민감하다.
- RMSLE
RMSE처럼 MSE 값에 루트를 씌우는데, RMSE와의 차이점은 예측값과 정답값에 각각 로그를 씌운다는 점이다.
- 특징1.
상대적인 Error를 측정해준다.
값의 절대적인 크기가 커지면 RMSE 값도 커지지만 RMSLE는 상대적 크기가 동일하면 RMSLE 값은 동일하다.
pred=100, y=90 → RMSLE=0.1053 , RMSE=10
pred=10000, y=9000 → RMSLE=0.1053, RMSE=1000
상대적인 Error를 측정해주는 것이 항상 좋은 것은 아니다. 1억과 100억의 Error와 0원과 99원의 Error가 같다.
- 특징2. Over Estimation보다 Under Estimation에 더 큰 페널티를 부여한다. == 예측값이 실제보다 작을 때 더 큰 페널티를 부여한다.
- 특징3. 아웃라이어에 덜 민감하다. (robust하다)
- R-Squared
MAE, MSE 같은 지표는 scale에 따라 값이 다르지만 R-Squared는 분산을 기반으로 예측 성능을 평가한다.
y값의 분산 대비 예측값의 분산 비율을 지표로하며, 1에 가까울수록 성능이 좋은 것이다.
분류분석의 경우 데이터를 얼마나 정확히 분류하였는지를 평가한다. 따라서 Accuracy, Precision, Recall 등의 metric을 사용한다.
- Accuracy
정답을 맞춘 예측 개수 / 전체 예측 개수 모델의 예측이 얼마나 정확한지를 나타내는 지표
→ 라벨 불균형이 있는 데이터에서는 신뢰도있는 평가지표가 아니다.
- Precision (정밀도)
TP / (FP + TP)
예측을 P로 한 데이터 중 실제로 P인 비율
- Recall (재현율)
TP / (FN + TP)
실제로 P인 데이터 중 P로 예측을 한 비율
- F1-Score
Precision과 Recall의 조화평균
→ 왜 조화평균인가?
산술평균이 아니라 조화평균을 사용하는 이유는 recall, precision 둘 중 하나가 0에 가깝게 낮을 때 지표에 그것이 잘 반영되도록 하기 위해서이다. 즉, 두 지표를 모두 균형있게 반영하여 모델의 성능이 좋지 않다는 것을 잘 확인하기 위해서이다.
ex) recall=1, precision=0.01
산술평균: (1+0.01) / 2 = 0.505 → precision의 값이 처참하지만 절반은 맞히는 것 처럼 보인다.
조화평균: 2 * (1 * 0.01) / (1 + 0.01) = 0.019
- AUPRC (대회 평가지표 중 하나)
PRC : 정밀도-재현율 곡선 (Preicision-recall curve)
PRC 곡선이 오른쪽 위에 가까울수록 좋은 분류기이다. 정밀도와 재현율이 모두 높기 떄문
AUPRC는 PRC 곡선 아래 면적 값으로 1에 가까울수록 좋음
- AUC
ROC 곡선은 진짜 양성 비율(TPR)에 대한 거짓 양성 비율(FPR)
AUC는 ROC 곡선 아래의 영역