1.3. 内核岭回归
内核岭回归 (KRR) [M2012] 将 岭回归 和 分类 (l2正则化的线性最小二乘法)与核技巧结合在一起 。 因此,它学习了由各个内核和数据产生的在空间中的线性函数。 对于非线性内核,这对应于原始空间中的非线性函数。
KernelRidge
学习的模型形式与支持向量回归(SVR
)相同。但使用了不同的损失函数(loss functions):KRR使用平方误差损失函数(squared error loss),而支持向量回归使用$\epsilon$-不敏感损失函数($\epsilon$-insensitive loss),两者都结合了l2正则化。与SVR
相反,拟合KernelRidge
可以以封闭形式完成,对于中等大小的数据集来说通常更快。另一方面,学习的模型是非稀疏的,因此比SVR要慢,SVR在预测时学习的是一个$\epsilon > 0$的稀疏模型。
下图比较了人工数据集上的KernelRidge
和 SVR
,人工数据集由正弦目标函数和每五个数据点添加的强噪声组成。图中分别绘制了KernelRidge
和SVR
学习到的回归曲线,两者都利用网格搜索优化了RBF核的复杂度/正则化(complexity/regularization)和带宽(bandwidth)。它们学习到的函数(learned functions)非常相似;但是,拟合KernelRidge
比拟合SVR
(两种方法都使用网格搜索)快7倍。然而,由于SVR
只使用100个训练数据点中的约1/3作为支持向量来学习稀疏模型,因此SVR
预测100000个目标值比 KernelRidge
快3倍以上。
下一个图比较了不同大小训练集的KernelRidge
和SVR
的拟合和预测时间。对于中等规模的训练集(少于1000个样本),拟合KernelRidge
比SVR
快;但是,对于较大的训练集,SVR
效果更好。在预测时间方面,由于学习到的稀疏解,SVR
在所有不同大小的训练集上都比KernelRidge
快。请注意,稀疏度和预测时间取决于SVR
的参数$\epsilon$和参数$C$,$\epsilon = 0$将对应于稠密模型。
参考文献:
[M2012] “Machine Learning: A Probabilistic Perspective” Murphy, K. P. - chapter 14.4.3, pp. 492-493, The MIT Press, 2012
(C) 2007 - 2019, scikit-learn 开发人员(BSD许可证)。显示此页源码