LDA 原理 中|学习笔记

简介: 快速学习 LDA 原理 中

开发者学堂课程【高校精品课-华东师范大学 - Python 数据科学基础与实践LDA 原理 中】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1067/detail/15527


LDA 原理 中

 

内容介绍

一、对称 Dirichlet 分布的概率密度函数

二、稀疏 Dirichlet 先验的采样

三、LDA=pLSA + Dirichlet 先验

 

一、对称 Dirichlet 分布的概率密度函数

image.gif然后因为LD里用到刚才看到的是非对称的对视,这个是对称,但是后验概率已经不对称。LD里头现在都是对称的对视分布。对称的对视是什么意思?就是所有的α1,α2,αk都是相等的结果,就可以讨论是是否大于1或者小于1。

1,α>1

所有的α都大于一时,分布的情况是三角形是所有合法的Xi。实际上是一个三维空间的。这里画了两枚,因为另外一枚必须满足规划的约束。可以很容易从这两个里算出来。

Z轴代表概率密度,对应的概率最高,然后接近X2的概率几乎为零。α>1时,是这样一个尖顶帽子的形状,也就是说在中间位置的概率最大,然后旁边儿就衰减的很快。和高斯分布有点儿像。

2,α=1

跟刚才看过骰子的例子,是平均分布的。每个参数的可能性都是相等的。

3,α<1

三个角概率很大,然后b两边的概率也比较大一些,然后中间的概率几乎为零。然后以靠近X2的尖角为例,X2的尖角几乎等于一。X1和X3基本上等于零了。很接近零,因为三个相加必须等于一。所以这就是想要的稀疏的效果就是。会给一些稀疏的向量比如0.9

 

二、稀疏 Dirichlet 先验的采样

image.gif将0.9剩下几乎为零。然后这个0.6,还有一个0.17,这个几个比较大,剩下大部分都为零。从系数的定义域抽样出来基本上都是很离散的参数向量。

抽样实际上相当于在函数里头随机找一点,越高拿到这一点的概率越大,意思就是有很大的概率是找到这个角上。中间找中间的概率就很小。然后拿到这个角就是一个系数向量,相对应的一个系数的离散分布

作为先验比较鼓励,会给那个系数的离散分布一个比较大的概率。如果这个离散丰富不太清楚,先验概率会比较小,知道了后验概率∝先验概率*似然函数,后验概率可能会比较小

阿尔法是向量,因为考虑的是对称对视,是所有的α=1,, α1,α2,αk都是相等的k都是相等的,都等于α,所以可以考虑是否大于一或者小于一,所有维的抄参的α都是0.2。是个鼓励系数分布的一个对视先验。

 

三、LDA=pLSA + Dirichlet 先验

LDA在{θd},T上加了不同的Dirichlet先验,为了鼓励系数,αβ应该选择比较小。

image.gif比如0.1或者0.01,一个选择的基本原则就是topic的主题数目增多,α就选小一些。如果词多的话,β就选小一些,。近似认为topic数目K乘以α。但实际上可能不是这样的。等近似有这样一种关系,可以乘α,是每个文档里头比较显著的topic数目。比如直觉上觉得一个文档里头大概有七八个topic已经够多了。那剩下topic的基本上都是接近零,那就选k*α约小于10,K抽出的大,α就小,不然抽取的topic都比较大,不太合理。词的道理是一样的,和pLSA类似可以把文档及其参数的联合概率写出来

image.gif首先给参数的先验概率,p(θd|α)是{θd}的先验概率,在参数是α的对视里抽出来的。然后每个{tk}都是从参数是β的对视里抽出来的,然后要把K个连乘,p(wi,zi|θd,T)和PRC是一样的。就是每个词的概率。然后做推导的时候一样的要用Jensen不等式,因为这个更复杂。刚才的差别在于说,刚才是QZ。分布是关于z的,现在是q(z,θ),因为θ也需要后验分布。所以说q(z,θ)联合的后验分布用q(z,θ)逼近先求log再求和,因为θ是连续的参数,这实际上应该是个积分,为了简化这个符号也写成这个这个求和的形式。

相关文章
|
2月前
|
存储 自然语言处理 算法
python实现的LDA算法
python实现的LDA算法
38 0
|
2月前
|
自然语言处理 数据可视化 编译器
基于Tomotopy构建LDA主题模型(附案例实战)
基于Tomotopy构建LDA主题模型(附案例实战)
81 0
|
8月前
|
数据可视化 Linux
PCA分析基本知识和数学原理
PCA分析基本知识和数学原理
|
机器学习/深度学习 存储 算法
基于Django 框架搭建算法学习系统,包含KNN、ID3、C4.5、SVM、朴素贝叶斯、BP神经网络 毕业设计附完整代码
基于Django 框架搭建算法学习系统,包含KNN、ID3、C4.5、SVM、朴素贝叶斯、BP神经网络 毕业设计附完整代码
158 0
基于Django 框架搭建算法学习系统,包含KNN、ID3、C4.5、SVM、朴素贝叶斯、BP神经网络 毕业设计附完整代码
|
机器学习/深度学习 人工智能 算法
【机器学习】线性分类——线性判别分析LDA(理论+图解+公式推导)
【机器学习】线性分类——线性判别分析LDA(理论+图解+公式推导)
148 0
【机器学习】线性分类——线性判别分析LDA(理论+图解+公式推导)
|
数据采集 自然语言处理 数据可视化
基于sklearn实现LDA主题模型(附实战案例)
基于sklearn实现LDA主题模型(附实战案例)
1018 0
基于sklearn实现LDA主题模型(附实战案例)
|
机器学习/深度学习 算法 数据建模
【阿旭机器学习实战】【22】特征降维实战---主成分分析(PCA)与线性判别分析算法(LDA)
【阿旭机器学习实战】【22】特征降维实战---主成分分析(PCA)与线性判别分析算法(LDA)
|
开发者 Python
LDA 原理 下|学习笔记
快速学习 LDA 原理 下
43 0
LDA 原理 下|学习笔记
|
开发者 Python
LDA 原理 上|学习笔记
快速学习LDA 原理 上
68 0
|
机器学习/深度学习 前端开发 rax