LDA(Latent Dirichlet Allocation)主题模型是一种用统计进行文本挖掘的方法,它是pLSA(概率潜在语义分析)主题模型基础上加上贝叶斯框架而得到的模型。目前已应用于自然语言处理、计算机视觉、机器学习、信息检索等领域,得到了广泛关注。 LDA模型网上有多个开源代码,...
分类:
其他好文 时间:
2015-01-14 15:31:05
阅读次数:
308
最近学习主题模型pLSA、LDA,就想拿来试试中文。首先就是找文本进行切词、去停用词等预处理,这里我找了开源工具IKAnalyzer2012,下载地址:https://code.google.com/p/ik-analyzer/由于太多,而且名称我也搞不清楚,不知道下载哪个。后来我下载了可是本文Ja...
分类:
其他好文 时间:
2015-01-14 00:40:27
阅读次数:
3869
了解LDA需要明白如下数学原理:
一个函数:gamma函数
四个分布:二项分布、多项分布、beta分布、Dirichlet分布
一个概念和一个理念:共轭先验和贝叶斯框架
两个模型:pLSA、LDA(文档-主题,主题-词语)
一个采样:Gibbs采样...
分类:
其他好文 时间:
2015-01-13 10:32:11
阅读次数:
185
基于概率统计的PLSA模型,并且用EM算法学习模型参数。PLSA的概率图模型如下
其中D代表文档,Z代表隐含类别或者主题,W为观察到的单词,表示单词出现在文档的概率,表示文档中出现主题下的单词的概率,给定主题出现单词的概率。并且每个主题在所有词项上服从Multinomial
分布,每个文档在所有主题上服从Multinomial 分布。整个文档的生成过程是这样的:
(1) 以的概率选中文...
分类:
其他好文 时间:
2015-01-09 22:26:13
阅读次数:
347
1、TopicModel - LSA(隐性语义分析)的早期方法SVD
from:
ref:...
分类:
编程语言 时间:
2015-01-09 20:57:19
阅读次数:
1745
对于上次说的LSA模型,它能解决多个单词一个意义,但是不能解决多个意义一个单词,就是多义词的问题,而PLSA模型能较好的解决这个问题,首先说下,这个模型的假设:
1 假设生成一个单词的过程是这样的:首先选择一篇文章di,然后再次基础上选择一个潜变量zk,最后在此基础上再在选择一个单词。如果p(di,wj)表示第i个文本中第j个单词的概率,根据假设有:
2 另外一个非常重要的假设是,单词wj...
分类:
其他好文 时间:
2014-12-13 21:55:00
阅读次数:
308
上一次刚写了LSA模型,本来这次想写PLSA模型,但是由于PLSA模型是需要用到EM算法的,所以这里我想先解释下EM算法,...
分类:
编程语言 时间:
2014-12-13 12:19:51
阅读次数:
195
PLSA是前面LSA的兄弟版,相比于LSA而言,PLSA定义了概率模型,而且每个变量以及相应的概率分布和条件概率分布都有明确的物理解释了。这篇博文我们分三部分来说PLSA:基本思想,EM算法推导,以及优缺点分析。...
分类:
其他好文 时间:
2014-12-04 12:21:21
阅读次数:
418
Latent Semantic Analysis 模型,隐性语义分析,也就是我们常说的LSA模型。后面还有他的兄弟PLSA和LDA模型,这个我们后面再说。这几个都是NLP中比较经典的模型!学习这个模型,主要总结到了三个方面:LSA模型可以应用在哪儿?LSA的理论部分,以及LSA的优缺点分析。...
分类:
其他好文 时间:
2014-12-03 15:52:01
阅读次数:
459
超赞的线程安全的初始化
static plsa::PLSAModel& model()
{
static plsa::PLSAModel _model = ([&]() { plsa::PLSAModel _model;
string modelPath = "./data/plsa.model/p...
分类:
编程语言 时间:
2014-10-10 22:18:44
阅读次数:
162