Search
Duplicate

수학/ Exponential Family Examples

Definition

XDRD\mathcal{X}^D \subseteq \mathbb{R}^D에 대한 고정 support와 ηRK\boldsymbol{\eta} \in \mathbb{R}^K로 파라미터화 된 확률 분포의 family를 고려하자. 분포 p(xη)p(\bold{x}|\boldsymbol{\eta})의 밀도를 다음과 같이 쓸 수 있으면 지수족이라고 한다.
p(xη)1Z(η)h(x)exp[ηT(x)]=h(x)exp[ηT(x)A(η)]p(\bold{x}|\boldsymbol{\eta}) \triangleq {1\over Z(\boldsymbol{\eta})} h(\bold{x}) \exp[\boldsymbol{\eta}^\top \mathcal{T}(\bold{x})] = h(\bold{x})\exp[\boldsymbol{\eta}^\top \mathcal{T}(\bold{x}) - A(\boldsymbol{\eta})]
여기서 h(x)h(\bold{x})는 scaling 상수(기저 측정값(base measure)라고도 한다. 종종 1)이고
T(x)RK\mathcal{T}(\bold{x}) \in \mathbb{R}^K는 충분 통계량(sufficient statistics)이고,
η\boldsymbol{\eta}는 자연 파라미터(natural parameter) 또는 표준 파라미터(canonical parameter)라고 하고,
Z(η)Z(\boldsymbol{\eta})는 정규화 상수(normalization constant) 또는 분할 함수(partition function)이라고 하고,
A(η)=logZ(η)A(\boldsymbol{\eta}) = \log Z(\boldsymbol{\eta})는 log 분할 함수라고 한다. AA는 볼록 집합 Ω{ηRK:A(η)<}\Omega \triangleq \{ \boldsymbol{\eta} \in \mathbb{R}^K : A(\boldsymbol{\eta}) < \infty\}에 대한 볼록 함수임을 보인다.
자연파라미터가 서로 독립이면 편리하다. 형식적으로 ηT(x)=0\boldsymbol{\eta}^\top \mathcal{T}(\bold{x}) = 0이 되는 ηRK\{0}\boldsymbol{\eta} \in \mathbb{R}^K \backslash \{0\}이 없는 경우 지수족이 최소라고 한다.
이 마지막 조건은 multinomial 분포의 경우에 파라미터의 합이 1이라는 제약 조건 때문에 위반될 수 있다. 그러나 K=1K=1 독립 파라미터를 사용하여 분포를 재파라미터화하면 쉽게 해결할 수 있다.
위 방정식은 η=f(ϕ)\boldsymbol{\eta} = f(\boldsymbol{\phi})를 정의하여 일반화할 수 있다. 여기서 ϕ\boldsymbol{\phi}는 어떤 다른, 가능한 작은 파라미터의 집합이다. 이 경우에 분포는 다음의 형식을 갖는다.
p(xϕ)=h(x)exp[f(ϕ)T(x)A(f(ϕ))]p(\bold{x}|\boldsymbol{\phi}) = h(\bold{x}) \exp[f(\boldsymbol{\phi})^\top \mathcal{T}(\bold{x}) - A(f(\boldsymbol{\phi}))]
ϕ\boldsymbol{\phi}에서 η\boldsymbol{\eta}로의 매핑이 비선형이면 curved exponential family라고 한다.
η=f(ϕ)=ϕ\boldsymbol{\eta} = f(\boldsymbol{\phi}) = \boldsymbol{\phi}이면 모델은 표준 형식(canonical form)이라고 한다.
추가로 T(x)=x\mathcal{T}(\bold{x}) = \bold{x}면 natural exponential family(NEF)라고 한다. 이 경우에 다음처럼 작성할 수 있다.
p(xη)=h(x)exp[ηxA(η)]p(\bold{x}|\boldsymbol{\eta}) = h(\bold{x}) \exp[\boldsymbol{\eta}^\top \bold{x}-A(\boldsymbol{\eta})]
충분 통계 벡터의 평균으로 moment 파라미터를 정의한다.
m=E[T(x)]\bold{m} = \mathbb{E}[\mathcal{T}(\bold{x})]

Exponential Family Examples

