正则化:L0 vs L1 vs L2

  • 为什么正则化可以缓解过拟合?
    过拟合时,拟合函数的系数往往非常大。过大的权重会导致模型过多地学习到某些数据的个性特征,从而导致过拟合。更少的参数(实际是更多的参数取值为0或取值趋于0),模型倾向于变得简单。
    规则化函数可以有多种选择,不同的选择产生的效果也不同。不过其一般是模型复杂度的单调递增函数,即模型越复杂,规则化的值越大。通常,我们将其定为模型中参数向量的范数。
  • L0范数
    向量中非0元素的个数。希望中大部分元素是0,实现稀疏。
  • L1范数
    向量中各元素的绝对值之和。也叫Lasso Regularization。也可以实现稀疏化,通过将无用特征对应的参数置为0实现。
    • L0 vs L1
      L0和L1都可以实现稀疏化。稀疏化的好处,一是进行特征选择,二是可解释性强。不过一般使用L1而不使用L0的原因在于,一是L0很难优化求解,是NP难问题;二是因为L1是L0的最优凸近似,比L0更容易优化求解。
  • L2范数
    向量中各元素平方和然后开方。用在回归中也称为岭回归(Ridge Regression)。
    L2缓解过拟合的原理是,其使得中每个元素都很小,趋近于0,但不会等于0。这样子得到的模型的抗干扰能力强。因为当参数值很小时,即使样本数据发生很大的变化,模型预测值的变化也会很有限。
    • L1 vs L2
      参数更新时,L1通过将减去一个值使得慢慢变为0,其会趋于产生较少的特征,在特征选择的时候很有用;L2通过将乘上一个小于1的值使得趋近于0但不会等于0,其会趋于选择更多的特征,但特征对应的权重值接近于0。

你可能感兴趣的:(正则化:L0 vs L1 vs L2)