본문 바로가기

ML & DL

[Deep learning] 3장 확률론과 정보 이론(probability, information theory)

Deep Learning, Ian Goodfellow(www.deeplearningbook.org/) 공부하고 정리한 글입니다.
내용을 함께 고민해 준 KAIST 김현우, 최정만에게 감사합니다.

Intro

확률론은 불확실한 명제를 서술할 수 있고, 불확실성이 존재하는 상황에서 원하는 것을 inference 할 수 있다. 정보 이론은 주어진 확률분포에 존재하는 불확실성의 양을 측정한다.

 

1. Why Probability?

머신러닝은 stochastic, nondeterministic 한 수치를 다룰 때가 있다. 이때 복잡하지만 확실한 규칙보다 간단하지만 불확실한 규칙(확률)을 사용하는게 실용적이다. 특정 시행을 여러번 반복했을 때 특정 사건이 나타날 빈도를 확률로 정의하는 관점이 빈도주의 확률(frequentist prob), 특정 사건이 일어날 믿음의 정도(degree of belief)로 확률을 정의하는 관점이 베이즈 확률이다. 확률론은 likelihood가 주어졌을 때, 어떤 명제가 참일 likelihood를 결정하는 규칙들을 제공한다.

 

2. Random variable & Probability distribution

확률 변수는 랜덤 시행에서 표본공간의 결과를 상태공간의 특정 실수 값으로 mapping하는 함수다. 그 값이 갖는 확률을 확률분포로 정의한다. 확률변수 X를 다음과 같이 정의하면, 

이산 확률변수에 대한 확률분포를 확률질량함수(pmf)라고 한다. pmf는 lookup table 처럼 확률변수에 대한 확률이 mapping되어 있다. 한편, 연속 확률변수에 대한 확률분포를 확률밀도함수(pdf)라고 한다. pdf는 특정 점에서의 확률이 정의되지 않고 가능도를 나타내며, 적분을 통해 구한 함수의 부피가 확률값을 의미한다.

 

3. Marginal

여러 확률변수에 대한 joint*(joint probability distrubution)를 알 때, 특정 변수에 대한 분포를 주변확률분포(marginal probability distribution)라고 한다. x, y가 이산일 때, joint P(x, y)를 알고 있으면 다음과 같이 각 변수에 대한 marginal*(marginal probability distribution)을 구할 수 있다.

$P(x)=\sum_{y}^{}P(x,y),\ \forall x$

연속 변수에 대해서는 sum 대신 적분 사용.

$P(x)=\int P(x,y)dy$

 

4. Conditional probability 

조건부확률은 B가 발생했을 때, A가 발생할 확률을 구할 때 사용한다. 조건부확률은 전체 표본공간 S를 조건 공간 B로 축소시킨다.

$P(A|B) = \frac{P(A,B)}{P(B)}$

여러 확률변수에 대한 joint를 각각 하나의 변수에 대한 조건부 분포로 분해할 수 있다. 

$P(x^{1}, . . , x^{n}) = P(x^{1})\prod_{i=2}^{n}P(x^{i} | x(1), . . , x{i−1})$

이러한 관계를 조건부 확률의 chain rule 이라고 한다.

 

5. Independence and Conditional Independence

두 확률변수의 joint를 각 변수의 marginal 곱으로 표현할 수 있으면, 두 확률변수는 독립이다. 

$p(x,y) = p(x)p(y), \ \forall x,y $

이를 조건부 독립으로 확장할 수 있다.

 

6. Expectation, Variance and Covariance

독립인 두 확률변수는 공분산이 0이지만, 공분산이 0이라고 두 확률변수가 독립은 아니다. 공분산은 두 변수의 선형관계를 측정하는데, 독립이려면 비선형적인 관계도 없어야 되기 때문이다. 즉, 공분산이 0인데 독립이 아닌 두 확률변수는 선형관계는 없지만 비선형관계가 있다고 해석할 수 있다.

 

7. Common Probability Distributions

1) 베르누이 분포

하나의 이진 확률변수에 대한 분포, 파라미터 파이($\phi$)로 확률변수가 1일 확률을 결정한다.

$P(X=x) = \phi^x(1-\phi)^{1-x}$

2) 정규분포

