Machine learning 标准化时作为成本函数的L1范数与l2范数

Machine learning 标准化时作为成本函数的L1范数与l2范数,machine-learning,statistics,gradient-descent,Machine Learning,Statistics,Gradient Descent,我有一些数据,其中输入和输出值都是标准化的,所以Y和Y_pred之间的差异总是非常小的 我觉得l2范数对模型的惩罚要小于l1范数,因为将0和1之间的数字平方总是会导致更低的数字 所以我的问题是,当输入和输出都被标准化时,使用二语规范可以吗?这无关紧要 基本理念/动机是如何惩罚偏差。L1范数不太关心异常值,而L2范数严重惩罚这些异常值。这是最基本的区别,你会发现很多优点和缺点,甚至在维基百科上 那么关于你的问题,当预期偏差很小时,它是否有意义:当然,它的行为是一样的 让我们举个例子: y_real

我有一些数据,其中输入和输出值都是标准化的,所以Y和Y_pred之间的差异总是非常小的

我觉得l2范数对模型的惩罚要小于l1范数,因为将0和1之间的数字平方总是会导致更低的数字

所以我的问题是,当输入和输出都被标准化时,使用二语规范可以吗?

这无关紧要

基本理念/动机是如何惩罚偏差。L1范数不太关心异常值,而L2范数严重惩罚这些异常值。这是最基本的区别,你会发现很多优点和缺点,甚至在维基百科上

那么关于你的问题,当预期偏差很小时,它是否有意义:当然,它的行为是一样的

让我们举个例子:

y_real 1.0      ||| y_pred 0.8     ||| y_pred 0.6 
l1:                |0.2| = 0.2         |0.4| = 0.4  => 2x times more error!
l2:                0.2^2 = 0.04        0.4^2 = 0.16 => 4x times more error!

你看,这个基本思想仍然适用

谢谢你的回复。如果我们使用L2范数,那么由于误差较低,在梯度下降的每次迭代中,权重只会得到非常轻微的修正。那么,它应该需要更多的训练迭代来收敛到最优权重。不,这不仅仅是关于一个权重的梯度大小。更多的是关于关节渐变。这是一种思考,在一个只有本地权重和全局权重的环境中,所有这些权重在一起是如何表现的。此外:学习率调整始终很重要!因此,总的答案还有很多要说的;但这样讨论太复杂了;平滑度与合作:这取决于问题。@sascha你不认为你的解释是错误的吗?L2不会像L1那样惩罚异常值。在您的示例中,L1将y=0.6的预测惩罚为0.4,这远远大于L2范数对0.16的惩罚。@RaghavendraSS不将0.4的值与0.16的模型间比较进行比较。比较模型内惩罚的增长情况。当l1希望将预测值推到0.8而不是0.6时,l2在这两个误差之间推了一个更强的因子4;而l1只有2x@sascha但成本很重要,对吗?不是比率。同样根据你的类比,L2将严重惩罚异常值,反过来模型将尝试拟合该异常值。在这种情况下,模型将表现不佳,因为它试图拟合异常值。