Skip to content

Commit a5b9319

Browse files
committed
fix dense topic bug
1 parent 81ffb04 commit a5b9319

File tree

1 file changed

+5
-7
lines changed

1 file changed

+5
-7
lines changed

src/document.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,13 @@ void LDADoc::sparse_topic_dist(vector<Topic>& topic_dist, bool sort) const {
6464
void LDADoc::dense_topic_dist(vector<float>& dense_dist) const {
6565
dense_dist.clear();
6666
dense_dist.resize(_num_topics, 0.0);
67-
size_t sum = 0;
68-
for (int i = 0; i < _num_topics; ++i) {
69-
sum += _accum_topic_sum[i] / _num_accum;
70-
}
71-
if (sum == 0) {
72-
return; // 返回0向量
67+
// 若文档长度为0,则范围0向量
68+
if (size() == 0) {
69+
return;
7370
}
7471
for (int i = 0; i < _num_topics; ++i) {
75-
dense_dist[i] = (_accum_topic_sum[i] / _num_accum + _alpha) / (sum + _alpha * _num_topics);
72+
dense_dist[i] = (_accum_topic_sum[i] * 1.0/ _num_accum + _alpha)
73+
/ (size() + _alpha * _num_topics);
7674
}
7775
}
7876

0 commit comments

Comments
 (0)