유한한 평균과 분산을 갖는 연속한 데이터의 분포를 알지 못할 때, 정규분포로 가정하는 것이 바람직하다. 이는 주어진 분포가 데이터의 불확실성을 얼마나 부호화할 수 있는지 볼 때, 같은 분산을 가진 모든 분포중 가장 많은 불확실성(maximum entropy)을 부호화하는 분포가 정규분포기 때문이다. 이러한 분포를 maximum entropy distribution 이라고 한다.

$N(x;\mu,\Sigma) = \sqrt{\frac{1}{(2\pi)^ndet(\Sigma)}}exp(-\frac{1}{2}(x-\mu)^T\Sigma^{-1}(x-\mu))$

4) 지수분포, 라플라스분포

머신러닝에서는 지수분포 같이 supremum이 x=0에 있는 확률분포를 사용하는 것이 바람직할 때가 많다. 

라플라스분포는 supremum을 원하는 임의의 점 $\mu$에 지정 가능하다.

5) 디렉분포, 경험분포

 sample로 이뤄진 경험분포는 sample의 likelihood를 최대화 하는 pdf다.(5.5 참고 후 보충!)

6) 혼합분포

여러 확률분포를 결합해 하나의 복잡한 확률분포 정의, GMM 이 대표적이다.

$P(x) = \Sigma P(c=i)P(x|c=i)$ 

p(c=i)는 i번 째 분포로 assign 될 확률을 나타내는 멀티누이분포, P(x|c=i)는 i번째 분포로 assign 되었을 때 해당 분포이다.

정규분포 3개를 합친 GMM

 

8. Useful Properties of Common Functions

logistic: 치역이 0~1, 베르누이 분포 파라미터 추정할 때 사용 

sotfplus

logit

bayes

기존 관점은 파라미터가 고정된 상수라면, 베이지안은 파라미터도 확률변수로 모델링

9. Information Theory

정보이론은 신호에 존재하는 정보의 양과 관련있다. 발생 가능성이 낮은 사건을 배우는 것이 발생 가능성이 큰 사건을 배우는 것보다 많은 정보를 얻을 수 있다는게 기본 아이디어다. 즉 발생 가능성이 큰 사건은 정보량이 적고, 낮은 사건은 정보량이 많다. 사건 x의 self-information을 다음과 같이 정의한다.

$I(x) = - logP(x)$

확률분포 전체의 불확실성은 self information의 기댓값인 새넌 엔트로피로 구한다.

$H(x) = E_{x~p}[I(x)] = -E_{x~p}[logP(x)]$

같은 확률변수에 대한 서로 다른 두 확률분포 P(x), Q(x)의 차이를 KL-divergence로 측정할 수 있다.

$D_{KL}(P||Q) = E_{x~P}[logP(x) - logQ(x)]$

 KL-divergence의 변형으로 cross-entropy가 있다.

$H(P,Q) = -E_{x~P}[logQ(x)]$

 

10. Structured probabilistic model

머신러닝 알고리즘은 아주 많은 확률변수와 분포가 모델에 관여하므로, joint로 전체를 표현하는 것은 비효율적이다. 따라서 각 변수의 관계를 바탕으로 확률분포를 분해해 graph로 표현한 것을 구조적 확률 모형 또는 그래프 모형이라고 한다. 표현 방식에 따라 크게 directed model과 undirected model로 나뉜다.

Directed model

$p(a,b,c,d,e) = p(a)p(b|a)p(c|a,b)p(d|b)p(e|c)$

Joint 확률분포를 여러 조건부 확률분포로 표현하는 것. 이렇게 그래프 모형으로 표현하면, a와 c는 직접 상호작용하지만, a와 e는 c를 통해서 간접적으로 상호작용함과 같은 분포의 성질을 파악할 수 있다.

Undirected model

$p(a,b,c,d,e) = \frac{1}{Z}\phi ^{1}(a,b,c)\phi ^{2}(b,d)\phi ^{3}(c,e)$

Joint 확률분포를 함수로 분해하는 것. 여기서 $\phi$는 확률분포가 아니라 그냥 함수다. Directed와 undirected model은 확률분포를 그래프 모델로 표현하는 방식의 차이일 뿐 분포의 속성과는 무관하다. 즉 특정 확률분포를 directed, undirected 둘 다로 표현할 수 있다.  

 

 


질문) KL-divergence, cross-entropy가 symmetric 하지 않음의 의미

질문) 평균 != 기댓값 어떻게 다른지