본문 바로가기
이론

[Loss function][Regression][MAE][MSE][L1 loss][L2 loss][Huber loss]Regression loss function,회귀에서 손실함수

by Chandler.j 2024. 9. 9.
반응형

1. Regression, Loss function

회귀 모델을 학습할 때, 모델이 예측한 값과 실제 값 사이의 차이를 측정하는
**손실 함수(Loss Function)**는 매우 중요한 역할을 합니다.
손실 함수는 모델이 학습하는 방향을 결정하고, 그 성능을 좌우합니다.
회귀 분석에서 자주 사용되는 손실 함수로는
  • MAE(Mean Absolute Error),
  • MSE(Mean Squared Error),
  • 그리고 Huber Loss가 있습니다.
이번 글에서는 이 세 가지 손실 함수의 차이점과 특징을 살펴보겠습니다.

1) 평균 절대 오차 (MAE: Mean Absolute Error, L1 loss)

MAE는 예측 값과 실제 값의 차이의 절대값을 평균내는 방식으로,
오차가 클수록 손실이 선형적으로 증가하는 특징을 가지고 있습니다.

이 손실 함수는 이상치(outlier)에 강건한 모델을 만들 수 있는 장점이 있습니다.

MAE 공식:

$$ \text{MAE} = \frac{1}{n} \sum_{i=1}^{n} |y_i - \hat{y_i}| $$

 

 

여기서:

$$ y_i={실제값}, { } \hat y_i={예측값}, n={데이터수} $$


MAE의 특징:

  • 이상치에 강건: MAE는 오차의 절대값을 계산하기 때문에,
  • 큰 오차가 발생하더라도 손실 값이 선형적으로 증가합니다. 이로 인해 이상치가 있는 데이터에서도 모델이 안정적인 성능을 보일 수 있습니다.
  • 작은 오차에 덜 민감: MAE는 MSE에 비해 작은 오차에 덜 민감합니다. 이는 모델이 작은 오차를 무시하고 전체적으로 큰 오차를 줄이는 데 더 집중하도록 만듭니다.

MAE의 장점:

  • 이상치가 많은 데이터에서 매우 효과적입니다. 이상치가 모델의 성능을 크게 왜곡하지 않기 때문에, 안정적인 모델을 학습할 수 있습니다.

MAE의 단점:

  • 작은 오차를 줄이는 데에는 한계가 있을 수 있습니다. 아주 정밀한 예측이 필요한 경우에는 MSE만큼의 성능을 기대하기 어렵습니다.

2) 평균 제곱 오차 (MSE: Mean Squared Error, L2 loss)

MSE는 예측 값과 실제 값 사이의 차이를 제곱한 후 평균을 구하는 방식입니다.
제곱을 사용하기 때문에 작은 오차는 작게, 큰 오차는 크게 반영하는 특징이 있습니다. MSE는 작은 오차에도 민감하게 반응하는 장점이 있지만, 이상치에 매우 민감하다는 단점도 가지고 있습니다.

MSE 공식:

$$ \text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y_i})^2 $$

 


MSE의 특징:

  • 작은 오차에 민감: 오차를 제곱하기 때문에 작은 오차가 모델 성능에 크게 영향을 미칩니다. 이는 매우 정밀한 예측이 필요할 때 MSE가 유용하다는 것을 의미합니다.
  • 이상치에 민감: 제곱된 값이 사용되므로, 큰 오차(이상치)는 모델의 전체 손실에 매우 큰 영향을 미칩니다. 이상치가 있는 데이터에서는 MSE가 손실 값을 과도하게 키우는 경향이 있습니다.

MSE의 장점:

  • 정밀한 예측: 작은 오차를 줄이기 위해 MSE를 사용하면, 예측 값이 실제 값에 가깝도록 모델이 학습합니다.

MSE의 단점:

  • 이상치에 취약: 큰 오차에 민감하게 반응하기 때문에, 데이터에 이상치가 있으면 모델이 이상치에 너무 많은 비중을 두고 학습될 수 있습니다.

3) Huber Loss

Huber Loss는 MSE와 MAE의 장점을 결합한 손실 함수입니다.
작은 오차에서는 MSE처럼 작동하여 민감하게 반응하고, 큰 오차에서는 MAE처럼 작동하여 이상치에 강건합니다.
이 손실 함수는 MSE와 MAE의 절충안으로, 데이터에 이상치가 존재하는 경우에 자주 사용됩니다.

Huber Loss 공식:

 

$$ L_\delta(y, \hat{y}) = \begin{cases} \frac{1}{2}(y - \hat{y})^2 & \text{if } |y - \hat{y}| \leq \delta, \\ \delta \cdot (|y - \hat{y}| - \frac{1}{2}\delta) & \text{if } |y - \hat{y}| > \delta, \end{cases} $$

 

 

여기서:

  • δ는 임계값으로, 오차가 δ보다 작을 때는 MSE처럼 작동하고, 클 때는 MAE처럼 작동하게 만듭니다.

Huber Loss의 특징:

  • 작은 오차에 민감하고, 이상치에 강건: 작은 오차에서는 MSE처럼 오차를 제곱하여 민감하게 반응하지만, 큰 오차가 발생하면 MAE처럼 선형적으로 반응하여 이상치의 영향을 줄입니다.
  • δ 값 조정 가능: δ 값을 조정하여 MSE와 MAE 사이의 균형을 조정할 수 있습니다.

Huber Loss의 장점:

  • 이상치가 있는 데이터에서 성능이 뛰어납니다. MSE처럼 작은 오차에 민감하면서도, MAE처럼 이상치에 강건한 성능을 제공합니다.

Huber Loss의 단점:

  • δ 값 설정에 따라 성능이 달라지므로, 적절한 δ 값을 선택하는 것이 중요합니다.

2. 손실 함수의 비교

손실 함수 작은 오차에 대한 민감도 이상치에 대한 민감도 특징

손실 함수 작은 오차에 대한 민감도 이상치에 대한 민감도 특징
MSE 매우 높음 매우 높음 작은 오차에 민감하지만, 이상치에 취약함
MAE 낮음 낮음 이상치에 강건하지만, 작은 오차에 덜 민감
Huber Loss 중간 (조정 가능) 중간 (조정 가능) MSE와 MAE의 장점을 결합, 이상치와 작은 오차를 균형 있게 처리

 


3. 결론

회귀 모델에서 손실 함수의 선택은 매우 중요합니다.
MSE는 작은 오차에 민감하게 반응하기 때문에 정밀한 예측을 요구할 때 적합하지만,
이상치에 민감한 단점이 있습니다.
반면, MAE는 이상치에 강건하여 더 안정적인 성능을 제공하지만, 작은 오차에 덜 민감하게 반응합니다.
Huber Loss는 이 두 손실 함수의 장점을 결합하여,
작은 오차에는 민감하게 반응하면서도 큰 오차(이상치)에 대해서는 덜 민감하게 처리할 수 있습니다.
따라서, 이상치가 있는 데이터에서 균형 잡힌 성능을 원할 때 Huber Loss가 좋은 선택이 될 수 있습니다.
데이터의 특성에 맞춰 적절한 손실 함수를 선택하는 것이
회귀 모델의 성능을 최적화하는 데 매우 중요한 요소입니다.

TOP

Designed by 티스토리