lda原理及python代码

1原理如下

http://blog.csdn.net/v_july_v/article/details/41209515

2代码如下

这里用的是python自带的一个实现

参考文献

http://pythonhosted.org/lda/api.html#module-lda.lda

如果想要获取文档-主题矩阵,代码如下:

 

import numpy

X = numpy.array([[1,1],[2, 1], [3,1], [4,1], [5,8], [6,1]])#对于6篇文档

import lda

model = lda.LDA(n_topics=2,random_state=0,n_iter=100)#还可设置alpha 和 eta

model.fit(X)

model.doc_topic_#二维数组

moel.topic_word_

model.components_

model.loglikelihood()

 

3对比plsa

在plsa中,认为主题分布(各个主题在文档中出现的概率分布)和词分布(各个词语在某个主题下出现的概率分布)是唯一确定的,lda认为这两个分布是随机变量,有很多种可能。

但一篇文档总得对应一个主题分布和一个词分布吧,怎么办呢?LDA为它们弄了两个Dirichlet先验参数,这个Dirichlet先验为某篇文档随机抽取出某个主题分布和词分布。

 

你可能感兴趣的:(数据挖掘,lda,python,主题生成)