PRML 基础知识

Python微信订餐小程序课程视频

https://edu.youkuaiyun.com/course/detail/36074

Python实战量化交易理财系统

https://edu.youkuaiyun.com/course/detail/35475

1 一个经典例子

​ 一个经典的例子就是Polynomial Curve Fitting问题,现在将以此为基础介绍一些基本概念和方法。该问题的主要思路是针对给定的训练集x≡(x1,x2,⋯,xN)Tx≡(x1,x2,⋯,xN)T\mathbf{x}\equiv(x_1,x_2,\cdots,x_N)T与t≡(t1,t2,⋯,tN)Tt≡(t1,t2,⋯,tN)T\mathbf{t}\equiv(t_1,t_2,\cdots,t_N)T,选取适当的模型(在这个问题中是多项式模型)和适当的参数集w=(w0,x1,⋯,wM)Tw=(w0,x1,⋯,wM)T\mathbf{w}=(w_0,x_1,\cdots,w_M)^T使得与拟合结果

y(x,w)=w0+w1x+w2x2+⋯+wMxM=∑j=0Mwjxjy(x,w)=w0+w1x+w2x2+⋯+wMxM=∑j=0Mwjxjy(x,\mathbf{w})=w_0+w_1x+w_2x2+\cdots+w_MxM=\sum_{j=0}Mw_jxj
相应的误差函数(error function)

E(w)=12∑n=1N{y(xn,w)−tn}2E(w)=12∑n=1N{y(xn,w)−tn}2E(\mathbf{w})=\frac12\sum_{n=1}N{y(x_n,\mathbf{w})-t_n}2
最小,这样的参数集ww\mathbf{w}可能就是符合题意的答案。下面指出该思路可能会出现的问题并给出解决办法。

​ 当参数集ww\mathbf{w}中的参数数量MMM过少的时候,通常来说得到的结果拟合程度不足,这时应该适当增加参数数量。然而当参数数量过多的时候,可能会出现拟合过度的情况,即对给定的数据集,模型和参数拟合的很好,但是不能对新的自变量xxx给出合适的因变量估计,这种情况称为过拟合(over-fitting),过拟合出现的原因是对数据集中的噪声进行了过度的重视,导致拟合结果会倾向于将噪声纳也入模型中。出现这种的情况的时候,应该适当减少参数的数量。

​ 评价拟合的合理性的时候,我们仍然使用误差函数,其中的参数集取为已确定的w∗w∗\mathbf{w^*},即

E(w∗)=12∑n=1N{y(xn,w∗)−tn}2E(w∗)=12∑n=1N{y(xn,w∗)−tn}2E(\mathbf{w*})=\frac12\sum_{n=1}N{y(x_n,\mathbf{w*})-t_n}2
但是此时的表达式的值与训练集中的NNN有关,为了直观比较不同NNN的误差函数,现定义**根均方误差(RMS)**如下

ERMS=2E(w∗)N−−−−−−−√ERMS=2E(w∗)NE_{RMS}=\sqrt{\frac{2E(\mathbf{w^*})}{N}}
这是某种意义上的单位化。

​ 虽然现在我们有了基本方法比较不同拟合程度的优劣,但是对于过拟合的情况,仍然没有量化的方法直接指出应该选择什么规模的参数集。一般来说,参数集规模越大,拟合函数的阶数(order)就会越高,则越有可能出现过拟合的情况,因此使用正则化(regularization)方法在误差函数上增加一项惩罚项(penalty term),得到

E(w)=12∑n=1N{y(xn,w)−tn}2+λ2||w||2E(w)=12∑n=1N{y(xn,w)−tn}2+λ2||w||2\tilde{E}(\mathbf{w})=\frac12\sum_{n=1}N{y(x_n,\mathbf{w})-t_n}2+\frac{\lambda}{2}||\mathbf{w}||^2
其中λλ\lambda决定了惩罚项的重要程度,称为正则化参数(regularization coefficient),在求解的时候应选择合适的λλ\lambda的值。这种方法在统计学中被称为收缩(shrinkage)方法。二次正则项的一个特殊情况称为山脊回归(ridge regression)。在神经网络中,这种方法又被称为权值衰减(weight decay)

2 概率论

2.1 概率论基础知识

