线性代数高级--矩阵的秩--SVD分解定义--SVD分解的应用

目录

矩阵的秩

概念

k阶子式

矩阵的秩的定义 

矩阵的秩的性质

SVD分解

概念

注意

SVD的分解过程 

SVD分解的应用


矩阵的秩

概念

矩阵的秩是线性代数中的一个重要概念,用于描述矩阵的行(或列)向量的线性无关程度。矩阵的秩可以通过多种方法来确定,其中最常用的是高斯消元法或奇异值分解(SVD)。

对于一个m×n的矩阵,其秩的定义是矩阵中线性无关的行(或列)向量的最大个数。换句话说,秩是指矩阵中非零行(或列)向量的最大线性无关组的大小。

k阶子式

在mxn矩阵A中,任取k行k列(1≤k≤min{m,n}),位于这些行列交叉处的k^2^个元素,

按照它们在A中所处的位置所构成的k阶行列式叫做矩阵A的一个k阶子式。

 

注意

  • 行列式是由一些数值排列成的数表按一定的法则计算得到的一个数
  • 行列式的行数和列数是相等的
  • mxn矩阵A的k阶子式共有C~m~^k^C~n~^k^个

矩阵的秩的定义 

如果在矩阵A中有一个r阶子式D的值不等于零,而所有r+1阶子式(如果存在的话)的

值都等于零,则称数r为矩阵A的秩,记作R(A)。规定零矩阵的秩为0。

矩阵的秩的性质

  • R(A)=R(A^T^)一个矩阵的行秩和列秩相等,因此通常只谈论矩阵的秩而不区分行秩和列秩。
  • R(A~mxn~) ≤ min(m,n)任意一个矩阵的秩不会超过其行数或列数(较小的那个)。
  • 如果一个矩阵的秩等于其行数或列数(较小的那个),则该矩阵被称为满秩矩阵。对于n阶方阵A,若|A|≠ 0,有R(A)=n,则称A为满秩矩阵;若|A|= 0,则R(A)<n,则称A为降秩矩阵。满秩矩阵是可逆矩阵,降秩矩阵是不可逆矩阵。

SVD分解

概念

奇异值分解(Singular Value Decomposition,简称SVD)是一种常用的矩阵分解方法,可以将一个矩阵分解为三个矩阵的乘积:A = UΣV^T,其中 A 是一个 m×n 的矩阵,U 是一个 m×m 的正交矩阵,Σ 是一个 m×n 的对角矩阵,V^T 是一个 n×n 的正交矩阵,^T 表示转置。

 

 

σ~i~称为矩阵A的奇异值,U的列向量称为左奇异向量;V的列向量称为右奇异向量

注意

特征值分解只能针对于方阵而言,而奇异值分解可以应用于任意形状矩阵

SVD的分解过程 

  1. 对矩阵 A 的转置矩阵 A^T 乘以 A,得到一个对称矩阵 B = A^T·A。
  2. 对对称矩阵 B 进行特征值分解,得到特征值和特征向量。设特征值为 λ1, λ2, ..., λr,特征向量为 v1, v2, ..., vr(其中 r 是矩阵 A 的秩)。
  3. 将特征向量 v1, v2, ..., vr 归一化,得到单位向量 u1, u2, ..., ur。
  4. 构建矩阵 U = [u1, u2, ..., ur],即将归一化后的特征向量按列排列成矩阵。
  5. 计算矩阵 V 中的列向量。对每个特征值 λi,计算 Bv_i = λi v_i,然后将 v_i 归一化得到单位向量 w_i。构建矩阵 V = [w1, w2, ..., wr]。
  6. 构建对角矩阵 Σ = diag(√λ1, √λ2, ..., √λr),即将特征值开方后按顺序排列成对角矩阵。

通过这样的分解,矩阵 A 可以表示为 UΣV^T 的形式,其中 U、Σ 和 V^T 分别代表了 A 的左奇异向量、奇异值和右奇异向量。

SVD分解的应用

在实际应用中,你将观察到的只有前几个很大的奇异值。其余的奇异值接近于零。

因此,可以忽略除前几个之外而不会丢失大量信息。

  • SVD用于图像压缩

