맨위로가기

변분 베이즈 방법

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

변분 베이즈 방법은 주어진 데이터에 대한 관측되지 않은 변수의 사후 분포를 변분 분포로 근사하여 추론하는 데 사용되는 기술이다. 이 방법은 쿨백-라이블러 발산을 최소화하여 변분 분포를 구하며, 증거 하한(ELBO)을 최대화하여 이를 달성한다. 평균장 근사를 통해 변분 분포를 인수분해하고 반복 알고리즘을 적용하여 각 인자에 대한 최적 분포를 도출한다. 변분 베이즈는 지수족 분포에 대한 일반적인 결과를 가지며, 기대값 최대화(EM) 알고리즘과 비교하여 매개변수와 잠재 변수의 사후 분포를 추정하는 차이점을 보인다.

더 읽어볼만한 페이지

  • 베이즈 통계학 - 주관주의
    주관주의는 현실이 인식에 의존한다는 철학적 입장으로, 형이상학에서는 궁극적 실재가 인식에 달려있다고 보며, 윤리학에서는 윤리적 판단이 개인의 태도에 따라 달라진다고 보고, 확률론에서는 확률을 개인의 신념으로 해석한다.
  • 베이즈 통계학 - 사후 확률
    사후 확률은 베이즈 통계학에서 증거가 주어졌을 때 모수의 확률을 나타내며, 베이즈 정리를 통해 계산하고, 사전 확률을 갱신하여 사후 확률 분포를 얻는 데 활용된다.
변분 베이즈 방법
개요
유형베이즈 추론 방법
분야기계 학습, 통계학
관련 항목기댓값 최대화 알고리즘, 변분 오토인코더
상세 내용
목표사후 확률 분포 근사
방법최적화 기반 근사 추론
주요 개념변분 추론
평균장 변분 추론
엘보 (ELBO, Evidence Lower Bound)
쿨백-라이블러 발산 (KL divergence)
응용 분야
예시베이즈 신경망
잠재 디리클레 할당 (LDA)
변분 오토인코더 (VAE)
장점
속도마르코프 연쇄 몬테카를로 (MCMC) 방법에 비해 계산 속도가 빠름
확장성대규모 데이터셋에 적용 가능
결정론적결과의 재현성이 높음
단점
정확도사후 확률 분포의 정확한 근사가 어려울 수 있음
가정모델 및 분포에 대한 강한 가정 필요
복잡성모델 설계 및 최적화 과정이 복잡할 수 있음
관련 논문 및 자료
참고 자료변분 베이즈 방법 튜토리얼 (http://www.cs.cmu.edu/~awm/tutorials/variational.html)
변분 추론에 대한 소개 (https://arxiv.org/abs/2201.00638)
변분 추론 (http://www.cs.princeton.edu/courses/archive/fall11/cos597C/reading/vi-tutorial.pdf)

2. 수학적 도출

변분법 추론에서는 주어진 데이터 \mathbf{X}가 있을 때, 관측되지 않은 변수 집합 \mathbf{Z} = \{Z_1 \dots Z_n\}의 사후 분포 P(\mathbf{Z}\mid \mathbf{X})를 변분 분포 Q(\mathbf{Z})로 근사한다.

:P(\mathbf{Z}\mid \mathbf{X}) \approx Q(\mathbf{Z}).

Q(\mathbf{Z})P(\mathbf{Z}\mid \mathbf{X})보다 간단한 형태(예: 가우시안 분포)를 가지도록 제한되며, 실제 사후 분포와 유사하게 만들기 위해 선택된다. Q(\mathbf{Z})P(\mathbf{Z}\mid \mathbf{X})의 유사성은 비유사성 함수 d(Q; P)로 측정되며, 변분 추론의 목표는 d(Q; P)를 최소화하는 Q(\mathbf{Z})를 찾는 것이다.

일반적으로 P에 대한 Q쿨백-라이블러 발산(KL 발산)을 최소화한다. KL 발산은 다음과 같이 정의된다.

:D_{\mathrm{KL}}(Q \parallel P) \triangleq \sum_\mathbf{Z} Q(\mathbf{Z}) \log \frac{Q(\mathbf{Z})}{P(\mathbf{Z}\mid \mathbf{X})}.

일반적인 KL 발산과 달리 QP의 위치가 바뀌어 있는데, 이는 기대값-최대화 알고리즘과 개념적으로 유사하다.

P(\mathbf Z \mid \mathbf X) = \frac{P(\mathbf X, \mathbf Z)}{P(\mathbf X)}를 이용하여 KL 발산을 다시 쓰면 다음과 같다.

:

D_{\mathrm{KL}}(Q \parallel P) = \sum_\mathbf{Z} Q(\mathbf{Z}) \left[ \log Q(\mathbf{Z}) - \log P(\mathbf{Z},\mathbf{X}) \right] + \log P(\mathbf{X})



P(\mathbf{X})\mathbf Z에 대해 상수이고, \sum_\mathbf{Z} Q(\mathbf{Z}) = 1이므로, 다음을 얻는다.

:

D_{\mathrm{KL}}(Q \parallel P)

= \mathbb{E}_{\mathbf Q } \left[ \log Q(\mathbf{Z}) - \log P(\mathbf{Z},\mathbf{X}) \right] + \log P(\mathbf{X})



이를 정리하면 다음과 같다.

:

\log P(\mathbf{X}) =

D_{\mathrm{KL}}(Q \parallel P) - \mathbb{E}_{\mathbf Q } \left[ \log Q(\mathbf{Z}) - \log P(\mathbf{Z},\mathbf{X}) \right]

= D_{\mathrm{KL}}(Q\parallel P) + \mathcal{L}(Q)



로그 증거 \log P(\mathbf{X})Q에 대해 고정되어 있으므로, \mathcal{L}(Q)를 최대화하면 KL 발산이 최소화된다. Q를 잘 선택하면 \mathcal{L}(Q)를 계산하고 최대화하기 쉽다. 결과적으로 사후 분포 P(\mathbf{Z}\mid \mathbf{X})의 근사 Q와 로그 증거의 하한 \mathcal{L}(Q)를 얻는다. (KL 발산은 항상 0보다 크거나 같기 때문이다.)

\mathcal{L}(Q)는 (음의) '''변분 자유 에너지'''라고도 하며, 음의 에너지 \operatorname{E}_{Q}[\log P(\mathbf{Z},\mathbf{X})]Q의 엔트로피를 더한 것이다. \mathcal{L}(Q)는 로그 증거의 하한임을 강조하기 위해 '''증거 하한(ELBO)'''이라고도 한다.

브레그만 발산의 일반화된 피타고라스 정리에 의해 다음이 성립한다.[1][2]



:

D_{\mathrm{KL}}(Q\parallel P) \geq D_{\mathrm{KL}}(Q\parallel Q^{*}) + D_{\mathrm{KL}}(Q^{*}\parallel P), \forall Q^{*} \in\mathcal{C}



여기서 \mathcal{C}는 볼록 집합이고, 등식은 Q = Q^{*} \triangleq \arg\min_{Q\in\mathcal{C}}D_{\mathrm{KL}}(Q\parallel P) 일 때 성립한다.

만약 q^{*}(\mathbf{Z}_1\mid\mathbf{Z}_2) = q^{*}(\mathbf{Z_1})이면, 평균장 근사 Q^{*}(\mathbf{Z}) = q^{*}(\mathbf{Z}_1)q^{*}(\mathbf{Z}_2)가 된다.

일반적으로 Q(\mathbf{Z})는 잠재 변수의 분할에 대해 인수분해된다고 가정한다. 즉, \mathbf{Z}\mathbf{Z}_1 \dots \mathbf{Z}_M으로 분할하면 다음과 같다.

:Q(\mathbf{Z}) = \prod_{i=1}^M q_i(\mathbf{Z}_i\mid \mathbf{X})

변분법을 사용하면 각 인자 q_j에 대한 "최적" 분포 q_j^{*}는 다음을 만족한다.[3]

:q_j^{*}(\mathbf{Z}_j\mid \mathbf{X}) = \frac{e^{\operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]}}{\int e^{\operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]}\, d\mathbf{Z}_j}

여기서 \operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]는 데이터와 잠재 변수의 결합 확률 로그의 기댓값이다.

