概述
Lp正则项
所谓范数即是抽象之长度,通常意义上满足长度的三种性质:非负性、齐次性和三角不等式。
以函数的观点来看,范数是定义在 的函数;并且它和损失函数类似,也具有下确界。后一性质是由范数的非负性和齐次性保证的[4]。这一特性使得 -范数天然适合做正则项,因为目标函数仍可用梯度下降等方式求解最优化问题。 -范数作为正则项时被称为 -正则项。
L0和L1正则项
机器学习模型当中的参数,可形式化地组成参数向量,记为 。不失一般性,以线性模型为例:
由于训练集当中统计噪声的存在,冗余的特征可能成为过拟合的一种来源。这是因为,对于统计噪声,模型无法从有效特征当中提取信息进行拟合,故而会转向冗余特征。为了对抗此类过拟合现象,人们会希望让尽可能多的 为零。为此,最直观地,可以引入 -正则项
通过引入 -正则项,人们实际上是向优化过程引入了一种惩罚机制:当优化算法希望增加模型复杂度(此处特指将原来为零的参数 更新为非零的情形)以降低模型的经验风险(即降低全局损失)时,在结构风险上进行大小为 的惩罚。于是,当增加模型复杂度在经验风险上的收益不足 时,整个结构风险实际上会增大而非减小。因此优化算法会拒绝此类更新。
引入 -正则项可使模型参数稀疏化,以及使得模型易于解释。但 -正则项也有无法避免的问题:非连续、非凸、不可微。因此,在引入 -正则项的目标函数上做最优化求解,是一个无法在多项式时间内完成的问题。于是,人们转而考虑 -范数的最紧凸放松—— -范数,令
和引入 -正则项的情况类似,引入 -正则项是在结构风险上进行大小为 的惩罚,以达到稀疏化的目的。
-正则项亦称LASSO-正则项。[5][6]
L2正则项
在发生过拟合时,模型的函数曲线往往会发生剧烈的弯折,这意味着模型函数在局部的切线之斜率非常高。一般地,函数的曲率是函数参数的线性组合或非线性组合。为了对抗此类过拟合,人们会希望使得这些参数的值相对稠密且均匀地集中在零附近。于是,人们引入了 -范数,作为 -正则项。令
于是有目标函数
於是對於參數 取偏微分
因此,在梯度下降时,参数 的更新
注意到 通常是介于 之间的数[7], -正则项会使得参数接近零,从而对抗过拟合。
-正则项又称Tikhonov-正则项或Ridge-正则项。
提前停止
提前停止可看做是时间维度上的正则化。直觉上,随着迭代次数的增加,如梯度下降这样的训练算法倾向于学习愈加复杂的模型。在时间维度上进行正则化有助于控制模型复杂度,提升泛化能力。在实践中,提前停止一般是在训练集上进行训练,而后在统计上独立的验证集上进行评估;当模型在验证集上的性能不再提升时,就提前停止训练。最后,可在测试集上对模型性能做最后测试。
参考文献
外部链接