特征选择正则化:Lasso Regression
当特征很多且稀疏时,计算非0:
另外,知道哪些特征才是有效特征,比如:对于房价的决定因素有哪些至关重要。
一、特征选择方法一:列举所有子集
特征数和RSS误差平方和的关系:
一开始,特征数越多,误差越小;接下来随着特征数的增加,RSS误差会不再减少。
另外:
当1个特征时,最优特征为:sq.ft. living
当2个特征时,最优特征为:bedrooms和bathrooms。
结论:特征size=k情况下的最优特征,可能并不包含特征size=k-1下的最优特征。
复杂度:
二、特征选择方法二:贪婪算法
一开始先随机选择1个特征,选择1个特征中RSS误差最小的。
然后再加入一个特征,选择使得联合误差最小的特征加入。
再加入一个特征,依旧选择使得联合误差最小的特征加入。
不断循环,直到验证集(而不是训练集、测试集)误差不再减小,停止算法。
复杂度分析:
三、特征选择方法三:正则化
1、Ridge Regression岭回归:L2正则化
使得w足够小,但并不会完全为0
岭回归下的系数变化:
2、Lasso Regression:L1正则化
Lasso回归下的系数随着lambda增大的变化:
四、正则化可视化
1、Ridge Regression岭回归cost可视化
(1)RSS部分:椭圆形eclipse
(2)第二部分:L2 圆形 circle
(3)2部分合并:椭圆形eclipse
2、Lasso回归
(1)第一部分:RSS部分,跟Ridge一样
(2)第二部分:L1
(3)两部分合并
五、最优化Lasso回归cost
之前对于L2求w的方法(梯度为0,梯度下降)已经不管用了,因为L1 |w|的梯度为:
1、coordinate descent坐标下降法
一次所有坐标都最小不可能,那么我们换个思路,每次固定其他所有坐标,只让1个坐标的数最小。
(1)初始化w0---wn
(2)如果算法不收敛:则选择一个wj,其他所有wi都保持不变,求使得cost最小时的wj。
2、归一化特征
按列归一化:
将测试数据都除以归一化因子: