概率潜在语义分析(Probabilistic Latent Semantic Analysis,PLSA)

文章目录

    • 1. 概率潜在语义分析模型
      • 1.1 基本想法
      • 1.2 生成模型
      • 1.3 共现模型
      • 1.4 模型性质
    • 2. 概率潜在语义分析的算法

概率潜在语义分析(probabilistic latent semantic analysis,PLSA),也称概率潜在语义索引(probabilistic latent semantic indexing,PLSI)

  • 利用概率生成模型对文本集合进行话题分析无监督学习方法
  • 最大特点:用隐变量表示话题
  • 整个模型表示 文本生成话题话题生成单词,从而得到单词-文本共现数据的过程
  • 假设每个文本由一个话题分布决定,每个话题由一个单词分布决定

1. 概率潜在语义分析模型

概率潜在语义分析 模型有生成模型,以及等价的共现模型

1.1 基本想法

  • 给定文本集合,每个文本讨论若干个话题,每个话题由若干个单词表示
  • 对文本集合进行概率潜在语义分析,就能够发现每个文本的话题,以及每个话题的单词
  • 话题是不能从数据中直接观察到的,是潜在

1.2 生成模型

在这里插入图片描述
文本-单词共现数据 TTT 的生成概率为 P(T)=∏(w,d)P(w,d)n(w,d)P(T) = \prod\limits_{(w,d)} P(w,d)^{n(w,d)}P(T)=(w,d)P(w,d)n(w,d)
P(w,d)=P(d)P(w∣d)=P(d)∑zP(w,z∣d)=P(d)∑zP(z∣d)P(w∣z)P(w,d) = P(d)P(w|d) = P(d)\sum\limits_z P(w,z|d) = P(d)\sum\limits_z P(z|d)P(w|z)P(w,d)=P(d)P(wd)=P(d)zP(w,zd)=P(d)zP(zd)P(wz)

1.3 共现模型

在这里插入图片描述
文本-单词共现数据 TTT 的生成概率为 P(T)=∏(w,d)P(w,d)n(w,d)P(T) = \prod\limits_{(w,d)} P(w,d)^{n(w,d)}P(T)=(w,d)P(w,d)n(w,d)
P(w,d)=∑z∈ZP(z)P(w∣z)P(d∣z)P(w,d) = \sum\limits_{z\in Z} P(z)P(w|z)P(d|z)P(w,d)=zZP(z)P(wz)P(dz)
文本数据基于如下的概率模型产生(共现模型):

  • 首先有话题 z 的概率分布
  • 然后有话题 z 给定条件下 文本 的条件概率分布
  • 以及话题 z 给定条件下 单词 的条件概率分布

1.4 模型性质

在这里插入图片描述
概率潜在语义分析通过话题对数据进行了更简洁地表示,减少了学习过程中过拟合的可能性

2. 概率潜在语义分析的算法

概率潜在语义分析模型是含有隐变量的模型,其学习通常使用 EM算法。

模型参数估计的EM算法:

输入:单词集合 W={w1,w2,...,wM}W=\{w_1,w_2,...,w_M\}W={w1,w2,...,wM},文本集合 D={d1,d2,...,dN}D=\{d_1,d_2,...,d_N\}D={d1,d2,...,dN},话题集合 Z={z1,z2,...,zK}Z=\{z_1,z_2,...,z_K\}Z={z1,z2,...,zK},共现数据 {n(wi,dj)},i=1,2,...,M;j=1,2,...,N\{n(w_i,d_j)\},i=1,2,...,M; j=1,2,...,N{n(wi,dj)},i=1,2,...,M;j=1,2,...,N

输出P(wi∣zk)P(w_i|z_k)P(wizk)P(zk∣dj)P(z_k|d_j)P(zkdj)

  • 设置参数 P(wi∣zk)P(w_i|z_k)P(wizk)P(zk∣dj)P(z_k|d_j)P(zkdj) 的初始值
  • 迭代执行以下 E 步, M 步,直到收敛为止
    E 步:
    P(zk∣wi,dj)=P(wi∣zk)P(zk∣dj)∑k=1KP(wi∣zk)P(zk∣dj)P(z_k|w_i,d_j) = \frac{P(w_i|z_k)P(z_k|d_j)}{\sum\limits_{k=1}^K P(w_i|z_k)P(z_k|d_j)}P(zkwi,dj)=k=1KP(wizk)P(zkdj)P(wizk)P(zkdj)
    M 步:
    P(wi∣zk)=∑j=1Nn(wi,dj)P(zk∣wi,dj)∑m=1M∑j=1Nn(wm,dj)P(zk∣wm,dj)P(w_i|z_k) = \frac{\sum\limits_{j=1}^N n(w_i,d_j)P(z_k|w_i,d_j)}{\sum\limits_{m=1}^M \sum\limits_{j=1}^N n(w_m,d_j)P(z_k|w_m,d_j)} P(wizk)=m=1Mj=1Nn(wm,dj)P(zkwm,dj)j=1Nn(wi,dj)P(zkwi,dj)
    P(zk∣dj)=∑i=1Mn(wi,dj)P(zk∣wi,dj)n(dj)P(z_k|d_j) = \frac{\sum\limits_{i=1}^M n(w_i,d_j)P(z_k|w_i,d_j)}{n(d_j)}P(zkdj)=n(dj)i=1Mn(wi,dj)P(zkwi,dj)

