LDA理解
LDA只是一个求解思路。
1.理解LDA首先要理解EM算法,EM不能叫做一个算法,只是一个思想:它要求解的其实是一个极大似然估计,就是我用已知量去求解导致这个已知量出现的最大概率,而在这里又恰恰有点偏,这个已知量是我们开始给定的这个初值,我们要去用这个已知量去求解最大,然后再用这个最大值再带入到我们这个模型中,再去求解,这样反复迭代的过程叫做EM。
例子:
我们要求这个式子的极大似然,而是我们预先给定的值,这里面有一个隐变量z,而x是我们给定的样本,隐变量z就相当于我们在求导链式法则的时候,不能直接对某一值求导数,我们要利用链式法则来求,而转换成链式法则的过程中出现的参数,就是隐变量;隐变量就是我们是知道他是多少,但不知道他的具体的值,它每次经过迭代以后的值是不一样的。
上面这个式子,可以转换为对下面这个式子求极大似然:
主要是看后面那个P值,我们对这个P值求最大,而每次求出一个z值,而求出z值以后,可以求出后面那个式子的最大值,然后又可以求出一个,再把这个
带入到式子里面去算,又可以算出一个最大值,直到两次算出来的值差不多,我们就认为收敛了,这个时候就可以得到一个
值,就是我们要求的值。对应到LDA里面
就是我们的
或者是
值。
EM可以看成是E和M,E是期望,M是迭代的次数。
2.共轭分布(我的理解是一个分布会导致其他的分布变化;或者可以说是一个分布的取值,对另外一个分布的取值有影响):已知主题与文章的分布:这个主题下,观测到每个文章的概率是多少;这个是我们的先验,我们要求的就是文章与主题的分布:就是在这个文章下,观测到每个主题的概率是多少,最终求出一个值,来表示这个分布;主题和文章的分布,文章和主题的分布可以看成是一样的,因为下面这个式子中,分布变大,最后的值也变大,这就叫共轭分布,看得时候看得抽象一点,就看成一个值,把分布看成一个值。
例子:

右边等式下面是一个常数,我们可以不看,在神经网络里面,B就相当于我们的样本数据,而A就相当于权重,我们开始会给定一个初始的A,我们就知道了在A下B的分布,然后通过一系列的算法去调整B下A的分布,可以求出一个等式最左边的值,然后下次将
当做
,就是反复的迭代,最终得到一个P(A)。
贝叶斯:一个文档下主题是一个分布,而主题又是一个分布:就是说一个文档下的主题可能是这样的,有A1,A2,A3个主题,有可能是(0.1A1,0.1A2,0.8A3),(0.1A1,0.2A2,0.7A3)等等。主题和词也一样的原理。
LDA理解的更多相关文章
- 自然语言处理基础与实战(8)- 主题模型LDA理解与应用
本文主要用于理解主题模型LDA(Latent Dirichlet Allocation)其背后的数学原理及其推导过程.本菇力求用简单的推理来论证LDA背后复杂的数学知识,苦于自身数学基础不够,因此文中 ...
- LDa 通俗理解
LDA理解以及源码分析(一) http://blog.csdn.net/pirage/article/details/50239125 LDA在主题建模中的应用,需要知道以下几点: 文档集中的word ...
- 理解 LDA 主题模型
前言 gamma函数 0 整体把握LDA 1 gamma函数 beta分布 1 beta分布 2 Beta-Binomial 共轭 3 共轭先验分布 4 从beta分布推广到Dirichlet 分布 ...
- 通俗理解LDA主题模型
通俗理解LDA主题模型 0 前言 印象中,最開始听说"LDA"这个名词,是缘于rickjin在2013年3月写的一个LDA科普系列,叫LDA数学八卦,我当时一直想看来着,记得还打印 ...
- 通俗理解LDA主题模型(boss)
0 前言 看完前面几篇简单的文章后,思路还是不清晰了,但是稍微理解了LDA,下面@Hcy开始详细进入boss篇.其中文章可以分为下述5个步骤: 一个函数:gamma函数 四个分布:二项分布.多项分布. ...
- 我是这样一步步理解--主题模型(Topic Model)、LDA
1. LDA模型是什么 LDA可以分为以下5个步骤: 一个函数:gamma函数. 四个分布:二项分布.多项分布.beta分布.Dirichlet分布. 一个概念和一个理念:共轭先验和贝叶斯框架. 两个 ...
- 主题模型(LDA)(一)--通俗理解与简单应用
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_39422642/article/de ...
- LDA主题模型学习笔记5:C源代码理解
1.说明 本文对LDA原始论文的作者所提供的C代码中LDA的主要逻辑部分做凝视,原代码可在这里下载到:https://github.com/Blei-Lab/lda-c 这份代码实现论文<Lat ...
- LDA概率图模型之贝叶斯理解
贝叶斯.概率分布与机器学习 转自:http://www.cnblogs.com/LeftNotEasy/archive/2010/09/27/1837163.html 本文由LeftNotEasy原 ...
随机推荐
- VC++ 定制应用程序的外观
一.在窗口创建之前改变窗口的大小和标题 要改变应用程序窗口的大小可以通过在PreCreatWindowl函数中修改CREATSTRUCT结构体变量成员的值 BOOL CMainFrame::PreCr ...
- linux信号量(转载)
本文转载自http://blog.csdn.net/qinxiongxu/article/details/7830537 信号量一.什么是信号量信号量的使用主要是用来保护共享资源,使得资源在一个时刻只 ...
- CodeForces - 589J —(DFS)
Masha has recently bought a cleaner robot, it can clean a floor without anybody's assistance. Schema ...
- hdu 5032 不易发觉的树状数组
http://acm.hdu.edu.cn/showproblem.php?pid=5032 给定一个1000x1000的点阵,m组询问,每次询问一个由(0,0).(x,0)点一以及从原点出发的方向向 ...
- jquery ui widgets-datepicker
jquery ui的用法就不在此讲述,直接进入jquery ui的窗体小部件(widgets)——datepicker. 相信很多像我这样子的菜鸟少年,如果同一个页面上有两个input文本输入框是用来 ...
- Delphi for iOS开发指南(5):在iOS应用程序中使用Calendar组件来选择日期
http://blog.csdn.net/delphiteacher/article/details/8923519 在FireMonkey iOS应用程序中的Calendar FireMonkey使 ...
- jQuery中的AJAX的使用
1.运用ajax()方法,比其它如load().get().post()全局性函数它更多地关注实现过程中的细节:首先要了解其参数列表: url: 要求为String类型的参数,(默认为当前页地址)发送 ...
- Day 48 HTML 语言Day1
HTML文档结构 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset=&qu ...
- 检查网卡是否支持 SR-IOV
[root@node1 ~]# lspci -nn | grep Eth 08:00.0 Ethernet controller [0200]: Intel Corporation I350 Giga ...
- go get golang.org/x/net 安装失败的解决方法!
GO语言在github.com上建立了自己的项目,对应的包如果不能下载,那么可以到这里去下载,比如:"go get golang.org/x/net"不能下载这个包,那么我们可以访 ...