向量与矩阵的范数(比较1-范数、2-范数、无穷范数、p-范数、L0范数 和 L1范数等)

阅读文献时,经常看到各种范数,机器学习中的稀疏模型等,也有各种范数,其名称往往容易混淆,例如:L1范数也常称为“1-范数”,但又和真正的1-范数又有很大区别。下面将依次介绍各种范数。1、向量的范数向量的1-范数:;各个元素的绝对值之和;向量的2-范数:;每个元素的平方和再开平方根;向量的无穷范数:p-范数:,其中正整数p≥1,并且有例:…

大家好,又见面了,我是你们的朋友全栈君。

向量与矩阵的范数(比较1-范数、2-范数、无穷范数、p-范数、L0范数 和 L1范数等)

   阅读文献时,经常看到各种范数,机器学习中的稀疏模型等,也有各种范数,其名称往往容易混淆,例如:L1范数也常称为“1-范数”,但又和真正的1-范数又有很大区别。下面将依次介绍各种范数。

1、向量的范数

  向量的1-范数: {\left\| X \right\|_1} = \sum\limits_{i = 1}^n {\left| {​{x_i}} \right|} ; 各个元素的绝对值之和;

  向量的2-范数:{\left\| X \right\|_2} = {\left( {\sum\limits_{i = 1}^n {​{x_i}^2} } \right)^{\frac{1}{2}}} = \sqrt {\sum\limits_{i = 1}^n {​{x_i}^2} };每个元素的平方和再开平方根;

  向量的无穷范数:{\left\| X \right\|_\infty } = \mathop {\max }\limits_{1 \le i \le n} \left| {​{x_i}} \right|

  p-范数:{\left\| X \right\|_p} = {\left( {\sum\limits_{i = 1}^n {​{​{\left| {​{x_i}} \right|}^p}} } \right)^{\frac{1}{p}}},其中正整数p≥1,并且有\mathop {\lim }\limits_{p \to \infty } {\left\| X \right\|_p} = \mathop {\max }\limits_{1 \le i \le n} \left| {​{x_i}} \right|

 

例:向量X=[2, 3, -5, -7] ,求向量的1-范数,2-范数和无穷范数。

向量的1-范数:各个元素的绝对值之和;{\left\| X \right\|_1}=2+3+5+7=17;

Matlab代码:X=[2, 3, -5, -7]; XLfs1=norm(X,1);

 

向量的2-范数:每个元素的平方和再开平方根;{\left\| X \right\|_2} = {\left( {​{\rm{2}} \times {\rm{2}} + {\rm{3}} \times {\rm{3}} + {\rm{5}} \times {\rm{5}} + {\rm{7}} \times {\rm{7}}} \right)^{\frac{1}{2}}} = 9.3274

Matlab代码:X=[2, 3, -5, -7]; XLfs2=norm(X,2);

 

向量的无穷范数:

(1)正无穷范数:向量的所有元素的绝对值中最大的;即X的正无穷范数为:7;

Matlab代码:X=[2, 3, -5, -7]; XLfsz=norm(X,inf);

 

(2)负无穷范数:向量的所有元素的绝对值中最小的;即X的负无穷范数为:2;

          Matlab代码:X=[2, 3, -5, -7]; XLfsf=norm(X,-inf);

 

2、矩阵的范数

设:向量X \in {R^n},矩阵A \in {R^{n \times n}},例如矩阵A为:

A=[2, 3, -5, -7;

   4, 6,  8, -4;

   6, -11, -3, 16];

(1)矩阵的1-范数(列模):{\left\| A \right\|_1} = \mathop {\max }\limits_{X \ne 0} \frac{​{​{​{\left\| {AX} \right\|}_1}}}{​{​{​{\left\| X \right\|}_1}}} = \mathop {\max }\limits_{1 \le j \le n} \sum\limits_{i = 1}^n {\left| {​{a_{ij}}} \right|};矩阵的每一列上的元素绝对值先求和,再从中取个最大的,(列和最大);即矩阵A的1-范数为:27

          Matlab代码:fs1=norm(A,1);

 

(2)矩阵的2-范数(谱模):{\left\| A \right\|_2} = \mathop {\max }\limits_{X \ne 0} \frac{​{​{​{\left\| {AX} \right\|}_2}}}{​{​{​{\left\| X \right\|}_2}}} = \sqrt {​{\lambda _{\max }}({A^T}A)} = \sqrt {\mathop {\max }\limits_{1 \le i \le n} \left| {​{\lambda _i}} \right|},其中   {\lambda _i}{A^T}A的特征值;矩阵向量与矩阵的范数(比较1-范数、2-范数、无穷范数、p-范数、L0范数 和 L1范数等)的最大特征值开平方根。

          Matlab代码:fs2=norm(A,2);

 

(3)矩阵的无穷范数(行模):{\left\| A \right\|_\infty } = \mathop {\max }\limits_{X \ne 0} \frac{​{​{​{\left\| {AX} \right\|}_\infty }}}{​{​{​{\left\| X \right\|}_\infty }}} = \mathop {\max }\limits_{1 \le {\rm{i}} \le n} \sum\limits_{j = 1}^n {\left| {​{a_{ij}}} \right|};矩阵的每一行上的元素绝对值先求和,再从中取个最大的,(行和最大)

         Matlab代码:fswq=norm(A,inf);

 

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

关于核范数,L0范数,L1范数等解释见博客:

http://www.cnblogs.com/MengYan-LongYou/p/4050862.html

https://blog.csdn.net/u013066730/article/details/51145889

http://blog.sina.com.cn/s/blog_7103b28a0102w73g.html

 

