Search
Duplicate

수학/ Exponential Family 특성

Log partition function is cumulant generating function

분포의 1차 2차 cumulant는 평균 E[X]\mathbb{E}[X]와 분산 V[X]\mathbb{V}[X]이다. 반면 1차 2차 moment는 E[X]\mathbb{E}[X]E[X2]\mathbb{E}[X^2]이다. 또한 더 높은 차수의 cumulant(와 moment)를 계산할 수 있다.
지수족의 중요한 속성은 log 분할 함수의 도함수를 사용하여 충분 통계량(sufficient statistics)의 모든 cumulants를 생성할 수 있다는 것이다. 특히 1차 2차 cumulants는 다음과 같이 주어진다.
ηA(η)=E[T(x)]η2A(η)=Cov[T(x)]\begin{aligned} \nabla_{\boldsymbol{\eta}} A(\boldsymbol{\eta}) &= \mathbb{E}[\mathcal{T}(\bold{x})] \\ \nabla_{\boldsymbol{\eta}}^2 A(\boldsymbol{\eta}) &= \text{Cov}[\mathcal{T}(\bold{x})] \end{aligned}

Canonical (natural) vs mean (moment) parameters

Ω\Omega를 normalized 자연 파라미터라고 하자.
Ω{ηRK:Z(η)<}\Omega \triangleq \{ \boldsymbol{\eta} \in \mathbb{R}^K : Z(\boldsymbol{\eta}) < \infty \}
Ω\Omega가 열린 집합(open set)이면 지수족이 regular이다 라고 말한다. 이것은 Ω\Omega이 볼록 집합이고 A(η)A(\boldsymbol{\eta})는 이 집합에서 정의된 볼록 함수라고 볼 수 있다.
log 분할 함수의 도함수가 충분 통계량의 평균과 동등함을 보였다. 즉
m=E[T(x)]=ηA(η)\bold{m} = \mathbb{E}[\mathcal{T}(\bold{x})] = \nabla_{\boldsymbol{\eta}}A(\boldsymbol{\eta})
유효한 moment 파라미터의 집합은 다음처럼 주어진다. 어떤 분포 pp에 대해
M={mRK:Ep[T(x)]=m}\mathcal{M} = \{\bold{m} \in \mathbb{R}^K:\mathbb{E}_p[\mathcal{T}(\bold{x})] = \bold{m}\}
다음을 사용하여 natural 파라미터를 moment 파라미터로 변환할 수 있음을 보았다.
m=ηA(η)\bold{m} = \nabla_{\boldsymbol{\eta}}A(\boldsymbol{\eta})
family가 최소이면 다음을 보일 수 있다.
η=mA(m)\boldsymbol{\eta} = \nabla_{\bold{m}} A^*(\bold{m})
여기서 A(m)A^*(\bold{m})AA의 볼록 켤레이다.
A(m)supηΩμηA(η)A^*(\bold{m}) \triangleq \sup_{\boldsymbol{\eta} \in \Omega} \boldsymbol{\mu}^\top\boldsymbol{\eta} - A(\boldsymbol{\eta})
따라서 연산자 (A,A)(\nabla A, \nabla A^*)의 쌍은 natural 파라미터 ηΩ\boldsymbol{\eta} \in \Omega와 평균 파라미터 mM\bold{m} \in \mathcal{M}의 사이를 오갈 수 있게 해준다.
AAAA^*와 관련된 Bregman divergences가 다음과 같음에 유의하라.
BA(λ1λ2)=A(λ1)A(λ2)(λ1λ2)λA(λ2)BA(μ1μ2)=A(μ1)A(μ2)(μ1μ2)μA(μ2)\begin{aligned} B_A(\boldsymbol{\lambda}_1\|\boldsymbol{\lambda}_2) &= A(\boldsymbol{\lambda}_1) - A(\boldsymbol{\lambda}_2) - (\boldsymbol{\lambda}_1 -\boldsymbol{\lambda}_2)^\top \nabla_{\boldsymbol{\lambda}}A(\boldsymbol{\lambda}_2) \\ B_{A^*}(\boldsymbol{\mu}_1\|\boldsymbol{\mu}_2) &= A(\boldsymbol{\mu}_1) - A(\boldsymbol{\mu}_2) - (\boldsymbol{\mu}_1 - \boldsymbol{\mu}_2)^\top \nabla_{\boldsymbol{\mu}} A(\boldsymbol{\mu}_2) \end{aligned}

MLE for the exponential family