로그를 사용하면 다음과 같다.

:\ln q_j^{*}(\mathbf{Z}_j\mid \mathbf{X}) = \operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})] + \text{constant}

위 식의 상수는 정규화 상수와 관련이 있다.

\operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]는 사전 분포의 하이퍼파라미터와 잠재 변수의 기댓값 및 모멘트의 함수로 단순화될 수 있다. 이는 잠재 변수의 기댓값을 초기화하고, 각 분포의 매개변수를 계산한 후, 기댓값을 다시 설정하는 반복 알고리즘을 통해 해결할 수 있다. 이 알고리즘은 수렴이 보장된다.[5]

2. 1. 문제 정의

변분법 추론에서, 주어진 데이터 \mathbf{X}에 대한 관측되지 않은 변수 집합 \mathbf{Z} = \{Z_1 \dots Z_n\}에 대한 사후 분포는 '''변분 분포''' Q(\mathbf{Z})에 의해 근사된다.

:P(\mathbf{Z}\mid \mathbf{X}) \approx Q(\mathbf{Z}).

분포 Q(\mathbf{Z})P(\mathbf{Z}\mid \mathbf{X})보다 더 간단한 형태의 분포 집합(예: 가우시안 분포 집합)에 속하도록 제한되며, Q(\mathbf{Z})를 실제 사후 분포인 P(\mathbf{Z}\mid \mathbf{X})와 유사하게 만들려는 의도로 선택된다.

유사성(또는 비유사성)은 비유사성 함수 d(Q; P)로 측정되므로, 추론은 d(Q; P)를 최소화하는 분포 Q(\mathbf{Z})를 선택하여 수행된다.

2. 2. KL 발산

변분법 추론에서, 주어진 데이터 \mathbf{X}에 대한 관측되지 않은 변수 집합 \mathbf{Z} = \{Z_1 \dots Z_n\}에 대한 사후 분포는 '''변분 분포''' Q(\mathbf{Z})에 의해 근사된다.

:P(\mathbf{Z}\mid \mathbf{X}) \approx Q(\mathbf{Z}).

분포 Q(\mathbf{Z})P(\mathbf{Z}\mid \mathbf{X})보다 더 간단한 형태의 분포 집합(예: 가우시안 분포 집합)에 속하도록 제한되며, Q(\mathbf{Z})를 실제 사후 분포인 P(\mathbf{Z}\mid \mathbf{X})와 유사하게 만들려는 의도로 선택된다.

유사성(또는 비유사성)은 비유사성 함수 d(Q; P)로 측정되므로, 추론은 d(Q; P)를 최소화하는 분포 Q(\mathbf{Z})를 선택하여 수행된다.

변분 베이즈의 가장 일반적인 유형은 불일치 함수 선택으로 ''P''에 대한 ''Q''의 쿨백-라이블러 발산 (KL 발산)을 사용한다. 이러한 선택은 이 최소화를 다루기 쉽게 만든다. KL 발산은 다음과 같이 정의된다.

:D_{\mathrm{KL}}(Q \parallel P) \triangleq \sum_\mathbf{Z} Q(\mathbf{Z}) \log \frac{Q(\mathbf{Z})}{P(\mathbf{Z}\mid \mathbf{X})}.

''Q''와 ''P''가 예상과 반대로 되어 있음에 유의한다. 이처럼 반대 방향의 KL 발산을 사용하는 것은 기대값-최대화 알고리즘과 개념적으로 유사하다. (반대 방향으로 KL 발산을 사용하면 기대 전파 알고리즘이 생성된다.)

2. 3. 증거 하한 (ELBO)

변분 베이즈 방법에서 증거 하한(Evidence Lower Bound, ELBO)은 중요한 개념이다. ELBO는 데이터의 로그 증거(log evidence)에 대한 하한을 나타내며, 변분 추론에서 핵심적인 역할을 한다.

변분 베이즈의 일반적인 형태는 ''P''에 대한 ''Q''의 쿨백-라이블러 발산(KL 발산)을 최소화하는 것이다. KL 발산은 다음과 같이 정의된다.

:D_{\mathrm{KL}}(Q \parallel P) \triangleq \sum_\mathbf{Z} Q(\mathbf{Z}) \log \frac{Q(\mathbf{Z})}{P(\mathbf{Z}\mid \mathbf{X})}.

여기서 ''Q''와 ''P''의 위치가 일반적인 KL 발산과 반대임에 유의해야 한다. 이러한 반대 방향의 KL 발산 사용은 기대값-최대화 알고리즘과 유사하다.

P(\mathbf Z \mid \mathbf X) = \frac{P(\mathbf X, \mathbf Z)}{P(\mathbf X)} 관계식을 이용하면, 위의 KL-발산은 다음과 같이 다시 쓸 수 있다.

:

D_{\mathrm{KL}}(Q \parallel P) = \sum_\mathbf{Z} Q(\mathbf{Z}) \left[ \log Q(\mathbf{Z}) - \log P(\mathbf{Z},\mathbf{X}) \right] + \log P(\mathbf{X})



P(\mathbf{X})\mathbf Z에 대해 상수이고, \sum_\mathbf{Z} Q(\mathbf{Z}) = 1 (''Q(Z)''는 분포)이므로, 다음을 얻는다.

:

D_{\mathrm{KL}}(Q \parallel P)

= \mathbb{E}_{\mathbf Q } \left[ \log Q(\mathbf{Z}) - \log P(\mathbf{Z},\mathbf{X}) \right] + \log P(\mathbf{X})



이를 재정렬하면 다음과 같이 된다.

:

\log P(\mathbf{X}) =

D_{\mathrm{KL}}(Q \parallel P) - \mathbb{E}_{\mathbf Q } \left[ \log Q(\mathbf{Z}) - \log P(\mathbf{Z},\mathbf{X}) \right]

= D_{\mathrm{KL}}(Q\parallel P) + \mathcal{L}(Q)



로그 증거 \log P(\mathbf{X})Q에 대해 고정되어 있으므로, 마지막 항 \mathcal{L}(Q)를 최대화하면 QP의 KL 발산을 최소화하게 된다. Q를 적절하게 선택하면, \mathcal{L}(Q)를 계산하고 최대화하는 것이 쉬워진다. 결과적으로, 사후 분포 P(\mathbf{Z}\mid \mathbf{X})에 대한 근사 Q와 로그 증거 \log P(\mathbf{X})에 대한 하한 \mathcal{L}(Q)를 모두 얻을 수 있다. (KL 발산은 항상 0보다 크거나 같기 때문이다.)

이 하한 \mathcal{L}(Q)는 (음의) '''변분 자유 에너지'''라고도 불리며, 음의 에너지 \operatorname{E}_{Q}[\log P(\mathbf{Z},\mathbf{X})]Q의 엔트로피를 더한 것으로 표현할 수 있다. \mathcal{L}(Q)는 데이터의 로그 증거에 대한 하한(최악의 경우)임을 강조하기 위해 '''증거 하한(ELBO)'''이라고도 하며, '''ELBO'''로 줄여 쓰기도 한다.

브레그만 발산의 일반화된 피타고라스 정리에 의해, 다음이 성립한다.[1][2]

:

D_{\mathrm{KL}}(Q\parallel P) \geq D_{\mathrm{KL}}(Q\parallel Q^{*}) + D_{\mathrm{KL}}(Q^{*}\parallel P), \forall Q^{*} \in\mathcal{C}



여기서 \mathcal{C}는 볼록 집합이고, 등식은 Q = Q^{*} \triangleq \arg\min_{Q\in\mathcal{C}}D_{\mathrm{KL}}(Q\parallel P) 일 때 성립한다.

이 경우, 전역 최소화자 Q^{*}(\mathbf{Z}) = q^{*}(\mathbf{Z}_1\mid\mathbf{Z}_2)q^{*}(\mathbf{Z}_2) = q^{*}(\mathbf{Z}_2\mid\mathbf{Z}_1)q^{*}(\mathbf{Z}_1), \mathbf{Z}=\{\mathbf{Z_1},\mathbf{Z_2}\}는 다음과 같이 구할 수 있다.[1]

