贝叶斯统计方法的重要工具: 马尔可夫链蒙特卡洛方法
暑假前在cousera上学了第一课,贝叶斯统计方法的基本理论。
暑假之后,终于鼓起勇气开始了第二课,Bayesian Statistics: Techniques and Models (课程链接: https://www.coursera.org/learn/mcmc-bayesian-statistics/home/info)
贝叶斯统计方法的基本理论,先验概率,似然方程,后验概率和共轭分布等已在第一课是都讲过了。如果有兴趣,可以看我之前的一篇文章,贝叶斯统计方法--思考方式的转变。
第二门课主要是应用方面。如果你觉得应用只是建模编程,那就错了。具体的方法也是要有数学推导做支撑的。马尔可夫链蒙特卡洛,我是重看了好几遍课程视频,还特意跑到课程的论坛里看了一通,才马马虎虎搞明白。
马尔可夫链蒙特卡洛方法,名字好可怕,但其实可以分解一下,马尔可夫链➕蒙特卡洛方法。马尔可夫链,大家应该比较熟悉,因为我是学通信出生的,所以至少名字还是比较亲切的。马尔可夫链就是一连串发生的事件,当前事件只对前面一个事件有依赖关系,从一个状态转移到另外一个状态称为转移概率,如果事件可能性比较多,就需要转移概率矩阵来表示。如果pi为事件的边缘概率的,p为转移概率矩阵,那么马尔可夫链最重要的特征就是PI*P=PI.
那蒙特卡洛方法又是啥。蒙特卡洛方法是对于那些无法解决的数学方程,用随机抽样的方式来近似解答。比如说一个连续概率分布的概率密度函数很复杂,要算出某个取值范围的概率,没有办法积分。蒙特卡洛方法就是根据概率密度函数进行n个抽样,然后把算出落在这个区间的样本数除以总抽样数就可以近似出这个概率值。你可能猜对了,对于那些无法解决的几分问题,蒙特卡洛方法可以说是救星,特别是现在计算机的超强的计算能力。
这俩家伙和贝叶斯统计方法有啥关系。
我们知道,贝叶斯统计方法的核心就是结合主观先验概率和客观数据,推导出数学模型中未知参数的后验概率。这个推导过程并不复杂。问题是推导出来的后验概率分布非常的复杂,而且省略了归一化参数。有了这个后验概率公式,并不一定算得出概率值,均值,方差等。共轭分布看来只是一种幸运。
马尔可夫链蒙特卡洛方法就是要来解决后验概率的这两问题: 公式复杂,缺少归一化参数 称为f(x)
此方法的核心也是抽样,但是该公式缺少归一化参数怎么办,于是抽样过程稍微复杂了一点,除了后验概率的半成品公示f(x), 另外引入一个转移概率g(x)来构造这个马尔可夫链。当通过转移概率得到新的值的时候,会根据这个样本的f(x)和上个验本的f(x)的比例来决定这个值的去留。这个的效果就是相当去除了归一化参数的影响。根据算法有很多细节化版本,g(x)也有多种建议。可以说公式推导理解起来特别心塞,但背后的intuition不得不赞美数学之美。
网上抄个图来加深下理解。
希望本文至少能回答,这么复杂名字的方法是干啥的。
关注更多作者原创文章,关注微信公众号: 一起learn大数据和机器学习
作者简介:
Dagis: 现居住在瑞典,某AI公司的Data Scientist, 学习通信出身,喜欢数学,更喜欢把数学用于实际。