范数(L0、L1、L2)

范数
在线性代数,函数分析等数学分支中,范数(Norm)是一个函数,其赋予某个向量空间(或矩阵)中的每个向量以长度或大小。对于零向量,另其长度为零。直观的说,向量或矩阵的范数越大,则我们可以说这个向量或矩阵也就越大。有时范数有很多更为常见的叫法,如绝对值其实便是一维向量空间中实数或复数的范数,而Euclidean距离也是一种范数。
L-P 范数,p-norm定义为:
这里写图片描述
根据P的变化,范数也有着不同的变化,一个经典的有关P范数的变化图如下:
范数(L0、L1、L2)_第1张图片
L0范数
L0范数并不是一个真正的范数,它主要被用来度量向量中非零元素的个数,所以在通常情况下,大家都用的是:
这里写图片描述
表示向量x中非零元素的个数。正是L0范数的这个属性,使得其非常适合机器学习中稀疏编码,特征选择的应用。通过最小化L0范数,来寻找最少最优的稀疏特征项。但不幸的是,L0范数的最小化问题在实际应用中是NP难问题。因此很多情况下,L0优化问题就会被relaxe为更高维度的范数问题,如L1范数,L2范数最小化问题。
L1范数
L1范数是我们经常见到的一种范数,它的定义如下:
这里写图片描述
表示向量x中非零元素的绝对值之和。
L1范数有很多的名字,例如我们熟悉的曼哈顿距离、最小绝对误差等。
由于L1范数的天然性质,对L1优化的解是一个稀疏解,因此L1范数也被叫做稀疏规则算子。通过L1可以实现特征的稀疏,去掉一些没有信息的特征。
L2范数
L2范数是我们最常见最常用的范数了,我们用的最多的度量距离欧氏距离就是一种L2范数,它的定义如下:
这里写图片描述
表示向量元素的平方和再开平方。
L2范数通常会被用来做优化目标函数的正则化项,防止模型为了迎合训练集而过于复杂造成过拟合的情况,从而提高模型的泛化能力。

参考文献:
https://blog.csdn.net/shijing_0214/article/details/51757564
http://blog.sciencenet.cn/blog-253188-968555.html
https://blog.csdn.net/zouxy09/article/details/24971995

你可能感兴趣的:(深度学习)