정보 Information
통계학에서 놀랄만한 내용일수록 정보량이 많다고 이야기하고 이는 확률의 개념을 재해석한 것으로 볼 수 있다.
이는 확률이 낮은 사건일수록 거의 일어나지 않을 일이기 때문에 정보량이 높다고 이해할 수 있다.
위의 내용을 바탕으로 어떤 사건 변수 \( X \)에 대한 정보량(Info)는 다음과 같이 생각할 수 있다.
$$ Info \propto \frac{1}{P(X)} $$
정보량
구체적으로 통계에서 정보량은 다음과 같이 정의한다.
$$ I(x) = -log_{b}(P(X)) $$
b = 2 : bit
b = e : nit
b = 10 : dit
log에 \( \frac{1}{P(X) \)를 넣었기 때문에 -가 앞으로 나오고 위와 같이 정의된다.
log를 사용한 이유는 확률에 반비례 해야하고 두 사건의 정보량을 합치면 각 사건의 정보량을 합친 것과 같아야 하기 때문이다.
-> 두 사건이 연달아 일어나는 것은 확률의 곱으로 계산되기 때문에 log로 정보량을 합치는 것!
엔트로피: 평균 정보량
$$ H(X) = E[I(X)]=- \sum_{t=1}^{n} P(x_{i}) log_{b}(P(x_{i})) $$
통계에서 이산 랜덤 변수 \( X \)의 샘플 공간이 \( \{x_{1},x_{2}, \ldots ,x_{n}\} \)이라고 할 때 정보 엔트로피는 위와 같다.
\( H \): 정보 엔트로피
\( E[] \): 기댓값 연산(평균)
이를 시각화 하면 아래와 같은 그래프를 얻을 수 있다.
- 이 정보를 토대로 확률이 0이거나 1일 때 엔트로피의 값은 낮아지며(예측하기 쉬움) 0.5일 때 높아지는 것을 확인할 수 있음
- 왼쪽의 그래프와 같이 불균형한 분포 \( P(X) \)의 불확실성이 더 적기 때문에 엔트로피가 낮고 오른쪽 그래프와 같이 균등한 분포 \( P(x) \)에서는 불확실성이 높기 때문에 엔트로피가 높음
- 엔트로피가 낮을 경우의 확률 분포에서 표본을 샘플링했을 때 그 샘플링한 결과를 맞추기 쉽다고 생각하면 된다.
위의 수식 예시
주사위의 눈*100의 값을 가진다고 생각할 때 기댓값은 다음과 같다.
$$ \frac{1}{6} \times 100 +\frac{1}{6} \times 200 + \ldots +\frac{1}{6} \times 600 = \sum_{i=1}^6 P(x_{i}) M(x_{i}) $$
\( M(x_{i}) \): 사건 발생에 대해 받는 값
즉, 기댓값의 정의는 일어날 수 있는 사건에 대한 확률 x 이벤트 값을 모두 합친 것이라고 할 수 있다.
정보 엔트로피는 모든 일어날 수 있는 사건에 대한 확률 x 정보량 값을 합친 것으로 아래의 식을 통해 얻을 수 있는 값이다.
$$ H(X) = - \sum_{t=1}^{n} P(x_{i}) log_{b}(P(x_{i})) $$
\( p(x_{i}) \)의 합은 1이기 때문에 -가 앞으로 나왔다.
크로스 엔트로피 Cross Entropy
예측과 달라서 생기는 정보량으로 예측과 다를 때 높은 값을 가진다.
실제 분포 p를 모르는 모델이 모델링을 통해 q의 분포를 예측하고자 할 때 쓰이는 식으로 예측 분포를 q(x), 실제 분포를 p(x)라고 할 때 아래와 같이 정의된다.(q(x)는 p(x)를 근사화함)
$$ H_{p}(q)= \sum_{i=1}^{n}p(x_{i})log \frac{1}{q(x)}=-\sum_{i=1}^{n}p(x_{i})log q(x_{i}) $$
위의 식은 q와 p 분포의 차이를 나타낸다.
가방에 0.8, 0.1, 0.1 비율로 빨강, 노랑, 파란색 공이 들어가있지만 예측을 0.2, 0.2, 0.6으로 한다면 cross entropy는 아래와 같다.
$$ H(p) =-[0.8log(0.8)+0.1log(0.1)+0.1log(0.1)] = 0.63 $$
$$ H_{q}(p) =-[0.8log(0.2)+0.1log(0.2)+0.1log(0.6)] = 1.50 $$
- 이는 아래의 식이 q(x)의 분포로 부터 샘플링되지만 p(x)의 분포를 이용하여 정보량을 측정한 계산된 정보량의 기댓값을 의미함
- 일반적으로 H(p,q) > H(p)를 만족하며 q(x)를 이용한 크로스 엔트로피는 기존의 엔트로피보다 값이 커지게 된다.
KL Divergence(Kullback-Leibler Divergence)
divergence는 여기서는 발산의 개념이 아닌 차이의 개념으로 쓰이며 두 확률 분포의 차이를 뜻한다.
KL Divergence를 구하는 과정에서 Entropy를 이용한 비교가 진행되기 때문에 relative entropy라고도 불린다.
P: 실제 분포
Q: 예측 분포
$$ D_{KL}(P \mid \mid Q)=H(P, Q)-H(P) $$
$$ = \sum_{x}P(X)log \frac{1}{Q(x)} -P(X)log \frac{1}{P(X)} $$
$$ =\sum_{x}P(X)log \frac{P(X)}{Q(X)} $$
$$ =-\sum_{x}P(X)log \frac{Q(X)}{P(X)} $$
$$ =-\sum_{x}P(X)log Q(X)+\sum_{x}P(X)log P(X) $$
$$ \Longrightarrow -E_{p}[logQ(x)]+E_{P}[logp(x)] $$
p(x)는 다 더하면 1이 나오기 때문에 사라짐
위의 식을 통해 두 확률 분포의 차이를 측정할 수 있다.
성질
- \( D_{KL}(P \mid \mid Q) = 0iffP =Q \)
- \( D_{KL}(P \mid \mid Q) \geq 0 \)
- \( D_{KL}(P \mid \mid Q) \neq D_{KL}(Q \mid \mid P) \)
- P 고정하고 \( Q_{i} \)를 움직힐 때의 \( D_{KL}(P \mid \mid Q_{x}) \)의 변화는 \( H(P, Q_{x}) \)와 같음
https://angeloyeo.github.io/2020/10/26/information_entropy.html
https://angeloyeo.github.io/2020/10/27/KL_divergence.html
https://gaussian37.github.io/ml-concept-basic_information_theory/
'Machine Learning > 이론' 카테고리의 다른 글
배깅 Bagging (0) | 2023.11.14 |
---|---|
[통계] ELBO(Evidence of Lower Bound) (0) | 2023.06.19 |
[ML] 인공지능 기초, 개요 (0) | 2023.04.12 |
[미분] 미분 기초와 모델 학습에 쓰이는 미분 (1) | 2023.03.20 |
[ML] 규제, 가중치 감소 (0) | 2023.01.17 |