1. 岭回归问题
岭回归就是使用了L2正则化的线性回归模型。当碰到数据有多重共线性时(自变良量存在高相关性),我们就会用到岭回归。
岭回归模型的优化策略为:
minw 1N∑i(yi−w⋅zi)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β 1N∑i(yi−∑Nj=1 βj⋅K(zi,zj))2+λN∑Ni=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)的在回归问题中用比较广泛。