DPMM学习的基础及相关论文

学习DPMM(Dirichlet 过程混合模型)之前,首先要去理解DP过程及其三种构造方式,(1)Stick-breaking 构造,(2)Polya urn scheme 构造,(3)Chinese restaurant process 构造。这三种构造是学习DPMM及HDP,还有其他非参模型的基础工作。

关于Stick-breaking 构造可以参考我的一篇博客:http://blog.csdn.net/qy20115549/article/details/62041632
这三种构建在论文:
周建英, 王飞跃, 曾大军. 分层 Dirichlet 过程及其应用综述[J]. 自动化学报, 2011, 37(4): 389-407.

其他论文还有:
Teh Y W, Jordan M I, Beal M J, et al. Sharing clusters among related groups: Hierarchical Dirichlet processes[C]//Advances in neural information processing systems. 2005: 1385-1392.
Navarro D J, Griffiths T L, Steyvers M, et al. Modeling individual differences using Dirichlet processes[J]. Journal of mathematical Psychology, 2006, 50(2): 101-122.

Gibbs Sampling Methods for Dirichlet Process Mixture Model Technical Details
这些论文都有介绍DP的基础以及DPMM模型及HDP模型的内容。

DPMM的通俗理解

DPMM的思想是:假设我们现在有一个巨大的空间,整个空间中包含了无数的混合组成成分,每次选择其中的几个成分,然后利用这几个成分生成一组数据。我们把一组一组的数据放在一起,就得到了我们现在所拥有的数据。
所以DPMM有着很好的聚类性质,该模型能够实现一组数据的聚类和分析。但是研究多组数据的聚类问题时, 单纯利用Dirichlet 过程混合模型是无法实现建模分析的,比如说多篇文档的聚类。这时就出现了HDP模型。在之后的博客中,我会介绍HDP的理解。

DPMM的模型及生成过程


那么观测数据是通过如下方式生成的:

另外一张图使用stick-breaking构造的理解为:

可以很容易的理解,ϕk\phi _{k}表示可以用来混合数据的部分,πk\pi _{k}表示混合的权重,其中,∑∞k=1πk=1\sum_{k=1}^{\infty}\pi_{k}=1。

以下是另外一篇文章的模型图描述:

其生成过程如下:

其中,x<script type="math/tex" id="MathJax-Element-320">x</script>表示数据,为了简单起见,这里你就把他看成单词,g表示理解成组或者簇(group),w表示混合权重(服从stick-breaking先验),θ表示组的词分布。

抽样推导过程

由于在这里编辑公式太麻烦,我就直接上我的word截图。

抽样流程

请看Gibbs Sampling Methods for Dirichlet Process Mixture Model Technical Details这篇文章,这篇文章提供了四种抽样算法。

DPMM的理解、公式推导及抽样相关推荐

  1. Dirichlet 理解

    一直在用LDA,但是一直不太理解其中Dirichlet抽样是个什么样的东西,于是画了一些时间好好好看了看关于dirichlet的理解.感觉还挺有收货,这里先总结一些资料的出处,希望对大家有帮助: ht ...

  2. gb50243-2016通风与空调工程施工质量验收规范_《通风与空调工程施工质量验收规范》GB50243-2016 重点解读...

    本文来源 百度文库 筑龙暖通 整理 01 修订简介 修编依据 根据住房和城乡建设部<关于印发(2012 年工程建设标准规范制定修订计划)的通知> (建标{2012}5 号)文的要求,规范编 ...

  3. 多重背包单调队列优化思路_多重背包之单调队列优化理论性总结

    多重背包之单调队列优化: 若用F[j]表示对容量为j的背包,处理完前i种物品后,背包内物品可达到的最大总价值,并记m = min(n, j / v).放入背包的第i种物品的数目可以是:0.1.2--, ...

  4. python高通滤波器设计_python实现直方图均衡化,理想高通滤波与高斯低通滤波

    写在前面 HIT大三上学期视听觉信号处理课程中视觉部分的实验二,经过和学长们实验的对比发现每一级实验要求都不一样,因此这里标明了是2019年秋季学期的视觉实验二. 由于时间紧张,代码没有进行任何优化, ...

  5. 多样性算法在58部落的实践和思考

    导读:本文在明确"推荐系统个体多样性优化"主题后,由整体架构出发,清楚阐述了在召回层.规则层.多样性层的优化细节.在MMR和DPP算法部分既有原理也有实践,最后用图表方式展示出了效 ...

  6. 贝叶斯集锦:贝叶斯统计基础

    转载自:http://site.douban.com/182577/widget/notes/10567181/note/294041203/ 1.从贝叶斯定理到贝叶斯统计推断 (1)贝叶斯统计简史 ...

  7. 群内2018_4月讨论整理2

    归档至github 说明 以下内容来自群中出现的问题,大家讨论的结果 Q群:432600958 微信群:加微信w3aboutyun,附上about云铁粉 部分内容整理时,已经注明出处,但很多内容,较为 ...

  8. 基于AI的恶意样本分析(2)

    顶会论文:Dos and Don'ts of Machine Learning in Computer Security,一篇USENIX2022 关于机器学习用于计算机安全场景的十大缺陷文章阅读笔记 ...

  9. 二维图形旋转公式的推导

    关于二维图形旋转可能在很多计算机图形学相关的书籍上都会介绍,然而真正理解公式推导过程的却讲得不多.那么如何推导出二维图形绕某一点旋转的公式呢?我在这里就将其推导过程简要的说明一下. 其实推导过程比较简 ...

最新文章

  1. 《数学之美》第4章 谈谈分词
  2. PostgreSQL9.6+新增空闲事务自动查杀功能
  3. 417,你的能量不容低估,也不能高估
  4. OpenCASCADE:Modeling Algorithms模块几何工具之来自约束的线和圆
  5. 致我们最最最最最最最最最最最最最优秀的班主任——王老师
  6. ad采样做按键开关_磐石按键测试机解决各种按键测试问题
  7. 英雄无敌3高清 Android,安卓TOP10:《英雄无敌3》高清重制版上架
  8. 用LVM管理Linux系统服务器存储空间
  9. 从零开始刷Leetcode——数组(118.119.121)
  10. hdu 1254 推箱子(嵌套搜索,bfs中有dfs)
  11. execute、executeUpdate、executeQuery三者的区别
  12. 如何在RedHat 5.4上使用免费的YUM源
  13. 金蝶K3工业单据中间层插件开发教程
  14. 关键词云图,实现搜索功能
  15. zabbix 监控h3c 10508 交换机光衰值
  16. 项目管理九大知识领域五大过程组
  17. 信任,是从心底产生的感觉
  18. 三步破解IntelliJ IDEA2017
  19. Single Threaded Execution Pattern
  20. 肠道菌群组成影响肾细胞癌患者肿瘤免疫治疗的应答

热门文章

  1. Git 仓库基础操作
  2. 阿里云原生数据库POLARDB压力测试报告
  3. Spring Security 示例教程
  4. SpringBoot之项目运行常见报错
  5. loopback接口、router ID详解
  6. java getrequest_Java Target.getRequest方法代码示例
  7. 【安卓开发】项目的目录结构分析
  8. C#LeetCode刷题之#884-两句话中的不常见单词(Uncommon Words from Two Sentences)
  9. falcon框架_如何使用Falcon构建RESTful API
  10. sql常用语法命令及函数_SQL右连接命令:语法示例