들어가기에 앞서
step1. 정보량
- 어떤 사건이 자주 일어나면 별로 놀랍지 않고, 거의 안 일어나는 사건이 발생하면 놀라움
- 정보이론에서는 이 “놀라움의 정도”를 정보량이라고 봄

- 어떤 사건의 확률이 0.5라면 정보량은 비교적 작고, 확률이 0.01이라면 정보량은 훨씬 큼 그러면 아래와 같이

step2. 왜 -(log P(x))를 사용할까?

- 100% 일어나는 사건은 새로운 정보가 없음을 의미
하지만

드문 사건일수록 정보량이 커짐
step3. 왜 로그를 쓰는가?

로그 성질때문에 이렇게 진행이 됨
step4. 그러면 엔트로피는 무엇인가? -> 정보량의 평균값
- 각 사건마다 정보량이 다르기 때문에 전체 시스템이 평균적으로 얼마나 많은 정보를 가지는지를 계산함

발생 확률 × 그 사건의 정보량
step5. 주사위로 보면

-
해당 부분에서 머신러닝을 진행할때 softmax가 확률을 출력함
-
모델이 얼마나 확신하고 있는지 판단하는 데 사용할 수 있음
-
bit를 사용한 것은 log_{2}를 사용했을 떄의 정보량 단위임
크로스 엔트로피(cross entropy)
실제 분포 (P)를 기준으로 봤을 때, 모델이 예측한 분포 (Q)가 얼마나 잘못되었는지를 나타내는 값
-> 예측과 달라서 생기는 깜놀도(즉 정보량)을 의미함


- 핵심은 정답이 실제로 발생했는데, 모델이 그 정답에 낮은 확률을 줬다면 큰 손실을 준다는 것

- 정답이 0 또는 1인 이진 분류에서는 다음과 같이 씀



여기서 보이듯이
- 정답이 높은 확률을 부여하면 -> cross entropy가 작음
- 정답에 낮은 확률을 부여하면 -> cross entropy 큼
Entropy와 Cross Entropy의 차이

-> 실제 분포 (P) 자체가 얼마나 불확실한가 = entropy

-> 실제는 (P)인데 모델이 (Q)라고 생각했을 때 필요한 평균 정보량 = Cross Entropy
KL Divergence는?
- KL Divergence는 두 확률분포 (P)와 (Q)가 얼마나 다른지를 정보량 관점에서 나타낸 값




즉 해당 것은 모델 떄문에 추가로 발생한 차이임