贝叶斯理论

1. 似然函数

似然(likelihood)与概率(probability)是完全不同的数学对象,但又有着极其相似的身影。
概率(密度) f ( x ∣ θ ) f(x | \theta) f(xθ):表示给定 θ \theta θ 下样本随机向量 X = x X=x X=x 的可能性;
似然函数 f ( x ∣ θ ) f(x | \theta) f(xθ):表示给定样本 X = x X=x X=x 下参数 θ \theta θ 为不同值时对应样本真实发生的可能性(反映的是给定参数下得到某组观测数据的可信度)。


举个例子:
对于概率,假设抛一枚硬币,正面朝上的概率为0.5(即 θ = 0.5 \theta = 0.5 θ=0.5),现在有事件A = ‘随机抛一枚硬币正面朝上’,那么 f ( A ∣ θ ) = 0.5 f(A | \theta) = 0.5 f(Aθ)=0.5
对于似然函数,有一个硬币,它有θ的概率会正面向上,有1-θ的概率反面向上。θ是存在的,但是你不知道它是多少。为了获得θ的值,你做了一个实验:将硬币抛10次,得到了一个正反序列:x=HHTTHTHHHH。
无论θ的值是多少,这个序列的概率值为 θ⋅θ⋅(1-θ)⋅(1-θ)⋅θ⋅(1-θ)⋅θ⋅θ⋅θ⋅θ = θ⁷ (1-θ)³
比如,如果θ值为0,则得到这个序列的概率值为0;如果θ值为1/2,概率值为1/1024。可见,这个序列的概率值会因 θ \theta θ 的不同而变化,我们来看一下 概率值 p p p 关于 θ \theta θ 的分布:
贝叶斯理论_第1张图片

这个曲线就是 θ \theta θ似然函数,通过了解在某一假设下,已知数据发生的可能性,来评价哪一个假设更接近 θ \theta θ 的真实值。
注:显然 θ \theta θ 的真实值是 0.5,这里大约为 0.7 是因为样本试验的样本太少,仅10次。另外极大似然估计就是求使得概率值最大的 θ \theta θ


2. 频率学派与贝叶斯学派

关于这两个学派网上有很多大牛的阐述,参见知乎提问,我在这里就不班门弄斧了,只是觉得学习概率论必须要弄清楚这两个学派的区别与联系。
我简单说下我的理解:
(1)频率派认为参数是客观存在,不会改变,虽然未知,但却是固定值;贝叶斯派则认为参数是随机值,由观测到样本或数据决定,因此参数也可以有分布。
(2)贝叶斯学派认为先验分布可以是主观的,它不需要有频率解释。而频率学派则认为,只有在先验分布有一种不依赖主观的意义,且能根据适当的理论或以往的经验决定时,才允许在统计推断中使用先验分布,否则就会丧失客观性。
(3)联系:频率派最常关心的是似然函数,而贝叶斯派最常关心的是后验分布。我们会发现,后验分布其实就是似然函数乘以先验分布再归一化一下使其积分到1。
引用一句经典的话:贝叶斯学派就像是这样一类人,心中隐约期待着一匹马,偶然间看见了一头驴,结果坚信他看到的是一头骡子。


举个例子:
以抛硬币问题为例,假设正面朝上的概率为 θ \theta θ ,用 y y y 表示 N N N 次抛硬币实验中正面朝上的次数。
频率派直接根据 θ = 0.5 \theta = 0.5 θ=0.5 计算 p ( y ∣ θ ) p(y|\theta) p(yθ) ;而贝叶斯学派认为 θ = 0.5 \theta = 0.5 θ=0.5 是不可信的,首先利用给定数据根据贝叶斯定理去验证参数 θ \theta θ,再用重新计算的 θ \theta θ 去做统计推断。

贝叶斯定理
p ( H ∣ D ) = p ( D ∣ H ) p ( H ) p ( D ) p(H|D)=\frac{p(D|H)p(H)}{p(D)} p(HD)=p(D)p(DH)p(H)
先验: p ( H ) p(H) p(H)
似然: p ( D ∣ H ) p(D|H) p(DH)
后验: p ( H ∣ D ) p(H|D) p(HD)
证据: p ( D ) p(D) p(D)
其中,H表示假设,即模型的参数,D表示数据。


