有监督回归:约束条件下的最小二乘法

来源:互联网 发布:苹果刷机 for mac 编辑:程序博客网 时间:2024/04/28 15:10

1.前言

前面介绍的最小二乘学习法,是众多机器学习算法中极为重要的一种基础算法。但是,单纯的最小二乘法对于包含噪声的学习过程经常有过拟合的弱点。如下图所示:



这往往是由于学习模型对于训练样本而言过于复杂。因此,本篇博客将介绍能够控制模型复杂程度的带有约束条件的最小二乘学习法。

2.部分空间约束的最小二乘学习法

在有参数线性模型:


的一般最小二乘学习法中,因为参数{Θj}j=1->b可以自由设置,使用的是如下图所示的全体参数空间:


本篇博客中将要介绍的部分空间约束的最小二乘法,则是通过把参数空间限制在一定范围内,来防止过拟合现象。


在这里,P是满足P^2=P和P’=P的b*b维矩阵,表示的是矩阵P的值域R(P)的正交投影矩阵。如下图所示:


通过附加PΘ=Θ这样得约束条件,参数Θ就不会便宜到值域R(P)的范围外了。

部分统建约束的最小二乘学习法的解Θ’,一般通过将最小二乘学习的设计矩阵Φ置换为ΦP的方式求得的:


对于引言中的例子,如果我们采用了部分空间约束的最小二乘学习法,可以得到如下图所示:


虽然和引言部分使用了同一组数据,但是我在这里添加了一个条件进行约束,将及函数参数限制在cos(2.5x)和sin(2.5x)之内。

通过上面结果,我们也能看到,过拟合现象得到了一定的减轻。

注意:正交矩阵P通常是手动进行设置的,利用的是主成分分析法,正交投影矩阵P也可以基于数据进行设置

3.L2约束的最小二乘学习法

部分空间约束的最小二乘学习法中,只是用了参数空间的一部分,但是由于正交投影矩阵P的设置有很大的自由度,因此在实际中操作起来是有很大难度的。还有一种很不错的方法值得参考——L2约束的最小二乘学习法。


如下图所示:


L2约束的最小二乘学习法的参数空间

L2约束的最小二乘学习法十一参数空间的原点为圆心,在一定半径范围的圆内(大部分是超球)进行求解。R表示的就是圆的半径。

3.1 拉格朗日对偶问题


3.2 拉格朗日对偶问题求解


这里之所以把朗格朗日待定因子λ变为λ/2,是为了乐曲计算域Θ相关的偏微分时产生的2。拉格朗日对偶问题的待定因子λ的解由圆的半径决定。如果不根据半径R来决定λ,而是直接指定的话,L2约束的最小二乘学习法的解Θ’就可以通过下式求得:


上式的第一项Jls(Θ)表示的是对训练样本的拟合程度,通过与第二项的“约束”相结合,来防止对训练样本的过拟合。

方法:对上述目标函数进行关于Θ的偏微分,并设为零,即可求得最小的训练损失

L2约束的最小二乘学习法的解为:


在这里,I是单位矩阵,在L2约束的最小二乘学习法中,通过将矩阵Φ'Φ和λI相加提高其正则性,进而就可以更稳定地进行逆矩阵求解。因此,L2约束的最小二乘学习法也称为L2正则化的最小二乘学习法,其实我们刚才讲的“约束”项正是正则项,λ为正则化参数。

3.3 设计矩阵的奇异值求解

如果考虑设计矩阵Φ的奇异值求解:


L2约束的最小二乘学习法的解Θ’就可以像下式这样表示:


当λ=0时,L2约束的最小二乘学习法就与一般的最小二乘法相同。当设计矩阵Φ的计算条件很恶劣,比如包含非常小的奇异值Kk的时候,Kk/(Kk^2+λ)就会变成非常大的数值,训练输出向量y包含的噪声就会有所增加。另一方面,在L2约束的最小二乘学习法中,通过在分母的Kk^2中加入征得常数λ,使的Kk/(Kk^2+λ)避免变得过大,进而就可以达到防止过拟合的目的。

3.4 平移到高斯核模型

同理,对于下面的高斯核模型:


执行L2约束的最小二乘学习法的实例如下所示:


在这个例子里,带宽h设为0.3,正则化参数λ为0.1。通过加入正则项,使得过拟合现象得到很好地抑制。

4.模型选择与总结

4.1 总结

本篇文章,通过使用部分空间约束的最小二乘学习法或L2约束的最小二乘学习法,使得最小二乘学习过程中的过拟合现象得到了一定成都的缓和。

但是,我们不得不承认,这些方法都过分依赖于正交投影矩阵P和正则化参数λ的选择,在一定策划给你堵上制约了这些方法的实际应用。因此,为了使有约束条件的最小二乘学习法能够得到最好的结果,选择合适的P和λ至关重要。

另外,使用线性模型时,基函数的种类和数量的选择,以及使用核模型时核函数的种类等选择,也都需要进行优化。

对于高斯核的带宽和正则参数λ对学习结果的影响如下图所示:


4.2 模型选择

实际应用中,最常用到的是“交叉验证法”。

在交叉验证法中,把训练样本的一部分拿出来做为测试样本,不将其用来学习,而只用于评价最终学习结果的泛化误差。

具体而言就是按照下图的流程进行泛化误差的评价,通过运用交叉验证法,可以对繁华误差晶型较为精确地评估。


交叉验证法


交叉验证法的算法流程

4.3 交叉验证法的实例

同样,我们还是来研究高斯核模型:


带宽h∈{0.03,0.3,3};正则化参数λ∈{0.0001,0.1,100};分割的几何数m=5。

实验结果如下图所示:


交叉验证试验

结论:(h,λ)=(0.3,0.1)时,误差达到最小值。