图片压缩利用了在SVD之后仅获得的一些奇异值很大的原理,它将图像的大小(以字节为

单位)最小化到可接受的质量水平。这意味着你可以在相同磁盘空间中存储更多图像。

  • SVD用于降维

SVD分解允许我们将原始矩阵表示为低秩矩阵的线性组合。

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring Data JPA 报 HOUR_OF_DAY: 0 -> 1异常的解决过程和方案

在进行数据查询时&#xff0c;控制台报了Caused by: com.mysql.cj.exceptions.WrongArgumentException: HOUR_OF_DAY: 0 -> 1异常&#xff0c;查询得知&#xff1a;这是由于查mysql库&#xff0c;转换类型为datetime类型的字段引起的。 网上的解决方案有多种&#xff0c;大…

fastadmin如何自定义一个列表上的按钮。

参考文档&#xff1a; 首先&#xff0c;这是没有新增按钮的&#xff0c;只有删除和编辑。 然后js按钮是这一块&#xff1a; 我现在呢想加上一个撤销的按钮怎么办呢&#xff0c;只需要在js加上这一串代码就行了。 {field: "operate",title: __("Operate")…

uni-app 使用axios发请求 运行到微信开发者工具报错 Adapter “http‘ is not available in the build

场景 最近在使用uni-app开发H5移动端&#xff0c;跟往常一样使用axios发请求&#xff0c;做一些全局的请求拦截响应拦截操作 uni-app数据存储&#xff0c;uni-ui组件开发&#xff0c;配置axios&#xff0c;vuex。配置了vue.config.js文件做跨域操作 运行到谷歌浏览器一切正常…

HBase(8):扫描操作

1 需求 查看ORDER_INFO表中所有的数据 1.2 scan命令 在HBase,我们可以使用scan命令来扫描HBase中的表。语法: scan 表名 1.3 扫描ORDER_INFO表 scan ORDER_INFO,{FORMATTER => toString} 注意:要避免scan一张大表! 2 需求二:查询订单数据(只显示3条) scan ORDE…

从0开始,精通Go语言Rest微服务架构和开发

说在前面 现在拿到offer超级难&#xff0c;甚至连面试电话&#xff0c;一个都搞不到。 尼恩的技术社区中&#xff08;50&#xff09;&#xff0c;很多小伙伴凭借 “左手云原生右手大数据”的绝活&#xff0c;拿到了offer&#xff0c;并且是非常优质的offer&#xff0c;据说年…

响应式数据大屏开发rem、%、vh/vm

前言 响应式数据大屏开发rem、%、vh/vm 我们在开发数据大屏的时候难免会需要解决响应式问题 &#xff0c;那么响应式是什么呢&#xff1f; 响应式&#xff1a;响应式布局是元素随着屏幕发生宽高大小变化 盒子布局发生变化 通俗的来说&#xff1a; 自适应&#xff1a;元素随着…

尚硅谷大数据Flink1.17实战教程-笔记02【Flink部署】

尚硅谷大数据技术-教程-学习路线-笔记汇总表【课程资料下载】视频地址&#xff1a;尚硅谷大数据Flink1.17实战教程从入门到精通_哔哩哔哩_bilibili 尚硅谷大数据Flink1.17实战教程-笔记01【Flink概述、Flink快速上手】尚硅谷大数据Flink1.17实战教程-笔记02【Flink部署】尚硅谷…

深入理解深度学习——Transformer:编码器(Encoder)部分

分类目录&#xff1a;《深入理解深度学习》总目录 相关文章&#xff1a; 注意力机制&#xff08;AttentionMechanism&#xff09;&#xff1a;基础知识 注意力机制&#xff08;AttentionMechanism&#xff09;&#xff1a;注意力汇聚与Nadaraya-Watson核回归 注意力机制&#…

Unix/Linux编程:UDS 流(Stream)

〇、前言 socket 是一种 IPC &#xff08;Inter-Process Communication&#xff0c;进程间通信&#xff09;方法&#xff0c;它允许位于同一主机&#xff08;计算机&#xff09;或使用网络连接起来的不同主机上的应用程序之间交换数据。通过使用Socket&#xff0c;开发人员可以…

