본문 바로가기

통계/통계지식

[모델성능 평가지표] (1) 회귀모델

평가지표란?

여러가지로 만든 모델을 서로 비교해서

주어진 가설 공간에서 최고의 성능을 발휘하는 최적의 모델을 선택하기 위해

모델 평가 지표를 사용해서 성능을 평가한다. 

 

모델성능 평가지표 종류

 

 

회귀모델 성능 평가

회귀모델을 평가할 때는 실측값과 예측값의 차(=잔차)를 사용한 지표를 사용하는 것이 일반적이다.

회귀의 평가를 위한 지표는 실제 값과 회귀 예측값의 차이 값을 기반으로 한 지표가 중심이다.

실제값과 예측값의 차이를 그냥 더하면 잔차의 합은 0이므로 지표로 쓸 수 없다.

이 때문에 잔차의 절대값 평균이나 제곱, 또는 제곱한 뒤 다시 루트를 씌운 평균값을 성능 지표로 사용한다.


회귀 평가지표인 MAE, MSE, RMSE, MSLE, RMSLE는 값이 작을수록 는 값이 클수록 회귀 성능이 좋은 것으로 해석된다. 값이 작을수록 예측값과 실제값의 차이가 없다는 뜻이기 때문이다.

 

 

 

1. MAE (Mean Absolute Error)

- 모델의 예측값과 실제값의 차이를 모두 더한다는 개념으로, 실제 값과 예측값의 차이(=에러)를 절댓값으로 변환하여 평균한 값이다.

 

- 에러의 절대 값 그 자체를 나타내기 때문에, 값은 낮을수록 좋다.

 

- MSE보다 특이치에 *robust하다.

(*'robust' 정의 더보기 클릭∨)

더보기

robust 하다 [로버스트 하다]

 

1,2,3,4,5 이렇게 총 5개의 데이터가 있을때 해당 데이터의 평균은 3이며 중앙값도 3이다.

1,2,3,4,100 으로 데이터가 바뀌었다고 가정할때

평균은 3에서 22가 되고, 중앙값은 3에서 3으로 유지된다.

평균은 100 이라는 아웃라이어(이상치)의 영향을 받아 크게 값이 바뀌었고,

중앙값은 아웃라이어의 영향을 받지않아 값이 바뀌지 않았다.

 

이때, 평균은 로버스트(robust)하지 않다고 하고, 중앙값은 로버스트(robust)하다고 한다.

robust는 사전적 의미로 '건장한', '튼튼한' 정도의 의미를 가지고 있는데

번역이 여의치 않아 데이터 과학에서는 그냥 '로버스트 하다' 라고 표현한다.

 


MAE

 

2. MSE (Mean Squared Error)

- 실제 값과 예측값의 차이(=에러)를 제곱하여 평균한 값이다.

 

- 에러를 제곱하여 평균한 값으로 낮을수록 좋다.

 

- 에러를 제곱하기 때문에 1 미만의 에러는 작아지고 그 이상의 에러는 커지는 값의 왜곡이 발생한다. 

 

 

3. RMSE (Root Mean Squared Error)

 

- MSE 에 Root 를 씌운 에러 지표

 

- 제곱된 에러를 다시 루트로 풀어주기 때문에 에러를 제곱해서 생기는 값의 왜곡이 좀 덜하다.

 

- MSE 경우 제곱된 에러 값을 그대로 보는 한편, RMSE 는 에러 그자체의 평균을 보다 직관적으로 보여준다.

 

 

4. RMSLE (Root Mean Squared Log Error)

RMSE에 로그를 씌운 것이다.

 

 

 

 

RMSE와 RMSLE 비교는 더보기 클릭

더보기

RMSLE는 RMSE와 다르게 실제 값과 관련된 오차에 벌점을 부과하기 때문에 이상값에 덜 민감하다는 장점이 있다.  RMSLE는 Over Estimation(과대평가) 보다 Under Estimation(과소평가)에 더 큰 패널티를 부여한다. 즉, 예측값이 실제값보다 클 때보다 예측값이 실제값보다 작을 때 더 큰 패널티를 부여한다.

ex)

예측값 = 600,   실제값 = 1,000일 때 RMSE = 400, RMSLE = 0.510

예측값 = 1,400, 실제값 = 1,000일 때 RMSE = 400, RMSLE = 0.33

=> 예측값과 실제값의 차이는 둘 다 400으로 과대평가든 과소평가든 RMSE값은 동일하다. 하지만 RMSLE는 Under Estimation(과소평가)일 때 (즉, 예측값이 실제값보다 작을 때) 더 높은 페널티가 주어진다.

 

배달 음식을 시킬 때 30분이 걸린다고 했는데 실제로 20분이 걸리는 건 큰 문제가 되지 않지만, 30분이 걸린다고 했는데 40분이 걸리면 고객이 화가 날 수 있다. 이럴 때 RMSLE를 적용할 수 있다.


 

5. MAPE (Mean Absolute Percentage Error)

율 오차(비율 에러) 라고 하며 백분율료 표시하고 크기 의존적 에러의 단점을 커버하기 위한 모델이다.

 

MAPE

At는 실제 값, Ft는 예측 값으로, 예측 값과 실제 값을 뺀 후 이를 실제 값으로 나눈 값을 모두 더한 후에 n으로 나눈 후 백분율로 표현하기 위해 100을 곱한다.

 

해당 지표의 단점은 At(실제 값)이 1보다 작을때 발생한다. 자칫하면 MAPE는 무한대에 가까운 값을 찍을 수 있게 되고, 실제 값이 0이라면 MAPE값을 계산할 수 없게 된다.

 

 

 

 

 

 


6. R²

분산을 기반으로 예측 성능을 평가하며 1에 가까울수록 예측 정확도가 높다.