개요
해당 포스팅 시리즈는 “Unerstanding Deep Learning” 책을 학습하는 과정을 기록하는 스터디 노트이다. 이번에는 5장, Loss functions를 다룬다.
1. 확률분포로 접근하는 이유
이전 챕터까지는 model에서 input 를 넣으면 ouput 가 곧바로 나온다고 가정했다. 그런데 책에서 갑자기 이게 아니라 관점을 바꿔서 model 가 확률 분포 를 compute하자고 한다. 그 이유가 자세히 나와 있지 않아서 찾아봤다.
첫 번째 이유로는 model이 확률 분포를 계산하도록 하면 loss funtion을 하나로 확실하게 정할 수 있다는 장점이 있기 때문이다. 예를 들어 univariate regression에서는 loss function으로 least square를 사용하는데 least square가 아니라 mse를 쓰거나 차의 절댓값을 쓸 수도 있을 것이다. 여러가지 경우 중 어떤 것을 써야할지 명확하지가 않다. 하지만 확률 분포로 접근한다면 univariate regression에서는 univariate normal distribution을 써야 한다는 합당한 이유가 생기고 그에 따라 negative log likelihood를 구하면 자연스럽게 least square가 된다. 이처럼 loss function을 그렇게 정의한 수학적인 이유가 생기는 것이다.
두 번째 이유로는 확률 분포로 접근하면 model이 uncertainty를 compute하게 할 수 있고 그 결과 해당 값을 어느 정도의 확신을 가져서 예측을 하는 지 알 수 있다. 단순히 값을 바로 예측하게 한다면 왜 그 값을 골랐는지, 다른 값에 비해서 얼마나 그 값이 합당한 것인지 알 수 없지만 variance를 compute하게 한다면 이 정확도를 구하거나 신뢰도도 계산할 수가 있는 것이다.
결국 데이터의 상태, 풀고자 하는 problem 종류에 따른 loss fucntion을 그렇게 정한 근거를 분명하게 정할 수 있는 장점과 uncertainty를 얻을 수 있기에 확률 분포로 하는 것이었다.
2. Cross-entropy와 Dirac delta function
책의 5.7에서 cross entropy가 사실 negative log likelihood와 동일함을 보여주는 부분이 있다. 이 부분이 처음에는 잘 이해가 안 갔는데 갑자기 dirac delta function이 나와서였다.

dirac delta function은 해당 x 값에서 함숫값이 무한대로 발산하지만 적분했을 때 값이 1이 되는 함수이다.
위 식에서 로 표현하고 있는데 이게 갑자기 왜 등장한 건지 이해가 잘 안 갔다.

여러번 다시 읽어보니까 이게 왜 등장한 건지 알 수 있었다. cross entropy loss는 확률 분포간의 거리를 최소화시키는 loss를 의미한다. 결국 Kullback-Leibler divergence가 최소화 돼야한다. 자체가 확률 분포 간의 거리를 나타내다 보니 비교할 확률 분포가 2개 있어야 한다. 앞서서 우리는 model이 확률 분포를 compute하기로 관점을 바꿨다. 이때 우리가 비교해야하는 건 model이 예측한 분포와 실제 정답의 분포이다. 정답은 아직 확률 분포가 아닌데 그저 정답 값이 숫자로 있을 뿐이다. 이 정답을 확률 분포로 만들기 위해서 dirac delta function이 나온 것이었다. 해당 값에서 의 확률을 가지고 나머지 구간에서는 확률이 0이 되는 것이다. 결국 이를 통해 를 구하면 cross entropy loss 가 negative log likelihood와 같아짐을 알 수 있다.
Reference
[1] Prince, S. J. D. (2023). Understanding Deep Learning. The MIT Press. Retrieved from http://udlbook.com