文本建模系列之二:pLSA
“庙小妖风大,水浅王八多”。还是这句话,这是业余研究生的文本建模系列之二:关于pLSA。前述就到此。
pLSA:Probabilistic Latent Senmantic Indexing.是Hoffman在1999年提出的基于概率的隐语义分析【1】。之所以说是probabilistic,是因为这个模型中还加入了一个隐变量:主题Z ,也正因为此,它被称之为主题模型。
在pLSA中,一片文档可能有多个主题,而一个主题对应着多个单词的分布,以【2】LDA数学八卦一文中的描述为例,可以比较生动的阐述在pLSA模型中,一篇文档是如何生成的。
因此,对于文档d中的一个单词w,其概率可以描述为:
对于整个语料,那么其似然函数是:
当然,其对数的似然函数如下:
其中
n(d,w)表示在文档d中,单词w出现的次数
带入第一式可以得到对数的似然函数是:
然后现在的问题是:如何求取P(w|z)和P(z|d).
这种隐变量的求法和之前的高斯混合分布的求法其实是一样的,很显然的需要EM算法来进行求导。回顾之前的EM算法,我们首先需要求取Q函数的分布的期望,然后另该期望最大化。
根据Jessen不等式:
变成求右边下界的问题,需要等号成立的话,需要:
因此我们得出:
于是E步就是:
有两个约束条件:
下面进行M步,也就是求期望最大:
使用拉格朗日乘法求:
使偏导为零可以得出结果:
这就求出了我们需要的参数。
然后就是重复迭代的过程,直至收敛。
好了,模型已经建立完毕,现在的问题是给出一篇新的文档,如何求取其文档的主题分布呢。当然最直接的想法就是,将该文档丢到语料库中重新爬一遍,然后得出结果,当然这种耗时大一般不建议采用,论文【1】在给出了几种方法,我觉的主要是fold-in方法比较重要:
将训练出来的p(w|z)固定不变,在EM算法中,只有一个文档q,通过迭代跑p(z|d),之后计算相似度
OK,这就是pLSA.
求偏导可以参考【3】
参考文献:
[1]Probabilitic Latent Semantic Indexing.Thomas Hofmann .
[2]LDA数学八卦.靳志辉
[3]基于PLSA主题模型的文本聚类
文本建模系列之二:pLSA相关推荐
- Python数学建模系列(二):规划问题之整数规划
文章目录 前言 整数规划 例题 方法一:分支定界法(使用scipy库) 方法二:使用pulp库进行求解 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出- ...
- Python数学建模系列(五):微分方程
文章目录 前言 往期文章 1.微分方程分类 2.微分方程解析解 3.微分方程数值解 3.1 场线图与数值解 3.2 洛伦兹曲线与数值解 4.传染病模型 模型一:SI-Model 模型二:SIS mod ...
- Python数学建模系列(六):蒙特卡洛算法
文章目录 前言 往期文章 1.蒙特卡洛算法 样例1 样例2 样例3 2.三门问题 3.M*M豆问题 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出- ...
- Python数学建模系列(八):图论
文章目录 前言 往期文章 1 图论模型 - Dijkstra 样例1 2 图论模型-Floyd 样例2 3 机场航线设计 0.Airlines.csv数据 1.数据导入.观察变量 2.数据清洗 3.时 ...
- Python数学建模系列(四):数值逼近
文章目录 前言 往期文章 1. 一维插值 1.1 线性插值与样条插值(B-spline) 1.2 高阶样条插值 2. 二维插值 2.1 图像模糊处理--样条插值 2.2 二维插值的三维图 3. 最小 ...
- 文本建模PLSA与LDA模型
文本建模PLSA与LDA模型 – 潘登同学的Machine Learning笔记 文章目录 文本建模PLSA与LDA模型 -- 潘登同学的Machine Learning笔记 文本生成过程 Unigr ...
- 数据可视化系列(二):艺术画笔见乾坤
前言 期待了好久的datawhale可视化教程终于出来了,这次标题狠有文艺范儿,哈哈哈 这次我主要目的是最近要写篇论文,也正好为以后建模画图打劳基础~ 大家可以多看看官方教程: 中文官方网站:http ...
- 【推荐系统论文精读系列】(二)--Factorization Machines
文章目录 一.摘要 二.介绍 三.稀疏性下预测 四.分解机(FM) A. Factorization Machine Model B. Factorization Machines as Predic ...
- 前端必知必会HTTP请求系列(二)简单一点的HTTP协议
http协议用户客户端和服务器之间的通信 http协议和TCP/IP协议族内的其他众多协议相同,用于客户端和服务器之间的通信. 那么问题来个如果两台服务器之间一台服务器向另一台服务器进行接口请求那谁是 ...
最新文章
- NOIP2010-普及组复赛模拟试题-第一题-手机
- centos 生成 ssh-key github 连接 配置
- c语言将数组元素循环右移3位,如何将一个数组的元素循环左移?
- 基于C语言的软件,基于C语言的计算机软件编程分析
- 成像反了_宋国荣, 窦致夏:快速超声 C 扫描成像中的信号频域分析法及其应用...
- 幽灵java进程引起的: FATAL ERROR in native method
- 全网首发:LINUX上编译ARM(AARCH)版本的OpenJDK8
- linux jdk下载并安装
- Excel如何用IF函数进行数据筛选
- MYSQL 数据库维护常识
- h5 字体加粗_div css布局对文字字体加粗样式设置
- rasp 系统_Java RASP技术详细介绍及应用「附RASP参考资料」
- 丰富网页摘要——HTML5中的“微数据”(MicroData)
- 故宫景点功课4:太和殿院落下
- STM32控制电机简易教程
- ui设计师面试技巧总结
- Excel文件有密码可以取消掉嘛?
- 汽车销售管理系统 c语言版 课程设计,汽车销售管理系统c语言版.docx
- oracle表空间文件压缩,收缩Oracle表空间物理文件
- SQL SERVER数据库逆向生成PDM文件
热门文章
- 最新Java技术书单烧烤出炉,欢迎清点享用
- Android Design Support Library 中控件的使用简单介绍(一)介绍 在这个 Lib 中主要包含了 8 个新的 material design 组件!最低支持 Android
- 大而全还是小而美,财税SaaS的两种选择
- 这些是优秀设计师无法拒绝的设计逆天神器,你在用吗?
- Delphi2007中的Label也可以透明显示的
- mysql官网下载慢用镜像
- JavaScript核心笔记未完
- android 缴纳押金界面,Android – 使用ReplacementSpan为SpannableStringBuilder添加保证金
- java 反射 getdeclaredfield_java反射机制中的getDeclaredField()
- 智能声控娱乐新势力,华为平板M5青春版更懂你