(정보량, 엔트로피 구체적인 건 결정트리 (의사결정나무) 참고)
정보량
$$ I(x) =log_b(\frac{1}{P(X)})= -log_b(P(X)) $$
엔트로피 = 정보량의 기댓값
$$ H(X)=E[I(X)]=-\displaystyle\sum_{i=1}^nP(x_i)log_b(P(x_i)) $$
(여기서 $E[\cdot]$는 기댓값 연산자)
KL divergence - 공돌이의 수학정리노트 (Angelo's Math Notes)
binary case인 경우 4가지 경우의 수가 존재. >> target(label)을 y, prediction을 $\hat{y}$라 하자.
$$ BCE=−y\log(\hat y)−(1−y)\log(1− \hat y) $$
알 수 있는 사실 : 예측값과 실제값이 상이할수록 크로스 엔트로피 값은 커진다. 즉, 크로스 엔트로피는 실제값과 예측값의 상이한 정도를 나타낸다.
BCE 관련 Q&A
공식) **P의 기준(즉, P가 이상적인 수치)**으로 Q에 대한(즉, Q가 관측치) 크로스 엔트로피
$$ CE =H_p(Q)= \sum_{x\in X}\bigg(-P(x)log(Q(x))\bigg)~~(이때,~P는~확률~분포) $$
$$ H_P(Q)=\bold{E}{x\sim P{data}}\Big[-logQ(x)\Big] $$
의미
아래 KLD의 수식에 따르면 분류 문제에서 $D_{KL}(p||q)=CE(p,q)$ 가 성립한다.
따라서 CE 수식을 젠센 부등식을 활용하면 다음과 같이 쓸 수 있다.
+) 젠센 부등식(Jensen’s inequality) : 볼록함수(확률밀도함수)와 적절한 분포 p에 대해 아래 식이 성립한다.
$$ f(E_{x\sim p}[x])\le E_{x\sim p}[f(x)] $$
$$ CE(P,Q)=-\sum^C_{c=1}P(c)log~Q(c)=\bold{E}{c\sim p}[f(Q(c))]\Big(f:log(x)\Big)\\ \Rightarrow CE(P,Q)=\bold{E}{c\sim p}[f(Q(c))] \ge f(\bold{E}{c\sim p}[Q(c)]) \Big(\operatorname{Jensen}\Big) \\\Rightarrow CE(P,Q)\ge -log~\bold E{c\sim p}[Q(c)] \\\Rightarrow -CE(P,Q)\le log~\bold E_{c\sim p}[Q(c)]~\Big(부등호~전환\Big) \\\Rightarrow e^{-CE(P,Q)}\le \bold E_{c\sim p}[Q(c)] $$
위 CE 수식을 젠슨 부등식으로 정리한 것의 의미 : 두 확률분포(P,Q)가 같을 확률의 최솟값이 곧 CE의 결과값이 된다.
e.g.) 어떤 모델의 크로스 엔트로피가 0.5인 경우, $e^{-CE(P,Q)}=e^{-0.5}=0.6065...$ 이다. 입력값 c에 대한 모델의 확률분포 Q의 기댓값이 약 0.6이상이므로 이를 확률분포 Q가 약 60% 이상의 확률로 확률분포 P에 근사하다고 말할 수 있다.
2가지 관점에서의 CE
GPT 요약
관점 | 설명 |
---|---|
정보량/엔트로피 관점 | Cross Entropy = 데이터의 불확실성을 모델 분포로 측정한 평균 정보량 |
log-likelihood/MLE 관점 | Cross Entropy 최소화 = log-likelihood 최대화 = 모델이 데이터를 가장 잘 설명하게 만들기 |
CE가 MSE보다 오차에 대해 더 큰 패널티를 준다.
[파랑: BCE loss, 노랑: MSE loss]
분류 task에서 로지스틱 함수와 결합했을 때 미분식이 매우 간단해진다.
선형모델의 결과 z 라고 하자.
$$ z=\mathbf{a}\mathbf{x}+b \\\sigma({z})=\hat{y}=\frac{1}{1+e^{-{z}}} \\BCE(y,\hat{y}) = -(y\log\hat{y}+(1-y)\log(1-\hat{y})) \\\frac{\partial BCE}{\partial z} = \frac{\partial BCE}{\partial \hat{y}}\cdot\frac{\partial \hat{y}}{\partial z}=\cdots=\hat{y}-y $$