def calcDocTopicCount_numpy(
activeDocs, docIndices, word_count,
Prior, Lik,
sumR=None, DocTopicCount=None):
if sumR is None:
sumR = np.zeros(N)
if DocTopicCount is None:
DocTopicCount = np.zeros((D, K), order='C')
if np.isfortran(DocTopicCount):
print 'here!!!!'
DocTopicCount = np.ascontiguousarray(DocTopicCount)
for d in activeDocs:
start = docIndices[d]
stop = docIndices[d + 1]
Lik_d = Lik[start:stop]
np.dot(Lik_d, Prior[d], out=sumR[start:stop])
np.dot(word_count[start:stop] / sumR[start:stop],
Lik_d,
out=DocTopicCount[d, :]
)
DocTopicCount[activeDocs] *= Prior[activeDocs]
return sumR, DocTopicCount
评论列表
文章目录