​ 概率论基础知识已经学过,此处不再赘述。

2.2 贝叶斯观点

​ 通常的概率观点基于重复事件的频率,认为概率及其模型是真实存在的,而事件本身是随机的,这称为概率的经典解释或频率解释(classical or frequentist interpretation of probability)。然而概率还有一种贝叶斯解释(Bayesian interpretation of probability),该观点基于不断的观测和修正,认为真实出现的事件是一种确定的存在,而模型和参数是不确定的随机变量,应随着样本的增加不断修正先验的概率分布。

​ 对于Polynomial Curve Fitting问题来说,我们不妨认为模型是真实存在且确定的,我们需要做的就是根据训练集给出合适的参数集从而解决问题,这是频率主义的思路。但是我们也可以通过同一问题的不同规模的数据集来逐步修正我们的参数集、甚至可以随着数据集规模的增加而否定已经选择的模型,这是贝叶斯主义的思路。

​ 贝叶斯方法的理论基础是贝叶斯定理(Bayes’ theorem),下面以Polynomial Curve Fitting问题为例说明贝叶斯定理更一般的含义

p(w|D)=p(D|w)p(w)p(D)p(w|D)=p(D|w)p(w)p(D)p(\mathbf{w}|D)=\frac{p(D|\mathbf{w})p(\mathbf{w})}{p(D)}
我们的猜想用ww\mathbf{w}表示,也就是说,每次计算完成之后都可能会修正ww\mathbf{w},至于是否修正ww\mathbf{w}取决于p(w|D)p(w|D)p(\mathbf{w}|D)的值。DDD用来表示新的观测值(在Polynomial Curve Fitting问题中可认为是新的数据集)。因此p(w|D)p(w|D)p(\mathbf{w}|D)的意义是在新观测值(新数据集)下猜想ww\mathbf{w}仍然正确的概率,p(D|w)p(D|w)p(D|\mathbf{w})的意义是已知猜想ww\mathbf{w}正确的前提下可以表示(导出)新观测值(新数据集)的概率。通过此式可以评估猜想ww\mathbf{w}是否随着观测量(数据集)的变化仍然具有较高的合理性。如果仍然具有较高的合理性,那么就是说在新观测值(新数据集)下猜想ww\mathbf{w}正确的概率较大;如果不具有较高的合理性,那么就是说在新观测值(新数据集)下猜想ww\mathbf{w}正确的概率较小。

​ 在上述贝叶斯定理中,每个名词都有约定俗称的名称。p(w)p(w)p(\mathbf{w})称为ww\mathbf{w}的先验概率(prior)或边缘概率,之所以称为“先验”是因为它不考虑任何DDD方面的因素,也就是某个猜想的初始概率,在一些问题中我们提出一些备选猜想,不妨设它们的初始概率相同;p(w|D)p(w|D)p(\mathbf{w}|D)是已知DDD发生之后的条件概率,也由于得自DDD的取值而被称为ww\mathbf{w}的后验概率(posterior),后验概率是经过新的数据集DDD训练之后猜想ww\mathbf{w}正确的概率、是经过学习的结果,可以用来指导决策;p(D|w)p(D|w)p(D|\mathbf{w})是ww\mathbf{w}成立时DDD的概率,也就是假设猜想ww\mathbf{w}正确从而得到DDD的概率,可称为相似度(likelihood)或类条件概率密度;p(D)p(D)p(D)是DDD的先验概率或边缘概率,也称作标准化常量,其含义是任何猜想都未知或不确定时的DDD的概率。那么贝叶斯公式可以表示为

后验概率=相似度×先验概率标准化常量后验概率=相似度×先验概率标准化常量\text{后验概率}=\frac{\text{相似度}\times\text{先验概率}}{\text{标准化常量}}
那么就有如下的导出关系

