어떤 모델로 실제 레이블을 예측하는 것이 머신러닝이 하는 일이다.
머신러닝 문제를 풀때, 레이블과 예측 레이블 간의 negative log likelihood를 최소화 하도록 디자인 되는 경우가 많다.
게다가 Regression 문제에서는 MSE Loss를 쓰고, Classification 문제애서는 Cross Entropy Loss를 쓰는 경우가 많다.
그 이유에 대한 설명을 해보고자 한다.
Loss를 다르게 쓰는 이유
원래는, 예측 레이블은 실제 확률과 비슷할 수록 좋기 때문에 $p(y | \hat{y})$를 최대화 하는 것이 목적이라고 할 수 있다.
$y$를 예측할 $\hat{y}$를 계산하는 함수는 어떤 모델 파라미터 $\theta$ 를 가진 확률적인 모델로 정의 되어, 변수 $x$를 넣어줌으로서 계산이 된다.
그런데, 왜 negative log likelihood로 계산이 될까?
확률 변수적인 계산을 하다보면 곱셈이 많이 들어가고 이를 쉽게 계산하기 위해 likelihood에 log 를 취한 log likelihood로 계산하게 된다.
또한, 모델을 학습시키 위한 task를 정의할때는 어떤 loss를 최소화하는 문제를 풀도록 한다. 따라서 음의 log likelihood를 최소화하도록 한다.
따라서, (supervised learning의 상황을 가정하면) 어떤 주어진 레이블과 예측 레이블 사이의 negative log likelihood를 최소화하는 문제를 풀도록 디자인 하게 되어있다.
이때, 어떤 확률 분포에서 나온 $y$ 임을 가정하느냐에 따라 다른 성격의 Loss로 유도된다.
유도 예시
예를 들면, 다음과 같이 연속성을 가진 가우시안 분포를 가정하면 왼쪽 처럼 MSE 꼴이 나오고, 이산적인 성격을 띈 베르누이나 멀티노미얼 분포를 가정하면 Cross Entropy Loss 꼴로 결국은 유도가 된다.

이와 같은 이유로 딥러닝/머신러닝 기반의 문제를 풀때, 레이블이 Regression 문제, 예를 들면 가격 예측과 같이 연속적인 값이면 MSE Loss를 쓰고, Classification 문제는 Cross Entropy Loss를 사용한다.