给定文本集合,通过概率潜在语义分析,可以得到 各个文本生成话题的条件概率分布,以及各个话题生成单词的条件概率分布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/475996.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站变成灰色调

为方便站点哀悼,特提供css滤镜代码,以表哀悼。以下为全站CSS代码。html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale1); } 使用方法:这段代码可以变网页为黑白,将代码加到CSS最顶端就可以实现素装。建议全国…

马尔可夫链蒙特卡罗法(Markov Chain Monte Carlo,MCMC)

文章目录1. 蒙特卡罗法2. 马尔可夫链3. 马尔可夫链蒙特卡罗法4. Metropolis-Hastings 算法5. 吉布斯抽样蒙特卡罗法(Monte Carlo method),也称为统计模拟方法(statistical simulation method),是通过从概率…

NHibernate 异常及解决办法(长期添加中)

Mapping 错误&#xff1a; 1&#xff09; Could not determine type for:Namespance.Class,AssemblyName, for columns: NHibernate.Mapping.Column(ColumnName) 通常是Mapping中的 type attribute设定错误&#xff0c;在Assembly找不到。如 <property name"PropertyNa…

mysql scope runtime_maven scope provided和runtime的例子

maven常用的scope有compile,provided,runtime,test。complie是默认值&#xff0c;表示在build,test,runtime阶段的classpath下都有依赖关系。test表示只在test阶段有依赖关系&#xff0c;例如junitprovided表示在build,test阶段都有依赖&#xff0c;在runtime时并不输出依赖关系…

[网站seo优化] 史上最全增加外链的方法!

目前在国内网站在百度的权重尤为重要 百度的权重主要取决于 1&#xff0c;收录量2&#xff0c;外链数与质量3&#xff0c;建站时间 可见外链的重要性现在就分享一篇关于外链的文章&#xff0c;希望对大家有用。 一、网站内容1. 写一篇权威的文章(毫无疑问是获得链接的最好方法…

python自动化安装软件_python自动化安装源码软件包

#!/usr/bin/env python# -*- coding:utf:8 -*-#create by 、矿泉水 2015/7/30import sys,commandsif len(sys.argv) 2:SOFTWARE sys.argv[1]commands.getstatusoutput(‘tar zxvf %s &> install.log 2>&1‘%SOFTWARE)SOFTWARE SOFTWARE.split(‘.‘)SOFTWARE.…

蒙特卡罗法近似求解圆周率π

文章目录1. 原理2. 模拟代码1. 原理 给出 x∈[0,1),y∈[0,1)x \in [0,1),y\in[0,1)x∈[0,1),y∈[0,1) 的均匀分布随机点&#xff0c;模拟 ttt 次&#xff0c;落在以 (0,0)(0,0)(0,0) 为圆心&#xff0c;半径 r1r1r1 的圆以内的次数为 ccc当模拟次数足够大时&#xff0c;可以看成…

算法导论2.3-7

Q: 请给出一个运行时间为θ(nlgn)的算法&#xff0c;使之能在一个由n个整数构成的集合S和另一个整数X时&#xff0c;判断出S中是否存在有两个其和等于X的元素。A: 先对S[1 TO N]进行合并排序--------------------------------θ(nlgn) FOR a <- [1 TO N-1]-----------------…

LeetCode 1318. 或运算的最小翻转次数(位运算)

1. 题目 给你三个正整数 a、b 和 c。 你可以对 a 和 b 的二进制表示进行位翻转操作&#xff0c;返回能够使按位或运算 a OR b c 成立的最小翻转次数。 「位翻转操作」是指将一个数的二进制表示任何单个位上的 1 变成 0 或者 0 变成 1 。 示例 1&#xff1a; 输入&#x…

redis和mysql数据不一致_高并发下为什么 redis 和数据库不一致?怎么解决?

