matlab norm向量和矩阵的范数

一、向量的范数

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

1.1 向量的1范数

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

1.2 向量的2范数

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

1.3 向量的无穷范数

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

二、矩阵的范数

    首先我们将介绍数学中矩阵的范数的情况,以矩阵A = [ -1 2 -34 -6 6] 为例。

2.1 矩阵的1范数

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

2.2 矩阵的2范数

  矩阵的2范数即:矩阵ATA的最大特征值开平方根,上述矩阵A2范数得到的最终结果是:10.0623MATLAB代码实现为:normA2);

2.3 矩阵的无穷范数

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

   接下来我们要介绍机器学习的低秩,稀疏等一些地方用到的范数,一般有核范数,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最终结果就是:22MATLAB代码实现为:sum(sum(abs(A)))

2.7 矩阵的F范数

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

2.8 矩阵的L21范数

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

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/350318.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

不能启动的问题 社区版安装后_CentOS7下安装docker(亲测+完整)

说明:1、docker要求Centos系统内核高于3.10,安装前先验证你的Centos版本是否支持docker;2、docker有两个分支版本:docker CE和docker EE,即社区版和企业版,自学研究建议使用社区版本;本文章介绍…

关于数据可视化页面制作

先出思路 数据可视化,目的是为了让纷繁的数据变得直观,更易领会数据代表的趋势、模型等。既然是带着目的的,应先把目标明确下来。目标写下来,思想上算落地了,那么就能给大脑腾出继续深入或扩展的空间。所以&#xff0c…

GitHub Research:超过50%的Java记录语句写错了

为什么生产日志无法帮助您找到错误的真正根本原因? 询问您是否使用日志文件监视您的应用程序几乎就像询问…您是否喝水。 我们都使用日志,但是我们如何使用它们则是一个完全不同的问题。 在下面的文章中,我们将对日志进行更深入的研究&…

matlab rgb2gray的实现

rgb2gray是matlab内部一种处理图像的函数,通过消除图像色调和饱和度信息同时保留亮度实现将将RGB图像或彩色图转换为灰度图像,即灰度化处理的功能,调用这个功能的格式是I rgb2gray(RGB),意思是将真彩色图像RGB转换为灰度强度图像…

8k分辨率需要多大带宽_又一支持8K分辨率的接口标准发布

随着8K显示热潮的兴起,支持8K视频传输和显示的硬件产品越来越多。继之前发布的HDMI2.1标准之后,又一支持8K分辨率视频传输的接口标准DisplayPort 2.0正式发布。视频电子标准协会(VESA)自推出DisplayPort标准之后,历经了多次的修订&#xff0c…

白话解说TCP/IP协议三次握手和四次挥手

白话解说TCP/IP协议三次握手和四次挥手 1、背景 和女朋友异地恋一年多,为了保持感情我提议每天晚上视频聊天一次。 从好上开始,到现在,一年多也算坚持下来了。 1.1、问题 有时候聊天的过程中,我的网络或者她的网络可能会不好&…

matlab 去除pdf文档水印

1用pdf shaper将pdf转为图片; 2用matlab程序去水印代码如下; 3将去除水印的图片通过pdf shaper转为pdf. 1_1.jpg为要去除水印pdf文档 2_1.jpg为空的pdf文档 test_1.jpg为去除水印的图片 img_1 imread(1_1.jpg); img_2 imread(2_1.jpg);img_3 img_2-img_1; img_4 255-i…

音频信号发生器_1957年,DIY的Hi-Fi 电唱机单电子管音频发生器的音质保真度高...

1957年Hi-Fi 电唱机单电子管音频发生器也许你的MP3播放器听起来比62年前这位绅士的高保真转盘听起来要好一些,但我打赌不太可能自己动手DIY一台MP3播放器,就像下面这个家伙那样。在1957年版的《Radio-TV Experimenter》的封面上显示的这个产品是个DIY产品…

tensorflow 启动Session(tf.Session(),tf.InteractivesSession(),tf.train.Supervisor().managed_session() )

