Hey Tech
[Deep Learning] 평균절대오차(MAE) 개념 및 특징 본문
💡 목표
평균절대오차(MAE)의 개념 및 특징에 대해 알아봅니다.
1. MAE 개념
평균절대오차(Mean Absolute Error, MAE)는 모든 절대 오차(Error)의 평균입니다. 여기서 오차란 알고리즘이 예측한 값과 실제 정답과의 차이를 의미합니다. 즉, 알고리즘이 정답을 잘 맞힐수록 MSE 값은 작습니다. 따라서, MAE가 작을수록 알고리즘의 성능이 좋다고 볼 수 있습니다. MAE의 수식을 살펴보겠습니다.
$$ E = \sum_{i}|y_{i} -\tilde{y_{i}}| $$
- \(E\): 손실 함수
- \(y_i\): \(i\)번째 학습 데이터의 정답
- \(\tilde{y_i}\): \(i\)번째 학습 데이터로 예측한 값
2. MAE 특징
2.1. 오차와 비례하는 손실 함수
MAE는 손실 함수가 오차와 비례하여 일정하게 증가하는 특징이 있습니다(그림 1 참고). MAE와 달리, 평균제곱오차(MSE)는 오차 제곱의 평균값이므로 오차가 커질수록 손실 함수의 값이 빠르게 증가한다는 특징이 있습니다. 평균제곱오차 관련 포스팅은 이곳을 참고해 주세요. 이와 같은 특징 덕분에, MAE는 Outlier에 강건하다는(Robust) 특징이 있습니다. 다음 섹션에서 이에 대해 자세히 알아봅니다.
2.2. Outlier에 강건함
Outlier에 강건하다는 것은 오차가 유난히 큰 값은 Outlier로서 간주하여 해당 값을 무시하고 학습한다는 의미입니다. 예를 들어, 모델 학습이 잘 되었다면 위의 그림 2와 같이 대부분의 오차가 작기 때문에 밀집되어 나타날 것입니다. 그 와중에 그림 2의 우측 상단 빨간 점과 같이 오차가 유난히 큰 Outlier가 있을 수 있습니다. MAE는 모든 오차의 평균 합입니다. 즉, MAE의 경우, Outlier의 오차를 줄이기 위해 잘 추정된 녹색 데이터의 값을 모두 변화시켜 얻는 Loss 이득이나 Outlier의 큰 오차를 무시하고 현재 상태에서 학습을 진행할 때의 Loss 이득이 동일합니다. 따라서 MAE는 이러한 Outlier를 무시하고 학습을 진행합니다. 즉, MAE는 Outlier가 있어도 최대한 잘 추정된 데이터들의 특성을 반영할 수 있기 때문에 통계적으로 중앙값(Median)과 연관이 깊습니다. 반면 MSE의 경우, 에러 값이 증가함에 따라 손실 함수가 제곱배 만큼 커지기 때문에, Outlier의 오차를 줄이면 얻을 수 있는 Loss 이득이 훨씬 큽니다. 즉, MSE는 Outlier에 민감하다는 특징이 있습니다.
2.3. 회귀 문제에 활용
MAE는 회귀(Regression) 문제에 자주 활용됩니다. 예를 들어, 아래의 그림 3와 같이 사진을 통해 강아지의 키와 몸무게를 예측하는 알고리즘이 있다고 가정해 보겠습니다. 사진 속 강아지의 키와 몸무게는 실제로 각각 \([40.5, 21.3]\)라고 해보겠습니다. 이제 알고리즘은 강아지의 키와 몸무게를 예측합니다. 처음에 키와 몸무게를 각각 \([39.2, 19.7]\)로 예측했다고 가정하겠습니다. MAE를 계산해 보면 \(2.9\)입니다. 다음 예측에서는 \([39.8, 20.7]\)로 출력했다면 MSE는 \(1.3\)입니다. 이처럼 MAE를 활용하여 \(\theta\)를 변경해 가며 오차를 줄여갈 수 있습니다.
📚참고할 만한 포스팅
1. [Deep Learning] 퍼셉트론(Perceptron) 개념 이해
2. [Deep Learning] 퍼셉트론(Perceptron) 학습방법 및 절차
3. [Deep Learning] 활성화 함수의 개념 및 종류: sign, tanh, sigmoid, softmax, ReLU
4. [Deep Learning] 손실함수(Loss Function) 개념
5. [Deep Learning] 평균제곱오차(MSE) 개념 및 특징
6. [Deep Learning] 평균절대오차(MAE) 개념 및 특징
7. [Deep Learning] 최적화 개념과 경사 하강법(Gradient Descent)
8. [Deep Learning] 최적화 기법: (1) Momentum
9. [Deep Learning] 최적화 기법: (2) AdaGrad
10. [Deep Learning] 최적화 기법: (3) RMSProp
11. [Deep Learning] 최적화 기법: (4) Adam
평균제곱오차(MAE)의 개념과 특징에 대해 알아봤습니다.
포스팅 내용에 오류가 있다면 아래에 댓글 남겨주시길 바랍니다.
그럼 오늘도 즐겁고 건강한 하루 보내시길 바랍니다 :)
고맙습니다😊
'AI & 빅데이터 > 머신러닝·딥러닝' 카테고리의 다른 글
[Deep Learning] 최적화(Optimizer): (1) Momentum (2) | 2022.05.17 |
---|---|
[Deep Learning] 최적화 개념과 경사 하강법(Gradient Descent) (8) | 2022.05.06 |
[Deep Learning] 평균제곱오차(MSE) 개념 및 특징 (2) | 2022.04.23 |
[Deep Learning] 손실함수(Loss Function) 개념 (0) | 2022.04.22 |
[Deep Learning] Activation Function 개념 및 종류: sign, tanh, sigmoid, softmax, ReLU, Leaky ReLU (6) | 2022.04.21 |