贝叶斯推断

贝叶斯推断

贝叶斯推断的基本概念与传统推断的区别

贝叶斯推断作为统计推断的一种,从样本中学习或拟合真实的模型,推断概率分布函数的某个参数,和传统的统计推断的区别在于将推断的对象视作常数还是随机变量(v.t.)。

假设有一枚不均匀的硬币,想知道硬币的重心偏向。如果根据传统统计推断方法,会将硬币的重心偏向点视作一个常数值,使用的方式是将硬币抛上n次,其中x为正面。大数量重复实验的话,重心偏向大约为
θ = x/n
而贝叶斯推断将硬币看作是受不确定性影响下的结果,那么硬币的重心就是随机变量。例如硬币受制造机器的影响,假如我们先验的知道机器生产的硬币的重心偏向 会服从一个均值为1/2的正态分布的话,那么,重心偏向服从以下公式:
\rho(\theta)\sim N(\mu=\frac{1}2,\sigma)=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{(x-(\mu=\frac{1}2))^{2}}{2 \sigma^{2}}\right)
这个公式有很多现实理解:一种贝叶斯的理解是:我们先验的知道机器生产的重心偏向函数,然后根据观察到发生的样本数据,不断更新模型的后验概率。这普遍用于医学中:当一个人对某种疾病的试验结果为阳性时,此人确实患病的几率是多少。这个过程可以视作为根据最新得到的测试结果,更新此人患病的概率。

下图展示了贝叶斯推断和传统推断的关系。

image-20200725200749183.png

N表示N次试验,X表示观察到的数据,Estimator是要推断拟合的模型。

然后根据观察到的X代入到推断的模型中得到结果(可以理解为贝叶斯模型仿真/预测结果)。

推断理论:使用贝叶斯公式

f_{\Theta \mid X}(\theta \mid x)=\frac{f_{\Theta}(\theta) f_{X \mid \Theta}(x \mid \theta)}{f_{X}(x)}

其中,先验函数p_{\Theta}(\theta)是人为或根据经验设定的,所以设定不同的先验函数会得到不同的后验概率结果,这种由预先设定引起的误差被称之为模型误差。在贝叶斯神经网络中通过改变Loss的方式

根据观察到的数据计算条件分布\frac{f_{X \mid \Theta}(x \mid \theta)}{f_{X}(x)}

但需要推断多个参数时,这种是方式是难以计算的,例如
f_{\Theta_{0}, \Theta_{1}, \Theta_{2},...,\Theta_{m} \mid X_{1}, \ldots, X_{n}}\left(\theta_{0}, \theta_{1}, \theta_{2},...,\theta_{m} \mid x_{1}, \ldots, x_{n}\right)
以上公式在计算后验概率需要进行m-1次积分才能求得其中一个参数

所以在多维参数时,一般使用近似计算方法。即用随机抽样的方式计算积分,蒙特卡罗方法就是其中一种。

注意:不是蒙特卡罗算法

常用的推断方法1:最大后验概率(MAP)

最大后验概率是最大似然函数(大学的概率论课程会涉及)应用在后验概率上

根据贝叶斯公式得到后验概率的表达式(pdf),假定其概率密度函数f_{\Theta \mid X}(\theta \mid x)曲线如下:此图表示参数\theta取不同的值时,后验概率的值。

image-20200725221219327.png

那么最大似然的思想将后验概率函数f_{\Theta \mid X}(\theta \mid x)看作是在所有\theta不同取值中,寻找一个值使这个采样x的“可能性”最大化。即
\hat{\theta}=\operatorname*{arg\,max}_{\substack{\theta}}f_{\Theta|X}(\theta|X)
此例的选取结果为:

image-20200726133146333.png

准确来说,这种理解适用于\Theta为离散变量。当为连续变量时,每个\theta对应的准确率都是0。而且,当\Theta为有限集时,最大后验概率的方式是在所有的准则中是正确的且最好的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。