Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.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
Python 如何初始化gensim LDA主题模型?_Python_Gensim_Topic Modeling - Fatal编程技术网

Python 如何初始化gensim LDA主题模型?

Python 如何初始化gensim LDA主题模型?,python,gensim,topic-modeling,Python,Gensim,Topic Modeling,有人建议,使用词簇初始化主题模型可以产生更高质量的模型或更稳健(一致)的推理。我说的是初始化优化器,而不是设置优先级。下面是一些代码来说明我想做什么: 创建一个LdaModel对象,但不要传入语料库 lda_model = LdaModel( id2word=id2word, num_topics=30, eval_every=10, pass=40, iterations=5000) 接下来,指定对象的

有人建议,使用词簇初始化主题模型可以产生更高质量的模型或更稳健(一致)的推理。我说的是初始化优化器,而不是设置优先级。下面是一些代码来说明我想做什么:

创建一个LdaModel对象,但不要传入语料库

lda_model =
LdaModel(
         id2word=id2word,
         num_topics=30,
         eval_every=10,
         pass=40,
         iterations=5000)
接下来,指定对象的一些属性,对应于将每个单词从主题中提取到我自己构造的矩阵的概率

lda_model.topics = my_topic_mat
然后拟合语料库:

lda_model.update(corpus)

谢谢你的帮助

实际上,设置优先级可能比初始化优化器更好

有两个超参数
alpha
eta
,其中
alpha
是一个 文档主题矩阵的优先级和eta的优先级 主题词矩阵。要影响主题中的单词概率,请尝试 作为附加参数传递
eta

lda_model = gensim.models.ldamodel.LdaModel(num_topics=30, id2word=id2word, eta=your_topic_mat, 
                                            eval_every=10, iterations=5000)
从:

eta可以是主题/单词上对称优先级的标量 分布,或形状num_单词的向量,可用于 在单词分布上施加(用户定义的)不对称优先级。信息技术 还支持特殊值“auto”,它学习非对称 直接从您的数据中优先于单词。eta也可以是一个矩阵 shape num_topics x num_words,可用于施加不对称 基于每个主题的单词分布的优先级(不能为 从数据中学习)


似乎要修改的正确内容可能是lda_model.state.sstat。可以在不传递语料库的情况下初始化
LdaModel
,然后调用update。它对您不起作用吗?是的,不通过语料库就可以创建对象。我想将主题初始化为某个状态。我正在尝试为此使用lda_model.state.sstats,但这样做似乎不受支持。我不想设置优先级。我想初始化优化器。@Grocery很抱歉,答案对您没有帮助。既然您问“如何初始化gensim LDA主题模型”,我认为这可能是一个有效的答案。在您最初的帖子中没有关于初始化优化器的内容。出于兴趣,你这是什么意思?Gensim使用随机变分贝叶斯优化模型。该模型通过将文档子集上计算的统计信息与当前模型状态合并来迭代更新。最终模型可能对初始模型状态敏感。默认情况下,gensim将这些stats初始化为0,但原则上可以将它们设置为其他值。