def _E_logphiT(self, k=None):
''' Calculate transpose of topic-word matrix
Important to make a copy of the matrix so it is C-contiguous,
which leads to much much faster matrix operations.
Returns
-------
ElogphiT : 2D array, vocab_size x K
'''
if k is None or k == 'prior':
lam = self.Prior.lam
ElogphiT = digamma(lam) - digamma(np.sum(lam))
elif k == 'all':
ElogphiT = self.Post.lam.T.copy()
digamma(ElogphiT, out=ElogphiT)
digammaColSumVec = digamma(np.sum(self.Post.lam, axis=1))
ElogphiT -= digammaColSumVec[np.newaxis,:]
else:
ElogphiT = digamma(self.Post.lam[k]) - \
digamma(self.Post.lam[k].sum())
assert ElogphiT.flags.c_contiguous
return ElogphiT
评论列表
文章目录