矩阵的谱分解(可对角化矩阵——满秩可逆)

谱分解定理:设 为一个n阶可对角化矩阵,A的谱为 其中 的重数为 ,则存在唯一一组s个n阶方阵 ,满足
(1) (2) (3)
(4) (5)

这些矩阵 称为矩阵A的成分矩阵或主幂等矩阵。一般成分矩阵不一定是Hermite矩阵,因此, 中的诸向量 未必是正交的。

谱分解的计算例子:

求矩阵的谱分解,

解: 所以A有特征值 (两重)。通过齐次线性方程组,可得对应于特征值的特征向量分别为:

,则可以求出

这里计算P的逆矩阵很烦人的,可以用初等行变换的方法进行求解。因此,

故A的谱分解为 . A的幂为 说明谱分解本质上还是为方便求解矩阵幂服务的。前面我们知道矩阵的对角化,可以方便我们求逆。矩阵的满秩分解可以方便我们求逆,现在我们知道矩阵的谱分解可以方便我们求幂。但是谱分解和对角化都要求矩阵是满秩可对角化的,如果不满足这些条件的矩阵能够有方便的形式求解吗?答案是肯定的,矩阵的Jordan标准型就是专门为矩阵求幂设计的。

矩阵求逆问题也是重点。但是矩阵求逆为了在数值上计算稳定,数学家们想出了很多将矩阵分的方法,后面我们将会看到矩阵的LU三角分解,QR正交分解,奇异值分解等,都是为了在数值上获得矩阵求逆的稳定方法而设计的。

矩阵的LU分解(n阶方阵,不一定存在)

LU分解实际上是高斯消元的另一种看法。即对于任意的n阶方阵A,存在L是单位下三角矩阵,U是上三角矩阵,使得 . 这里对矩阵A只要求是方阵,其他的要求都没有。

考虑高斯消元,即存在初等矩阵 ,对矩阵A进行初等行变换,可以将A变为上三角矩阵,该上三角矩阵就是U.   举个例子: 对于任意的3阶矩阵,我们能通过左乘初等矩阵,即 (不交换行) 那么我们有

可以发现,L必定为单位下三角矩阵。因为我们的初等变换都只涉及对A的下三角部分进行变换,另外,每一个初等矩阵的逆都不会改变主对角元素(都是1)。

从高斯消元的角度可以看出,如果矩阵A最后一行不能被前面的r(A)行线性表示,则就找不到初等矩阵,使得A经过初等行变换后变成U,则三角分解不存在。

如果方阵A可逆,并且有三角分解,则该分解是唯一的。(因为最后一行可以被前面r(A)唯一的线性表示。)

矩阵QR分解(可逆矩阵存在)(唯一)

矩阵可逆也不一定存在三角分解,这是非常令人遗憾的。矩阵正交(Q)三角(R)分解是对任何可逆矩阵都存在的理想分解。其原理是斯密特正交化。首先给出QR分解的定理:

且A为满秩的,则存在唯一的酉矩阵U和对角线元素均为正的上三角矩阵R,使得 .(当然对于实数矩阵,这里的酉矩阵类比为正交矩阵Q即可)

一个很重要的推广是矩阵A可以是非方阵,只需要列满秩即可, , 则矩阵 为r个列向量构成的标准正交基, 为对角线元素为正的上三角矩阵。分解也是唯一的。

计算过程:

以实数矩阵为例,对于列满秩矩阵 ,求其QR分解。

解:令 由斯密特正交化方法得:

从而有:

值得注意的是上三角矩阵R是怎么计算的?

对斯密特正交化的过程进行变形得:

写成矩阵形式:

所以在计算QR分解时,把步骤写清楚,尤其是在计算 时,因为每一个系数都会成为矩阵的元素。

矩阵的奇异值分解(普适性很强,要求很低)

对标正规矩阵(normal matrix),正规矩阵都可以酉对角化。这是非常好的性质。但是非正规矩阵是否具有类似的性质呢?注意到正规矩阵满足 ,其中 两个酉矩阵互为共轭转置,我们能不能放弃这一性质,使得非正规矩阵矩阵也有类似的分解?当然可以。

奇异值分解定理:设 则存在m阶和n阶酉矩阵U和V,使得 ,其中 , 称为奇异值。

这里不谈证明,直接给出奇异值分解的计算方法。

那么分别求其正规矩阵形式的酉对角化,即有

利用上面两个等式,可以分别求出 矩阵。

,其特征值分别为1,3,对应的标准正交特征向量为 这里就求出了U矩阵。

接着我们有

其对应的特征值为1,3,0(注意这里第三个特征值必须为0)

对应的特征向量可以计算分别为

其中 可以不用计算,因为他必须和前面两个特征向量正交。这样我们就求出了V。然后根据奇异值分解定理,可以得到

Chelesky分解(实正定矩阵)

chelesky分解是针对实正定矩阵而言的。正定矩阵一般默认是对称的。实正定矩阵A必存在三角分解A=LU,且存在唯一的对角元素均为正的下三角矩阵G,使得  .举个简单的例子,  A是正定的。存在初等变换  ,使得

 因为A对称,对A的初等行变换,其转置就是对A的初等列变换。因此可以化为对角矩阵(对实对称矩阵的对角化)。那么令

这是只需要进行一次初等行变换的条件下,计算方法。当需要多次进行初等行变换时,计算是类似的。此时需要将所有的初等变换看成一个初等变换,把它当成  即可。