아래의 예는 각 분포를 지수족 형식에 맞게 식을 변형하고 h(x),T(x),η,A(η)h(\bold{x}), \mathcal{T}(\bold{x}), \boldsymbol{\eta}, A(\boldsymbol{\eta})를 정의한다.

Bernoulli distribution

베르누이 분포는 다음과 같이 지수족 형식으로 작성할 수 있다.
Ber(xμ)=μx(1μ)1x=exp[xlog(μ)+(1x)log(1μ)]=exp[T(x)η]\begin{aligned} \text{Ber}(x|\mu) &= \mu^x(1-\mu)^{1-x} \\ &= \exp[x\log(\mu) + (1-x)\log(1-\mu)] \\ &= \exp[\mathcal{T}(x)^\top \boldsymbol{\eta}] \end{aligned}
여기서 T(x)=[I(x=1),I(x=0)]\mathcal{T}(x) = [\mathbb{I}(x=1),\mathbb{I}(x=0)]이고
η=[log(μ),log(1μ)]\boldsymbol{\eta}=[\log(\mu),\log(1-\mu)]T(x)=[I(x=1),I(x=0)],η=[log(μ),log(1μ)]\mathcal{T}(x) = [\mathbb{I}(x=1),\mathbb{I}(x=0)], \boldsymbol{\eta}=[\log(\mu),\log(1-\mu)]
μ\mu는 평균 파라미터이다.
그러나 이것은 feature 사이의 선형 종속이기 때문에 over-complete representation이다. 이것을 다음처럼 볼 수 있다.
1T(x)=I(x=0)+I(x=1)=1\bold{1}^\top\mathcal{T}(x) = \mathbb{I}(x=0) + \mathbb{I}(x=1) = 1
표현이 overcomplete 하면 η\boldsymbol{\eta}는 고유하게 식별가능하지 않다. 최소 표현(minimal representation)을 사용하는 것이 일반적이며, 이는 분포와 연관된 고유한 η\boldsymbol{\eta}가 있다는 뜻이다. 이 경우에 다음과 같이 정의할 수 있다.
Ber(xμ)=exp[xlog(μ1μ)+log(1μ)]\text{Ber}(x|\mu) = \exp \left[x \log \left({\mu \over 1 - \mu} \right) + \log (1 - \mu) \right]
이것을 다음과 같이 정의하여 지수족 형식으로 넣을 수 있다.
η=log(μ1μ)T(x)=xA(η)=log(1μ)=log(1+eη)h(x)=1\begin{aligned} \eta &= \log \left( {\mu \over 1 - \mu} \right) \\ \mathcal{T}(x) &= x \\ A(\eta) &= -\log(1-\mu) = \log(1 + e^\eta) \\ h(x) &= 1 \end{aligned}
다음과 같이 canonical 파라미터 η\eta에서 평균 파라미터 μ\mu를 복구할 수 있다.
μ=σ(η)=11+eη\mu = \sigma(\eta) = {1 \over 1 + e^{-\eta}}
이것은 logistic (sigmoid) 함수로 볼 수 있다.

Categorical distribution

KK 카테고리의 이산 분포를 다음처럼 표현할 수 있다. (여기서 xk=I(x=k)x_k = \mathbb{I}(x=k))
Cat(xμ)=k=1Kμkxk=exp[k=1Kxklogμk]=exp[k=1K1xklogμk+(1k=1K1xk)log(1k=1K1μk)]=exp[k=1K1xklog(μk1j=1K1μj)+log(1k=1K1μk)]=exp[k=1K1xklog(μkμK)+logμK]\begin{aligned} \text{Cat}(x|\boldsymbol{\mu}) &= \prod_{k=1}^K \mu_k^{x_k} = \exp \left[ \sum_{k=1}^K x_k \log \mu_k \right] \\ &= \exp \left[ \sum_{k=1}^{K-1} x_k \log \mu_k + \left(1 - \sum_{k=1}^{K-1} x_k \right) \log(1 - \sum_{k=1}^{K-1} \mu_k) \right] \\ &= \exp \left[ \sum_{k=1}^{K-1} x_k \log \left( {\mu_k \over 1 - \sum_{j=1}^{K-1} \mu_j} \right) + \log(1 - \sum_{k=1}^{K-1} \mu_k) \right]\\ &= \exp \left[ \sum_{k=1}^{K-1} x_k \log \left({\mu_k \over \mu_K} \right) + \log \mu_K \right] \end{aligned}
여기서 μK=1k=1K1μk\mu_K = 1 - \sum_{k=1}^{K-1} \mu_k이다.
이것을 다음과 같이 지수족 형식으로 작성할 수 있다.
Cat(xη)=exp(ηT(x)A(η))η=[logμ1μK,...,logμK1μK]T(x)=[I(x=1),...,I(x=K1)]A(η)=log(μK)h(x)=1\begin{aligned} \text{Cat}(x|\boldsymbol{\eta}) &= \exp(\boldsymbol{\eta}^\top \mathcal{T}(\bold{x}) - A(\boldsymbol{\eta})) \\ \boldsymbol{\eta}&=[\log{\mu_1 \over \mu_K},...,\log{\mu_{K-1}\over\mu_K}] \\ \mathcal{T}(x) &= [\mathbb{I}(x=1),...,\mathbb{I}(x=K-1)]\\ A(\boldsymbol{\eta}) &= -\log(\mu_K) \\ h(x) &= 1 \end{aligned}
다음을 사용하여 canonical 파라미터에서 평균 파라미터를 복구할 수 있다.
μk=eηk1+j=1K1eηj\mu_k = {e^{\eta_k} \over 1 + \sum_{j=1}^{K-1} e^{\eta_j}}
ηK=0\eta_K = 0을 정의하면 이것을 다음과 같이 작성할 수 있다.
μk=eηkj=1Keηj\mu_k = {e^{\eta_k} \over \sum_{j=1}^K e^{\eta_j}}
k=1:Kk=1:K에 대해 μ=softmax(η)\boldsymbol{\mu} = \text{softmax}(\boldsymbol{\eta}). 여기서 softmax는 softmax나 multinomial logit 함수이다.
이것으로부터 다음을 발견할 수 있다.
μK=1k=1K1eηk1+k=1K1eηk=11+k=1K1eηk\mu_K = 1 - {\sum_{k=1}^{K-1} e^{\eta_k} \over 1 + \sum_{k=1}^{K-1} e^{\eta_k}} = {1 \over 1 + \sum_{k=1}^{K-1} e^{\eta_k}}
따라서
A(η)=log(μK)=log(k=1Keηk)A(\boldsymbol{\eta}) = -\log(\mu_K) = \log \left( \sum_{k=1}^K e^{\eta_k} \right)

Univariate Gaussian

단변량 가우시안은 대개 다음처럼 작성된다.
N(xμ,σ2)=1(2πσ2)12exp[12σ2(xμ)2]=1(2π)12exp[μσ2x12σ2x212σ2μ2logσ]\begin{aligned} \mathcal{N}(x|\mu,\sigma^2) &= {1\over (2\pi\sigma^2)^{1\over2}} \exp\left[-{1 \over 2\sigma^2}(x - \mu)^2\right] \\ &= {1 \over (2\pi)^{1\over2}} \exp\left[{\mu \over \sigma^2}x-{1\over2\sigma^2}x^2-{1\over2\sigma^2}\mu^2 - \log \sigma\right] \end{aligned}
다음을 정의하여 이것을 지수족 형식에 넣을 수 있다.
η=(μ/σ212σ2)T(x)=(xx2)A(η)=μ22σ2+logσ=η124η212log(2η2)h(x)=12π\begin{aligned} \boldsymbol{\eta} &= \begin{pmatrix} \mu/\sigma^2 \\ -{1\over2\sigma^2} \end{pmatrix} \\ \mathcal{T}(x) &= \begin{pmatrix} x \\ x^2 \end{pmatrix} \\ A(\boldsymbol{\eta}) &= {\mu^2 \over 2\sigma^2} + \log \sigma = {-\eta_1^2 \over 4\eta_2} - {1\over2} \log(-2\eta_2) \\ h(x) &= {1\over \sqrt{2\pi}} \end{aligned}
moment 파라미터는 다음과 같다.
m=[μ,μ2+σ2]\bold{m} = [\mu, \mu^2 + \sigma^2]

Univariate Gaussian with fixed variance

