MSE vs Cross Entropy loss func

SoyE·2023년 8월 23일

MSE vs Cross Entropy

모델을 학습하다 보면 loss func을 선택해야 하는 순간이 온다.
보통 regression task에서는 MSE, classification task에선 Cross Entropy를 사용한다.
그 이유에 대해 알아보자

위 그래프는 색깔 그래프가 Cross Entropy, 회색 그래프가 MSE를 나타낸다. 0~1사이에서는 Cross Entropy는 정답 값과 예측 값의 괴리가 클수록 더 큰 벌점을 부여하고 MSE는 Cross Entropy보다 훨씬 약하게 벌점을 부여하는 것을 볼 수 있다.

classification task에서는 모델의 예측 값이 0~1사이의 확률 값으로 표현이 되기 때문에 classification task에서 Cross Entropy Loss가 더 유용한 이유가 여기에 있다.

+

추가로 Cross Entropy Loss func을 사용해서 매개변수를 업데이트할 때 사용되는 매개변수 미분 값을 살펴보면 다음과 같다.
앞 부분 (예측값 - 실제값)은 실제 값과 예측 값이 얼마나 다른지를 나타내고 뒷 부분 x는 입력 스케일의 값이 에러 교정에 반영되는 것을 의미한다.

또한 Cross Entropy를 loss func으로 사용할 경우 hidden layer activation func에서 exponential(sigmoid)를 쓰게 되는데 Cross Entropy에서 log로 그 값을 상쇄시켜주기 때문에 MSE보다 Cross Entropy 더 유용하다.

neural net 앞, 중간 부분 -> non-linear transform -> new representation
output layer -> custom

profile
응애

0개의 댓글