(4)矩阵的核范数:矩阵的奇异值(将矩阵svd分解)之和,这个范数可以用来低秩表示(因为最小化核范数,相当于最小化矩阵的秩——低秩);

         Matlab代码:JZhfs=sum(svd(A));

 

(5)矩阵的L0范数:矩阵的非0元素的个数,通常用它来表示稀疏,L0范数越小0元素越多,也就越稀疏。

 

(6)矩阵的L1范数:矩阵中的每个元素绝对值之和,它是L0范数的最优凸近似,因此它也可以近似表示稀疏;

         Matlab代码:JZL1fs=sum(sum(abs(A)));

 

(7)矩阵的F范数:矩阵的各个元素平方之和再开平方根,它通常也叫做矩阵的L2范数,它的有点在它是一个凸函数,可以求导求解,易于计算;

         Matlab代码:JZFfs=norm(A,’fro’);

 

(8)矩阵的L21范数:矩阵先以每一列为单位,求每一列的F范数(也可认为是向量的2范数),然后再将得到的结果求L1范数(也可认为是向量的1范数),很容易看出它是介于L1和L2之间的一种范数

          Matlab代码:JZL21fs=norm(A(:,1),2) + norm(A(:,2),2) + norm(A(:,3),2)++ norm(A(:,4),2);

 

Matlab代码

clear all;clc;

%% 求向量的范数
X=[2, 3, -5, -7];   %初始化向量X
XLfs1=norm(X,1);    %向量的1-范数
XLfs2=norm(X,2);    %向量的2-范数
XLfsz=norm(X,inf);  %向量的正无穷范数
XLfsf=norm(X,-inf); %向量的负无穷范数

%% 求矩阵的范数
A=[2, 3, -5, -7;
   4, 6,  8, -4;
   6, -11, -3, 16];     %初始化矩阵A

JZfs1=norm(A,1);        %矩阵的1-范数
JZfs2=norm(A,2);        %矩阵的2-范数
JZfswq=norm(A,inf);     %矩阵的无穷范数
JZhfs=sum(svd(A));      %矩阵的核范数
JZL1fs=sum(sum(abs(A)));% 矩阵的L1范数
JZFfs=norm(A,'fro');    %矩阵的F范数
JZL21fs=norm(A(:,1),2) + norm(A(:,2),2) + norm(A(:,3),2)++ norm(A(:,4),2);% 矩阵的L21范数

 

参考资料

[1] https://blog.csdn.net/Michael__Corleone/article/details/75213123

[2] https://wenku.baidu.com/view/dc9e6e3753d380eb6294dd88d0d233d4b04e3f48.html

[3] http://www.cnblogs.com/MengYan-LongYou/p/4050862.html

[4] https://blog.csdn.net/u013066730/article/details/51145889

[5] http://blog.sina.com.cn/s/blog_7103b28a0102w73g.html

 


如果觉得内容还不错的话,欢迎点赞、转发、收藏,还可以关注微信公众号、CSDN博客、知乎。
 

1. 微信公众号:

向量与矩阵的范数(比较1-范数、2-范数、无穷范数、p-范数、L0范数 和 L1范数等)

2. CSDN博客:https://xiongyiming.blog.csdn.net/

3. 知乎:https://www.zhihu.com/people/xiongyiming

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/125367.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • creo2.0安装激活成功教程教程_droid upnp port mapper下载

    creo2.0安装激活成功教程教程_droid upnp port mapper下载GAppProxy-2.0.0安装使用手册GAppProxy基于GoogleAppEngine,所以首先需要准备一个google账号(即gmail账号)。申请GAE空间并创建新的的app_id:1,打开浏览器,输入http://appengine.google.com/输入gmail用户密码登入。2,点击“CreateanApplication”…

    2022年10月25日
  • imx8开发板_安卓反编译教程

    imx8开发板_安卓反编译教程按照官方手册,在ubuntu14.04上搭建环境sudoapt-getuuiduuid-devsudoapt-getzlib1g-devliblz-devsudoapt-getliblzo2-2liblzo2-devsudoapt-getlzopsudoapt-getgit-corecurlsudoapt-getu-boot-toolssudo…

  • Java桌面程序打包成exe可执行文件

    Java桌面程序打包成exe可执行文件

  • java随机生成六位密码_java怎样实现密码的输入

    java随机生成六位密码_java怎样实现密码的输入importjava.util.Random;publicclasstest{/***@paramargs*/publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubSystem.out.println(genRandomNum(10));}/***生成随即密码*@parampwd_len…

    2022年10月27日
  • 自动化测试po模式是什么?自动化测试po分层如何实现?-附详细源码[通俗易懂]

    自动化测试po模式是什么?自动化测试po分层如何实现?-附详细源码[通俗易懂]一、什么是PO模式全称:pageobjectmodel简称POMPO模式最核心的思想是分层,实现松耦合!实现脚本重复使用,实现脚本易维护性!主要分三层:1.基础层BasePage:封装一些最基础的selenium的原生的api方法,元素定位,框架跳转等。2.PO层:元素定位、获得元素对象,页面动作3.测试用例层:业务逻辑,数据驱动!三者的关系:PO层继承继承层,测试用例层调用PO层!二、非PO模式和PO模式优缺点对比笔者来自公众号:软测之家 非PO模式 PO模式.

  • 锁相环pll原理_整流电路软启动simulink

    锁相环pll原理_整流电路软启动simulink带能量回馈的单相整流器,能够完成单位功率因数整流,控制母线电压,逆变并网等功能。实现能量的双向流动,具备四象限电源功能。在单相整流器中,电网电压的锁相是最基本最重要的技术点之一,相位之余整流器,就像空气之于人类。本次记录一下基于二阶广义积分器虚拟两相的单相软件锁相环的simulink仿真。仿真搭建如图1所示。…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号