Generative Process
θi∼Dir(α),i∈{1,…,M}
ϕk∼Dir(β),k∈{1,…,K}
zi,l∼Mult(θi),i∈{1,…,M},l∈{1,…,N}
wi,l∼Mult(ϕzi,l),i∈{1,…,M},l∈{1,…,N}
단어 w는 ϕz word-topic 분포에 의해 generated 된다
z topic은 θ document-topic 분포에 의해 generated 된다
θ document-topic 분포는 α 분포에 의해 generated 된다
ϕ word-topic 분포는 β 분포에 의해 generated 된다
만약 우리가 Z 분포를 가지고 있다면 θ와 ϕ를 likely하게 구할수 있다
θ : Topic distribution in a document
ϕ : Word distribution in a topic
Z를 구하는 것이 θ와 ϕ를 추론하는 중요한 키가 된다
Gibbs Sampling을 활용하여 가장 likely한 Z를 구한다
factorization 으로 시작한다
P(W,Z,θ,ϕ;α,β)
=K∏i=1P(ϕi;β)M∏j=1P(θj;α)N∏l=1P(Zj,l∣θj)P(Wj,l∣ϕZj,l)
θ와 ϕ를 collapse시키려고 식을 전개한다
- 왜냐하면 W는 Data point이고, Z 는 Sampling target이고 α,β는 prior 이기 때문에 살려야 한다
P(W,Z;α,β)=∫θ∫ϕP(W,Z,θ,ϕ;α,β)dϕdθ
=∫ϕ∏Ki=1P(ϕi;β)∏Mj=1∏Nl=1P(Wj,l∣ϕZj,l)dϕ×∫θ∏Mj=1P(θj;α)∏Nl=1P(Zj,l∣θj)dθ
=(1)×(2)
(1)번 식을 먼저 풀어본다
(1)=∫ϕ∏Ki=1P(ϕi;β)∏Mj=1∏Nl=1P(Wj,l∣ϕZj,l)dϕ
=∏Ki=1∫ϕiP(ϕi;β)∏Mj=1∏Nl=1P(Wj,l∣ϕZj,l)dϕi
=∏Ki=1∫ϕiΓ(∑Vv=1βv)∏Vv=1Γ(βv)∏Vv=1ϕβv−1i,v∏Mj=1∏Nl=1P(Wj,l∣ϕZj,l)dϕi
여기서 v는 unique 단어의 갯수이다(dimension)
nij,r : j번째 document에 있는 i번째 topic의 성질을 가진 r번째 unique한 단어이다
ni(.),v : 모든 문서를 보고 i라는 topic의 성질을 가진 unique한 단어 v의 갯수
=∏Ki=1∫ϕiΓ(∑Vv=1βv)∏Vv=1Γ(βv)∏Vv=1ϕβv−1i,v∏Vv=1ϕni(.),vi,vdϕi
=∏Ki=1∫ϕiΓ(∑Vv=1βv)∏Vv=1Γ(βv)∏Vv=1ϕni(.),v+βv−1i,vdϕi
=∏Ki=1∏Vv=1Γ(ni(.),v+βv)Γ(∑Vv=1βv)∏Vv=1Γ(βv)Γ(∑Vv=1ni(.),v+βv)∫ϕiΓ(∑Vv=1ni(.),v+βv)∏Vv=1Γ(ni(.),v+βv)∏Vv=1ϕni(.),v+βv−1i,vdϕi
=∏Ki=1∏Vv=1Γ(ni(.),v+βv)Γ(∑Vv=1βv)∏Vv=1Γ(βv)Γ(∑Vv=1ni(.),v+βv)
(2)번 식을 먼저 풀어본다
∫θ∏Mj=1P(θj;α)∏Nl=1P(Zj,l∣θj)dθ
=∏Mj=1∫θjP(θj;α)∏Nl=1P(Zj,l∣θj)dθj
=∏Mj=1∫θjΓ(∑Kk=1αk)∏Kk=1Γ(αk)∏Kk=1θαk−1j,k∏Nl=1P(Zj,l∣θj)dθj
ni(.),v : 모든 단어는 다 포함하고 i라는 topic의 성질을 가진 unique한 단어 v의 갯수