Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
主题建模:如何使用拟合的LDA模型为R中的新数据集预测新主题?_R_Lda_Topic Modeling - Fatal编程技术网

主题建模:如何使用拟合的LDA模型为R中的新数据集预测新主题?

主题建模:如何使用拟合的LDA模型为R中的新数据集预测新主题?,r,lda,topic-modeling,R,Lda,Topic Modeling,我在R中使用“lda”包进行主题建模。我想使用新数据集的拟合潜在Dirichlet分配(LDA)模型预测新主题(文档中相关单词的集合)。在这个过程中,我遇到了predictive.distribution()函数。但该函数将文档_和作为输入参数,这是拟合新模型后结果的输出。我需要帮助了解现有模型在新数据集上的使用,并预测主题。 以下是Johnathan Chang为该软件包编写的文档中的示例代码: 下面是它的代码: #Fit a model data(cora.documents) data(c

我在R中使用“lda”包进行主题建模。我想使用新数据集的拟合潜在Dirichlet分配(LDA)模型预测新主题(文档中相关单词的集合)。在这个过程中,我遇到了predictive.distribution()函数。但该函数将文档_和作为输入参数,这是拟合新模型后结果的输出。我需要帮助了解现有模型在新数据集上的使用,并预测主题。 以下是Johnathan Chang为该软件包编写的文档中的示例代码: 下面是它的代码:

#Fit a model
data(cora.documents)
data(cora.vocab)

K <- 10 ## Num clusters

result <- lda.collapsed.gibbs.sampler(cora.documents,K, cora.vocab,25, 0.1, 0.1) 

# Predict new words for the first two documents
predictions <-  predictive.distribution(result$document_sums[,1:2], result$topics, 0.1, 0.1)

# Use top.topic.words to show the top 5 predictions in each document.
top.topic.words(t(predictions), 5)
#适合模型
数据(cora.文件)
数据(cora.vocab)

K我不知道如何在R中实现这一点,但请看一下Wallach等人2009年发表的题为“主题模型的评估方法”的出版物。看看第4节,它提到了三种计算P(z | w)的方法,一种基于重要性抽样,另两种称为“Chib风格估计量”和“从左到右估计量”


Mallet实现了从左到右的估计器方法

您可能希望使用此策略进行搜索:[r]“可复制示例”。(我不是投反对票的人,但我怀疑,投反对票的人觉得这个问题太模糊了,无法接受大部分以编码为终点的答案。)@DWin谢谢你的建议,但我的怀疑不是关于是否有可复制的代码,而是我想知道我是否可以使用预测分布()函数在我尚未拟合模型的新数据集上运行,如果不是这样,则有一种方法可以在新数据集上使用现有模型。请原谅我在我的原始帖子中缺乏细节,因为我对编程基本上是新手,并在论坛上发表了我的疑问。问题不是“再现性”,而是具体性。您的问题没有代码,也没有示例数据。我怀疑“主题”一词是否是LDA特有的。您需要提供与特定性相匹配的数据集的背景和构造。这是一个编码站点。我将添加一个否决票,如果我回来时有数据和代码,我将删除该否决票。@DWin我希望这能清楚地说明我的问题。这个问题已经在这里提出并回答了: