我们所学习到的所有的学习模型都会有一个共同的优化目标:
其中, 称为“结构风险”描述的是模型f的某些性质。
是经验风险,描述的是模型与训练数据的契合程度,C用于对二者进行折中。
经验风险
经验风险针对不同的学习模型有不同的计算方法。
平方损失–线性回归
0-1逻辑损失–逻辑回归
hinge损失–支持向量机
指数损失–AdaBoost
结构风险
又被称为正则化项,C被称为正则化常数,Lp范数是常用正则化项。
正则化项主要是在降低经验风险的同时能够降低最小化训练误差的过拟合风险。过拟合问题主要是提高模型的泛化能力,模型越复杂的时候,对于训练集的偏差会很小,但是在测试集时会导致偏差很大,从而整个模型不能适应新的样本,模型越复杂,模型的方差越大,过拟合现象越严重。
为什么会出现模型不能适应新的样本呢?
特征有成千上万,如果都去拟合的话,就会出现过拟合。
L1范数–LASSO:
L1范数表示向量中每个元素绝对值的和:
L1范数的解通常是稀疏性的,倾向于选择数目较少的一些非常大的值或者数目较多的insignificant的小值。
采用L1 regularizer,它的优良性质是能产生稀疏性,导致 W 中许多项变成零。
L2 范数–ridge regression:
L2范数即欧氏距离
采用L2 regularizer,使得模型的解偏向于 norm 较小的 W,通过限制 W 的 norm 的大小实现了对模型空间的限制,从而在一定程度上避免了 overfitting 。不过 ridge regression 并不具有产生稀疏解的能力,得到的系数 仍然需要数据中的所有特征才能计算预测结果,从计算量上来说并没有得到改观.
总结
L2范数倾向与w的分量取值尽量均衡,即非零分量个数尽量稠密。而L0范数和L1范数则倾向于w的分量尽量稀疏,即非零分量个数尽量少。
L1范数和L2范数正则化都有助于降低过拟合风险,L1范数比L2范数更容易获得稀疏解,求得的解w会有更少的非零分量。