본문으로 건너뛰기
실습하기

평균 제곱 오차 (MSE)

회귀 모델의 성능을 평가할 때는 단순한 정확도보다 예측 값과 실제 값 간의 오차를 측정하는 것이 중요합니다.

이러한 오차를 측정하는 대표적인 지표 중 하나가 MSE(Mean Squared Error, 평균 제곱 오차)입니다.

이번 수업에서는 이전 시간에 간단히 언급헀던 MSE는 모델이 예측한 값과 실제 값 사이의 차이제곱한 후 평균을 구한 값입니다.


평균 제곱 오차 계산 방법

MSE는 다음과 같은 공식으로 계산됩니다.

MSE=1ni=1n(yiy^i)2\text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2

여기서 각 항목은 다음과 같은 의미를 가집니다.

  • nn : 데이터 샘플의 개수

  • yiy_i : 실제 값(정답)

  • y^i\hat{y}_i : 모델이 예측한 값

이와 같이 평균 제곱 오차는 각 데이터 샘플에서 모델이 예측한 값과 실제 값의 차이를 제곱한 후, 모든 샘플에 대해 평균을 구합니다.

MSE 예시
실제 값: [10, 20, 30]
예측 값: [15, 25, 35]

MSE = ((10-15)² + (20-25)² + (30-35)²) / 3
= (25 + 25 + 25) / 3
= 75 / 3
= 25

MSE는 어떻게 해석해야 할까요?

MSE는 모델의 예측값이 실제 값과 얼마나 가까운지를 측정하는 지표입니다.

MSE 값이 작을수록 예측이 실제 값과 가까우며, 모델의 성능이 우수하다고 볼 수 있습니다.

반대로, MSE 값이 크다면 모델이 실제 값을 잘 예측하지 못하고 있다는 의미입니다.

제곱을 사용하는 이유는 오차의 부호(양수/음수)를 무시하고 오차의 크기만 반영하기 위해서입니다.

또한, 큰 오차에 더 큰 패널티를 부여하여 극단적으로 틀린 예측을 더 중요하게 고려할 수 있도록 합니다.


MSE는 어떤 한계가 있을까요?

MSE는 회귀 모델의 성능을 평가하는 데 매우 유용하지만, 몇 가지 단점이 있습니다.


제곱 연산으로 인해 큰 오차에 민감함

큰 오차 값이 있을 경우 전체 MSE 값이 급격히 증가할 수 있습니다.

따라서 이상치(Outlier)가 많은 데이터에서는 MSE가 모델 평가에 적절하지 않을 수도 있습니다.


실제 단위의 차이

MSE는 오차를 제곱한 값이므로, 원래 데이터의 단위와 다를 수 있습니다.

예를 들어, 실제 값이 cm 단위라면 MSE의 단위는 cm²가 됩니다.

이를 해결하기 위해 MSE의 제곱근을 취한 평균 제곱근 오차(RMSE)를 사용하기도 합니다.

RMSE=1ni=1n(yiy^i)2\text{RMSE} = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2}

위와 같이 평균 제곱 오차값에 제곱근을 취하면, 오차의 단위와 실제 값의 단위가 일치하게 됩니다.


다음 수업에서는 MSE의 단점을 보완하는 평균 절대 오차(MAE)에 대해 알아보겠습니다.

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!