吴恩达机器学习day6——过拟合问题
·
过拟合问题
看这个图,从左到右分别是欠拟合(高偏差)、恰到好处、过拟合(高方差),模型越来越拟合数据集的曲线,最终能够使得训练数据集上的损失为0。然而,这样的模型对于新的数据的预测能力很差,泛化能力差。(过于精确更会受到极端值、误差的影响)

同样,分类问题也会出现过拟合的现象:

那么,如何解决过拟合问题呢?
方法一:增加训练数据集。但是有时候数据集就那些,没有更多例子了。
方法二:看看可不可以减少些特征,比如减少多项式特征,最终选择最适合的特征集(也就是特征选择),可以根据你的直觉来选择特征集。但这种方式同时也会舍弃掉本来对模型有用的特征。
方法三:正则化。正则化做的就是通过降低权重的方式,更温和地减小某些特征的影响。
正则化
正则化代价函数
正则化的原理:

那么问题来了,如果你不知道应该给哪些特征加上正则化的惩罚策略呢?你不知道哪些参数很重要,哪些参数不重要呢?——那就给所有的wj都加上惩罚。
因此,可以得出更高级的损失函数,也就是加上正则化项的损失函数:

这里的lambda也叫正则化参数,可以理解为惩罚力度。如果设置的过小,模型可能依然出现过拟合的现象;如果设置的过大,那每个wj都会几乎为0,可能导致模型完全由b决定,成为一个直线,出现欠拟合的现象。
正则化——线性回归
其实就是在原本的损失函数上加上正则化的,然后进行梯度下降
要注意一个点是,我们不对b进行正则化,因为b的正则化没什么影响,只对权重正则化就好,因此,在更新wj和b的时候,也只需要在更新wj的时候加上对应的正则化项。

正则化——逻辑回归
和线性回归一样,梯度下降的时候wj加上正则化的部分
就是f不一样,不过和正则化无关
不写了
更多推荐
所有评论(0)