MAE
MSE는 회귀 문제에서 널리 쓰이는 강력한 손실 함수이다.
하지만 MSE는 오차를 ‘제곱’하기 때문에 이상치(outlier), 즉 유독 예측이 크게 빗나간 데이터에 매우 민감하게 반응하는 특징이 있다.
이로 인해 모델의 학습 과정이 소수의 이상치에 의해 크게 좌우될 수 있다.
평균 절대 오차(Mean Absolute Error, MAE)는 이러한 MSE의 민감도를 보완하기 위해 등장한 손실 함수이다.
MAE는 이상치의 영향을 덜 받으며 모델을 보다 강건하게(Robust) 학습시키고자 할 때 유용한 대안이 된다.
2. 평균 절대 오차 (MAE)의 정의
평균 절대 오차는 이름에서 알 수 있듯이, 각 데이터에 대한 오차의 절댓값(Absolute Error)의 평균(Mean)을 계산한 값이다.
예측값과 실제값의 차이를 절댓값으로 변환하여 모두 더한 뒤, 전체 데이터의 개수로 나누어 구한다.
이를 수식으로 표현하면 다음과 같다.
수식의 각 구성 요소는 MSE와 대부분 동일하며, 핵심적인 차이는 오차를 제곱하는 대신 절댓값을 사용한다는 점이다.
- $m$: 전체 데이터 샘플의 개수
- $h_\theta(x^{(i)}) - y^{(i)}$: $i$번째 데이터에 대한 오차(Error)
-
$ \dots $: 오차에 절댓값을 취하여 항상 양수로 만듦 -
$\sum_{i=1}^{m} \dots $: 각 데이터의 절대 오차를 모두 더함 - $\frac{1}{m}$: 합산된 값을 데이터 개수로 나누어 평균을 구함
MAE 역시 값이 크다는 것은 예측값과 실제값의 차이가 크다는 의미이며, 이 값을 최소화하는 것이 모델 학습의 목표이다.
3. MAE와 MSE의 핵심적인 차이
MAE와 MSE는 오차를 양수로 만든다는 공통점이 있지만, 그 방식의 차이로 인해 모델의 학습 과정에 다른 영향을 미친다.
3.1. 이상치(Outlier)에 대한 민감도
가장 중요한 차이는 이상치에 대한 반응이다.
- MSE (제곱 오차): 오차가 10일 때 손실은 100이 된다. 이처럼 오차가 커질수록 손실 값이 기하급수적으로 증가하므로, 모델은 이상치를 피하기 위해 필사적으로 파라미터를 조정한다.
- MAE (절대 오차): 오차가 10일 때 손실은 10이 된다. 손실이 오차와 정비례하여 선형적으로 증가하므로, 이상치가 존재하더라도 MSE만큼 손실 값이 폭발적으로 커지지 않는다.
결과적으로, 데이터에 집값을 예측할 때 수백억짜리 초호화 저택 같은 이상치가 포함되어 있다면, MAE를 사용하는 것이 전체적인 데이터 경향을 학습하는 데 더 유리할 수 있다.
이러한 특성을 ‘이상치에 강건하다(Robust to outliers)’고 표현한다.
3.2. 경사 하강법과의 관계
손실 함수의 형태는 경사 하강법의 작동 방식에도 영향을 준다.
-
MSE: 아래로 볼록한 매끄러운 이차 함수 형태로, 최솟값 근처에서 기울기가 점차 작아진다.
덕분에 최솟값에 가까워질수록 파라미터 업데이트 폭이 줄어들어 안정적으로 최적점에 수렴하기 용이하다. -
MAE: 절댓값 함수는 V자 형태의 그래프를 가진다.
이는 오차가 0인 지점(V의 뾰족한 부분)에서 미분이 불가능하다는 수학적 특징을 낳는다.
더 중요한 것은, 최솟값에 가까워져도 기울기의 크기가 일정하게 유지된다는 점이다(왼쪽은 -1, 오른쪽은 +1).
이로 인해 학습 막바지에 최적점 주변을 계속 맴돌며 진동할 수 있어, 학습률(learning rate)을 정교하게 조절할 필요가 있다.
4. 결론: 언제 MAE를 사용하는가?
MAE와 MSE의 선택은 정답이 정해져 있지 않으며, 데이터의 특성과 해결하고자 하는 문제에 따라 달라진다.
- MAE를 고려해야 할 때:
- 데이터에 이상치가 많다고 판단될 때
- 이상치가 모델의 전체적인 성능을 왜곡해서는 안 될 때
- 예측 오차를 실제 단위(e.g., dollar, cm)로 직관적으로 해석하고 싶을 때 (MSE는 단위가 제곱됨)
- MSE가 더 적합할 수 있을 때:
- 이상치의 발생을 큰 실수로 간주하고, 모델이 이런 실수를 절대 하지 않도록 강하게 학습시켜야 할 때
- 안정적인 수렴이 더 중요할 때
결론적으로 MAE는 강건함(Robustness)을, MSE는 안정적인 수렴과 큰 오차에 대한 민감성을 대표하는 손실 함수로, 둘의 장단점을 이해하고 데이터에 맞게 선택하는 것이 중요하다.