HTML5 游戏开发实战 | 贪吃蛇

在该游戏中&#xff0c;玩家操纵一条贪吃的蛇在长方形场地里行走&#xff0c;贪吃蛇按玩家所按的方向键折行&#xff0c;蛇头吃到食物(豆)后&#xff0c;分数加10分&#xff0c;蛇身会变长&#xff0c;如果贪吃蛇碰上墙壁或者自身的话&#xff0c;游戏就结束了(当然也可能是减去…

企业级微服务架构实战项目--xx优选-用户登录

一 用户登录的触发页面 1.登录常量 2.登录地址 3.配置域名 4.启动程序 触发连接小程序后端的登录接口 小程序controller的登录方法

XR云新未来圆桌精彩回顾 | XR应用场景迭代下的新商业模式

6月15日&#xff0c;由平行云联合首都在线共同主办&#xff0c;中关村软件园协办&#xff0c;以“XR云新未来|弹性算力赋能可交互、沉浸式商业实践”为主题的XR行业交流盛会在北京成功举办。 本次会议我们邀请到平行云科技创始人兼CEO 李岩、XREAL 云XR负责人 吴维、瑞帆科技…

利用SQL注入漏洞登录后台

所谓SQL注入&#xff0c;就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串&#xff0c;最终达到欺骗服务器执行恶意的SQL命令&#xff0c;比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的&#xff0c;这类表单特别容易受到SQ…

LLM-Client一个轻量级的LLM集成工具

大型语言模型(llm)已经彻底改变了我们与文本交互的方式&#xff0c;OpenAI、Google、AI21、HuggingfaceHub、Anthropic和众多开源模型提供了不同的功能和优势。但是每个模型都有其独特的体系结构、api和兼容性需求&#xff0c;集成这些模型是一项耗时且具有挑战性的任务。 所以…

【spring cloud学习】4、创建服务提供者

注册中心Eureka Server创建并启动之后&#xff0c;接下来介绍如何创建一个Provider并且注册到Eureka Server中&#xff0c;再提供一个REST接口给其他服务调用。 首先一个Provider至少需要两个组件包依赖&#xff1a;Spring Boot Web服务组件和Eureka Client组件。如下所示&…

跑步适合戴哪种耳机不掉、公认最好的运动耳机推荐

我们都知道&#xff0c;运动往往让人感到枯燥无味&#xff0c;于是很多人选择听音乐来赋予运动更多乐趣。对于那些热爱运动并经常锻炼的朋友们来说&#xff0c;选择一款出色的运动耳机来提升体验是非常重要的。然而&#xff0c;面对市面上众多的选择&#xff0c;该如何下手呢&a…

ubuntu安装WPS2019以及解决缺少字体问题

环境&#xff1a;ubuntu22.04.2 LTS 步骤&#xff1a; 1.去官网下载最新的WPS&#xff0c;官网地址如下&#xff1a;WPS Office 2019 for Linux-支持多版本下载_WPS官方网站 2.sudo dpkg -i 安装包.deb 3.安装完成&#xff0c;首次用WPS打开某个文档&#xff0c;会出现如下报…

Navicat连接oracle

1、官网下载oracle instant client客户端&#xff08;版本自选&#xff09; Oracle Instant Client Downloads 下载后解压 2、navicat配置 在工具-> 选项 -> OCI 或环境中&#xff0c;选择在步骤 1 解压目录的 oci.dll 3、重新启动 Navicat 4、配置oracle连接即可 参考…

C++类与对象(下)

类与对象&#xff08;下&#xff09; 1.再谈构造函数1.1构造函数体赋值1.2初始化列表1.3explicit关键字 2.static成员2.1概念2.2特性 3.有元3.1有元函数3.2有元类 4.内部类4.1概念及特性 5.匿名对象6.拷贝对象时的一些编译器优化7. 再次理解类和对象 1.再谈构造函数 1.1构造函…

oracle 重复启动监听程序故障

又是一起 oracle 无法连接问题&#xff0c;检查配置都是正常的。 原来是碰到一个oralce的bugl了。 还真就是这个问题&#xff0c;子进程一kill掉&#xff0c;就恢复了。