LDA_CodingPark编程公园
LDA
详述LDA原理
a. 从迪利克雷分布α中取样生成文档i的主题分布
ⅰ. 多项式分布的共轭分布是迪利克雷分布
ⅱ. 二项式分布的共轭分布是Beta分布
b. 从主题的多项式分布中取样生成文档i的第j个词的主题
c. 从迪利克雷分布β中取样生成主题对应的词语分布
d. 从词语的多项式分布中采样最终生成词语
e. 文档里某个单词出现的概率可以用公式表示
f. 采用EM方法修正词-主题矩阵+主题-文档矩阵直至收敛LDA中一篇文章是怎样生成的
a. 生成三要素:词语、主题、文章。词语和主题、主题和文章都是多对多的关系。
b. 一篇文章是由词语的序列组成,首先以一定概率选择一个主题,其次以一定概率在这个主题中选择一个词。以一定的概率选主题是服从多项式分布的,以一定的概率选从主题中选词也是服从多项式分布的,而多项分布的参数服从dirichelt分布,也就是说由贝叶斯估计得到的后验分布仍然是Dirichlet分布LDA主题模型如何求参数
a. Gibbs采样
b. 变分推断EM算法Gibbs与变分推断EM算法的区别
a. EM算法是根据似然函数的下界函数不断取最大的过程
b. gibbs是使用马尔可夫模型构造一系列收敛到符合样本的概率上
c. Gibbs采样是MCMC方法。
d. EM算法是求最大似然估计的方法
e. 优缺点:
ⅰ. gibbs比较准确,但收敛性比较难判断
ⅱ. 变分EM是近似解,并行化比较好,收敛性比较好判断Gibbs采样训练流程
a. 选择合适的主题数K,选择合适的参数α,β
b. 对于语料库中每一篇文档的每一个词,随机赋予一个主题编号z
c. (因为多项式分布的共轭分布是狄利克雷分布),可以根据狄利克雷先验分布,结合每个词实际的主题满足的多项式分布得到后验狄利克雷分布分布,从而积分得到文档的主题条件分布,词同理,从而得到每篇文章的主题和词的联合概率分布(已知当前的词以及主题下词的的分布等先验分布的前提下,计算后验主题分布 )
d. 有了联合概率分布,去除词wi后,就可以得到其他词主题条件概率分布
e. 根据条件概率分布,使用基于坐标轮换的gibbs采样,得到词对应的平稳矩阵及词对应的主题
f. 统计语料库中各个文档各个词的主题,得到文档主题分布;然后统计语料库中各个主题词的分布,得到主题与词的分布什么是采样
Gibbs采样是怎么做的
a. 基于MCMC思想,面对多维特征时,固定其他维度不变,优化一维特征,满足细致平稳性,通过坐标变换以加快样本集成速度MCMC中什么是蒙特卡洛方法
a. 通常用于求概率密度的积分
b. 用已知的分布去评估未知的分布
c. reject-acpect过程(拒绝接受)马尔可夫链的收敛性质
a. 非周期性,不能出现死循环
b. 连通性,不能出现断点MCMC中什么叫做马尔科夫链采样过程
a. 先得到转移矩阵P在N次迭代下收敛到不变的平稳矩阵
b. 在根据平稳矩阵的条件概率p(x/xt)得到平稳分布的样本集xn+1,xn+2, …给定平稳矩阵如何得到概率分布样本集
a. MCMC采样
ⅰ. 给定转移矩阵Q,
ⅱ. 根据Q的条件概率得到xt+1
ⅲ. u~uniform(从均匀分布采样u)
ⅳ. 如果超过接受率α,那么xt+1就接受,否则原地不动xt+1 = xt
ⅴ. xt, xt+1, …就是分布样本集
b. M-H采样
ⅰ. α过小的话,在mcmc采样中容易原地踏步,因此可以左右同乘缩放,扩大接受率,加快收敛速度
c. gibbs采样
ⅰ. 同上,差别在固定n-1个特征在某一个特征采样及坐标轮换采样什么是坐标转化采样
a. 平面上的任意两点满足细致平稳条件
b. 从条件概率分布P(x2|x(t)1)中采样得到样本x(t+1)2
c. 从条件概率分布P(x1|x(t+1)2)中采样得到样本x(t+1)1
d. 固定n-1维,求当前维,类似固定n-1维特征求一维特征极值的思路变分推断EM算法
a. LDA中的隐藏变量主题分布,词分布,实际主题和超参数α、β,需要E步求出隐藏变量基于概率的期望,在M步最大化这个期望,从而得到α,β。
b. 变分推断在于隐藏变量没法直接求,用三个独立分布的变分分布去拟合三个隐藏变量的条件分布
ⅰ. 实际是用kL散度衡量分布之间的相似度,最小化kL散度及相对熵
c. EM过程
ⅰ. E:最小化相对熵,偏导为0得到变分参数
ⅱ. M:固定变分参数,梯度下降法,得到α、β的值LDA共轭分布解释
a. 以多项式-迪利克雷分布为例,我们多项式分布θ先验分布π(θ),及加了多项式分布的样本信息x后的后验分布π(θ/x)都满足狄利克雷分布,则称狄利克雷分布为LDA场景下多项式分布的共轭分布
b. 在贝叶斯概率理论中,如果后验概率P(θ|x)和先验概率p(θ)满足同样的分布律,那么,先验分布和后验分布被叫做共轭分布,同时,先验分布叫做似然函数的共轭先验分布。
c. Beta分布是二项式分布的共轭先验分布,而狄利克雷(Dirichlet)分布是多项式分布的共轭分布。LDA和pLSA、LSA的区别https://www.codercto.com/a/86570.html
a. LSA潜在语义分析:使用奇异值分解(SVD)对单词-文档矩阵进行分解,SVD可以看作是从单词-文档矩阵中发现不想关的索引变量,将原来的数据映射到语义空间内。在单词-文档矩阵中不相似的两个文档,可能在语义空间相似
b. pLSA概率潜在语义分析:将生成模型来引入LSA。生成模型在plsa模型里的思想是,每个话题都代表着一个不同的单词上的概率分布,而每个文档都看成是话题上的概率分布。因此每篇文档就是一个两层分布生成的
c. LSA 与PLSA缺陷:主题-文档的概率参数是线性增加的,无论数据多少,容易过拟合
d. LDA是添加了迪利克雷先验分布的pLSA,
e. PLSA的文档-主题概率与主题-词语的概率都是直接用EM算法估计的,而LDA是通过迪利克雷给出的多项式分布参数估计的。
f. LDA中每个文档关于话题的概率分布都被赋予了一个先验分布,认为一个文章的主题可能集中在少数几个话题上。对于话题中词的分布,也赋予一个先验知识,认为该话题中某些词出现个概率更更高一些,
g. LDA是贝叶斯思想,pLSA是频率学派思想怎么确定LDA主题个数
a. 对于文档第属于哪个主题有多不确定,这个不确定程度就是困惑度
b. 绘制困惑度-主题数曲线,困惑度越小,越容易过拟合
c. 先随机指定一个,再根据训练结果计算困惑度,进而优化主题数目LDA和word2ve、doc2vec的区别
a. LDA比较的是doc, word2vec比较的是词
b. LDA是生成文章对主题的概率分布,word2vec生成的是每个词的特征表示
ⅰ. lda的文章之间的联系是主题,word2vec的词之间的联系是词向量本身
c. LDA依赖的是doc和word共现得到的结果,word2vec是依赖文本上下文得到的结果
d. LDA是利用文档中单词的贡献关系对单词按主题聚类,得到“文档-主题”、“主题-单词”两个概率分布
e. word2vec是对“上下文-单词”矩阵进行学习,得到的词向量表示更多的融合了上下文共现的特征
f. 主题模型是一种基于概率图模型的生成式模型,其似然函数可以写成若干条件概率连乘的形式
g. 词嵌入模型一般以神经网络的形式表达,似然函数定义在网络的输出之上,需要通过学习网络的权重以得到单词的稠密向量表示LDA里的迪利克雷分布的两个参数α、β如何确定
a. α通常为1/k(类别数)、β一般为0.01
b. α越小,文档属于一个某一个主题的概率很大,接近于1,属于其他主题的概率就很小,文章的主题比较明显
c. chucksize大一些的话更新过程比较平稳,收敛也平稳
d. 迭代次数一般不超过2000次LDA的问题
a. 算法本身的问题
ⅰ. 产生的主题往往被高频词占据,导致低频词在实际应用中的作用非常有限
ⅱ. 词袋模型的通病:①:数据稀疏、维度爆炸,②:词典规模越大,词袋模型的维度越大,
ⅲ. 泛化能力差,对新词的处理能力不够
b. 实际使用时注意的问题
ⅰ. 短文本效果较差
ⅱ. 主题个数太黑盒,却决于文章属性,文章质量,和最后想得到的主题粗细力度
ⅲ. 对广泛性内容效果较好,对突发性的内容效果较差,比如对热点资讯处理结果步好,因为会随时变化真实使用效果
a. 用过gensim跟sklearn里的,gensim可以做困惑度网络搜索,比较方便;sklearn便捷性较高,计算速度相对快
LDA_CodingPark编程公园相关推荐
- 数据分析调研报告_CodingPark编程公园
文章结构速览 关系梳理 数据挖掘:从海量数据中找到隐藏的规则,数据分析:待分析的目标比较明确 数据分析更侧重业务,一般分析的目标比较明确,重点在观察数据,得出结论: 数据挖掘更侧重技术,利用统计学/机 ...
- 人工智能中神经网络与自然语言处理共生关系_CodingPark编程公园
文章目录 神经网络知识大串联 1:第一代的神经元模型 3 2:从M-P模型到感知器模型 3 3:前馈神经网络 3 4:后向传播与BP算法神经网络 4 5:深度神经网络DNN 4 6:卷积神经网络CNN ...
- Gensim库生成与导入W2V模型_CodingPark编程公园
Gensim库生成与导入W2V模型 语料目录 gensim函数库Word2Vec配置参数 gensim.models.word2vec.Word2Vec(sentences=None,size=100 ...
- Linux压缩|解压_CodingPark编程公园
文章介绍 本文主要介绍: Linux的基础参数 Linux压缩 Linux解压缩 基础参数 tar - 5大参数 -c:压缩 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原 ...
- dim=0与dim=1_CodingPark编程公园
开局一张图
- anaconda-navigaotr出现adding featured channels并无法正常打开_CodingPark编程公园
问题 navigator无法打开.停在adding featured channels状态下. 解决 在mac终端下更新navigator 输入 conda install navigator 即可解 ...
- export命令在Mac Pycharm上如何设置环境变量!_ CodingPark编程公园
引言 为什么想起写一下这篇文章呢? 今天看到了这么一句话 [W ParallelNative.cpp:206] Warning: Cannot set number of intraop thread ...
- 谈谈池化吧!_CodingPark编程公园
引子 下采样和池化应该是包含关系,池化属于下采样,而下采样不局限于池化,如果卷积 stride=2,此时也可以把这种卷积叫做下采样. 池化 通常池化层紧跟在 CNN 的卷积层之后. 池化方法: max ...
- 人机对话seq2seq+attention_CodingPark编程公园
人机对话 概述 我做过的这种生成式的项目有两个 人机对话(智能问答) 分为 问(encoder)| 答(decoder)两个阶段
最新文章
- 问一下,线程池里面到底该设置多少个线程?
- Java项目构建基础:统一结果,统一异常,统一日志(好文推荐)
- JavaScript原型-进阶者指南
- 【原创】parseInt大改造
- 面试--js实现继承的几种方式
- 关于ANDRID sdk安装过慢问题
- UVA11248 网络扩容(枚举割边扩充)
- 老师一定没有教!9个数学速算技巧!看到第1个就跪了!
- 认知无线电matlab代码详解,认知无线电频谱感知之功率检测matlab代码.docx
- Android仿支付宝UI功能开发,Android 自定义view仿支付宝咻一咻功能
- c语言找到串口,再次熟悉串口
- 国内计算机专业最好的大学有哪些
- [TCP/IP] 传输层-ethereal 抓包分析TCP包
- ShopXO开源电商系统源码
- 前端工程师的摸鱼日常(9)
- Python网络数据采集1(译者:哈雷)
- 仿真小白必须知道的!有限元法-它是什么?FEM和FEA解释
- java毕业设计餐饮类网站Mybatis+系统+数据库+调试部署
- 一、开启root登录权限 1.更改root密码 1)打开终端,输入【sudo -s】获得临时root权限,再输入【sudo passwd root】修改root密码。
- matlab一维数组操作,Matlab创建一维数组的具体操作讲解