后验概率∝相似度×先验概率(posterior∝likelihood×prior)后验概率∝相似度×先验概率(posterior∝likelihood×prior)\text{后验概率}\varpropto\text{相似度}\times\text{先验概率}\
(\text{posterior}\varpropto\text{likelihood}\times\text{prior})
​ 在频率主义和贝叶斯主义中,都有一个概念叫做似然函数(likelihood function),它描述了在一次试验中取某一观测情况的概率。由于似然函数可以用来评价不同猜想(参数集)下取某一事件的概率,故往往和某一猜想(参数集)结合使用。根据这样的观点,似然函数就是p(D|w)p(D|w)p(D|\mathbf{w})。如果对任意可能的观测情况,似然函数都能取到最大值,那么此时的猜想(参数集)显然是合理的,这就是极大似然(maximum likelihood)方法的原理。在频率主义中,ww\mathbf{w}被认为是固定的参数,它的值通过某种形式的估计(比如说通过极大似然方法确定的极大似然估计)来确定,并且这个估计的误差通过可能的数据集DDD来得到(比如说极大似然估计的误差函数可取广义距离的平方和);而在贝叶斯主义中,只有一个数据集DDD(即实际观测的数据集),认为ww\mathbf{w}服从某种形式的概率分布,故其不确定性通过ww\mathbf{w}的概率分布来表达。

​ 关于极大似然方法的基础知识已经在概率论课程中已经学过,此处不再详细介绍。

​ 本专题将主要基于贝叶斯主义的方法,并在必要的时候介绍一些频率主义的方法。

2.3 再论经典例子

​ 之前我们解决Polynomial Curve Fitting问题的时候采用的是曲线直接拟合的思路,现在从概率角度再次思考这个问题。现在我们有一系列假设(一系列参数集{w1,w2,w3,⋯}{w1,w2,w3,⋯}{\mathbf{w_1},\mathbf{w_2},\mathbf{w_3},\cdots})并选择一个参数集ww\mathbf{w}作为暂时的假设,当给定某一个新的输入x0x0x_0的时候,真实的输出ttt暂时是未知的,但根据已有假设我们可以得到一个预测量t0=y(x0,w)t0=y(x0,w)t_0=y(x_0,\mathbf{w})。不妨认为输出是一个随机变量,直观来看,如果假设是合理的,那么t=t0t=t0t=t_0的概率就应该较大。现认为输出符合**正态分布(或高斯分布,Gaussian distribution)**且这个预测值t0t0t_0就是该正态分布的期望,随着输入的变化,输出可能会对应不同的正态分布。设输入为xxx,则输出ttt的概率满足

p(t|x,w,β)=N(t|y(x,w),β−1)p(t|x,w,β)=N(t|y(x,w),β−1)p(t|x,\mathbf{w},\beta)=N(t|y(x,\mathbf{w}),\beta^{-1})
此式的含义为:在假设ww\mathbf{w}正确并选择参数ββ\beta的前提下输入xxx,得到的值ttt恰好为模型的预测值y(x,w)y(x,w)y(x,\mathbf{w})的概率满足参数β−1β−1\beta^{-1}的条件下的正态分布。也就是说,在假设ww\mathbf{w}正确并选择参数ββ\beta的前提下输入xxx,输出的ttt的概率表达式为

P(t)=12π−−√β−1−−−√exp{−(t−y(x,w))22β−1}P(t)=12πβ−1exp{−(t−y(x,w))22β−1}P(t)=
\frac{1}{\sqrt{2\pi}{\sqrt{\beta{-1}}}}\text{exp}{-\frac{(t-y(x,\mathbf{w}))2}{2\beta^{-1}}}
对于给定训练集而言,有NNN个数据点可供使用,因此可设极大似然函数为

p(t|x,w,β)=∏n=1NN(tn|y(xn,w),β−1)p(t|x,w,β)=∏n=1NN(tn|y(xn,w),β−1)p(\mathbf{t}|\mathbf{x},\mathbf{w},\beta)=\prod_{n=1}NN(t_n|y(x_n,\mathbf{w}),\beta{-1})
对数处理可得

lnp(t|x,w,β)=−β2∑n=1N{y(xn,w)−tn}2+N2lnβ−N2ln(2π)ln⁡p(t|x,w,β)=−β2∑n=1N{y(xn,w)−tn}2+N2ln⁡β−N2ln⁡(2π)\ln p(\mathbf{t}|\mathbf{x},\mathbf{w},\beta)=
-\frac\beta2\sum_{n=1}N{y(x_n,\mathbf{w})-t_n}2+\frac{N}{2}\ln\beta-\frac{N}{2}\ln(2\pi)
一般来说,先通过某些方法得到

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值