为什么要研究正则化?
机器学习需要找到的是从训练数据分布上学习一些特征且能在新数据上泛化好的算法。泛化好的算法我们才能用来对未知数据做预测。
但在实践中,我们有太多可选择的函数来拟合训练数据与对应结果之间的关系,即便选定某一种函数,这个函数的具体形式也是有很多种的。
这些不确定因素导致模型容量很不容易控制,对训练数据学习特征的多少很不容易把握,有时学到特征太少了(欠拟合),在训练集上都表现不好,有时学到的特征太多了,噪声特征也学到了(过拟合),导致模型在训练数据上表现很好,但在测试数据上较差。很难做到恰恰好。
正则化策略就是将过拟合情况变成正常拟合情况最常用也是很有效的一种方式。当然解决过拟合的方法还有好多。
什么是正则化?
Deep Learning中正则化定义大意是 对算法的修改达到减少泛化误差的目的(可能会增大训练误差为代价)。
过拟合就是模型容量太大导致对训练数据学到了太多噪声特征,正则化就是将我们对特定任务的先验知识通过约束和惩罚的形式达到控制模型容量的目的,最终实现提高泛化能力的效果,帮助我们选择到在特定任务上更合适的模型。
常用的正则化手段如下: