过拟合(overfitting):模型只能拟合训练数据的状态。即过度训练。
避免过拟合的几种方法:
①增加全部训练数据的数量(最为有效的方式)
②使用简单的模型(简单的模型学不够,复杂的模型学的太多),这里的简单指的是不要过于复杂
③正则化(对目标函数后加上正则化项):使得这个“目标函数+正则化项”的值最小,即为正则化,用防止参数变得过大(参数值变小,意味着对目标函数的影响变小),λ是正则化参数,代表正则化惩罚的强度,当λ=0时,意味着不使用正则化,反正λ越大,代表对参数的变大抑制作用越强。
两种正则化方法:
①L1正则化使得对判定为不需要的参数会直接让它变为0,即直接去除不要的变量
②L2正则化会抑制参数,使变量的影响不会过大。
欠拟合(underfitting):与过拟合状态相反,即过度不训练。
过拟合就是能很好拟合训练数据,对测试数据的拟合效果不好;欠拟合是既不能拟合训练数据,又不能拟合测试数据;所以要判断模型是过拟合还是欠拟合通过测试数据的精度数值观测是无法区分的。
那么怎么通过数值判断模型是过拟合还是欠拟合状态?
欠拟合:训练精度下降,测试精度上升
欠拟合图像特点:训练曲线和测试曲线最终趋于一个定值,这个定值明显大于1
过拟合:训练精度一直很高,测试精度上升
过拟合图像特点:训练曲线趋于一个定值a,测试曲线趋于一个定值b,a和b之间有一定且明显的差距