【发布时间】:2018-02-22 20:59:04
【问题描述】:
我正在尝试使用 R 中的 text2vec 包运行 lda 模型后找出主题文档的概率。
以下命令生成模型:
lda_model <- LDA$new(n_topics = n_topics, doc_topic_prior = 0.1, topic_word_prior = 0.01)
doc_topic_distr <- lda_model$fit_transform(x = quantdfm, n_iter = 2000, convergence_tol = 0.00001, n_check_convergence = 10, progressbar = FALSE)
quantdfm 是使用 quanteda 包的 dtm,我将它插入到 $fit_transform 方法中。
我注意到 doc_topic_distr 包含主题文档概率(甚至没有要求规范化)。这个对吗?因为在之前的帖子中:How to get topic probability table from text2vec LDA,Dmitriy Selivanov 要求使用以下方法得出这样的概率:
doc_topic_prob = normalize(doc_topic_distr, norm = "l1")
而当我使用与上述相同的命令时,doc_topic_distr 和 doc_topic_prob 具有相同的值(我认为前者包含整数而不是后者中的分数)。
请建议这是否是代码的预期行为,或者我在这里遗漏了一些东西。
谢谢。
【问题讨论】:
-
文档是怎么说的?
-
Pg 24 说 doc_topic_distribution 是一个密集矩阵,其中行作为文档,列作为主题。行总和应该加到 1。所以这似乎已经标准化了。如果我理解正确,请发表评论。