【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合

    高斯分布不必赘述,这里记录个有意思的东西,即从高斯分布和贝叶斯理论出发看曲线拟合(即选择参数w)。

    首先假设我们使用多项式拟合曲线,根据泰勒展开的方法,我们可以用有限项多项式在一定精度内拟合任何曲线。

    我们常常用最小二乘法来求最优系数w(或者说计算损失函数)。主要原因为:残差和存在互相抵消问题,残差绝对值之和难于简练表达计算,而最小二乘法使用的残差平方和表达计算方便,并且可以有效控制离群值。

    此外,在吴恩达的《机器学习》课程中,为了防止过拟合,有一个步骤是添加regularization parameter,即

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合(*)

    其中θ即本文中的多项式系数w,y为本文中的target(也就是目标t),h(x)为本文中的y(x),λ即为regularization parameter,所在一项即为正则(regularization)项。(这个翻译比较不知所云)原理大致为控制多项式项的个数,防止模型过度复杂而造成过拟合。(具体原理需要数学证明,学习之后再补)

    而在本书中,给出了曲线拟合的贝叶斯式的理解:

    假设输入值为x,target为t,我们假定t服从y(x, w)为期望值的高斯分布。即:

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合

    由此我们给出:

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合(1)

    对于多次试验组成的样本,我们有:

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合(2)

    对该式取自然对数,得到:

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合(3)

    根据最大似然估计法,我们要做的就是调节w以最大化lnp(t|x, w, β),显然,这个目标恰等价于没有正则项的最小二乘法。

    另外,通过最大化lnp(t|x, w, β),我们还可以得到β(即方差的倒数)的学习值:

  【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合(4)

    这和样本方差的二阶矩估计法是同样的结果。

    得到w和β的学习值后,我们可以使用这个模型预测target了:

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合(5)

    现在使用贝叶斯思想重新考虑w的确定:假设w的先验分布也是高斯分布。即:

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合(6)

    这里α称为超参数,即控制参数的参数,可暂不考虑。根据贝叶斯理论,即后验概率正比于先验概率乘以目标值的条件概率:

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合(7)

    对上式取对数,结合(2)(3)式,忽略系数和无关于w的项,我们得到了新的优化(最小化)目标:

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合(8)

    鉴于(*)中的λ可以调节,这正是添加正则项后的最小二乘拟合目标(*)。


    对于这种有趣的现象,结合一些常见解释和自己的想法总结一下:

    (1)关于认为t服从y(x, w)为期望值的高斯分布,也就是t与y的偏离符合高斯分布。概率论中常出现高斯分布这个东西,比如中心极限定理。中心极限定理似乎就是上述偏离现象的一种解释,就是说大量随机误差的和趋于高斯分布。中心极限定理是可以通过特征函数证明的(这又是一个坑)。

    这种处理方法本就和最小二乘法不矛盾,因为最小二乘法使用的是残差平方和,平方形式就意味着正片差、负偏差地位相同,并且偏差越大惩罚越重,也就是说我们越认为它不可能出现,这些都和高斯分布是契合的。

    (2)关于认为w的先验分布为高斯分布。这一点是导出式中出现w'w(也就是wi^2,Matlab记为w.^2很漂亮)的关键。(当然,我们也可以把指数项改为exp(w'w)改为exp((w'w)^2),相应的也可以把正则项改为λ*(w'w)^2,导致的结果是ln(p)会对w更加敏感,但不影响本质)。事实上,由于我们使用有限项多项式去拟合曲线,最小二乘法中,我们是把样本值(观测值)当作了真实值,尽可能用样本值来获取更有效的w,然后为了防止w对偏差的过度捕捉增加正则项;而在贝叶斯理论中,无论是w还是t都是有不确定性的,它把t和w当作同等存在。(以上w, t均为向量,即w, t

    这里就看出贝叶斯理论的一个优点,当试验较少时,根据频率学派的方法,会把误差算入实际概率分布,并且样本越少结果越可能得到荒谬的结果,而贝叶斯方法则始终会给出中肯合理的结果。

    如果完整地使用贝叶斯理论来预测新的条件x下的试验结果t,则并不需要对w进行点估计,而是在表示出后验概率后,利用贝叶斯全概率公式求出t的分布p(t)。

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合

    将p(t|x, w)、p(w|x, t)代入求得:

【学习笔记】Pattern Recognition&Machine Learning [1.2] Probability Theory(2) 基于高斯分布和贝叶斯理论的曲线拟合

    这里s^2(x)实际表达式较为复杂,但是可以表示为两项,一项即1/β,也就是t的波动,另一项则是w带来的,这就是贝叶斯处理的结果。