*文章内容整理于https://zhuanlan.zhihu.com/p/52890135

------------------------------

欢迎关注爱数学之家, 一个致力于传播数学文化的公众号

c++求矩阵的秩_常见的矩阵分解相关推荐

  1. c++求矩阵的秩_对于向量和矩阵的理解

    学数值计算还有复变函数了喔,矩阵忘干净了.又看了一遍 蓝棕 的相关的讲解,总结一下. 1.向量是什么? 从初到末的箭头(物理角度,表示一种运动过程) 有序的数字列表(计算机/数学角度)[1,2] 加和 ...

  2. python实现推荐系统代码_推荐系统之矩阵分解及其Python代码实现

    有如下R(5,4)的打分矩阵:("-"表示用户没有打分) 其中打分矩阵R(n,m)是n行和m列,n表示user个数,m行表示item个数 那么,如何根据目前的矩阵R(5,4)如何对 ...

  3. c++求矩阵的秩_线性代数复习(被玩坏的矩阵)

    最近, 老有同学问, (线性)代数应该怎样复习呀. 本期就来谈谈我对这门课程的看法, 希望对大家有所帮助. 线代故事梗概大家不妨回想一下之所以有这门课程的「罪魁祸首」是什么? 那当然是 线性方程组 如 ...

  4. c++求矩阵的秩_一文搞定矩阵相关概念 使用Excel矩阵计算不用愁

    知识要点: 矩阵的本质 矩阵的计算公式 实例演示 背景 矩阵计算是我们经常碰到的一个问题.在几乎所有跟"学问"二字稍微沾点边的东西里,矩阵这个家伙从不缺席.那Excel在其中扮演什 ...

  5. c++求矩阵的秩_一篇文章搞定矩阵相关概念及意义通俗解释汇总

    最近在学习矩阵相关知识,但是其抽象的解释让人摸不着头脑,通过浏览一些博客的内容和自己的理解,本文通过通俗的语言将矩阵的内涵做了总结.其中除了书本和个人观点,部分引用博客.本文主要帮助大家理解矩阵,但不 ...

  6. python求矩阵的秩_【案例】求出矩阵的最简型?——sympy登场

    案例介绍 学过线性代数的同学都知道,在将矩阵进行初等变换化为最简型时过程有多么繁琐.今天,给大家带来一个小项目--使用 Python 化简矩阵. 将要学习:使用特殊的科学计算库--sympy,来化简矩 ...

  7. c++求矩阵的秩_高等代数|第八章 矩阵 最小多项式与若尔当标准形

    当公式或文字展示不完全时,记得向左←滑动哦! 本节主要介绍最小多项式与若尔当标准型的相关知识,这是考研中常考的一部分内容,几乎每个院校都有所考察,对于若尔当标准型,请大家先把第八章 矩阵的知识掌握,这 ...

  8. c++求矩阵的秩_利用Python矩阵求逆、特征值及特征向量

    今日,分享点Python学习小记,利用Python实现以下目的: (1)判定是否为方阵 矩阵的本质就是映射.对于一个m×n的矩阵A,y=Ax的作用是将向量从n维原始空间中的x坐标位置,映射到m维目标空 ...

  9. [Math]常见矩阵分解及复杂度 Cholesky QR LU

    本篇尝试介绍几个常见的矩阵分解及其数值方法,探究其算法复杂度及不稳定性来源,能够让我们更好的理解工具,使用工具.常见的矩阵分解可以在维基中找到 文章目录 Cholesky 定义 数值方法 数值方法的数 ...

最新文章

  1. Oracle WebCenter 11g 快速开发指南--翻译(一)
  2. linux下测试磁盘的读写IO速度
  3. 一、mysql使用入门
  4. MySQL timestamp的默认值怎么设置?
  5. linux中的shell脚本case,【shell】Linux shell 之 case 详解
  6. 你注意到 .Net Framework 和 .Net Core 中使用 Session 的区别了吗?
  7. 我们如何使用CircleCI 2.0来构建Angular应用并将其部署到AWS S3
  8. 老外大赞iPhone 12系列:全面屏版iPhone 4 外形史上最佳
  9. Elasticsearch查询之term/match解析
  10. 异步请求---Get
  11. 移动磁盘故障,如何在Mac修复?
  12. 移动端页面开发资源总结
  13. Mscomm32.ocx注册
  14. axure怎么存html文件怎么打开,axure 保存html文件怎么打开
  15. Halcon_3D点云筛选,目标轮廓提取,切平面求取目标间隙宽度
  16. python使用phone实现手机号归属地查询
  17. 读研究生的目的之我见
  18. ORACLE分配DBA权限
  19. 轻松捕捉85点策略:欧元/日元经典交易策略全公开
  20. 如何将源生DrawerLayout满屏显示只覆盖ActionBar

热门文章

  1. 显卡发展史浅谈 显卡历史大全
  2. 云计算技术基础【6】
  3. 测试测量(2)-继电器基础介绍
  4. 基于linux的web自动化(selenium+jenkins+linux+firefox)
  5. 转动嘎吱嘎吱的脖子码下18.04.28.的总结
  6. 长沙现象-互联网教育行业
  7. AutoJS4.1.0实战教程---京东领京豆
  8. python利用列表计算斐波那契数列前30项_使用python计算斐波那契数列
  9. ⑨tiny4412 Linux驱动开发之1-wire子系统(DS18B20)驱动程序
  10. Mysql资料博文收藏