:

\begin{array}{rl}

q^{*}(\mathbf{Z}_2)

&= \frac{P(\mathbf{X})}{\zeta(\mathbf{X})}\frac{P(\mathbf{Z}_2\mid\mathbf{X})}{\exp(D_{\mathrm{KL}}(q^{*}(\mathbf{Z}_1\mid\mathbf{Z}_2)\parallel P(\mathbf{Z}_1\mid\mathbf{Z}_2,\mathbf{X})))} \\

&= \frac{1}{\zeta(\mathbf{X})}\exp\mathbb{E}_{q^{*}(\mathbf{Z}_1\mid\mathbf{Z}_2)}\left(\log\frac{P(\mathbf{Z},\mathbf{X})}{q^{*}(\mathbf{Z}_1\mid\mathbf{Z}_2)}\right),

\end{array}

여기서 정규화 상수는 다음과 같다.

:

\begin{array}{rl}

\zeta(\mathbf{X})

&=P(\mathbf{X})\int_{\mathbf{Z}_2}\frac{P(\mathbf{Z}_2\mid\mathbf{X})}{\exp(D_{\mathrm{KL}}(q^{*}(\mathbf{Z}_1\mid\mathbf{Z}_2)\parallel P(\mathbf{Z}_1\mid\mathbf{Z}_2,\mathbf{X})))} \\

&= \int_{\mathbf{Z}_{2}}\exp\mathbb{E}_{q^{*}(\mathbf{Z}_1\mid\mathbf{Z}_2)}\left(\log\frac{P(\mathbf{Z},\mathbf{X})}{q^{*}(\mathbf{Z}_1\mid\mathbf{Z}_2)}\right).

\end{array}

\zeta(\mathbf{X})는 '''증거 하한(ELBO)'''이라고도 불리는데, P(\mathbf{X})\geq\zeta(\mathbf{X})=\exp(\mathcal{L}(Q^{*}))이기 때문이다.[1]

\mathbf{Z}_1\mathbf{Z}_2의 역할을 바꾸어 가며, 참 모델의 주변 확률 P(\mathbf{Z}_1\mid\mathbf{X})P(\mathbf{Z}_2\mid\mathbf{X})에 대한 근사 q^{*}(\mathbf{Z}_1)q^{*}(\mathbf{Z}_2)를 반복적으로 계산할 수 있다. 이 반복 방식은 단조롭게 수렴하지만,[1] 수렴된 Q^{*}D_{\mathrm{KL}}(Q\parallel P)의 국소 최소화자일 수 있다.

만약 제약된 공간 \mathcal{C}가 독립 공간으로 한정되면, 즉 q^{*}(\mathbf{Z}_1\mid\mathbf{Z}_2) = q^{*}(\mathbf{Z_1})이면, 위의 반복 방식은 평균장 근사 Q^{*}(\mathbf{Z}) = q^{*}(\mathbf{Z}_1)q^{*}(\mathbf{Z}_2)가 된다.

2. 4. 평균장 근사

변분 분포 Q(\mathbf{Z})는 일반적으로 잠재 변수의 일부 분할에 대해 인수분해된다고 가정한다. 즉, 잠재 변수 \mathbf{Z}\mathbf{Z}_1 \dots \mathbf{Z}_M으로 분할하는 경우, 다음이 성립한다.

:Q(\mathbf{Z}) = \prod_{i=1}^M q_i(\mathbf{Z}_i\mid \mathbf{X})

변분법을 사용하여 (따라서 "변분 베이즈"라는 이름이 붙었다) 각 인자 q_j에 대한 "최적" 분포 q_j^{*}(위에 설명된 KL 발산을 최소화하는 분포)는 다음을 만족한다.[3]

:q_j^{*}(\mathbf{Z}_j\mid \mathbf{X}) = \frac{e^{\operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]}}{\int e^{\operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]}\, d\mathbf{Z}_j}

여기서 \operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]는 분할에 없는 모든 변수에 대해 q^*에 대해 계산된 데이터와 잠재 변수의 결합 확률의 로그의 기댓값이다. 분포 q_j^{*}(\mathbf{Z}_j\mid \mathbf{X})의 유도는[4]의 Lemma 4.1을 참조하면 된다.

실제로 우리는 일반적으로 로그를 사용하여 작업한다. 즉, 다음이 성립한다.

:\ln q_j^{*}(\mathbf{Z}_j\mid \mathbf{X}) = \operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})] + \text{constant}

위 식의 상수는 정규화 상수(q_j^{*} 에 대한 위의 식에서 분모)와 관련이 있으며, 일반적으로 나머지가 알려진 유형의 분포(예: 정규 분포, 감마 분포 등)로 인식될 수 있으므로 육안으로 복원된다.

기댓값의 속성을 사용하여 식 \operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]는 일반적으로 잠재 변수에 대한 사전 분포의 고정된 하이퍼파라미터와 현재 분할에 없는 잠재 변수(즉, \mathbf{Z}_j에 포함되지 않은 잠재 변수)의 기댓값(및 때로는 더 높은 모멘트분산)의 함수로 단순화될 수 있다. 이렇게 하면 한 분할의 변수 분포 매개변수와 다른 분할의 변수 기댓값 사이에 순환 종속성이 생성된다. 이는 EM(기댓값-최대화 알고리즘)과 매우 유사한 반복 알고리즘을 자연스럽게 제안한다. 여기서 잠재 변수의 기댓값(및 가능하면 더 높은 모멘트)은 어떤 방식(아마도 임의로)으로 초기화된 다음, 각 분포의 매개변수는 기댓값의 현재 값을 사용하여 차례로 계산되고, 그 후 새로 계산된 분포의 기댓값은 계산된 매개변수에 따라 적절하게 설정된다. 이러한 종류의 알고리즘은 수렴이 보장된다.[5]

즉, 변수의 각 분할에 대해 분할 변수에 대한 분포의 식을 단순화하고 해당 변수에 대한 분포의 함수적 종속성을 검사함으로써 분포의 family를 일반적으로 결정할 수 있다(결과적으로 상수의 값을 결정한다). 분포 매개변수에 대한 공식은 사전 분포의 하이퍼파라미터(알려진 상수)의 측면으로 표현되지만, 다른 분할의 변수 함수에 대한 기댓값 측면에서도 표현된다. 일반적으로 이러한 기댓값은 변수 자체의 기댓값(즉, 평균)의 함수로 단순화될 수 있다. 때로는 제곱 변수(변수의 분산)의 기댓값 또는 더 높은 거듭제곱의 기댓값(즉, 더 높은 모멘트)도 나타난다. 대부분의 경우 다른 변수의 분포는 알려진 family에서 가져오며 관련 기댓값에 대한 공식은 찾아볼 수 있다. 그러나 이러한 공식은 다른 변수에 대한 기댓값에 차례로 의존하는 해당 분포의 매개변수에 따라 달라진다. 그 결과 각 변수의 분포에 대한 매개변수에 대한 공식은 변수 간의 상호 비선형 종속성이 있는 일련의 방정식으로 표현될 수 있다. 일반적으로 이 방정식 시스템을 직접 풀 수는 없다. 그러나 위에 설명된 것처럼 종속성은 간단한 반복 알고리즘을 제안하며, 대부분의 경우 수렴이 보장된다.

3. 평균장 이론

변분 분포 Q(\mathbf{Z})는 일반적으로 잠재 변수의 일부 분할에 대해 인수분해된다고 가정한다. 즉, 잠재 변수 \mathbf{Z}\mathbf{Z}_1 \dots \mathbf{Z}_M으로 분할하는 경우, 다음과 같이 표현할 수 있다.

:Q(\mathbf{Z}) = \prod_{i=1}^M q_i(\mathbf{Z}_i\mid \mathbf{X})

변분법을 사용하여 각 인자 q_j에 대한 "최적" 분포 q_j^{*}를 구하면 다음 식을 만족한다.[3]

:q_j^{*}(\mathbf{Z}_j\mid \mathbf{X}) = \frac{e^{\operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]}}{\int e^{\operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]}\, d\mathbf{Z}_j}

