SVM支持向量机系列理论(九) 核岭回归

本文介绍了岭回归及其核方法的基本原理,探讨了如何通过引入核技巧解决非线性回归问题,并对比了线性岭回归与核岭回归的计算复杂度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 岭回归问题

岭回归就是使用了L2正则化的线性回归模型。当碰到数据有多重共线性时(自变良量存在高相关性),我们就会用到岭回归

岭回归模型的优化策略为:

minw    1Ni(yiwzi)2+λNwTw       (1) m i n w         1 N ∑ i ( y i − w ⋅ z i ) 2 + λ N w T w               ( 1 )

我们由representer Theorem 可以知道,任何L2正则化的线性模型都可以使用 w=Ni=1 βi zi       (2) w = ∑ i = 1 N   β i   z i               ( 2 ) 进行转换,进而使用核技巧

将(2)代入(1),可以得到 kernel ridge regression 的学习策略形式:

minβ    1Ni(yiNj=1 βjK(zi,zj))2+λNNi=1 Nj=1 βiβjK(zi,zj)       (3) m i n β         1 N ∑ i ( y i − ∑ j = 1 N   β j ⋅ K ( z i , z j ) ) 2 + λ N ∑ i = 1 N   ∑ j = 1 N   β i β j K ( z i , z j )               ( 3 )

写成向量形式,kernel ridge regression 的学习策略为:

minβ    L(β)=1N(βTKTKβ2βTKTy+yTy)+λNβTKβ       (4) m i n β         L ( β ) = 1 N ( β T K T K β − 2 β T K T y + y T y ) + λ N β T K β               ( 4 )

利用 常用的矩阵求导公式,可以得出(6),而且K的对称半正定矩阵,导出(7)。

β  L(β)=β  1N(βTKTKβ2βTKTy+yTy)+λNβTKβ       (5) ▽ β     L ( β ) = ▽ β     1 N ( β T K T K β − 2 β T K T y + y T y ) + λ N β T K β               ( 5 )

                =β  2N(KTKβKTy)+λN(KTβ+Kβ)      (6)                                 = ▽ β     2 N ( K T K β − K T y ) + λ N ( K T β + K β )             ( 6 )

                =β  2N(KTKβKTy)+2N(λKTβ)      (7)                                 = ▽ β     2 N ( K T K β − K T y ) + 2 N ( λ K T β )             ( 7 )

令(7) 等于0,得到:

β=(λI+K)1y        (8) β = ( λ I + K ) − 1 y                 ( 8 )

问题

  • K是一个稠密的矩阵,大部分项都不会为0,计算困难
  • 求逆过程需要 O(N3) O ( N 3 ) 的计算复杂度

结论

解决一个“非线性回归问题”的不简单,计算代价很高

核岭回归和岭回归的计算复杂度比较:

这里写图片描述

  • 在线性岭回归模型中,模型复杂度和特征维度d有关,而非线性核岭回归中,模型复杂度与样本数N有关,因此对于大数据的样本来说,使用核技巧比较困难。
  • 核岭回归由于有核函数,使用起来更加灵活。

  • 核岭回归其实也被称为最小二乘SVM(LSSVM),代表损失函数是最小二乘法的SVM。和普通的软间隔SVM相比, β β 的值大部分不为0其支持向量非常多,,也就是是稠密的,而并不像soft-SVM中的 α α 一样,大部分 α α 为0,因此核岭回归在实际中的应用并不是很常见,而支持向量回归(SVR的在回归问题中用比较广泛。

### 岭回归支持向量机的融合方法 构建一个融合岭回归支持向量机SVM)的混合机器学习模型可以通过多种方式实现。以下介绍两种常见的策略:集成学习和特征级联。 #### 集成学习方法 在集成学习框架下,可以采用投票机制或堆叠技术来结合岭回归支持向量机的结果。具体来说: - **投票机制** 对于分类任务,分别训练岭回归支持向量机作为独立基模型,并让它们各自预测测试样本所属类别。之后,可以根据多数表决原则确定最终预测结果[^1]。 - **堆叠技术 (Stacking)** 将岭回归支持向量机视为底层基础估计器,在此基础上再引入一个新的元模型(Meta-model)。该元模型接收两者的输出作为输入特征并完成最终预测。这种方法允许更复杂的组合关系被捕捉到[^2]。 ```python from sklearn.linear_model import RidgeClassifier from sklearn.svm import SVC from sklearn.ensemble import VotingClassifier, StackingClassifier from sklearn.datasets import make_classification from sklearn.model_selection import train_test_split X, y = make_classification(n_samples=1000, n_features=20, n_informative=2, n_redundant=10, random_state=42) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42) ridge_clf = RidgeClassifier() svc_clf = SVC(probability=True) voting_clf = VotingClassifier(estimators=[('ridge', ridge_clf), ('svc', svc_clf)], voting='soft') stacking_clf = StackingClassifier(estimators=[('ridge', ridge_clf), ('svc', svc_clf)]) voting_clf.fit(X_train, y_train) stacking_clf.fit(X_train, y_train) ``` #### 特征级联方法 另一种思路是从数据处理的角度出发,先利用某种降维或者变换手段提取出适合不同算法特点的新表征形式,然后再把这些新特性拼接起来送入后续统一的学习流程当中去。例如: - 使用PCA或其他线性转换技巧得到一组适用于岭回归分析的数据表示; - 同时保留原始空间中的某些非线性结构供SVM挖掘探索; - 最终将二者串联形成扩展后的属性集合供给单一目标函数优化求解过程使用[^3]。 需要注意的是,当实际操作此类复合架构设计的时候,往往还需要考虑诸如超参数调节、交叉验证评估等方面的内容以确保整体方案的有效性和稳定性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值