过拟合:
我们使用太多的变量去学习一个过度复杂的模型,此模型过度配合训练数据,几乎完全适合(或者完全适合)所有训练数据(损失函数几乎为0),导致不能泛化的预测实际数据
如下图:
例子如下:
还有一种情况就是使用太多的特征,然后数据却不是远大于特征数,那么也会产生过拟合,解决办法如下:
1、减小模型复杂度
选主要的特征保留,去掉高的多项式(减少模型复杂度)
去掉的特征有可能也会少部分影响预测
2、正则化:
保留所有的特征,但是减少某些的参数的值
正则化:
目的:让高项式和相关度低的特征的参数变的尽可能小,以使模型更平滑更简单,让模型不易于过拟合
实际上我们会加上公式(后面图中有)让所有参数都减少
如下图:对高的多项式让其参数尽量的小,这样就高的多项式的影响就会微乎其微但是又能保留其一些影响力,会让预测效果更好
通过在代价函数后面,加上对应参数的高多项式来实现(如下图)
这样就既能让所有特征和高多项式保留,又能减少过拟合
下面粉红色的部分就是正则式,前面的符号是正则化参数,
因为训练中我们不知道哪个高项式才算特别高得减少,哪个特征相关度低要减少,所以我们会对除了0之外的所有参数都进行减少(一般不包括第0个参数,不过如果加上对结果影响也不大)如下图的公式;
这样训练出来的模型更简单,很难过拟合
如果正则化参数设置过大,除第0个参数,其他参数的惩罚度都是很大,模型相当于一个直线,欠拟合,所以设置合适的正则化参数很重要
之前说过如果特证数大于样本数,那么X的倒置和X的内积是不可逆的,但是应用正则化之后,下图括号中的式子却是可逆的,让线性回归更难过拟合