(学习这部分内容大约需要50分钟)

摘要

Gibbs采样是一种马尔科夫连蒙特卡洛(Markov Chain Monte Carlo, MCMC)算法, 其中每个随机变量从给定剩余变量的条件分布迭代地重新采样. 它是在概率模型中执行后验推理的简单且常用的高效方法.

预备知识

学习Gibbs采样需要以下预备知识

学习目标

  • 知道Gibbs采样更新规则
  • 明白为什么 Gibbs 采样的稳态分布是模型分布.
  • 明白为什么 Gibbs 采样在变量紧密耦合时会变得低效.

核心资源

(阅读/观看其中一个资源)

免费

付费

  • Pattern Recognition and Machine Learning(PRML)
    简介: 一本研究生机器学习课程, 专注于贝叶斯方法
    位置: Section 11.3, pages 542-546
    网站
    作者: Christopher M. Bishop
    其他依赖知识:

  • Probabilistic Graphical Models: Principles and Techniques
    简介: 一本非常全面的概率AI研究生教材
    位置: Sections 12.3.1 (pages 505-507) and 12.3.3 (pages 512-515)
    网站
    作者: Daphne Koller,Nir Friedman
    其他依赖知识:

增补资源

(以下为可选内容, 你可能会发现它们很有用)

免费

  • Information Theory, Inference, and Learning Algorithms
    简介: 一本机器学习和信息论的研究生教材
    位置: Section 29.5, "Gibbs sampling," pages 370-371
    网站
    作者: David MacKay
    其他依赖知识:

    • Metropolis-Hastings算法
  • Machine learning summer school: Markov chain Monte Carlo (2009)
    简介: 一个 MCMC 方法视频教程
    位置: 69:40 to 77:34
    网站
    作者: Iain Murray
  • Computational Cognition Cheat Sheets (2013)
    简介: 认知科学家写的一些笔记
    位置: Bayesian Inference: Gibbs Sampling
    网站

付费

  • Machine Learning: a Probabilistic Perspective(MLAPP)
    简介: 一本非常全面的研究生机器学习教材
    位置: Section 24.2-24.2.2, pages 838-839
    网站
    作者: Kevin P. Murphy

相关知识

  • Gibbs采样可以被看作 Metropolis-Hastings 算法的特例

  • 简单 Gibbs 采样常常 mix 得很慢. 以下是一些改进版本:

    • block Gibbs sampling: 一次采样多个随机变量.
    • collapsed Gibbs sampling: 一些随机变量被解析地积分掉了

    Slice sampling 是一类特殊的 Gibbs 采样, 适合从没有解析形式的单变量分布中采样.

  • 我们可以使用spectral graph理论分析 mixing 率.


返回贝叶斯机器学习路线图

Gibbs采样的更多相关文章

  1. MC, MCMC, Gibbs采样 原理&实现(in R)

    本文用讲一下指定分布的随机抽样方法:MC(Monte Carlo), MC(Markov Chain), MCMC(Markov Chain Monte Carlo)的基本原理,并用R语言实现了几个例 ...

  2. 如何做Gibbs采样(how to do gibbs-sampling)

    原文地址:<如何做Gibbs采样(how to do gibbs-sampling)> 随机模拟 随机模拟(或者统计模拟)方法最早有数学家乌拉姆提出,又称做蒙特卡洛方法.蒙特卡洛是一个著名 ...

  3. MCMC(四)Gibbs采样

    MCMC(一)蒙特卡罗方法 MCMC(二)马尔科夫链 MCMC(三)MCMC采样和M-H采样 MCMC(四)Gibbs采样 在MCMC(三)MCMC采样和M-H采样中,我们讲到了M-H采样已经可以很好 ...

  4. 文本主题模型之LDA(二) LDA求解之Gibbs采样算法

    文本主题模型之LDA(一) LDA基础 文本主题模型之LDA(二) LDA求解之Gibbs采样算法 文本主题模型之LDA(三) LDA求解之变分推断EM算法(TODO) 本文是LDA主题模型的第二篇, ...

  5. 关于LDA的gibbs采样,为什么可以获得正确的样本?

    算法里面是随机初始了一个分布,然后进行采样,然后根据每次采样的结果去更新分布,之后接着采样直到收敛. 1.首先明确一下MCMC方法. 当我们面对一个未知或者复杂的分布时,我们经常使用MCMC方法来进行 ...

  6. Gibbs 采样的应用

    Gibbs 采样的最大作用在于使得对高维连续概率分布的抽样由复杂变得简单. 可能的应用: 计算高维连续概率分布函数的数学期望, Gibbs 采样得到 n 个值,再取均值: 比如用于 RBM:

  7. Gibbs 采样定理的若干证明

    坐标平面上的三点,A(x1,y1),B(x1,y2),C(x2,y1),假设有概率分布 p(x,y)(P(X=x,Y=y) 联合概率),则根据联合概率与条件概率的关系,则有如下两个等式: {p(x1, ...

  8. MCMC:Gibbs 采样(matlab 实现)

    MCMC: The Gibbs Sampler 多元高斯分布的边缘概率和条件概率 Marginal and conditional distributions of multivariate norm ...

  9. 随机采样和随机模拟:吉布斯采样Gibbs Sampling实现文档分类

    http://blog.csdn.net/pipisorry/article/details/51525308 吉布斯采样的实现问题 本文主要说明如何通过吉布斯采样进行文档分类(聚类),当然更复杂的实 ...

随机推荐

  1. IEnumerable<T> 转换为数组

    IEnumerable<User> userlist=xxxx; string[] ids=userlist.select(u=>u.id).toArray();

  2. ES06--elasticsearch

    ES06--elasticsearch unassigned错误解决(手动处理)   查看集群健康状态:curl -XGET http://localhost:9200/_cluster/health ...

  3. ROS关于cv_brige的使用

    最近想使用OpenCV 和ROS实现点云的拼接,实现三维重建,那么在学习了kinect的基本的使用方法以后我们知道,直接使用ROS 的包即可得到点云,深度图,rgb图等信息, roslaunch op ...

  4. Java BEAN与EJB的区别

    Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java类都可以是一个Bean.但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以 ...

  5. Java设计模式(2)单态模式(Singleton模式)

    定义:Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在. 在很多操作中,比如建立目录 数据库连接都需要这样的单线程操作. 还有,singleton能够被状态化 ...

  6. Web服务端开发需要考虑的问题(续)

    方案汇总API设计应用架构代码库管理工具链工作计划目标预期关键过程service-driver接口定义及实现web样例 方案汇总 API设计 基于https. 只提供纯数据. 基于一开始提出的rest ...

  7. Hive之分区(Partitions)和桶(Buckets)

    转自:http://www.aahyhaa.com/archives/316 hive引入partition和bucket的概念,中文翻译分别为分区和桶(我觉的不是很合适,但是网上基本都是这么翻译,暂 ...

  8. savReaderWriter 模块的使用

    作用: 由于python可以辅助数据分析和数据挖掘,读取文件, 而savReaderWriter模块就是为此而设计. 官网 :http://pythonhosted.org/savReaderWrit ...

  9. html5视频播放解决方案

    关键词:html5  nativeapp webapp mp4 H.264 html5没学习之前总觉的很神秘.近期通过学习和研究html5有点成果,特总结分享给大家.众所周知应用开发分两种:一是原生的 ...

  10. MySql 存储过程总结

    MySql 存储过程 -- ---------------------------- -- Procedure structure for `proc_adder` -- -------------- ...