지수족 모델의 likelihood는 다음의 형식을 갖는다.
p(Dη)=[n=1Nh(xn)]exp(η[n=1NT(xn)]NA(η))exp[ηT(D)NA(η)]\begin{aligned} p(\mathcal{D}|\boldsymbol{\eta}) &= \left[\prod_{n=1}^N h(\bold{x}_n) \right] \exp \left(\boldsymbol{\eta}^\top [\sum_{n=1}^N \mathcal{T}(\bold{x}_n)] - NA(\boldsymbol{\eta}) \right) \\&\propto \exp[\boldsymbol{\eta}^\top \mathcal{T}(\mathcal{D})-NA(\boldsymbol{\eta})] \end{aligned}
여기서 T(D)\mathcal{T}(\mathcal{D})는 충분 통계량이다.
T(D)=[n=1NT1(xn),...,n=1NTK(xn)]\mathcal{T}(\mathcal{D}) = [\sum_{n=1}^N \mathcal{T}_1(\bold{x}_n),...,\sum_{n=1}^N \mathcal{T}_K(\bold{x}_n)]
예컨대
베르누이 모델에 대해 T(D)=[nI(xn=1)]\mathcal{T}(\mathcal{D}) = [\sum_n \mathbb{I}(x_n = 1)]을 갖고
단변량 가우시안에 대해 T(D)=[nxn,nxn2]\mathcal{T}(\mathcal{D}) = [\sum_n x_n,\sum_n x_n^2]을 갖는다.
Pitman-Koopman-Drmois theorem에 따르면 특정한 regularity 조건 하에 지수족이 유한 충분 통계량의 유일한 분포의 family이다. (여기서 유한은 데이터셋의 크기와 무관한 크기를 의미한다.)
다른 말로 자연 파라미터 η\boldsymbol{\eta}의 지수족에 대해 다음이 성립한다.
p(Dη)=p(T(D)η)p(\mathcal{D}|\boldsymbol{\eta}) = p(\mathcal{T}(\mathcal{D})|\boldsymbol{\eta})
이제 이 결과를 이용하여 어떻게 MLE를 계산하는지 보자. log likelihood는 다음과 같이 주어진다.
logp(Dη)=ηT(D)NA(η)+const\log p(\mathcal{D}|\boldsymbol{\eta}) = \boldsymbol{\eta}^\top\mathcal{T}(\mathcal{D}) - NA(\boldsymbol{\eta}) + \text{const}
A(η)-A(\boldsymbol{\eta})η\boldsymbol{\eta}에서 오목이고 ηT(D)\boldsymbol{\eta}^\top\mathcal{T}(\mathcal{D})η\boldsymbol{\eta}에서 선형이기 때문에 log likelihood가 오목임을 볼 수 있다. 따라서 고유한 전역 최대가 존재한다.
이 최대를 유도하기 위해 log 분할 함수의 도함수가 충분 통계 벡터의 기대값을 산출한다는 사실을 이용한다.
ηlogp(Dη)=ηηT(D)NηA(η)=T(D)NE[T(x)]\nabla_{\boldsymbol{\eta}} \log p(\mathcal{D}|\boldsymbol{\eta}) = \nabla_{\boldsymbol{\eta}} \boldsymbol{\eta}^\top \mathcal{T}(\mathcal{D}) - N \nabla_{\boldsymbol{\eta}} A(\boldsymbol{\eta}) = \mathcal{T}(\mathcal{D}) - N \mathbb{E}[\mathcal{T}(\bold{x})]
단일 데이터의 경우에 다음이 된다.
ηlogp(xη)=T(x)E[T(x)]\nabla_{\boldsymbol{\eta}} \log p(\bold{x}|\boldsymbol{\eta}) = \mathcal{T}(\bold{x}) - \mathbb{E}[\mathcal{T}(\bold{x})]
ηlogp(Dη)\nabla_{\boldsymbol{\eta}} \log p(\mathcal{D}|\boldsymbol{\eta})의 gradient를 0으로 설정하여 MLE를 확인할 수 있다. 충분 통계량의 경험적 평균은 모델의 이론적 기대 충분 통계량과 같아야 한다. 즉 η^\hat{\boldsymbol{\eta}}는 다음을 만족해야 한다.
E[T(x)]=1Nn=1NT(xn)\mathbb{E}[\mathcal{T}(\bold{x})] = {1\over N} \sum_{n=1}^N \mathcal{T}(\bold{x}_n)
이것을 moment matching이라고 한다.
예컨대 베르누이 분포에서 T(x)=I(X=1)\mathcal{T}(x) = \mathbb{I}(X=1)을 가지면 MLE는 다음을 만족한다.
E[T(x)]=p(X=1)=μ=1Nn=1NI(xn=1)\mathbb{E}[\mathcal{T}(x)] = p(X=1) = \mu = {1\over N} \sum_{n=1}^N \mathbb{I}(x_n = 1)

