ESL作业笔记2.5:最小二乘法预测输出的误差期望

来源:互联网 发布:淘宝药品现在要怎么买 编辑:程序博客网 时间:2024/06/07 04:59

本文章基本是对https://stats.stackexchange.com/questions/130998/explanation-of-formula-for-median-closest-point-to-origin-of-n-samples-from-unit 的翻译。
解决问题为Element of Statistical Learning (ESL, https://web.stanford.edu/~hastie/ElemStatLearn/)课后习题2.5.


题目简介

使用最小二乘法可以得到一个线性回归模型,然后使用得到的模型可以得到预测输出,这里面讨论这个预测输出和目标值之间的误差期望。
书中给出了公式却没有推导,作为课后题的形式出现。公式如下:

EPE(x0)=δ2+EτxT0(XTX)1x0δ2,Ex0EPE(x0)=δ2(p/N)+δ2

其中EPE为expected prediction error,期望预测误差的缩写。N为样本数,p为输入维度,X为训练集。假设目标函数为Y=XTβ+ϵ,并且ϵN(0,δ)。模型为y^=xTβ^EPE(x0)为输入为x0的时候期望预测误差,Ex0EPE(x0)对所有可能输入求取预测误差的期望值。假设X分布的均值期望为0。

题外话稍微分析一下两个公式,在基于多种假设的情况下,预测误差与输入有关,取决于x0X的相关程度。一个定性的结论是x0越接近X中心,误差期望越小。这个也符合直觉,不同于knn是local method,least square是用训练集的X^TX去近似整个输入域的E(X^TX),类似的还有XY近似整个输入输出域的E(XY),所以这个近似在训练集所在邻域准确性高,误差小。
再看整个输入域的预测误差期望,这个可以近似常说的complexity。这个公式结论的得出是基于N足够大,X的选取足够随机,X的均值为0等强假设的。虽然假设不一定成立,但是得到强假设条件下的结论,有助于对模型进行定性的分析,况且上诉假设中的部分可以通过预处理、控制采样过程等方法近似执行。全域的预测误差期望最终的公式非常简洁,其中δ为问题原有参数,不可控制,可看到最终期待误差随p增大递增,N增大递减,p和N之间是线性关系(这里就不同于knn的指数关系了,所以对于高维数据有限样本数,least square是要优于knn的)。

公式推导

1. 解最小二乘法

对MSE(mean square error)求导,导数为0的点即为最优解。

β^=argminβ(XTβY)T(XTβY)(XTβY)T(XTβY)β=2(XTβY)TXT=0β^=(XXT)1XY=(XXT)1X(XTβ+ϵ)=β+(XXT)1Xϵ

这里还有些题外话:得到最优解之后其实可以稍微分析一下最优解的性质。可以看出Eτβ^=β,所以在上诉n多假设满足的条件下,最优解的期望是和目标值相同的。而β^的协方差为

Cov(β^)======Eτ((XXT)1Xϵ)(XXT)1Xϵ)TEτ((XXT)1XϵϵTXT(XTX)1)EXEY|X((XXT)1XϵϵTXT(XTX)1)EX((XXT)1XEY|X(epsilonϵT)XT(XTX)1)EX((XXT)1Xδ2INXT(XTX)1)δ2EX((XTX)1)

所以β^的协方差与训练集X的性质相关。

把求得的最优解带入模型记得

y^0====xT0(β+(XXT)1Xϵ)xT0β+xT0(XXT)1XϵxT0β+(X(XTX)1x0)TϵxT0β+i=1Nli(x0)ϵi,

2. EPE(x0)的求解

首先对公式加减项方便之后做拆分

EPE(x0)==Ey0|x0Eτ(y^0y0)2Ey0|x0Eτ((y^0Eτy^0)+(Eτy^0xT0β)ϵ0)2

可看到这里是三项式相加之后平方的期望值,在执行平方操作之前,首先分析分析每个单项的性质。最后将所有得到的性质带入上诉公式,即可推导出题目中的第一个公式。
对于项ϵ,因为ϵN(0,δ),所以有

Ey0|x0Eτϵ0=Ey0|x0ϵ0=0Ey0|x0Eτϵ20=Ey0|x0ϵ20=δ2

对于三项中的前两项都要先求出Eτy0,推导过程如下(基于X与x0无关的假设):
Eτy^0====Eτ(xT0β+i=1Nli(x0)ϵi)xT0β+Eτ(i=1Nli(x0)ϵi)xT0β+i=1NEτ(li(x0))Eτ(ϵi)xT0β

最后分析三项中的第一项y^0Eτy^0。其期望值显而易见是0;下面分析其方差。过程中首先利用y^0为标量的性质将平方和转化为矩阵乘法,然后为了分离出ϵϵT,将Eτ转换为EXEY|X,而ϵX无关。推导过程如下:
Eτ(y^0Eτy0^)2=======Eτ(xT0(XXT)1Xϵ)2Eτ(xT0(XXT)1Xϵ)(xT0(XXT)1Xϵ)TEτ(xT0(XXT)1XϵϵTXT(XTX)1x0)EXEY|X(xT0(XXT)1XϵϵTXT(XTX)1x0)EX(xT0(XXT)1XEY|X(ϵϵT)XT(XTX)1x0)EX(xT0(XXT)1Xδ2INXT(XTX)1x0)δ2EX(xT0(XTX)1x0)

综上,将上诉所有性质代入EPE公式中,并对其平方项展开,得到如下结论:
EPE(x0)=====Ey0|x0Eτ((y^0Eτy^0)+(Eτy^0xT0β)ϵ0)2Ey0|x0Eτ((y^0Eτy^0)2+(Eτy^0xT0β)2+ϵ20+2(y^0Eτy^0)(Eτy^0xT0β)+2(Eτy^0xT0β)ϵ02(y^0Eτy^0)ϵ0)Ey0|x0Eτ((y^0Eτy^0)2+ϵ20)δ2EX(xT0(XTX)1x0)+δ2δ2Eτ(xT0(XTX)1x0)+δ2

3. 求解Ex0EPE(x0)

这里最重要的方法就是引入了trace,因为Ex0EPE(x0)为标量,所以Ex0EPE(x0)=Ex0trace(EPE(x0))。然后trace操作有很多优良的性质,比如和期望操作E可以任意调换位置;trace(AB)=trace(BA)。基于上诉两个性质,即可做如下推导:

Ex0EPE(x0)===δ2Ex0EXtrace(xT0(XTX)1x0)+δ2δ2Ex0EXtrace((XTX)1x0xT0)+δ2δ2trace(EX((XTX)1)Ex0(x0xT0))+δ2

然后利用假设:X的均值为0,N足够大,抽样足够随机等。可以得到结论:EX(XTX)=NCov(x)=NEx0(x0xT0)
代入公式得到:

Ex0EPE(x0)==δ2trace(Ip/N)+δ2δ2(p/N)+δ2

阅读全文
0 0
原创粉丝点击