马尔可夫链蒙特卡罗法(Markov Chain Monte Carlo,MCMC)
文章目录
- 1. 蒙特卡罗法
- 2. 马尔可夫链
- 3. 马尔可夫链蒙特卡罗法
- 4. Metropolis-Hastings 算法
- 5. 吉布斯抽样
蒙特卡罗法(Monte Carlo method),也称为统计模拟方法(statistical simulation method),是通过从概率模型
的随机抽样进行近似数值计算的方法
马尔可夫链蒙特卡罗法(Markov Chain Monte Carlo,MCMC),则是以马尔可夫链(Markov chain)为概率模型的蒙特卡罗法
马尔可夫链蒙特卡罗法 构建 一个马尔可夫链,使其平稳分布就是要进行抽样的分布,首先基于该马尔可夫链进行随机游走,产生样本的序列,之后使用该平稳分布的样本进行近似数值计算
马尔可夫链蒙特卡罗法被应用于概率分布的估计、定积分的近似计算、最优化问题的近似求解等问题,特别是被应用于统计学习中概率模型的学习与推理,是重要的统计学习计算方法
1. 蒙特卡罗法
- 核心思想:随机抽样(直接抽样法、接受-拒绝抽样法、重要性抽样法 等)
- 可用于数学期望估计、积分近似计算
- 一般的蒙特卡罗法中的
抽样样本是独立
的,而马尔可夫链蒙特卡罗法
中的抽样样本不是独立的,样本序列形成马尔科夫链。
2. 马尔可夫链
马尔可夫性:随机变量 XtX_tXt 只依赖于前一个时刻 Xt−1X_{t-1}Xt−1,不依赖于更早的时刻
齐次性:转移概率 P(Xt∣Xt−1)P(X_t|X_{t-1})P(Xt∣Xt−1) 与 ttt 无关,P(Xt+s∣Xt−1+s)=P(Xt∣Xt+1)P(X_{t+s}|X_{t-1+s}) = P(X_t|X_{t+1})P(Xt+s∣Xt−1+s)=P(Xt∣Xt+1)
马尔可夫链的状态分布由初始分布
和转移概率分布
决定 π(t)=Ptπ(0)\pi(t) = P^t \pi(0)π(t)=Ptπ(0)
马尔可夫链的平稳分布为 π(π1,π2,...)T\pi(\pi_1,\pi_2,...)^Tπ(π1,π2,...)T 的充要条件是:π\piπ 是下列方程组的解
xi=∑jpijxj,i=1,2,...xi≥0,i=1,2,...∑ixi=1x_i = \sum\limits_j p_{ij}x_j, i = 1,2,...\\ x_i \ge 0, i=1,2,...\\ \sum\limits_i x_i = 1xi=j∑pijxj,i=1,2,...xi≥0,i=1,2,...i∑xi=1
马尔可夫链可能存在唯一平稳分布,无穷多个平稳分布,或不存在平稳分布
性质:
不可约
P(Xt=i∣X0=j)>0P(X_t=i|X_0=j)>0P(Xt=i∣X0=j)>0 时刻0从状态 j 出发,时刻 t 到达状态 i 的概率大于 0,该链不可约
非周期
P(Xt=i∣X0=i)>0P(X_t=i|X_0=i)>0P(Xt=i∣X0=i)>0 时刻0从状态 i 出发,时刻 t 返回状态的所有时间长度的最大公约数是1,称该链是非周期的
定理:不可约且非周期的有限状态马尔可夫链,有唯一平稳分布存在正常返
概率 pijtp_{ij}^tpijt 为时刻 0 从状态 j 出发,时刻 t 首次转移到状态 i 的概率,若对所有状态 i, j,都满足 limt→∞pijt>0\lim\limits_{t\rightarrow \infty} p_{ij}^t >0t→∞limpijt>0,称该链是正常返的
定理:不可约、非周期且正常返的马尔可夫链,有唯一平稳分布存在
- 可逆马尔可夫性
对任意状态 i,j,在任意时间 t 满足:pjiπj=pijπi,i,j=1,2,...p_{ji}\pi_j = p_{ij}\pi_i, i,j=1,2,...pjiπj=pijπi,i,j=1,2,...(细致平衡方程)
如果有可逆的马尔可夫链,那么平稳分布
作为初始分布,进行随机状态转移,无论是面向未来还是面向过去,任何一个时刻的状态分布都是该平稳分布。
定理:满足细致平衡方程
的状态分布 π\piπ 就是该马尔可夫链的平稳分布
可逆马尔可夫链一定有唯一平稳分布
,给出了一个马尔可夫链有平稳分布的充分条件(不是必要条件)
3. 马尔可夫链蒙特卡罗法
常用的马尔可夫链蒙特卡罗法 有Metropolis-Hastings算法
、吉布斯抽样
。
马尔可夫链蒙特卡罗法的收敛性的判断通常是经验性的
- 比如,在马尔可夫链上进行随机游走,检验遍历均值是否收敛
- 再比如,在马尔可夫链上并行进行多个随机游走,比较各个随机游走的遍历均值是否接近一致
4. Metropolis-Hastings 算法
5. 吉布斯抽样
马尔可夫链蒙特卡罗法(Markov Chain Monte Carlo,MCMC)相关推荐
- 【ML】Markov Chain Monte Carlo(MCMC)---Slice sampler(切片采样)和Hierarchical Models(层次模型)
导航 Slice sampler 2D slice sample General Slice Sampler Hierarchical models python Code download Refe ...
- R语言与Markov Chain Monte Carlo(MCMC)方法学习笔记(2)
前面已经大致的叙述了MCMC方法.今天来分享一下R中的一个实现MCMC算法的包mcmc. mcmc包的一个核心函数就是metrop,其调用格式为: metrop(obj, initial, nbatc ...
- 13 MCMC(Markov Chain Monte Carlo)
13 MCMC(Markov Chain Monte Carlo) 0 MCMC思想 1 采样方法 1.1概率分布采样 1.2 拒绝采样(Rejection Sampling) 1.3 重要性采样(I ...
- 论文辅助笔记(代码实现):Bayesian Probabilistic Matrix Factorizationusing Markov Chain Monte Carlo
1 主要思路回顾 具体可见:论文笔记 Bayesian Probabilistic Matrix Factorizationusing Markov Chain Monte Carlo (ICML 2 ...
- Markov Chain Monte Carlo
转载至https://zhuanlan.zhihu.com/p/25610149 [数据分析] Markov Chain Monte Carlo Markov Chain Monte Carlo简称M ...
- Markov Chain Monte Carlo 和 Gibbs Sampling算法
Welcome To My Blog 一.蒙特卡洛模拟 蒙特卡洛模拟(Monte Carlo Simulation)是随机模拟的别名,关于随机模拟的一个重要的问题就是:给定一个概率分布p(x),如何生 ...
- 从概率论到Markov Chain Monte Carlo(MCMC)-- 转
大学本科时代开始学习的概率论,从变着花样从箱子里取不同颜色的球计算概率,到计算各种离散或连续的随机分布期望.方差,再高深点就是利用生成函数求期望和方差,再就是估计理论,包括点估计.极大 ...
- 论文笔记 Bayesian Probabilistic Matrix Factorizationusing Markov Chain Monte Carlo (ICML 2008)
0 摘要 低秩矩阵逼近方法是协同过滤中最简单.最有效的方法之一.这类模型通常通过寻找模型参数的MAP估计来拟合数据,这一过程即使在非常大的数据集上也能有效地执行. 然而,除非正则化参数被仔细地调整,否 ...
- 马尔可夫链 (Markov Chain)是什么鬼
作者:红猴子 链接:https://www.zhihu.com/question/26665048/answer/157852228 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...
最新文章
- NeHe教程Qt实现——lesson09
- 每日一皮:经历过的Bug修复过程...
- android 开发时遇到的各种问题1--Android双模(CDMA/GSM)手机短信相关
- 【算法】五分钟快速了解代码复杂度
- linux的cpu信息怎么理解,理解Linux下的CPU信息:lscpu cpuinfo
- 工作237:vuex取值
- 阿里云服务网格ASM集成SLS告警
- 怎么计算一组数据的波动_税控盘数据和小规模增值税申报表计算结果不一致怎么办...
- Asynchronous(异步处理)
- 自定义帆软报表的导出
- autofac文档:适配器和装饰器
- 关于短除法求两个数的最小公倍数的公式的解释
- LLC谐振变换器学习二
- Docker镜像常用命令
- Python运维开发(CMDB资产管理系统)——Pycharm部署
- 虚拟机装系统出现 ntldr is missing(NTLDR丢失)、无法正常开机、解决方法
- .NET项目运行错误:未能加载文件或程序集“CefSharp.Core.Runtime.dll”或它的某一个依赖项。找不到指定的模块
- 35岁,领高薪,拿股票:那些职业竞争力强的人,活得太爽了!
- C++简单贪吃蛇游戏——入门游戏编程(详细)
- 56 行代码,带你爬取豆瓣影评