잡학사전/머신러닝

[머신러닝] 손실함수(loss function) (1) - L1, L2 손실함수

슬기나무 2022. 4. 13. 22:56
반응형

이번 포스팅에서는 손실함수에 대해 알아보겠습니다.

(출처: 선형대수와 통계학으로 배우는 머신러닝 with 파이썬, 장철원 지음)

 

 손실함수(loss function)

손실함수는 머신러닝을 통해 생성한 모형이 실제값과 얼마나 차이가 나는지

 

손실 정도를 수치로 나타낸 함수입니다.

 

손실함수에는 L1 손실함수와 L2 손실함수가 존재합니다.

 

그리고 손실함수와 비슷하게 비용함수라는 개념도 존재합니다만

 

엄밀하게 말하면 서로 다르지만 실제로는 구분없이 사용하기도 한답니다.

 

 L1 손실함수

L1 손실은 실제값과 예측값의 차이를 말하며

 

수식으로 아래와 같이 표현할 수 있습니다.

 

i=1n|yi,trueyi,predict|

 

L1 손실은 실제값과 예측값의 차이를 줄이는 것이 학습 목적입니다.

 

그리고 이와 관련된 비용 함수로는 MAE(Mean Absolute Error)가 있습니다.

 

MAE=1ni=1n|yiy^i|

 

즉, L1 Loss의 평균을 나타내는 함수이고, yii번째 실제값,

 

y^ii번째 예측값을 말합니다.

 

 L2 손실함수

L2 손실은 실제값과 예측값의 차이의 제곱을 말합니다.

 

수식으로는 아래와 같이 표현됩니다.

 

i=1n(yi,trueyi,predict)2

 

마찬가지로 이 손실함수를 하용하면

 

실제값과 예측값의 제곱의 차를 줄이는데에 학습 목적이 있겠죠.

 

L2 손실과 관계된 비용 함수에는 MSE(Mean Squared Error)와

 

RMES(Root Mean Squared Error)가 있습니다.

 

MSE=1ni=1n(yiy^i)2

 

RMSE=MSE

 

L2 손실과 MSE는 공통적으로 실제값과 예측값의 차이에 제곱을 취하기 때문에

 

이상치(outlier)에 민감합니다.

 

만약 오차가 크다면, 거기에 제곱을 하기 때문에 더 부각되기 때문이겠죠?

 

모형의 이상치에 중점을 두고싶다면 MSE를 사용하면 되겠습니다.

 

 

여기까지 손실함수에 대해 알아보았습니다.

반응형