AI

Loss Function

inthyes 2023. 10. 20. 16:38

손실 함수

  • 머신러닝에서 모델이 나타내는 확률 분포와 데이터가 따르는 실제 확률 분포 사이의 차이를 나타내는 함수
  • 값이 0에 가까울수록 모델의 정확도가 높고, 반대로 0에서 멀어질수록 모델의 정확도가 낮음
  • L1 손실 함수
  • 실제값과 예측값의 차이
  • 학습 목적 : 실제값과 예측값의 차이를 줄이는 것
  • 관련 비용 함수 : MAE(Mean Absolute Error)
-L1 Loss의 평균을 나타내는 함수이다. == error의 절대값의 평균
-y_i 는 i번째 실제값, y^_i는 i번째 예측값_

L2 손실 함수

  • 실제값과 예측값의 차이의 제곱
  • 학습 목적 : 실제값과 예측값의 제곱의 차를 줄이는 것
  • 관련 비용 함수 : MSE(Mean Squared Error)/ RMES(Root Mean Squared Error)
-MSE : ERROR의 제곱의 평균을 낸 값

L2손실과 MSE는 공통적으로 실제값과 예측값의 차이에 제곱을 취하기 때문에 이상치(outlier)에 민감함-> 모형의 이상치에 중점을 두고싶다면 MSE를 사용하면 됨

MSE vs MAE

최적값을 구하기에는 MSE가 좋지만, MAE가 outlier(이상치)에 영향을 덜 받는다.

MAE의 경우 loss의 크기와 관계 없이 항상 gradient가 일정하며 loss가 작아도 gradient는 작지 않기 때문에 경사하강법(gradient descent)를 사용해 최적값을 찾는 데에 어려움이 존재한다.
이에 비해 MSE는 loss가 크면 gradient도 크고, loss가 작으면 gradient도 작기 때문에 최적값을 찾는 것이 보다 수월하다.

다른 값들에 비해 훨씬 크거나 작은 값인 이상치가 존재하는 경우 MAE가 더 영향을 적게 받는다.
-> train data에 이상치가 존재하는 경우 MAE loss를 사용하는 것이 좋다.

MSE loss를 사용하여 훈련한 경우, 예측값은 정답 값들의 평균을 의미하고,
MAE loss를 사용하여 훈련한 경우, 예측값은 정답값들의 중앙값을 의미한다.

Cross Entropy Loss

머신러닝의 분류 모델이 얼마나 잘 수행되는지 측정하기 위해 사용되는 지표

'AI' 카테고리의 다른 글

train & test & validation data set  (1) 2023.10.21
batch size & epoch & iteration  (0) 2023.10.20
K-Fold Cross Validation  (0) 2023.10.20
ROC curve  (0) 2023.10.20
Entropy  (1) 2023.10.20