3. 贝叶斯分析

以抛硬币为例,假设硬币正面朝上的概率为1,用 y y y 表示 N N N 次抛硬币实验中正面朝上的次数,那么根据贝叶斯定理建立通用模型为:
p ( θ ∣ y ) ∝ p ( y ∣ θ ) p ( θ ) p(\theta|y) \propto p(y|\theta) p(\theta) p(θy)p(yθ)p(θ)那么这里使用的先验 p ( θ ) p(\theta) p(θ) 与似然 p ( y ∣ θ ) p(y|\theta) p(yθ) 分别指什么呢?

3.1 选择似然

使用二项分布作为似然,思考一下为什么选择二项分布?(似然的共轭先验)
p ( y ∣ θ ) = N ! y ! ( N − y ) ! θ y ( 1 − θ ) N − y p(y|\theta) = \frac{N!}{y!(N-y)!} \theta^y(1-\theta)^{N-y} p(yθ)=y!(Ny)!N!θy(1θ)Ny假如我们知道了 θ \theta θ ,那么就可以从二项分布得出硬币正面朝上的分布。如果我们不知道 θ \theta θ ,可以对其赋予一个先验(在贝叶斯统计中,当我们不知道某个参数时,就对其赋予一个先验,然后根据给定的数据更新先验)。

3.2 选择先验

选用贝叶斯统计中最常见的 beta 分布作为先验,思考一下为什么用在模型中使用 beta 分布?
p ( θ ) = Γ ( α + β ) Γ ( α ) Γ ( β ) θ α − 1 ( 1 − θ ) β − 1 p(\theta)=\frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)}\theta^{\alpha-1}(1-\theta)^{\beta-1} p(θ)=Γ(α)Γ(β)Γ(α+β)θα1(1θ)β1

3.3 计算后验

回忆一下贝叶斯定理:
p ( θ ∣ y ) ∝ p ( y ∣ θ ) p ( θ ) p(\theta|y) \propto p(y|\theta) p(\theta) p(θy)p(yθ)p(θ)
对于我们的问题,需要将二项分布乘以 beta 分布:
p ( θ ∣ y ) ∝ N ! y ! ( N − y ) ! θ y ( 1 − θ ) N − y Γ ( α + β ) Γ ( α ) Γ ( β ) θ α − 1 ( 1 − θ ) β − 1 p(\theta|y)\propto \frac{N!}{y!(N-y)!} \theta^y(1-\theta)^{N-y}\frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)}\theta^{\alpha-1}(1-\theta)^{\beta-1} p(θy)y!(Ny)!N!θy(1θ)NyΓ(α)Γ(β)Γ(α+β)θα1(1θ)β1
去掉与 θ \theta θ 不相关的项:
p ( θ ∣ y ) ∝ θ α − 1 + y ( 1 − θ ) β − 1 + N − y p(\theta|y) \propto \theta^{\alpha-1 + y}(1-\theta)^{\beta-1+N-y} p(θy)θα1+y(1θ)β1+Ny
最后后验分布是如下的 Beta 分布:
p ( θ ∣ y ) = B e t a ( α p r i o r + y , β p r i o r + N − y ) p(\theta|y) = Beta(\alpha_{prior}+y, \beta_{prior}+N-y) p(θy)=Beta(αprior+y,βprior+Ny)
注:后验其实可以看做是在给定数据之后更新了的先验。

、、、、、、、写在后面、、、、、、、、
后续会以贝叶斯分析为主题写几篇利用贝叶斯进行数据分析的文章:

  1. 贝叶斯分析之利用线性回归模型理解并预测数据(一)
  2. 贝叶斯分析之利用线性回归模型理解并预测数据(二)
  3. 贝叶斯分析之利用线性回归模型理解并预测数据(三)
  4. 贝叶斯分析之利用逻辑回归对数据进行分类

项目源码:https://github.com/dhuQChen/BayesianAnalysis

你可能感兴趣的:(MachineLearning)