anobiidae's blog

個人的に自然言語処理とかに関して、調べ物したもののメモとかを残す場所。

Fast LDA(2/3)

 

Instead of having a single segment for topic k, of length pk/Z = p(zij = k|z¬ij , x, α, β), we instead have several segments skl . . . sk K associated with each topic.

pk/Z の長さに基づくtopic kの1つのsegmentの代わりに、我々はそれぞれのtopicに対応づけられるsegment sk(sl1...sk K)を導入する。

 

The first segment for a topic k, sk k, describes a conservative estimate of the probability of the topic given the upper bound Zk on the true normalization factor Z. Each of the subsequent segments associated with topic k, namely sk l for l > k, are the corrections for the missing probability mass for topic k given the improved bound Zl. Mathematically, the lengths of these segments are given by 

 

topic kに対する最初のセグメントであるs_k_kは、正規化係数Zにおけるuppor bound Zkが与えられた場合の、topic の確率の保守的な推定値を意味する。topic kに対応付けられたsegmentの部分は、s_k_lと称する(lはkよりも大きい)。s_k_lはbound Zlが与えられた場合の、topic kに対する失敗確率の補正量である。数学的には、これらのsegmentは以下のように与えられる。

 

s_k_k = ...

s_k_l= ...

 

 

Since the final bound ZK = Z, the total sum of the segment lengths for topic k is equal to the true, normalized probability of that topic:

final bound ZK = Z(topic kのsegmentの長さの合計)であり、それらのtopicの確率によって正規化される。

p() = Σ s_k_l

 

Therefore, as in the conventional sampling method, we can draw zij from the correct distribution by first drawing u ∼ Uniform[0, 1], then determining the segment in which it falls.

利便性あるsampling 手段のために、u←一様乱数(0~1)の正規分布からzijを選び、それ以下となるsegmentによって決定する。