여기서 \operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]는 분할에 없는 모든 변수에 대해 q^*에 대해 계산된 데이터와 잠재 변수의 결합 확률의 로그의 기댓값이다. 분포 q_j^{*}(\mathbf{Z}_j\mid \mathbf{X})의 유도는[4]의 Lemma 4.1을 참조하면 된다.

실제로 로그를 사용하면 다음과 같다.

:\ln q_j^{*}(\mathbf{Z}_j\mid \mathbf{X}) = \operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})] + \text{constant}

위 식의 상수는 정규화 상수와 관련이 있으며, 일반적으로 나머지가 알려진 유형의 분포(예: 정규 분포, 감마 분포 등)로 인식될 수 있으므로 육안으로 복원할 수 있다.

기댓값의 속성을 사용하여 식 \operatorname{E}_{q^*_{-j}} [\ln p(\mathbf{Z}, \mathbf{X})]는 잠재 변수에 대한 사전 분포의 고정된 하이퍼파라미터와 현재 분할에 없는 잠재 변수의 기댓값 및 분산과 같은 모멘트의 함수로 단순화될 수 있다.

이렇게 하면 한 분할의 변수 분포 매개변수와 다른 분할의 변수 기댓값 사이에 순환 종속성이 생성된다. 이는 기댓값-최대화 알고리즘(EM)과 매우 유사한 반복 알고리즘을 자연스럽게 제안한다. 잠재 변수의 기댓값은 임의로 초기화된 다음, 각 분포의 매개변수는 기댓값의 현재 값을 사용하여 차례로 계산되고, 그 후 새로 계산된 분포의 기댓값은 계산된 매개변수에 따라 적절하게 설정된다. 이러한 알고리즘은 수렴이 보장된다.[5]

즉, 변수의 각 분할에 대해, 분할 변수에 대한 분포의 식을 단순화하고 해당 변수에 대한 분포의 함수적 종속성을 검사함으로써 분포의 family를 결정할 수 있다. 분포 매개변수에 대한 공식은 사전 분포의 하이퍼파라미터(알려진 상수)와 다른 분할의 변수 함수에 대한 기댓값으로 표현된다. 일반적으로 이러한 기댓값은 변수 자체의 기댓값(즉, 평균)의 함수로 단순화될 수 있다. 때로는 제곱 변수(변수의 분산)의 기댓값 또는 더 높은 거듭제곱의 기댓값(즉, 더 높은 모멘트)도 나타난다.

대부분의 경우 다른 변수의 분포는 알려진 family에서 가져오며 관련 기댓값에 대한 공식은 찾아볼 수 있다. 그러나 이러한 공식은 다른 변수에 대한 기댓값에 차례로 의존하는 해당 분포의 매개변수에 따라 달라진다. 그 결과 각 변수의 분포에 대한 매개변수에 대한 공식은 변수 간의 상호 비선형 종속성이 있는 일련의 방정식으로 표현될 수 있다. 일반적으로 이 방정식 시스템을 직접 풀 수는 없지만, 종속성은 간단한 반복 알고리즘을 제안하며, 대부분의 경우 수렴이 보장된다.

4. 기본 예제

평균분산이 알려지지 않은, 정규 분포에서 i.i.d. 관측값들의 집합으로 구성된 단일 수준의 간단한 베이즈 모형을 가정하고, 이 모형을 통해 변분 베이즈 방법의 작동 방식을 살펴본다.[6]

수학적 편의를 위해 분산 대신 정밀도 (분산의 역수, 다변량 정규 분포의 경우 공분산 행렬의 역수)를 사용한다. 정밀도와 분산은 이론적으로 일대일 대응 관계이므로 동등하다.

4. 1. 수학적 모델

단일 수준의 간단한 베이즈 모형을 생각해 보자. 이 모형은 정규 분포에서 i.i.d. 관측값들의 집합으로 구성되며, 평균분산은 알려지지 않았다.[6] 다음은 변분 베이즈 방법의 작동 방식을 설명하기 위해 이 모형을 자세히 살펴본다.

수학적 편의를 위해, 다음 예에서는 분산 자체가 아닌 정밀도 — 즉, 분산의 역수 (또는 다변량 정규 분포의 경우, 공분산 행렬의 역수) —를 사용한다. (이론적인 관점에서 볼 때, 정밀도와 분산은 두 값 사이에 일대일 대응이 있으므로 동등하다.)

알려지지 않은 평균 \mu와 정밀도 \tau에 켤레 사전 분포를 배치한다. 즉, 평균은 가우시안 분포를 따르고 정밀도는 감마 분포를 따른다.

:

\begin{align}

\tau & \sim \operatorname{Gamma}(a_0, b_0) \\

\mu|\tau & \sim \mathcal{N}(\mu_0, (\lambda_0 \tau)^{-1}) \\

\{x_1, \dots, x_N\} & \sim \mathcal{N}(\mu, \tau^{-1}) \\

N &= \text{데이터 포인트 수}

\end{align}



사전 분포의 초모수 \mu_0, \lambda_0, a_0b_0는 고정된 값이다. 이 값은 \mu\tau의 사전 분포에 대한 무지를 나타내는 광범위한 사전 분포를 제공하기 위해 작은 양수로 설정할 수 있다.

N개의 데이터 포인트 \mathbf{X} = \{x_1, \ldots, x_N\}가 주어지며 우리의 목표는 매개변수 \mu\tau의 사후 분포 q(\mu, \tau)=p(\mu,\tau\mid x_1, \ldots, x_N)를 추론하는 것이다.

4. 2. 결합 확률

알려지지 않은 평균 \mu와 정밀도 \tau에 켤레 사전 분포를 사용한다. 즉, 평균은 가우시안 분포를 따르고 정밀도는 감마 분포를 따른다.

:

\begin{align}

\tau & \sim \operatorname{Gamma}(a_0, b_0) \\

\mu|\tau & \sim \mathcal{N}(\mu_0, (\lambda_0 \tau)^{-1}) \\

\{x_1, \dots, x_N\} & \sim \mathcal{N}(\mu, \tau^{-1}) \\

N &= \text{데이터 포인트 수}

\end{align}



사전 분포의 초모수 \mu_0, \lambda_0, a_0b_0는 고정된 값이다. 이 값은 \mu\tau의 사전 분포에 대한 무지를 나타내는 광범위한 사전 분포를 제공하기 위해 작은 양수로 설정할 수 있다.

N개의 데이터 포인트 \mathbf{X} = \{x_1, \ldots, x_N\}가 주어졌을 때, 목표는 매개변수 \mu\tau의 사후 분포 q(\mu, \tau)=p(\mu,\tau\mid x_1, \ldots, x_N)를 추론하는 것이다. 모든 변수의 결합 확률은 다음과 같이 다시 쓸 수 있다.

:p(\mathbf{X},\mu,\tau) = p(\mathbf{X}\mid \mu,\tau) p(\mu\mid \tau) p(\tau)

개별 요인은 다음과 같다.

:

\begin{align}

p(\mathbf{X}\mid \mu,\tau) & = \prod_{n=1}^N \mathcal{N}(x_n\mid \mu,\tau^{-1}) \\

p(\mu\mid \tau) & = \mathcal{N} \left (\mu\mid \mu_0, (\lambda_0 \tau)^{-1} \right ) \\

p(\tau) & = \operatorname{Gamma}(\tau\mid a_0, b_0)

\end{align}



여기서

:

\begin{align}

\mathcal{N}(x\mid \mu,\sigma^2) & = \frac{1}{\sqrt{2\pi\sigma^2}} e^{\frac{-(x-\mu)^2}{2\sigma^2}} \\

\operatorname{Gamma}(\tau\mid a,b) & = \frac{1}{\Gamma(a)} b^a \tau^{a-1} e^{-b \tau}

\end{align}


4. 3. 인수분해 근사

사후 분포(Posterior distribution)가 \mu\tau에 대한 독립적인 인자로 분해된다고 가정한다. 즉, q(\mu,\tau) = q(\mu)q(\tau)라고 가정한다. 이러한 종류의 가정은 변분 베이즈 방법의 기초가 된다. 실제 사후 분포는 실제로 이러한 방식으로 분해되지 않으며 (사실, 이 간단한 경우, 그것은 가우시안-감마 분포인 것으로 알려져 있다), 따라서 우리가 얻는 결과는 근사치이다.

