机器学习_主题模型LDA

一、预备知识

1、LDA应用方向
在这里插入图片描述

2、与朴素贝叶斯文本分类的对比
在这里插入图片描述

   D->T->W

3、 Γ \Gamma Γ函数
Γ \Gamma Γ函数

4、 β \beta β分布
在这里插入图片描述

5、共轭先验分布

后验=似然*先验

在这里插入图片描述

两点分布和二项分布(见常见概率分布)的共轭先验分布是 β \beta β分布,即:

β \beta β分布=两点分布(二项分布)* β \beta β分布

6、Dirichlet分布(狄利克雷分布/多元 β \beta β分布)
在这里插入图片描述

若取 α 1 = α 2 = . . . = α k \alpha_1=\alpha_2=...=\alpha_k α1=α2=...=αk,则得到对称Dirichlet分布

  • 调参
    调参图
    从上图中可以看出,想要主题鲜明在满足聚类要求的情况下,取 α \alpha α尽量小。若文档主题比较均衡取 α \alpha α尽量大。

二、LDA

LDA模型是文本集合的生成概率模型,假设每个文本由主题的一个多项分布表示,每个主题由单词的一个多项式分布表示,特别假设文本的主题分布的先验分布是狄利克
雷分布,主题的单词分布的先验分布也是狄利克雷分布。先验分布的导入使LDA能够更好的应对主题模型学习中的过拟合现象。LDA是无监督学习。

1、LDA生成文档
假设文档中的词是不相关的。

在LDA模型中,一篇文档生成的方式如下,提前给定K个主题(往往通过先验知识获得)和长度为N的词典(所有文档中所有词的个数)(词典是分词得到的。分词包:jieba):

  • 从狄利克雷分布 α \alpha α中取样生成文档 m m m的主题分布 θ m \theta_m θm
  • 从主题的多项式分布 θ m \theta_m θm中取样生成文档 m m m n n n个词的主题 z m , n z_{m,n} zm,n
  • 从狄利克雷分布 β \beta β中取样生成主题 z m , n z_{m,n} zm,n对应的词语分布 ϕ k \phi_k ϕk
  • 从词语的多项式分布 ϕ k \phi_k ϕk中采样最终生成词语 w m , n w_{m,n} wm,n
    其中 N m N_m Nm为第M篇文档的词的个数,主题分布 θ m \theta_m θm是K维的,每个主题对应的词分布 ϕ k \phi_k ϕk是N维的。

总结:LDA生成文档的过程中,先从dirichlet先验中“随机”抽取出主题分布,然后从主题分布中“随机”抽取出主题,最后从确定后的主题对应的词分布中“随机”抽取出词。
在这里插入图片描述

      补充:假设给定三个主题【爱情,武侠,机器学习】,词典中词个数为5【北京,天津,SVM,段誉,泡泡】
      1、 怎么确定某篇文档的3个主题的分布的参数,如【0.1, 0. 5, 0.4】
      我的理解:利用Dirichlet分布(给定参数$\alpha$),K给3,会得到如上上图(调参图)中的概率密度曲线,采样其中一个点,取坐标值就可得到【p1,p2,1-p1-p2】。
      2、怎么确定某个主题对应的词分布。
      如爱情主题对应【北京,天津,SVM,段誉,泡泡】=【0.3,0.1,0,0.4,0.2】
      同取主题分布的一样。
      3、这么取了之后,若随机采样,怎么确定主题下对应的词分布是相关的。
      

2、已知文档怎么推断主题(求解参数 ϕ \phi ϕ, θ \theta θ

采用Gibbs采样,Gibbs采样这篇博客写的特别好。

算法流程:
在这里插入图片描述

超参数选择
在这里插入图片描述
主题个数选择
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hellobigorange

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值