正则化
过拟合问题
对于模型,如果一个模型对于数据的偏差很大,不能能够很好的拟合数据的分布,称为欠拟合,或者说这个算法具有高偏差的特性。 如果一个模型虽然可以穿过所有的数据点,但是其图像波动很大,其同样也不能描述数据的分布,(其数据的分布是无法被泛化处理),称为过拟合,或者说这个算法具有高方差的特性。 在这种情况下,模型的参数过于多(有可能代价函数正好为0),以至于可能没有足够多的数据去约束它来获得一个假设函数。 过拟合现象往往会发生在参数过多,而训练样本过少的情况。减小过拟合现象的思路有两种:
- 尽可能的去掉那些影响因素很小的变量,这种方法虽然解决了过拟合问题,但是损失了精度。
- 正则化(Regularization)
代价函数的正则化
对于代价函数:
增加两个惩罚项
和
,
代价函数变为:
如果要最小化这个函数, 那么
与
就要尽可能的接近0, 那么最后拟合的结果(假设函数):
, 仍然是一个类似的二次函数. 正则化的基本思想是如果所有的参数足够小,那么假设模型就更简单。
事实上,如果参数足够小,得到的函数就会越平滑,越简单,越不容易出现过拟合的问题
在实际上,对于大量的特征和大量的参数, 比如
和
, 我们无法确定哪些参数是高阶项的参数,这个时候采用的方法就是对代价函数进行修改,使得所有的参数都尽可能的小。 修改后的代价函数方程:
其中
称为正则化项,它的目的是为了缩小每一项的参数。
是否正则化对结果影响不大 λ的作用是对“ ”号的前后(前:更好的拟合训练集,后:假设函数足够简单)两项进行取舍平衡,称为正则化系数
如果λ被设置的太大,那么所有参数的惩罚力度被加大,这些参数最后的结构都将全部接近于0,那么最后的假设函数将会变成
,最终导致欠拟合。