4. 4. q(μ)의 도출

\ln q_\mu^*(\mu)\mu에 대한 2차 다항식으로 표현된다. 이는 q_\mu^*(\mu) 자체가 가우시안 분포를 따른다는 것을 의미한다.

:

\begin{align}

\ln q_\mu^*(\mu) &= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ \sum_{n=1}^N (x_n-\mu)^2 + \lambda_0(\mu-\mu_0)^2 \right\} + C_3 \\

&= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ \sum_{n=1}^N (x_n^2-2x_n\mu + \mu^2) + \lambda_0(\mu^2-2\mu_0\mu + \mu_0^2) \right \} + C_3 \\

&= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ \left(\sum_{n=1}^N x_n^2\right)-2\left(\sum_{n=1}^N x_n\right)\mu + \left ( \sum_{n=1}^N \mu^2 \right) + \lambda_0\mu^2-2\lambda_0\mu_0\mu + \lambda_0\mu_0^2 \right\} + C_3 \\

&= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ (\lambda_0+N)\mu^2 -2\left(\lambda_0\mu_0 + \sum_{n=1}^N x_n\right)\mu + \left(\sum_{n=1}^N x_n^2\right) + \lambda_0\mu_0^2 \right\} + C_3 \\

&= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ (\lambda_0+N)\mu^2 -2\left(\lambda_0\mu_0 + \sum_{n=1}^N x_n\right)\mu \right\} + C_4 \\

&= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ (\lambda_0+N)\mu^2 -2\left(\frac{\lambda_0\mu_0 + \sum_{n=1}^N x_n}{\lambda_0+N} \right)(\lambda_0+N) \mu \right\} + C_4 \\

&= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ (\lambda_0+N)\left(\mu^2 -2\left(\frac{\lambda_0\mu_0 + \sum_{n=1}^N x_n}{\lambda_0+N}\right) \mu\right) \right\} + C_4 \\

&= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ (\lambda_0+N)\left(\mu^2 -2\left(\frac{\lambda_0\mu_0 + \sum_{n=1}^N x_n}{\lambda_0+N}\right) \mu + \left(\frac{\lambda_0\mu_0 + \sum_{n=1}^N x_n}{\lambda_0+N}\right)^2 - \left(\frac{\lambda_0\mu_0 + \sum_{n=1}^N x_n}{\lambda_0+N}\right)^2\right) \right\} + C_4 \\

&= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ (\lambda_0+N)\left(\mu^2 -2\left(\frac{\lambda_0\mu_0 + \sum_{n=1}^N x_n}{\lambda_0+N}\right) \mu + \left(\frac{\lambda_0\mu_0 + \sum_{n=1}^N x_n}{\lambda_0+N}\right)^2 \right) \right\} + C_5 \\

&= -\frac{\operatorname{E}_{\tau}[\tau]}{2} \left\{ (\lambda_0+N)\left(\mu-\frac{\lambda_0\mu_0 + \sum_{n=1}^N x_n}{\lambda_0+N}\right)^2 \right\} + C_5 \\

&= -\frac{1}{2} (\lambda_0+N)\operatorname{E}_{\tau}[\tau] \left(\mu-\frac{\lambda_0\mu_0 + \sum_{n=1}^N x_n}{\lambda_0+N}\right)^2 + C_5

\end{align}



위 식에서 괄호 안의 제곱을 전개하고, \mu\mu^2와 관련된 항을 분리 및 그룹화한 후, \mu에 대해 제곱 완성을 수행하면 가우시안 분포의 매개변수를 도출할 수 있다. 위의 모든 단계는 두 이차식의 합 공식을 이용해 간략하게 나타낼 수 있다.

결론적으로, q_\mu^*(\mu)는 다음과 같은 가우시안 분포를 따른다.

:

\begin{align}

q_\mu^*(\mu) &\sim \mathcal{N}(\mu\mid \mu_N,\lambda_N^{-1}) \\

\mu_N &= \frac{\lambda_0 \mu_0 + N \bar{x}}{\lambda_0 + N} \\

\lambda_N &= (\lambda_0 + N) \operatorname{E}_{\tau}[\tau] \\

\bar{x} &= \frac{1}{N}\sum_{n=1}^N x_n

\end{align}


4. 5. q(τ)의 도출

q_\tau^*(\tau)의 유도는 위와 유사하지만, 간결성을 위해 몇 가지 세부 사항을 생략한다.

:

\begin{align}

\ln q_\tau^*(\tau) &= \operatorname{E}_{\mu}[\ln p(\mathbf{X}\mid \mu,\tau) + \ln p(\mu\mid \tau)] + \ln p(\tau) + \text{상수} \\

&= (a_0 - 1) \ln \tau - b_0 \tau + \frac{1}{2} \ln \tau + \frac{N}{2} \ln \tau - \frac{\tau}{2} \operatorname{E}_\mu \left [ \sum_{n=1}^N (x_n-\mu)^2 + \lambda_0(\mu - \mu_0)^2 \right ] + \text{상수}

\end{align}



양변에 지수를 취하면, q_\tau^*(\tau)감마 분포임을 알 수 있다. 구체적으로:

:

\begin{align}

q_\tau^*(\tau) &\sim \operatorname{Gamma}(\tau\mid a_N, b_N) \\

a_N &= a_0 + \frac{N+1}{2} \\

b_N &= b_0 + \frac{1}{2} \operatorname{E}_\mu \left[\sum_{n=1}^N (x_n-\mu)^2 + \lambda_0(\mu - \mu_0)^2\right]

\end{align}


4. 6. 매개변수 계산 알고리즘

이전 절의 결론을 바탕으로, 변분 베이즈 방법에서 매개변수를 계산하는 알고리즘은 다음과 같이 요약할 수 있다.

먼저, 주어진 데이터 ${\displaystyle x_{1},\dots ,x_{N}}$에 대해, 다음 값들을 계산한다.

  • ${\displaystyle {\bar {x}}={\frac {1}{N}}\sum _{n=1}^{N}x_{n}}$
  • ${\displaystyle \sum _{n=1}^{N}x_{n}}$
  • ${\displaystyle \sum _{n=1}^{N}x_{n}^{2}}$


이 값들을 이용하여, 다음 변수들을 계산한다.

:

\begin{align}

\mu_N &= \frac{\lambda_0 \mu_0 + N \bar{x}}{\lambda_0 + N} \\

a_N &= a_0 + \frac{N+1}{2} \\

\end{align}



그 후, ${\displaystyle \lambda _{N}}$을 임의의 값으로 초기화하고, 다음 단계들을 반복하여 ${\displaystyle b_{N}}$과 ${\displaystyle \lambda _{N}}$을 계산한다.

1. ${\displaystyle \lambda _{N}}$의 현재 값을 사용하여 ${\displaystyle b_{N}}$을 계산한다.

:

{\displaystyle b_{N}=b_{0}+{\frac {1}{2}}\left[(\lambda _{0}+N)\left(\lambda _{N}^{-1}+\mu _{N}^{2}\right)-2\left(\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}\right)\mu _{N}+\left(\sum _{n=1}^{N}x_{n}^{2}\right)+\lambda _{0}\mu _{0}^{2}\right]}



2. ${\displaystyle b_{N}}$의 현재 값을 사용하여 ${\displaystyle \lambda _{N}}$을 계산한다.

:

{\displaystyle \lambda _{N}=(\lambda _{0}+N){\frac {a_{N}}{b_{N}}}}



3. 위의 두 단계, 즉, ${\displaystyle b_{N}}$과 ${\displaystyle \lambda _{N}}$의 계산을 수렴할 때까지 반복한다. 수렴 조건은 어떤 값도 작은 양 이상으로 변경되지 않는 것이다.

이 과정을 통해 사후 매개변수를 근사하는 분포의 하이퍼 매개변수 값을 얻을 수 있으며, 이를 통해 사후 분포의 평균, 분산, 95% 최고 밀도 영역 등을 계산할 수 있다.

이 알고리즘은 지역 최댓값으로 수렴하는 것이 보장된다.

또한, 사후 분포가 사전 분포와 동일한 형태를 갖는다는 점은 주목할 만하다. 이는 변분 베이즈 방법에서 분포가 인수분해된다는 가정에서 자연스럽게 유도되는 결과이다. 사전 분포가 지수족의 구성원일 때, 사후 분포가 사전 분포와 동일한 형식을 갖는 것은 일반적인 현상이다.

5. 심화 예제

판 표기법을 사용한 베이즈 가우시안 혼합 모델에 대한 심화 예제를 살펴보자.[3]

판 표기법을 사용한 베이즈 가우시안 혼합 모델. 작은 사각형은 고정된 매개변수를 나타내고, 더 큰 원은 임의 변수를 나타낸다. 채워진 모양은 알려진 값을 나타냅니다. [K] 표시는 크기 ''K''의 벡터를 의미하고, [''D'',''D'']는 크기 ''D''×''D''의 행렬을 의미하며, ''K''만으로는 ''K''개의 결과를 가진 범주형 변수를 의미한다. ''z''에서 시작하여 가로대로 끝나는 물결선은 ''스위치''를 나타낸다. 즉, 이 변수의 값은 다른 들어오는 변수에 대해 가능한 값의 크기 ''K'' 배열에서 사용할 값을 선택한다.


이 모델은 다음과 같이 표현된다.

:

\begin{align}

\mathbf{\pi} & \sim \operatorname{SymDir}(K, \alpha_0) \\

\mathbf{\Lambda}_{i=1 \dots K} & \sim \mathcal{W}(\mathbf{W}_0, \nu_0) \\

\mathbf{\mu}_{i=1 \dots K} & \sim \mathcal{N}(\mathbf{\mu}_0, (\beta_0 \mathbf{\Lambda}_i)^{-1}) \\

\mathbf{z}[i = 1 \dots N] & \sim \operatorname{Mult}(1, \mathbf{\pi}) \\

\mathbf{x}_{i=1 \dots N} & \sim \mathcal{N}(\mathbf{\mu}_{z_i}, {\mathbf{\Lambda}_{z_i}}^{-1}) \\

K &= \text{혼합 성분의 수} \\

N &= \text{데이터 포인트 수}

\end{align}



여기서 사용된 기호는 다음과 같다:

  • SymDir()는 각 구성 요소에 대한 하이퍼파라미터가 \alpha_0로 설정된 차원 K의 대칭 디리클레 분포이다. 디리클레 분포는 범주형 분포 또는 다항 분포켤레사전분포이다.
  • \mathcal{W}()는 위샤트 분포로, 다변량 가우시안 분포의 정밀도 행렬(역 공분산 행렬)의 켤레사전분포이다.
  • Mult()는 단일 관측치에 대한 다항 분포이다 (범주형 분포와 동일). 상태 공간은 "1-of-K" 표현이다. 즉, 요소 중 하나가 1 (관측의 ID 지정)이고 다른 모든 요소가 0인 K차원 벡터이다.
  • \mathcal{N}()은 가우시안 분포이며, 이 경우 특히 다변량 가우시안 분포이다.


위 변수들의 의미는 다음과 같다:

  • \mathbf{X} = \{\mathbf{x}_1, \dots, \mathbf{x}_N\}D차원 벡터인 N개의 데이터 포인트 집합으로, 다변량 가우시안 분포에 따라 분포되어 있다.
  • \mathbf{Z} = \{\mathbf{z}_1, \dots, \mathbf{z}_N\}는 각 데이터 포인트에 대해 하나씩 있는 잠재 변수 집합으로, 해당 데이터 포인트가 속한 혼합 구성 요소를 지정한다. (z_{nk} (k = 1 \dots K)는 k번째 구성요소를 나타낸다.)
  • \mathbf{\pi}K 혼합 구성 요소에 대한 혼합 비율이다.
  • \mathbf{\mu}_{i=1 \dots K}\mathbf{\Lambda}_{i=1 \dots K}는 각 혼합 구성 요소와 관련된 매개변수 (평균 및 정밀도)를 지정한다.


모든 변수의 결합 확률은 다음과 같이 표현된다.[3]

:p(\mathbf{X},\mathbf{Z},\mathbf{\pi},\mathbf{\mu},\mathbf{\Lambda}) = p(\mathbf{X}\mid \mathbf{Z},\mathbf{\mu},\mathbf{\Lambda}) p(\mathbf{Z}\mid \mathbf{\pi}) p(\mathbf{\pi}) p(\mathbf{\mu}\mid \mathbf{\Lambda}) p(\mathbf{\Lambda})

개별 요인은 다음과 같다.

:

\begin{align}

p(\mathbf{X}\mid \mathbf{Z},\mathbf{\mu},\mathbf{\Lambda}) & = \prod_{n=1}^N \prod_{k=1}^K \mathcal{N}(\mathbf{x}_n\mid \mathbf{\mu}_k,\mathbf{\Lambda}_k^{-1})^{z_{nk}} \\

p(\mathbf{Z}\mid \mathbf{\pi}) & = \prod_{n=1}^N \prod_{k=1}^K \pi_k^{z_{nk}} \\

p(\mathbf{\pi}) & = \frac{\Gamma(K\alpha_0)}{\Gamma(\alpha_0)^K} \prod_{k=1}^K \pi_k^{\alpha_0-1} \\

p(\mathbf{\mu}\mid \mathbf{\Lambda}) & = \prod_{k=1}^K \mathcal{N}(\mathbf{\mu}_k\mid \mathbf{\mu}_0,(\beta_0 \mathbf{\Lambda}_k)^{-1}) \\

p(\mathbf{\Lambda}) & = \prod_{k=1}^K \mathcal{W}(\mathbf{\Lambda}_k\mid \mathbf{W}_0, \nu_0)

\end{align}



여기서

:

\begin{align}

\mathcal{N}(\mathbf{x}\mid \mathbf{\mu},\mathbf{\Sigma}) & = \frac{1}{(2\pi)^{D/2}} \frac{1}

5. 1. 모델 설명

베이즈 네트워크에서 사후 확률 밀도에 대한 변분 베이즈 근사치를 도출하는 방법을 제시한다.

변분 베이즈는 관측 변수(\mathbf{X})와 관측되지 않은 변수(모수 \boldsymbol\Theta잠재 변수 \mathbf{Z}) 및 해당 조건부 확률 분포를 그래픽 모델을 사용하여 네트워크를 설명한다. 변분 베이즈는 사후 확률 p(\mathbf{Z},\boldsymbol\Theta\mid\mathbf{X})에 대한 근사치를 구성한다. 이 근사치는 팩터화된 분포, 즉 관측되지 않은 변수의 상호 배타적인 부분 집합에 대한 둘 이상의 독립 분포의 곱이라는 기본 속성을 갖는다.

관측되지 않은 변수를 독립적인 인수가 파생될 두 개 이상의 부분 집합으로 분할한다. 이를 수행하는 보편적인 절차는 없지만, 일반적으로 첫 번째 분할은 매개변수와 잠재 변수를 분리하는 것이다. 분할을 \mathbf{Z}_1,\ldots,\mathbf{Z}_M이라고 가정한다.

주어진 분할 \mathbf{Z}_j에 대해, 기본 방정식 \ln q_j^{*}(\mathbf{Z}_j\mid \mathbf{X}) = \operatorname{E}_{i \neq j} [\ln p(\mathbf{Z}, \mathbf{X})] + \text{상수}를 사용하여 최상의 근사 분포 q_j^{*}(\mathbf{Z}_j\mid \mathbf{X})에 대한 공식을 작성한다.

그래픽 모델을 사용하여 결합 확률 분포에 대한 공식을 채운다. \mathbf{Z}_j의 변수가 포함되지 않은 모든 구성 요소 조건부 분포는 무시할 수 있다.

공식을 단순화하고 기대 연산자를 적용한다. 이상적으로는 \mathbf{Z}_j에 없는 변수의 기본 함수의 기대값으로 단순화해야 한다. 변분 베이즈 절차가 제대로 작동하려면 이러한 기대값은 일반적으로 이러한 변수의 분포 매개변수 및/또는 하이퍼파라미터의 함수로 분석적으로 표현할 수 있어야 한다.

