定义
范数是将向量映射到非负值得函数,常被用来衡量一个向量的大小。
常用向量范数
范数类型 | 计算公式 | MATLAB调用 | 补充解释 |
---|---|---|---|
L1范数L1范数 | ∥x∥1=∑ni=1|xi|‖x‖1=∑i=1n|xi| | norm(x,1) | 向量元素的绝对值之和 |
L2范数L2范数 | ∥x∥=∑ni=1x2i−−−−−−−√‖x‖=∑i=1nxi2 | norm(x,2) | 欧几里得范数,最常用来计算向量长度,以至于下标中的2 都被省略 |
Lp范数Lp范数 | ∥x∥p=(∑ni=1|xi|p)1p‖x‖p=(∑i=1n|xi|p)1p | norm(x,p) | 一般化的 P 范数 |
L∞范数L∞范数 | ∥x∥∞=max|xi|‖x‖∞=max|xi| | norm(x,inf) | 即所有元素绝对值中的最大值 |
L−∞范数L−∞范数 | ∥x∥−∞=min|xi|‖x‖−∞=min|xi| | norm(x,-inf) | 即所有元素绝对值中的最小值 |
常用矩阵范数
范数类型 | 计算公式 | MATLAB调用 | 补充解释 |
---|---|---|---|
L1L1 范数,列和范数 | ∥A∥1=max∑mi=1|ai,j|‖A‖1=max∑i=1m|ai,j| | norm(A,1) | 所有矩阵列向量绝对值之和的最大值 |
L2L2范数, 谱范数 | ∥A∥2=λ1−−√,式中λ1‖A‖2=λ1,式中λ1 为 ATAATA的最大特征值 | norm(A,2) | ATAATA 的最大特征值的开平方 |
L∞L∞ 范数,行和范数 | ∥A∥∞=max∑nj=1|ai,j|‖A‖∞=max∑j=1n|ai,j| | norm(A,inf) | 所有矩阵行向量绝对值之和的最大值 |
FF范数, Frobenius 范数 | ∥A∥F=∑mi=1∑nj=1|ai,j|2−−−−−−−−−−−−−√‖A‖F=∑i=1m∑j=1n|ai,j|2 | norm(A, ‘fro’) | 即矩阵所有元素绝对值的平方和再开平方根 |
ML 中范数相关概念与应用
- ML中,最常用的是 L2L2范数,它表示从原点出发到向量xx 确定的点的欧氏距离。
- L2L2的平方也经常用到,而且可以简单的通过 点积xTxxTx计算得到,而且平方的导数只取决于对应的元素,而 L2L2范数对每个元素的导师还和整个向量相关。
- 当ML中,零和临近非零元素之间的差异非常重要的时候,通常会使用 L1L1范数,而这种情况下 平方 L2L2范数增长缓慢。
更详细的资料,看这两篇雄文:
机器学习中的范数规则化之(一)L0、L1与L2范数
机器学习中的范数规则化之(二)核范数与规则项参数选择
Ref
来源:oschina
链接:https://my.oschina.net/pengchanghua/blog/4486076