机器学习中的规则化之L0、L1和L2范数

监督机器学习问题无非就是再规则化参数的同时最小化误差。

  • *最小化误差是为了让我们的模型拟合我们的训练数据,而规则化参数是防止我们的模型过分拟合我们的训练数据。

规则化参数的作用:

  • *使得模型简单,且具有好的泛化性能(也就是测试误差小)
  • *将人对这个模型的先验知识融入到模型的学习当中,使得模型具有稀疏、低秩、平滑等等特性。

规则化符合奥卡姆剃刀原理

  • *思想:在所有可能选择的模型中,我们应该选择很好地解释已知数据并且十分简单的模型。规则化是结构风险最小化策略的实现,是在经验风险上加了一个正则化项(regularizer)或者惩罚项(penalty term).

一般监督学习可以看做最小化下面的目标函数:

这里写图片描述
- *机器学习大部分模型目标函数基本都是如此,无非就是变换这两项而已。
-第一项LOSS函数:
– square loss, 那就是最小二乘;
– log-Loss, 那就是Logistic Regression;
–Hinge Loss, 那就是SVM;
–exp-Losss, 那就是牛逼的Boosting了;
– …

L0范数与L1范数

  • *均可以实现稀疏,但是一般不用L0,而用L1,是因为1、L0范数很难优化求解(NP难问题);2、L1范数是L0范数的最优凸近似,而且它比L0范数要容易优化求解。
  • *稀疏的目的:
    – 1.特征选择:它能实现特征的自动选择,稀疏规则化算子的引入就是为了完成特征自动选择的光荣使命,它会学习地如掉这些没有信息的特征,也就是把这些特征对应的权重置为0。
    – 2.可解释性:模型中影响的关键分类的关键因素。

L2范数

  • *它的强大功效:改善机器学习里面的一个非常重要的问题:过拟合。
  • *我们可以使得w的每一个元素都很小,都接近于0,但与L1范数不同,它不会让它等于0,而是接近于0,这里是有很大的区别的哦。
  • *越小的参数说明模型越简单,越简单的模型则越不容易产生过拟合现象。
  • *L2范数的作用:
    –1.学习理论的角度:
    L2范数可以防止过拟合,提升模型的泛化能力。
    –2.优化计算的角度:
    从优化或者数值计算的角度来说,L2范数有助于处理 condition number不好的情况下矩阵求逆很困难的问题。
    例如:因为目标函数如果是二次的,对于线性回归来说,那实际上是有解析解的,求导并令导数等于零即可得到最优解为:
    这里写图片描述
    然而,如果当我们的样本X的数目比每个样本的维度还要小的时候,矩阵XTX将会不是满秩的,也就是XTX会变得不可逆,所以w*就没办法直接计算出来了。或者更确切地说,将会有无穷多个解(因为我们方程组的个数小于未知数的个数)。也就是说,我们的数据不足以确定一个解,如果我们从所有可行解里随机选一个的话,很可能并不是真正好的解,总而言之,我们过拟合了。
    但如果加上L2规则项,就变成了下面这种情况,就可以直接求逆了:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值