现在的web架构一般都用redis作为缓存层来减轻数据库的压力&#xff0c;数据在此架构下的读取问题&#xff0c;一般都是先判断redis缓存是否有数据&#xff0c;如果有&#xff0c;直接返回&#xff0c;否则读取数据库的数据&#xff0c;写入redis&#xff0c;返回数据&#xff0…

LeetCode 91. 解码方法(动态规划)

1. 题目 一条包含字母 A-Z 的消息通过以下方式进行了编码&#xff1a; A -> 1 B -> 2 ... Z -> 26给定一个只包含数字的非空字符串&#xff0c;请计算解码方法的总数。 示例 1: 输入: "12" 输出: 2 解释: 它可以解码为 "AB"&#xff08;1 2&am…

vim粘贴板和系统粘贴板的共享(linux)

不的不说,当你习惯了vim给你的编程带来乐趣后&#xff0c;你将会越来越喜欢它&#xff01; 在以前刚开始用vim的时候&#xff0c;总觉的在vim里面&#xff0c;鼠标没有起到像其他编辑器那样的功能&#xff0c;不能通过鼠标控制vim下光标移动&#xff0c;而当时又不熟悉vim的移动…

java的vector_java中的Vector类

public class VectorVector 类实现了可动态扩充的对象数组。类似数组&#xff0c;它包含的元素可通过数组下标来访问。但是&#xff0c;在 Vector 创建之后。Vector 可根据增加和删除元素的需要来扩大或缩小。每个向量可通过维护 capacity 和 capacityIncrement 来优化存储空间…

LeetCode 1238. 循环码排列(格雷编码+旋转数组)

1. 题目 给你两个整数 n 和 start。你的任务是返回任意 (0,1,2,,...,2^n-1) 的排列 p&#xff0c;并且满足&#xff1a; p[0] start p[i] 和 p[i1] 的二进制表示形式只有一位不同 p[0] 和 p[2^n -1] 的二进制表示形式也只有一位不同示例 1&#xff1a; 输入&#xff1a;n 2…

java 0 1背包_浅谈java实现背包算法(0-1背包问题)

0-1背包的问题背包问题(Knapsack problem)是一种组合优化的NP完全问题。问题可以描述为:给定一组物品&#xff0c;每种物品都有自己的重量和价格&#xff0c;在限定的总重量内&#xff0c;我们如何选择&#xff0c;才能使得物品的总价格最高。问题的名称来源于如何选择最合适的…

关于Python的应用发布技术

收集如何 将Py应用打包发布的各种技巧: 1.1. 工具 {{{k <yanbo.yuangmail.com> reply-to python-cngooglegroups.com, to python-cngooglegroups.com, date Tue, Apr 1, 2008 at 2:58 PM subject [CPyUG:45605]}}}[http://groups.google.com/group/python-cn/t/24…

LeetCode 第 25 场双周赛(718/1832,前39.2%)

文章目录1. 比赛结果2. 题目1. LeetCode 5384. 拥有最多糖果的孩子 easy2. LeetCode 5385. 改变一个整数能得到的最大差值 medium3. LeetCode 5386. 检查一个字符串是否可以打破另一个字符串 medium4. LeetCode 5387. 每个人戴不同帽子的方案数 hard1. 比赛结果 做出来了 1、2…

target java_java元注解 @Target注解用法

Target&#xff1a;Target说明了Annotation所修饰的对象范围&#xff1a;Annotation可被用于 packages、types(类、接口、枚举、Annotation类型)、类型成员(方法、构造方法、成员变量、枚举值)、方法参数和本地变量(如循环变量、catch参数)。在Annotation类型的声明中使用了tar…

云南干旱 谁人受损 心有戚戚 愤怒哀伤

西南大旱&#xff0c;云南旅游无影响 http://www.52uyn.com/xinwen/detail.php?tid9615云南旅游业未受旱情影响http://sogup.com/news/jiaodian/12235.html附其中内容&#xff1a; 为报道旱灾&#xff0c;报社两位同事风尘仆仆从北京、深圳赶来。在从机场开往市区的路上&…

LeetCode 第 187 场周赛(1336/3107,前43.0%)

文章目录1. 比赛结果2. 题目1. LeetCode 5400. 旅行终点站 easy2. LeetCode 5401. 是否所有 1 都至少相隔 k 个元素 medium3. LeetCode 5402. 绝对差不超过限制的最长连续子数组 medium4. LeetCode 5403. 有序矩阵中的第 k 个最小数组和 hard1. 比赛结果 15分钟做出来了 1、2 …