Markov Chain Monte Carlo(MCMC,马尔可夫链蒙特卡洛方法)
MCMC 是一种结合马尔可夫链(Markov Chain)和蒙特卡洛模拟(Monte Carlo Simulation)的统计方法,主要用于从复杂概率分布(尤其是高维、难以直接抽样的分布)中高效抽样,进而解决积分计算、参数估计、优化等问题。它在贝叶斯统计、机器学习、物理建模、生物信息学等领域有广泛应用。
一、核心思想
-
蒙特卡洛模拟的本质:
通过随机抽样估计复杂函数的积分(如期望、概率)。例如,计算 ,若能从分布 中抽样得到 ,则近似为 。
问题:当 复杂(如高维联合分布、仅知未归一化形式 )时,直接抽样困难。 -
引入马尔可夫链:
构造一个马尔可夫链,使其平稳分布(Stationary Distribution)为目标分布 。当链运行足够长时间(达到“平稳状态”)后,链的状态样本可视为来自 的抽样,从而用蒙特卡洛方法估计积分。
二、关键概念
1. 马尔可夫链的平稳分布
- 若马尔可夫链的转移概率 满足 细致平衡条件(Detailed Balance):
则 是该链的平稳分布。即长期运行后,链的状态分布收敛于 ,与初始状态无关。
2. 接受-拒绝机制(Metropolis-Hastings 算法核心)
- 为构造满足细致平衡的转移概率,引入“提议分布(Proposal Distribution)” 和“接受概率(Acceptance Probability)” ,使得:
接受概率需满足细致平衡条件,例如:
3. Gibbs 抽样(高维分布的简化)
- 针对多变量联合分布 ,每次固定其他变量,仅对单个变量 抽样,抽样分布为条件分布 。
- 适用于变量间存在依赖关系的场景,避免高维提议分布的设计困难。
三、常用算法
1. Metropolis-Hastings 算法(M-H 算法)
- 步骤:
- 初始化状态 。
- 对当前状态 ,从提议分布 生成候选状态 。
- 计算接受概率 ,以 的概率接受 (即 ),否则保持 。
-
重复步骤 2-3,忽略初始“burn-in”阶段的样本,保留后续样本用于估计。
-
灵活性:提议分布可自由选择(如正态分布、均匀分布),适应不同问题。
2. Gibbs 抽样
- 适用场景:多变量联合分布,且条件分布易抽样(如贝叶斯网络中的共轭分布)。
- 步骤(以二维为例):
- 初始化 。
- 从 抽样 。
- 从 抽样 。
-
重复,直至收敛。
-
优势:无需设计全局提议分布,直接利用条件分布的易处理性。
四、应用场景
- 贝叶斯推断:
-
估计后验分布 (仅知未归一化形式),通过 MCMC 抽样得到 的样本,计算后验均值、可信区间等。
-
复杂分布模拟:
-
高维积分、罕见事件概率估计(如金融风险中的极端事件)。
-
机器学习:
-
隐变量模型(如隐马尔可夫模型、变分自编码器)的参数估计,或作为近似推断的工具(对比变分推断)。
-
物理与生物建模:
- 统计力学中的能量分布抽样、基因序列的进化模型参数估计。
五、优缺点
优点
- 适应性强:无需解析形式,适用于几乎所有可计算未归一化密度的分布。
- 高维友好:相比传统方法(如拒绝抽样),在高维空间中更高效(维度依赖仅通过条件分布或提议分布体现)。
缺点
- 收敛性挑战:需验证链是否达到平稳状态(通过收敛诊断,如 Gelman-Rubin 检验),实际中可能难以判断。
- 计算成本高:长链抽样和“burn-in”阶段消耗大量计算资源,尤其在高维或强相关变量场景。
- 调参依赖:提议分布的选择影响效率(如高接受率可能导致链“原地踏步”,低接受率导致样本低效)。
六、总结
MCMC 是连接“复杂分布”与“有效抽样”的桥梁,其核心是通过马尔可夫链的平稳性,将难以直接抽样的问题转化为构造合适的转移机制。尽管存在收敛性和计算效率的挑战,它仍是处理高维、非结构化概率模型的核心工具,尤其在贝叶斯分析和复杂系统建模中不可或缺。实际应用中,需结合问题特性选择算法(如 Gibbs 抽样适用于条件分布易求的场景),并通过调参与诊断确保抽样有效性。