각 Loss의 장단점 및 특징
1. MSE Loss (L2 Loss)
$$
L2\ Loss = \frac{1}{N} \sum_{i=1}^{N} (y_i - \hat{y}_i)^2
$$
- 장점: Convergence(수렴)가 더 빠르다.
- b/c 실제값과 치아기 크면 해당 Loss 값은 더욱 크다. (MSE은 Quadratic 하므로)
- 단점: Anomaly (Outlier)에 대해서 더 민감하다.
2. MAE Loss (L1 Loss)
$$
L1\ Loss = \frac{1}{N} \sum_{i=1}^{N} |y_i - \hat{y}_i|
$$
- 장점: MSE와 비교했을 때 Anomaly에 대해서 비교적 robust하다.
- 단점: 0에서 미분가능하지 않다. MSE보다 초반 학습이 느릴 수 있다.
3. Huber Loss
$$
L_{\delta}(a) = \begin{cases}
\frac{1}{2}a^2 & \text{if } |a| \le \delta \\
\delta (|a| - \frac{1}{2}\delta) & \text{if } |a| > \delta
\end{cases}
$$
- MSE의 faster convergence의 장점과 MAE의 outlier에 대한 robustness 장점을 둘 다 가지고 있다.
- 단점: 한 번만 전구간 미분가능하다.
4. Log Cosh
$$
\text{log cosh}(x) = \begin{cases}
\frac{x^2}{2} & \text{if } |x| \leq 18 \\
|x| - \frac{1}{2}\log(2) & \text{if } |x| > 18
\end{cases}
$$
- Huber Loss와 비슷한 성격을 가졌지만 전구간 두 번 이상 미분가능하다.
왜 미분가능함이 중요한가?
Smoothness & Well-behaved function
1. "미분가능함" = Smooth(매끄럽다)고 Well-behaved(얌전하다)
2. 함수의 출력값이 입력값의 변화에 따라 "매끄럽고 부드럽게" 변함.
3. 매끄럽고 부드러운 함수 -> extrapolate(추정), interpolate(보간)하기 수월함.
b/c 학습된 딥러닝 모델이 학습에서 보지 못한 input data space에 대해서 inerpolate 혹은 extrapolate 가능해진다.
출처: 딥러닝 이론 + Pytorch 실무 완전 정복 16강
'🤖AI > 딥러닝' 카테고리의 다른 글
(04강) Semantic Segmentation (0) | 2021.09.07 |
---|---|
Quickdraw dataset (0) | 2021.09.07 |
[딥러닝] RNN (0) | 2021.05.25 |
[딥러닝] CNN (Convolution Neural Network) (0) | 2021.05.15 |
[딥러닝] Optimization (0) | 2021.04.16 |