Exponential dispersion family

exponential dispersion family(지수 분산 족)라고 부르는 자연 지수족의 얕은 확장이 존재하는데, 이것은 GLM을 논의할 때 유용하다. 스칼라 값에 대해 다음의 형식을 갖는다.
p(xη,σ2)=h(x,σ2)exp[ηxA(η)σ2]p(x|\eta,\sigma^2) = h(x,\sigma^2)\exp \left[{\eta x - A(\eta) \over \sigma^2} \right]
여기서 σ2\sigma^2는 dispersion(분산) parameter라고 부른다. 고정된 σ2\sigma^2에 대해 이것은 natural 지수족이다.

Maximum entropy derivation of the exponential family

어떤 데이터를 설명하는 분포 p(x)p(\bold{x})를 찾기를 원한다고 가정하자. 여기서 아는 것은 특정한 feature나 함수 fk(x)f_k(\bold{x})의 기대값 (Fk)(F_k) 뿐이다.
dxp(x)fk(x)=Fk\int d\bold{x} p(\bold{x})f_k(\bold{x}) = F_k
예컨대 f1f_1xx를 계산하고, f2f_2x2x^2을 계산하여 F1F_1을 경험적 평균으로 F2F_2를 경험적 2차 moment로 만들 수 있다. 분포에 대한 prior의 믿음은 q(x)q(x)이다.
‘최소 가정의 수’를 형식화 하기 위해 제약조건을 만족시키면서 KL divergence의 의미에서 prior q(x)q(\bold{x})에 최대한 가까운 분포를 찾는다.
균등 prior q(x)1q(\bold{x}) \propto 1을 사용하면 KL 다이버전스를 최소화는 것은 엔트로피를 최대화하는 것과 동등하다. 이 결과는 maximum entropy model이라 부른다.
위 방정식과 p(x)0p(\bold{x}) \ge 0xp(x)=1\sum_{\bold{x}} p(\bold{x}) =1을 제약조건으로 KL을 최소화하기 위해 라그랑지안 승수를 사용해야 한다. 라그랑지안은 다음과 같이 주어진다.
J(p,λ)=xp(x)logp(x)q(x)+λ0(1xp(x))+kλk(Fkxp(x)fk(x))J(p,\boldsymbol{\lambda}) = -\sum_{\bold{x}} p(\bold{x}) \log{p(\bold{x}) \over q(\bold{x})} + \lambda_0 \left(1 - \sum_\bold{x} p(\bold{x}) \right) \\+ \sum_k \lambda_k \left( F_k - \sum_\bold{x} p(\bold{x})f_k(\bold{x}) \right)
변형 미적분(calculus of variations)을 사용하여 함수 pp에 관한 도함수를 취할 수도 있지만 간단하게 p\bold{p}를 고정된 길이 벡터로 취급하겠다. (x\bold{x}가 이산이라고 가정했기 때문에) 그러면 다음이 성립한다.
Jpc=1logp(x=c)q(x=c)λ0kλkfk(x=c){\partial J \over \partial p_c}= -1 - \log{p(x=c) \over q(x=c)} - \lambda_0 - \sum_k \lambda_k f_k(x=c)
cc에 대해 Jpc=0{\partial J \over \partial p_c} = 0을 설정하여 다음을 산출한다.
p(x)=q(x)Zexp(kλkfk(x))p(\bold{x}) = {q(\bold{x}) \over Z} \exp \left( - \sum_k \lambda_k f_k(\bold{x}) \right)
여기서 Ze1+λ0Z \triangleq e^{1+\lambda_0}를 정의했다. 합해서 1이 되는 제약조건을 사용하여 다음을 갖는다.
1=xp(x)=1Zxq(x)exp(kλkfk(x))1 = \sum_\bold{x} p(\bold{x}) = {1\over Z}\sum_\bold{x} q(\bold{x}) \exp \left(-\sum_k \lambda_kf_k(\bold{x}) \right)
따라서 정규화 상수는 다음과 같이 주어진다.
Z=xq(x)exp(kλkfk(x))Z = \sum_\bold{x} q(\bold{x}) \exp \left(-\sum_k \lambda_k f_k(\bold{x}) \right)
이것은 정확하게 지수족의 형식이다. 여기서 f(x)f(\bold{x})는 충분 통계량의 벡터이고 λ-\boldsymbol{\lambda}는 자연 파라미터이고 q(x)q(\bold{x})는 base measure이다.
예컨대 feature가 f1(x)=xf_1(x) = x이고 f2(x)=x2f_2(x) = x^2이고 1차와 2차 moment를 일치시키려는 경우 가우시안 분포를 얻는다.

참고