向量和矩阵的各种范数比较(1范数、2范数、无穷范数等等

简介: 向量和矩阵的各种范数比较(1范数、2范数、无穷范数等等范数 norm 矩阵 向量  一、向量的范数首先定义一个向量为:a=[-5,6,8, -10] 1.1 向量的1范数向量的1范数即:向量的各个元素的绝对值之和,上述向量a的1范数结果就是:29,MATLAB代码实现为:norm(a,1); 1.

向量和矩阵的各种范数比较(1范数、2范数、无穷范数等等

一、向量的范数

首先定义一个向量为:a=[-5,6,8, -10]

1.1 向量的1范数

向量的1范数即:向量的各个元素的绝对值之和,上述向量a的1范数结果就是:29,MATLAB代码实现为:norm(a,1);

1.2 向量的2范数

向量的2范数即:向量的每个元素的平方和再开平方根,上述a的2范数结果就是:15,MATLAB代码实现为:norm(a,2);

1.3 向量的无穷范数

1.向量的负无穷范数即:向量的所有元素的绝对值中最小的:上述向量a的负无穷范数结果就是:5,MATLAB代码实现为:norm(a,-inf);
2…向量的正无穷范数即:向量的所有元素的绝对值中最大的:上述向量a的负无穷范数结果就是:10,MATLAB代码实现为:norm(a,inf);

二、矩阵的范数

首先我们将介绍数学中矩阵的范数的情况,也就是无论哪个学科都统一的一种规定。。。
例如矩阵A = [ -1 2 -3;
4 -6 6]

2.1 矩阵的1范数

矩阵的1范数即:矩阵的每一列上的元素绝对值先求和,再从中取个最大的,(列和最大),上述矩阵A的1范数先得到[5,8,9],再取最大的最终结果就是:9,MATLAB代码实现为:norm(A,1);

2.2 矩阵的2范数

矩阵的2范数即:矩阵ATAATAA^{T}A的最大特征值开平方根,上述矩阵A的2范数得到的最终结果是:10.0623,MATLAB代码实现为:norm(A,2);

2.3 矩阵的无穷范数

矩阵的1范数即:矩阵的每一行上的元素绝对值先求和,再从中取个最大的,(行和最大),上述矩阵A的1范数先得到[6;16],再取最大的最终结果就是:16,MATLAB代码实现为:norm(A,inf);

接下来我们要介绍机器学习的低秩,稀疏等一些地方用到的范数,一般有核范数,L0范数,L1范数(有时很多人也叫1范数,这就让初学者很容易混淆),L21范数(有时也叫2范数),F范数。。。上述范数都是为了解决实际问题中的困难而提出的新的范数定义,不同于前面的矩阵范数。

2.4 矩阵的核范数

矩阵的核范数即:矩阵的奇异值(将矩阵svd分解)之和,这个范数可以用来低秩表示(因为最小化核范数,相当于最小化矩阵的秩——低秩),上述矩阵A最终结果就是:10.9287, MATLAB代码实现为:sum(svd(A))

2.5 矩阵的L0范数

矩阵的L0范数即:矩阵的非0元素的个数,通常用它来表示稀疏,L0范数越小0元素越多,也就越稀疏,上述矩阵A最终结果就是:6

2.6 矩阵的L1范数

矩阵的L1范数即:矩阵中的每个元素绝对值之和,它是L0范数的最优凸近似,因此它也可以表示稀疏,上述矩阵A最终结果就是:22,MATLAB代码实现为:sum(sum(abs(A)))

2.7 矩阵的F范数

矩阵的F范数即:矩阵的各个元素平方之和再开平方根,它通常也叫做矩阵的L2范数,它的有点在它是一个凸函数,可以求导求解,易于计算,上述矩阵A最终结果就是:10.0995,MATLAB代码实现为:norm(A,‘fro’)

2.8 矩阵的L21范数

矩阵的L21范数即:矩阵先以每一列为单位,求每一列的F范数(也可认为是向量的2范数),然后再将得到的结果求L1范数(也可认为是向量的1范数),很容易看出它是介于L1和L2之间的一种范数,上述矩阵A最终结果就是:17.1559,MATLAB代码实现为: norm(A(:,1),2) + norm(A(:,2),2) + norm(A(:,3),2)


本文转载自 1024Michael 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/Michael__Corleone/article/details/75213123?utm_source=copy



MARSGGBO原创





2018-8-5



目录
相关文章
|
8月前
|
机器学习/深度学习 决策智能
矩阵分析 (四)向量和矩阵的范数
矩阵分析 (四)向量和矩阵的范数
|
4天前
|
Shell Android开发
Android系统 adb shell push/pull 禁止特定文件
Android系统 adb shell push/pull 禁止特定文件
16 1
|
7月前
|
开发工具 Android开发
Mac 安卓(Android) 配置adb路径
Mac 安卓(Android) 配置adb路径
213 0
|
4天前
|
网络协议 Shell Android开发
Android 深入学习ADB调试原理(1)
Android 深入学习ADB调试原理(1)
20 1
|
4月前
|
网络协议 Android开发 虚拟化
Android Studio无法运行程序调试程序出现Unable to connect to ADB.Check the Event Log for possible issues.Verify th
Android Studio无法运行程序调试程序出现Unable to connect to ADB.Check the Event Log for possible issues.Verify th
63 0
Android Studio无法运行程序调试程序出现Unable to connect to ADB.Check the Event Log for possible issues.Verify th
|
5月前
|
Android开发
[√]Android 通过adb内存监测方法
[√]Android 通过adb内存监测方法
142 1
|
8月前
|
Android开发
Android中adb设置cpu频率
Android中adb设置cpu频率
405 0
|
10月前
|
Shell Linux Android开发
Android强大的原生调试工具adb的常用命令
Android强大的原生调试工具adb的常用命令
|
10月前
|
Shell 网络安全 Android开发
【Android冷知识】adb无线连接手机
【Android冷知识】adb无线连接手机
411 0