현재 분할의 변수에 대한 공식의 함수 형태는 분포의 유형을 나타낸다. 특히, 공식을 지수화하면 분포의 확률 밀도 함수(PDF)가 생성된다.

모든 기대값을 분석적으로 현재 분할에 없는 변수의 함수로 대체하고 PDF를 알려진 분포와 식별할 수 있는 형태로 만들 수 있으면, 그 결과는 최적 매개변수의 값을 다른 분할의 변수 매개변수의 함수로 나타내는 일련의 방정식이 된다.

모든 분할에 이 절차를 적용하면, 그 결과는 모든 매개변수의 최적 값을 지정하는 상호 연결된 일련의 방정식이 된다.

기대값-최대화 (EM) 유형 절차를 적용하여 각 매개변수의 초기값을 선택하고, 각 단계에서 방정식을 순환하면서 각 매개변수를 차례로 업데이트한다. 이는 수렴이 보장된다.

변분 베이즈 방법의 핵심 아이디어는 주어진 데이터에 대해 관찰되지 않은 변수 집합(매개변수 및 잠재 변수)의 사후 확률에 대한 분석적 근사치를 구성하는 것이다. 이는 솔루션의 형태가 깁스 샘플링과 같은 다른 베이즈 추론 방법과 유사하다는 것을 의미한다.

"분석적 근사치"는 사후 분포에 대한 공식을 작성할 수 있음을 의미한다. 이 공식은 일반적으로 잘 알려진 확률 분포의 곱으로 구성되며, 각 분포는 관찰되지 않은 변수 집합에 대해 ''인수분해''된다(즉, 관찰된 데이터를 기준으로 다른 변수와 조건부 독립이다). 이 공식은 실제 사후 분포가 아니라 그 근사치이다.

다음과 같이 설명된 베이즈 가우시안 혼합 모델을 상상해 보자.[3]

:

\begin{align}

\mathbf{\pi} & \sim \operatorname{SymDir}(K, \alpha_0) \\

\mathbf{\Lambda}_{i=1 \dots K} & \sim \mathcal{W}(\mathbf{W}_0, \nu_0) \\

\mathbf{\mu}_{i=1 \dots K} & \sim \mathcal{N}(\mathbf{\mu}_0, (\beta_0 \mathbf{\Lambda}_i)^{-1}) \\

\mathbf{z}[i = 1 \dots N] & \sim \operatorname{Mult}(1, \mathbf{\pi}) \\

\mathbf{x}_{i=1 \dots N} & \sim \mathcal{N}(\mathbf{\mu}_{z_i}, {\mathbf{\Lambda}_{z_i}}^{-1}) \\

K &= \text{혼합 성분의 수} \\

N &= \text{데이터 포인트 수}

\end{align}



참고:

  • SymDir()는 각 구성 요소에 대한 하이퍼파라미터가 \alpha_0로 설정된 차원 K의 대칭 디리클레 분포이다. 디리클레 분포는 범주형 분포 또는 다항 분포의 공액 사전 분포이다.
  • \mathcal{W}()는 위샤트 분포로, 다변량 가우시안 분포의 정밀도 행렬 (역 공분산 행렬)의 공액 사전 분포이다.
  • Mult()는 단일 관측치에 대한 다항 분포이다 (범주형 분포와 동일). 상태 공간은 "1-of-K" 표현이다. 즉, 요소 중 하나가 1 (관측의 ID 지정)이고 다른 모든 요소가 0인 K차원 벡터이다.
  • \mathcal{N}()은 가우시안 분포이며, 이 경우 특히 다변량 가우시안 분포이다.


위 변수의 해석은 다음과 같다.

  • \mathbf{X} = \{\mathbf{x}_1, \dots, \mathbf{x}_N\}D차원 벡터인 N개의 데이터 포인트 집합으로, 다변량 가우시안 분포에 따라 분포되어 있다.
  • \mathbf{Z} = \{\mathbf{z}_1, \dots, \mathbf{z}_N\}는 각 데이터 포인트에 대해 하나씩 있는 잠재 변수 집합으로, 위에서 설명한 대로 구성 요소 z_{nk} ( k = 1 \dots K)을 사용하여 해당 데이터 포인트가 속한 혼합 구성 요소를 지정한다.
  • \mathbf{\pi}K 혼합 구성 요소에 대한 혼합 비율이다.
  • \mathbf{\mu}_{i=1 \dots K}\mathbf{\Lambda}_{i=1 \dots K}는 각 혼합 구성 요소와 관련된 매개변수 (평균 및 정밀도)를 지정한다.


모든 변수의 결합 확률은 다음과 같이 다시 쓸 수 있다.

:p(\mathbf{X},\mathbf{Z},\mathbf{\pi},\mathbf{\mu},\mathbf{\Lambda}) = p(\mathbf{X}\mid \mathbf{Z},\mathbf{\mu},\mathbf{\Lambda}) p(\mathbf{Z}\mid \mathbf{\pi}) p(\mathbf{\pi}) p(\mathbf{\mu}\mid \mathbf{\Lambda}) p(\mathbf{\Lambda})

개별 요인은 다음과 같다.

:

\begin{align}

p(\mathbf{X}\mid \mathbf{Z},\mathbf{\mu},\mathbf{\Lambda}) & = \prod_{n=1}^N \prod_{k=1}^K \mathcal{N}(\mathbf{x}_n\mid \mathbf{\mu}_k,\mathbf{\Lambda}_k^{-1})^{z_{nk}} \\

p(\mathbf{Z}\mid \mathbf{\pi}) & = \prod_{n=1}^N \prod_{k=1}^K \pi_k^{z_{nk}} \\

p(\mathbf{\pi}) & = \frac{\Gamma(K\alpha_0)}{\Gamma(\alpha_0)^K} \prod_{k=1}^K \pi_k^{\alpha_0-1} \\

p(\mathbf{\mu}\mid \mathbf{\Lambda}) & = \prod_{k=1}^K \mathcal{N}(\mathbf{\mu}_k\mid \mathbf{\mu}_0,(\beta_0 \mathbf{\Lambda}_k)^{-1}) \\

p(\mathbf{\Lambda}) & = \prod_{k=1}^K \mathcal{W}(\mathbf{\Lambda}_k\mid \mathbf{W}_0, \nu_0)

\end{align}



여기서

:

\begin{align}

\mathcal{N}(\mathbf{x}\mid \mathbf{\mu},\mathbf{\Sigma}) & = \frac{1}{(2\pi)^{D/2}} \frac{1}

5. 2. 변수 정의

주어진 베이즈 네트워크에서 사후 확률 밀도에 대한 변분 베이즈 근사치를 도출하는 방법을 설명하기 위해, 관측 변수(데이터) \mathbf{X}와 관측되지 않은 변수(모수 \boldsymbol\Theta잠재 변수 \mathbf{Z})를 정의하고, 이들의 조건부 확률 분포를 그래픽 모델을 사용하여 네트워크로 나타낸다. 변분 베이즈 방법은 사후 확률 p(\mathbf{Z},\boldsymbol\Theta\mid\mathbf{X})에 대한 근사치를 구성하며, 이 근사치는 팩터화된 분포, 즉 관측되지 않은 변수의 상호 배타적인 부분 집합에 대한 둘 이상의 독립 분포의 곱이라는 기본 속성을 갖는다.[3]

관측되지 않은 변수들을 독립적인 인수가 파생될 두 개 이상의 부분 집합으로 분할한다. 이 분할은 보편적인 절차가 없으며, 너무 많은 부분 집합은 근사치를 나쁘게 만들고, 너무 적은 부분 집합은 전체 변분 베이즈 절차를 다루기 어렵게 만든다. 일반적으로 첫 번째 분할은 모수와 잠재 변수를 분리하는 것이며, 이것만으로도 다루기 쉬운 결과를 생성하기에 충분하다. 분할을 \mathbf{Z}_1,\ldots,\mathbf{Z}_M이라고 가정한다.

5. 3. 결합 확률

모든 변수의 결합 확률은 다음과 같이 표현할 수 있다.

