본문 바로가기

Python

모델 평가지표

1. Forecast quality metrics

 

모델을 만들고 만들어진 모델의 유효성과 성과를 판단할 때 사용되는 평가지표는 아래와 같다.

 

MAE (Mean Absolue Error)

MAPE (Mean Absolue Percentage Error)

MSE (Mean Squared Error)

MeaAE (Median Absolue Error)

RMSE (Root Mean Squared Error)

MSLE (Mean Squared Log Error)

RMSLE (Root Mean Squared Log Error)

R² (R Sqaure)

 

보다 구체적인 계산 방법과 라이브러리 코드는 다음 페이지를 참조하면 된다. 

 

https://bkshin.tistory.com/entry/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-17-%ED%9A%8C%EA%B7%80-%ED%8F%89%EA%B0%80-%EC%A7%80%ED%91%9C

 

머신러닝 - 17. 회귀 평가 지표

회귀의 평가를 위한 지표는 실제 값과 회귀 예측값의 차이를 기반으로 합니다. 회귀 평가지표 MAE, MSE, RMSE, MSLE, RMSLE는 값이 작을수록 회귀 성능이 좋은 것입니다. 값이 작을수록 예측값과 실제값의 차이가..

bkshin.tistory.com


2. sklearn 에서의 RMSLE

 

sklearn.metrics에서 대부분 불러올 수 있고 MAPE는 다음과 같이 간단하게 함수로 만들면 된다. 

1
2
def mean_absolute_percentage_error(y_true, y_pred): 
    return np.mean(np.abs((y_true - y_pred) / y_true)) * 100

 

문제는 sklearn의 RMSLE를 이용할 경우 예측값이 음수가 될 가능성 때문에 오류가 종종 보인다는 점.

1
2
def rmsle(y, y0):
    return np.sqrt(np.mean(np.square(np.log1p(y) - np.log1p(y0))))

 

위와 같이 RMSLE 함수를 정의해서 사용하면 오류 발생하지 않는다...