(1)tf.Session() 计算图构造完成后, 才能启动图. 启动图的第一步是创建一个 Session 对象。 示例程序: #coding:utf-8 import tensorflow as tf #构造图 a tf.constant(4) b tf.constant(5) c ab#启动图 with tf.Session() as s…

终极Java日志字典:开发人员最常记录的单词是什么?

最终的记录字典,或者:我们记录的最常用单词是什么? 日志文件是调试应用程序的最常用方法,在解决错误时,它们一定可以引导我们朝着正确的方向发展。 但是,大多数日志文件每天都会增加一百万条消息&#xff…

iwrite提交不了作业_iWrite英语写作教学与评阅系统移动端——学生使用手册

通过微信搜索公众号:iWrite爱写作,点击“关注”。一、注册iWrite英语写作教学与评阅系统移动端首页底端显示“登录”按钮。首次关注,点击“登录”按钮,页面跳转至登录/注册界面。点击“注册账号”按钮,即可跳转至注册界…

阻塞IO与非阻塞IO

阻塞IO:操作系统等数据,只发生了一次调用,最大问题:cpu被耽搁了 非阻塞IO:问题:1、发生多次系统调用 2、数据不及时 IO multiplexing model io多路复用,多一个系统调用,但可以建…

matlab的输出(命令窗口、fprint函数、disp函数)

命令窗口直接输出,MATLAB的默认格式是精确到小数点后4位。如果一个数太大或太小,那么将会以科学记数法的形式显示。比如: format stytle 改变默认输出格式要用到format命令,可根据下表改变数据的输出格式 显示数值格式 Stytle …

g2 折线图点与点之间直线_科学网—ggplot2实现散点折线图 - 肖斌的博文

准备的数据:第一列是时间,第二列是样本,第三列是具体数值。横轴标为时间,纵坐标为具体数值,图中不同颜色展示不同样本。具体的代码:library(ggplot2)png("./xyz.png")(保存成png)upsups$date pde…

matlab 字符串处理

% 字符串处理 a a;bb b;ccccc;m % 获取字符串长度length(a) % 连接两个字符串,每个字符串最右边的空格被裁切 dstrcat(a,c) length(d) % 连接多行字符串,每行长度可不等,自动把非最长字符串最右边补空格 % 使与最长字符串相等,会忽略空字符串 est…

【c#基础】泛型

1:减少代码的选项可以是用Object类,也可以使用泛型 但是Object类进行类型传递不是类型安全的。泛型类使用泛型类型保证了类型安全。 泛型类 泛型方法 泛型接口、结构、委托 泛型优点: 1:性能 装箱和拆箱很容易使用,但性能损失比较…

nacos怎么修改服务分组_nacos服务注册如何配置分组?

同问,度娘一番,没找到答案,最终看的代码,大概知道怎么回事了。这个是下面引用源码的版本org.springframework.cloudspring-cloud-starter-alibaba-nacos-discoverycom.alibaba.nacosnacos-client0.2.2.RELEASEcom.alibaba.nacosna…

使用brew,cask和jenv在MacOSX上设置多个Java JRE / JDK

昨天在Java9的Jigsaw HackTheTower事件中,我意识到我需要加强我的游戏并改善我现有的机制,以在我的机器上维护几个不同的JDK。 我曾经手动下载jdk,或使用brew cask安装它们,我会在〜/ bash_profile上设置bash alias来在不同的 JA…

Codeforces - 102222C - Caesar Cipher

https://codeforc.es/gym/102222/my 好像在哪里见过这个东西&#xff1f;字符的左右移还是小心&#xff0c;注意在mod26范围内。 #include<bits/stdc.h> using namespace std; typedef long long ll;inline int read() {int x0;int f0;char c;do {cgetchar();if(c-)f1;} …

python os.path.exists判断文件或文件夹是否存在

import os#判断文件夹是否存在 dir os.path.exists(C:\\Users\\Desktop) print(dir:, dir)#判断文件是否存在 file os.path.exists(C:\\Users\\Desktop\\雍正王朝.txt) print(file:, file)运行结果 显示该文件及文件夹都存在