:p(\mathbf{X},\mathbf{Z},\mathbf{\pi},\mathbf{\mu},\mathbf{\Lambda}) = p(\mathbf{X}\mid \mathbf{Z},\mathbf{\mu},\mathbf{\Lambda}) p(\mathbf{Z}\mid \mathbf{\pi}) p(\mathbf{\pi}) p(\mathbf{\mu}\mid \mathbf{\Lambda}) p(\mathbf{\Lambda})

개별 요인은 다음과 같다.

:

\begin{align}

p(\mathbf{X}\mid \mathbf{Z},\mathbf{\mu},\mathbf{\Lambda}) & = \prod_{n=1}^N \prod_{k=1}^K \mathcal{N}(\mathbf{x}_n\mid \mathbf{\mu}_k,\mathbf{\Lambda}_k^{-1})^{z_{nk}} \\

p(\mathbf{Z}\mid \mathbf{\pi}) & = \prod_{n=1}^N \prod_{k=1}^K \pi_k^{z_{nk}} \\

p(\mathbf{\pi}) & = \frac{\Gamma(K\alpha_0)}{\Gamma(\alpha_0)^K} \prod_{k=1}^K \pi_k^{\alpha_0-1} \\

p(\mathbf{\mu}\mid \mathbf{\Lambda}) & = \prod_{k=1}^K \mathcal{N}(\mathbf{\mu}_k\mid \mathbf{\mu}_0,(\beta_0 \mathbf{\Lambda}_k)^{-1}) \\

p(\mathbf{\Lambda}) & = \prod_{k=1}^K \mathcal{W}(\mathbf{\Lambda}_k\mid \mathbf{W}_0, \nu_0)

\end{align}



여기서 각 수식에 사용된 기호는 다음과 같다.

:

\begin{align}

\mathcal{N}(\mathbf{x}\mid \mathbf{\mu},\mathbf{\Sigma}) & = \frac{1}{(2\pi)^{D/2}} \frac{1}

5. 4. 인수분해 근사

변분 베이즈(VB)는 기대값-최대화(EM)와 자주 비교된다. 두 방법 모두 최적의 매개변수 값으로 순차적으로 수렴하는 반복적인 절차라는 점에서 실제 수치적 절차는 매우 유사하다. 각 절차를 도출하기 위한 초기 단계 또한 확률 밀도에 대한 공식으로 시작하고 상당한 양의 수학적 조작을 포함한다는 점에서 다소 유사하다.

그러나 몇 가지 차이점이 있다. 가장 중요한 것은 ''무엇''을 계산하느냐이다.

  • EM은 "매개변수"로 분류될 수 있는 확률 변수의 사후 분포에 대한 점 추정치를 계산하지만, 잠재 변수의 실제 사후 분포에 대한 추정치만 계산한다(적어도 "소프트 EM"에서는 잠재 변수가 이산적인 경우에만 해당한다). 계산된 점 추정치는 이러한 매개변수의 최빈값이며, 다른 정보는 사용할 수 없다.
  • 반면에 VB는 매개변수와 잠재 변수 모두 모든 변수의 실제 사후 분포에 대한 추정치를 계산한다. 점 추정치를 도출해야 할 경우, 베이즈 추론에서 일반적인 것처럼 평균이 최빈값보다 일반적으로 사용된다. 더불어, VB에서 계산된 매개변수는 EM의 매개변수와 동일한 의미를 갖지 ''않는다''. EM은 베이즈 네트워크 자체의 매개변수의 최적 값을 계산한다. VB는 베이즈 네트워크의 매개변수와 잠재 변수를 근사하는 데 사용되는 분포의 매개변수의 최적 값을 계산한다. 예를 들어, 전형적인 가우스 혼합 모델은 각 혼합 성분의 평균과 분산에 대한 매개변수를 갖는다. EM은 이러한 매개변수에 대한 최적 값을 직접 추정한다. 그러나 VB는 먼저 이러한 매개변수에 분포를 맞춘 다음, 일반적으로 사전 분포의 형태, 예를 들어 정규 스케일 역 감마 분포를 사용하여, 이 사전 분포의 매개변수, 즉 본질적으로 하이퍼파라미터에 대한 값을 계산한다. 이 경우 VB는 구성 요소의 평균과 분산의 결합 분포를 설명하는 정규 스케일 역 감마 분포의 네 가지 매개변수에 대한 최적 추정치를 계산한다.

6. 지수족 분포

이전 예에서 관찰되지 않은 변수에 대한 분포가 "매개변수"에 대한 분포와 "잠재 데이터"에 대한 분포로 인수분해된다고 가정하면, 각 변수에 대해 유도된 "최적" 분포는 해당 변수에 대한 해당 사전 분포와 동일한 패밀리에 속한다는 점에 유의해야 한다. 이는 지수족 분포에서 파생된 모든 사전 분포에 대해 참인 일반적인 결과이다.

7. 다른 방법과의 비교

변분 베이즈(VB) 방법은 기대값 최대화(EM) 알고리즘과 유사하게 최적의 매개변수 값을 찾기 위해 반복적인 절차를 사용한다. 하지만 두 방법은 계산하는 대상에서 중요한 차이점을 보인다. EM 알고리즘은 확률 변수의 사후 분포에 대한 점 추정치를 계산하는 반면, VB는 매개변수와 잠재 변수를 모두 포함한 모든 변수의 실제 사후 분포에 대한 추정치를 계산한다. VB에서 점 추정치가 필요한 경우, 최빈값보다는 평균이 일반적으로 사용된다.[1]

7. 1. 기대값 최대화(EM) 알고리즘과의 비교

기대값 최대화(EM) 알고리즘과 변분 베이즈(VB) 방법은 모두 최적의 매개변수 값을 찾기 위해 반복적인 절차를 사용한다는 점에서 유사하다. 두 방법 모두 확률 밀도에 대한 공식에서 시작하여 상당한 수학적 계산을 포함한다.

그러나 두 방법은 계산하는 대상에서 중요한 차이점을 보인다.

  • EM 알고리즘: 확률 변수의 사후 분포에 대한 점 추정치를 계산한다. 잠재 변수의 사후 분포에 대한 추정치만 계산하며(소프트 EM의 경우, 잠재 변수가 이산적인 경우에만), 계산된 점 추정치는 이러한 매개변수의 최빈값이다.
  • 변분 베이즈(VB): 매개변수와 잠재 변수 모두를 포함한 모든 변수의 실제 사후 분포에 대한 추정치를 계산한다. 점 추정치가 필요한 경우, 평균이 최빈값보다 일반적으로 사용된다. VB에서 계산된 매개변수는 EM의 매개변수와 동일한 의미를 갖지 ''않는다''. VB는 베이즈 네트워크의 매개변수와 잠재 변수를 근사하는 데 사용되는 분포의 매개변수의 최적 값을 계산한다.


예를 들어, 가우스 혼합 모델에서 EM은 각 혼합 성분의 평균과 분산에 대한 최적 값을 직접 추정한다. 반면 VB는 먼저 이러한 매개변수에 분포(일반적으로 사전 분포 형태, 예: 정규 스케일 역 감마 분포)를 맞춘 다음, 이 사전 분포의 매개변수(하이퍼파라미터)에 대한 값을 계산한다. 즉, VB는 구성 요소의 평균과 분산의 결합 분포를 설명하는 정규 스케일 역 감마 분포의 네 가지 매개변수에 대한 최적 추정치를 계산한다.[1]

참조

[1] arXiv Copula Variational Bayes inference via information geometry
[2] 학술지 The Information Geometry of Bregman Divergences and Some Applications in Multi-Expert Reasoning 2014
[3] 웹사이트 AN IN DEPTH INTRODUCTION TO VARIATIONAL BAYES NOTE https://papers.ssrn.[...] 2023-08-15
[4] 학술지 Gibbs sampler and coordinate ascent variational inference: A set-theoretical review
[5] 서적 Convex Optimization https://web.stanford[...] Cambridge University Press 2011-10-15
[6] 서적 Pattern Recognition and Machine Learning Springer
[7] 간행물 Infinite Markov-Switching Maximum Entropy Discrimination Machines http://proceedings.m[...] Proc. 30th International Conference on Machine Learning (ICML). Journal of Machine Learning Research: Workshop and Conference Proceedings 2013-06



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com