Dirichlet Process 和 Dirichlet Process Mixture模型

[本文链接:http://www.cnblogs.com/breezedeus/archive/2012/11/05/2754940.html,转载请注明出处。]

Dirichlet Process (DP)被称为分布的分布。从DP抽取出的每个样本(一个函数)都可以被认为是一个离散随机变量的分布函数,这个随机变量以非零概率值在可数无穷个离散点上取值。比较有意思的是,从DP可以推导出几个非常著名的问题: Chinese Restaurant Process (CRP)、Polya Urn Scheme和Stick-breaking Process。简单的介绍可以见Edwin Chen的博文“Infinite Mixture Models with Nonparametric Bayes and the Dirichlet Process”。

DP的特性使得它在非参数贝叶斯聚类模型中可以被用作参数的先验分布。Dirichlet Process Mixture (DPM)是这种非参数贝叶斯聚类模型中的一个典型代表。DPM可以认为是有限混合(Finite Mixture,FM)模型的一个推广,FM(如Gaussian Mixture模型)必须首先给定类数,而DPM则不需要,它可以依据数据自行判断类数。理论上来说,DPM的类数随着log(样本点数量)的增长速度增长。目前研究者已经提出了很多训练DPM的算法,从Gibbs Sampling,到Collapsed Gibbs Sampling,到Variational方法。我自己实现了Collapsed Gibbs Sampling方法,速度是个很大的约束,跑大数据很费劲。DPM的一个另一个问题是它的类数由算法自动控制(虽然有个超参数alpha可以大致上调节类数),最终产生的类数可能与期望的差别很大。

想进一步了解DP和DPM的同学,可以去Yee W. Teh的主页上看看,里面可以找到很多相关的papersslidespresentations,以及用Matlab写的DPM开源软件。想仔细了解DPM的各个算法及具体推导,建议看看Xiaodong Yu的博文,里面也有他总结的一个很详细的学习笔记(虽然里面有一些小笔误),以及更多的参考资料。我自己也写了一份总结,但是懒得用Latex打出来了,就以图片打包的方式放在网盘里了,只把最后一页的参考文献贴下面。那些参考文献可以直接Google后下载。对理论没有兴趣的同学请忽略吧,哈哈。

Dirichlet Process 和 Dirichlet Process Mixture模型的更多相关文章

  1. Notes on the Dirichlet Distribution and Dirichlet Process

    Notes on the Dirichlet Distribution and Dirichlet Process In [3]: %matplotlib inline   Note: I wrote ...

  2. com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command ' finished with non-zero exit value 1

    Error:Execution failed for task ':lenovoAlbum:processReleaseResources'. > com.android.ide.common. ...

  3. Process Kill Technology && Process Protection Against In Linux

    目录 . 引言 . Kill Process By Kill Command && SIGNAL . Kill Process By Resource Limits . Kill Pr ...

  4. How to change current process to background process

    Situation: there is a script or command is running, but we need to close current box/windows to do o ...

  5. node中__dirname、__filename、process.cwd()、process.chdir()表示的路径

    直接上结论:__dirname 表示当前文件所在的目录的绝对路径__filename 表示当前文件的绝对路径module.filename ==== __filename 等价process.cwd( ...

  6. 使用CreateProcess创建新的process 并返回process运行结束返回值

    转自:http://blog.csdn.net/zgl7903/article/details/5975284 转载这篇主要是记住:获得create的新进程运行结束时的返回值的方法 如下:   #in ...

  7. checkpoint process vs writer process vs wal writer process

    开始 我目前的理解是: 如果我执行了一条SQL文,那么 先是相关数据写到  wal buffer里, 然后再写到 data  buffer(shared_buffer)里. 这之后, 由于wal wr ...

  8. Linux进程自保护攻防对抗技术研究(Process Kill Technology && Process Protection Against In Linux)

    0. 引言 0x1: Linux系统攻防思想 在linux下进行"进程kill"和"进程保护"的总体思路有以下几个,我们围绕这几个核心思想展开进行研究 . 直接 ...

  9. AS错误:Error:Execution failed for task ':gM99SDK:processReleaseResources'. > com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'F:\BaiduYunDown

    原因,buildToolsVersion 版本太低. 在build.gradle文件设置 buildToolsVersion 设置高一点,但必须是SDK里面有的.

随机推荐

  1. hdu1016JAVA

    import java.util.Arrays;import java.util.Scanner;public class Main { public static int kase=0,n; pub ...

  2. Android主题换肤 无缝切换

    2016年7月6日 更新:主题换肤库子项目地址:ThemeSkinning,让app集成换肤更加容易.欢迎star以及使用,提供改进意见. 更新日志: v1.3.0:增加一键切换切换字体(初版)v1. ...

  3. Dom4j 学习笔记

    dom4j 是一种解析 XML 文档的开放源代码 XML 框架.dom4j下载地址 本文主要记载了一些简单的使用方法. 一.xml文件的解析 dom4j既可以解析普通的xml文件,也可以解析一个Inp ...

  4. Python之路【第二十二篇】:Django之Model操作

    Django之Model操作   一.字段 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bi ...

  5. 万网免费主机wordpress快速建站教程-万网主机申请

    很多小伙伴在万网的免费主机申请活动中建立起了自己的个人网站,但还是还有许多小伙伴现在想建站,却发现官网找不到免费主机的申请地址了,以为活动结束了?其实还是可以继续申请免费主机的,接下来小编给大家介绍如 ...

  6. web开发学习之旅---css第一天

    一.css全称 Cascade Style Sheet层叠样式表 二.css引入方式 行内样式:<h2 style="color:#0F0">Hello World&l ...

  7. 封装一个ISortable接口

    using System;/// <summary>/// 排序规范/// </summary>/// <typeparam name="T"> ...

  8. 关于使用用友华表Cell控件按需打印行的方法

    分享下只需一个cll文件按需打印行的觉得最好的方式:1.cell文件要打印行的地方最好不要全删了,留一行,设置好单元格样式(字体.对齐方式.折行自适应等),后面会省一些代码: 2.使用CopyRang ...

  9. vmstat,iostat,sar命令详解

    Procs r: 等待运行的进程数 b: 处在非中断睡眠状态的进程数 w: 被交换出去的可运行的进程数.此数由 linux 计算得出,但 linux 并不耗尽交换空间 Memory swpd: 虚拟内 ...

  10. Java的云打印Lodop

        打印某一个网页上的内容我们都经常遇到过,比如网上申请港澳通行证时需要填写申请表,然后把申请表给打印出来.像这样的打印技术是怎么实现?这种打印可以通过一种叫云打印的插件来做,按我的理解云打印的技 ...