σ2=1\sigma^2 = 1로 고정하면 다음을 정의하여 가우시안을 natural exponential family로 작성할 수 있다.
η=μT(x)=xA(μ)=μ22σ2+logσ=μ22h(x)=12πexp[x22]=N(x0,1)\begin{aligned} \eta &= \mu \\ \mathcal{T}(x) &= x \\ A(\mu) &= {\mu^2 \over 2\sigma^2} + \log \sigma = {\mu^2 \over 2} \\ h(x) &= {1\over \sqrt{2\pi}}\exp[-{x^2\over2}] = \mathcal{N}(x|0,1) \end{aligned}
이 예제에서 base measure h(x)h(x)는 상수가 아님에 유의하라.

Multivariate Gaussian

평균 벡터 μ\boldsymbol{\mu}와 공분산 행렬 Σ\boldsymbol{\Sigma}로 다변량 가우시안(MVN)을 파라미터화하는 것이 일반적이다. 해당하는 pdf는 다음과 같이 주어진다.
N(xμ,Σ)=1(2π)D/2det(Σ)exp(12xΣ1x+xΣ1μ12μΣ1μ)=cexp(xΣ1μ12xΣ1x)cexp(12μΣ1μ)(2π)D/2det(Σ)\begin{aligned} \mathcal{N}(\bold{x}|\boldsymbol{\mu},\boldsymbol{\Sigma}) &= {1 \over (2\pi)^{D/2}\sqrt{\det(\boldsymbol{\Sigma})}} \exp \left(-{1\over2} \bold{x}^\top\boldsymbol{\Sigma}^{-1}\bold{x} + \bold{x}^\top\boldsymbol{\Sigma}^{-1}\boldsymbol{\mu} -{1\over2}\boldsymbol{\mu}^\top\boldsymbol{\Sigma}^{-1}\boldsymbol{\mu} \right) \\ &= c \exp \left( \bold{x}^\top\boldsymbol{\Sigma}^{-1}\boldsymbol{\mu} - {1\over2}\bold{x}^\top\boldsymbol{\Sigma}^{-1}\bold{x} \right) \\ c &\triangleq {\exp(-{1\over2}\boldsymbol{\mu}^\top\boldsymbol{\Sigma}^{-1}\boldsymbol{\mu}) \over (2\pi)^{D/2}\sqrt{\det(\boldsymbol{\Sigma})}} \end{aligned}
그러나 information form이라 부르는 canonical 파라미터나 natural parameter를 사용해서 가우시안을 표현할 수 있다.
Λ=Σ1ξ=Σ1μNc(xξ,Λ)cexp(xξ12xΛx)c=exp(12ξΛ1ξ)(2π)D/2det(Λ1)\begin{aligned} \boldsymbol{\Lambda} &= \boldsymbol{\Sigma}^{-1} \\ \boldsymbol{\xi} &= \boldsymbol{\Sigma}^{-1}\boldsymbol{\mu} \\ \mathcal{N}_c(\bold{x}|\boldsymbol{\xi},\boldsymbol{\Lambda}) &\triangleq c' \exp \left( \bold{x}^\top \boldsymbol{\xi}-{1\over2}\bold{x}^\top \boldsymbol{\Lambda}\bold{x} \right) \\ c' &= {\exp(-{1\over2}\boldsymbol{\xi}^\top\boldsymbol{\Lambda}^{-1}\boldsymbol{\xi}) \over (2\pi)^{D/2} \sqrt{\det(\boldsymbol{\Lambda}^{-1})}} \end{aligned}
여기서 표기 Nc()\mathcal{N}_c()는 표준 파라미터 N()\mathcal{N}()와 구분하기 위해 사용했다.
여기서 Λ\boldsymbol{\Lambda}는 정밀도 행렬(precision matrix)라고 부르고 ξ\boldsymbol{\xi}는 정밀도-가중 평균 벡터이다.
이것을 다음과 같이 지수족 표기로 변환할 수 있다.
Nc(xξ,Λ)=(2π)D/2h(x)exp[12logΛ12ξΛ1ξ]g(η)exp[12xΛx+xξ]=h(x)g(η)exp[12xΛx+xξ]=h(x)g(η)exp[12(ijxixjΛij)+xξ]=h(x)g(η)exp[12vec(Λ)vec(xx)+xξ]=h(x)exp[ηT(x)A(η)]\begin{aligned} \mathcal{N}_c(\bold{x}|\boldsymbol{\xi},\boldsymbol{\Lambda}) &= \underbrace{(2\pi)^{-D/2}}_{h(\bold{x})} \underbrace{\exp\left[{1\over2} \log |\boldsymbol{\Lambda}|-{1\over2}\boldsymbol{\xi}^\top\boldsymbol{\Lambda}^{-1}\boldsymbol{\xi} \right]}_{g(\boldsymbol{\eta})} \exp \left[-{1\over2}\bold{x}^\top \boldsymbol{\Lambda}\bold{x}+\bold{x}^\top \boldsymbol{\xi} \right] \\ &= h(\bold{x})g(\boldsymbol{\eta})\exp \left[-{1\over2}\bold{x}^\top \boldsymbol{\Lambda}\bold{x}+\bold{x}^\top \boldsymbol{\xi} \right] \\ &= h(\bold{x})g(\boldsymbol{\eta})\exp \left[-{1\over2}(\sum_{ij} x_i x_j \Lambda_{ij})+\bold{x}^\top \boldsymbol{\xi} \right] \\ &= h(\bold{x})g(\boldsymbol{\eta})\exp \left[-{1\over2}\text{vec}(\boldsymbol{\Lambda})^\top\text{vec}(\bold{xx}^\top)+\bold{x}^\top \boldsymbol{\xi} \right] \\ &= h(\bold{x})\exp[\boldsymbol{\eta}^\top \mathcal{T}(\bold{x})-A(\boldsymbol{\eta})]\end{aligned}
여기서
h(x)=(2π)D/2η=[ξ;12[vec(Λ)]=[Σ1μ;12vec(Σ1)]T(x)=[x;vec(xx)]A(η)=logg(η)=12logΛ+12ξΛ1ξ\begin{aligned} h(\bold{x}) &= (2\pi)^{-D/2} \\ \boldsymbol{\eta} &= [\boldsymbol{\xi};-{1\over2}[\text{vec}(\boldsymbol{\Lambda})] = [\boldsymbol{\Sigma}^{-1}\boldsymbol{\mu};-{1\over2}\text{vec}(\boldsymbol{\Sigma}^{-1})] \\ \mathcal{T}(\bold{x}) &= [\bold{x};\text{vec}(\bold{xx}^\top)] \\ A(\boldsymbol{\eta}) &= -\log g(\boldsymbol{\eta}) = -{1\over2}\log|\boldsymbol{\Lambda}|+{1\over2}\boldsymbol{\xi}^\top\boldsymbol{\Lambda}^{-1}\boldsymbol{\xi} \end{aligned}
이것으로부터 평균 (moment) 파라미터가 다음처럼 주어짐을 볼 수 있다.
m=E[T(x)]=[μ;μμ+Σ]\bold{m} = \mathbb{E}[\mathcal{T}(\bold{x})] = [\boldsymbol{\mu};\boldsymbol{\mu\mu}^\top + \boldsymbol{\Sigma}]
위는 Λ\boldsymbol{\Lambda}가 대칭 행렬이므로 최소 표현이 아님에 유의하라. 각 행렬의 위쪽이나 아래쪽 절반으로 작업하면 최소 형식(minimal form)으로 변환할 수 있다.

Non-examples

흥미로운 모든 분포가 지수족에 속하지는 않는다. 예를 들어 student 분포은 pdf가 필요한 형식을 갖지 않기 때문에 속하지 않는다.
그러나 student 분포를 포함할 수 있는 ϕ\phi-exponential family라고 불리는 일반화가 있다.
더 미묘한 예로 균등 분포 YUnif(θ1,θ2)Y \sim \text{Unif}(\theta_1, \theta_2)를 고려하자. pdf는 다음의 형식을 갖는다.
p(yθ)=1θ2θ2I(θ1yθ2)p(y|\boldsymbol{\theta}) = {1 \over \theta_2 - \theta_2} \mathbb{I}(\theta_1 \le y \le \theta_2)
이것이 h(y)=1,T(y)=0,Z(θ)=θ2θ1h(y) = 1, \mathcal{T}(y) = \bold{0}, Z(\boldsymbol{\theta}) = \theta_2-\theta_1의 지수족이라는 생각은 솔깃하다.
그러나 이것의 분포의 support (즉 값들의 집합 Y={y:p(y)>0}\mathcal{Y} = \{y:p(y) > 0\})가 파라미터 θ\boldsymbol{\theta}에 의존하며 이는 지수족의 가정을 위반한다.

참고