数值线性代数徐树方pdf_MIT线性代数4-8:矩阵分解,向量空间,列空间和零空间,线性方程组求解...
目录
0 说明
笔记标题:MIT_LA_Lecture4-8
笔记版本:v1.0
对于文档的说明:
- 你可以在我的Github仓库中下载本笔记的Markdwon源文档文件或PDF文件,并通过浏览目录进行更方便高效地浏览;也欢迎在知乎文章中进行浏览。
- 本笔记参考的课程为MIT Linear Algebra(麻省理工线性代数),本课程在网易公开课、Bilibili和youtube等网站上都有视频资源,读者可以选择合适的平台观看。
- 本笔记并未完全按照视频课的内容记录,添加了许多自己的理解、资料的补充和顺序的调整。
- 本系列笔记在不断更新,已经发布的笔记也会偶尔进行内容更新,版本号可以在文件标题或说明的开头查看,你可以通过Github的commit信息来查看笔记更新内容。
- 笔者并没有学习过Latex,所以公式格式可能并不标准,希望理解。如果你对笔记内容有好的建议,请提出来,笔者在这里表示感谢。
对于内容的说明:
- 小写字母表示的向量,比如
,除非在特殊说明的情况下,都表示的是列向量。用来表示行向量。
- 部分矩阵中
.
用来表示元素省略,并不表示元素为0。 - 单位矩阵用
表示。
- m行n列矩阵在文中为了书写方便写了两种格式:
和,意思相同,希望包容这一小问题。
- 本文假定读着具有一定的线性代数基础。
4.1 矩阵的
为什么需要
在上一节中,我们知道通过高斯消元法可以容易地求解线性方程组,用矩阵表示即
我们先不考虑行的交换,观察
我们可以发现,E除了初等行变换信息(即E中的-3,-2两项),还多了一个额外信息-6,这个是我们不想要的信息,那么有没有只包含行变换信息的分解或等式呢?有,这就是我们即将介绍的LU分解。
LU分解
在线性代数与数值分析中,LU分解是矩阵分解的一种,将一个矩阵分解为一个下三角矩阵和一个上三角矩阵的乘积,有时需要再乘上一个置换矩阵。LU分解可以被视为高斯消元法的矩阵形式。在数值计算上,LU分解经常被用来解线性方程组、且在求反矩阵和计算行列式中都是一个关键的步骤。
--维基百科
仍先不考虑行变换,LU分解简单地说就是
可以看到, L除了是下三角阵外,还包含且仅包含了矩阵行变换的所有信息。同时我们有以下结论:
这样,当我们通过高斯消元法变换矩阵后,就能立即写出
消元的过程和结果进行完整地记录,而不需要额外去计算
总之,对于
其他分解形式
除了上面给出的LU分解,有些矩阵还能进行PLU分解和LDU分解。
PLU 分解
方阵 A 的 PLU 分解是是将它分解成一个置换矩阵 P、一个下三角矩阵 L 与上三角矩阵 U 的乘积,即:
事实上,所有的方阵都可以写成 PLU 分解的形式,由于左乘排列矩阵
有时为了计算上的方便,会同时间换行与列的顺序,此时会将 A 分解成:
其中 P、L、U 同上,Q 是一个置换矩阵(这里是右乘以交换列)。
LDU 分解
方阵 A 的 LDU 分解是是将它分解成一个单位下三角矩阵 L、对角矩阵 D 与单位上三角矩阵 U 的乘积,即
其中单位上、下三角矩阵是指对角线上全是 1 的上、下三角矩阵。
事实上,LDU 分解可以推广到 A 是一般的矩阵,而非方阵。此时,L 和 D 是方阵,并且与 A 有相同的行,U 则有和 A 相同的长宽。注意到现在 U 是上三角的定义改为主对角线的下方都是 0,而主对角线是收集所有
我们将(3)中的A=LU分解再进一步化为LDU分解:
4.2 高斯消元算法复杂度
关于高斯消元算法的复杂度:
- 用每一行减去第一行的倍数,以消除第一行以外的第一列的元素,因为每行有n个元素,所以计算次数为
;
- 排除第一行,用每一行减去第二行的倍数,计算以此类推,因为共有n行,所以我们一共进行了n次,算法复杂度为
。
- 这里我们仅讨论得到阶梯型矩阵的复杂度,高斯-若当消元法会有额外的计算步骤,但后续计算量小,并不影响其复杂度,这里不予证明。
4.3 转置矩阵
转置矩阵的性质
转置矩阵(transpose)有很多值得我们记住的基本的性质,对于矩阵A, B和标量c,转置矩阵有下列性质:
- 若
,则C为对称矩阵,即。
还有比如我们刚刚学到的:
当然,还有一些之后会学到的:
- 如果A只有实数元素,则
是半正定矩阵。
- 如果A是在某个域上,则
相似于。
特殊转置矩阵
对称矩阵
其转置等于自身的方块矩阵叫做对称矩阵。
正交矩阵
其转置也是它的逆矩阵的方块矩阵叫做正交矩阵;就是说G是正交的,如果
斜对称矩阵
其转置等于它的负矩阵的方块矩阵叫做斜对称矩阵;就是A是斜对称的,如果
4.4 置换矩阵
置换矩阵的定义
在以上的消元的讨论中,我们为了方便都事先假定不需要进行行的交换,如果需要考虑这些行交换或列交换,A=LU分解就不能完全表示出矩阵消元的所有信息了,这个时候我们需要在LU左边乘上一个置换矩阵,用以记录行交换的信息,从而我们得到了A=PLU分解;当然,有时候我们也会进行列交换,那么同样地在LU右端乘上一个置换矩阵,就得到了A=PLUQ分解。
在数学中的矩阵论里,置换矩阵(permutation matrix)是一种系数只由0和1组成的方块矩阵。置换矩阵的每一行和每一列都恰好有一个1,其余的系数都是0。在线性代数中,每个n阶的置换矩阵都代表了一个对n个元素(n维空间的基)的置换。当一个矩阵乘上一个置换矩阵时,所得到的是原来矩阵的横行(置换矩阵在左)或纵列(置换矩阵在右)经过置换后得到的矩阵。
来自维基百科。
我们考虑n=3时的置换矩阵,一共有以下6个:
相应地,左乘分别代表不变,交换2、3行,交换1、2行等;右乘分别代表不变,交换2、3列,交换1、2列等。
置换矩阵的性质
- 从定义可以看出,n维置换矩阵共有
个。
- 从定义也可以很容易得到,置换矩阵的逆等于其转置,即
。
- 这
个置换矩阵任意相乘的结果仍在其中,其逆也在其中,也就是这个矩阵构成了一个矩阵群,对矩阵乘法和逆运算封闭。
5 向量空间
空间
什么是空间?如果让一只蚂蚁沿着一条细绳爬行,那么对蚂蚁来说,空间就是一条直线
而数学上,空间是指一种具有特殊性质及一些额外结构的集合,也就是说,我们规定一些性质或结构,若集合能满足这些要求,那它就是一个我们规定的某种空间。在数学上,空间可以有很多种,比如函数空间、仿射空间、概率空间等等,向量空间也是规定的一种满足特定性质和要求的元素的集合。
那么,从这个定义来说,向量空间里的元素只要满足这些要求就行了,是不是向量空间里的元素不是向量也可以呢?还真是这样。向量空间的元素还可以是函数、矩阵、多项式、映射等等,只要这些元素满足向量空间的所规定的线性运算规律就好了。
但正如名字所示,我们最常见和研究的向量空间还是一些有序数组,也就是向量的集合,这一节我们还是以它为主介绍。
那么,向量空间应该满足什么性质呢?
向量空间的定义
设V为n维向量的集合,如果集合V非空,且集合V对于向量的加法及数乘两种运算封闭,那么就称集合V为向量空间。所谓封闭,是指在集合V中可以进行向量的加法及数乘两种运算。具体地说:
当然,我们这里前提还是以有序数组,即向量为对象考虑的,对于一般化的向量空间,我们会在后面介绍。
常见的向量空间
在思考这个问题之前,我们先回过头看一看(6)这个定义,其中
同样地,我们还能举出一个例子
还有哪些呢?比如我们考虑
我们再考虑
现在我们再加上最开始考虑的零向量和
首先是零向量,然后是
向量空间的子空间
我们知道了
子空间。
一个集合A首先应该是一个向量空间,其次它是另一个向量空间V的子集,这样它就是这个向量空间V的子空间。
那么,是在
向量空间的基与维数
设V为向量空间,如果r和向量
- 线性无关;
- V中任一向量都可由
线性表示,
那么,向量组
基,r称为向量空间V的维数
如果向量空间V没有基,那么V的维数是0。0维向量空间只含一个零向量
以上,我们介绍了向量空间的概念, 接下来介绍两种常用的向量空间来帮助理解和求解线性方程组
列空间和零空间。
6.1 列空间
列空间的定义
设一m 行 n列实元素矩阵为
矩阵A的列空间C(A)中的所有向量均为矩阵A中列向量的某种线性组合,都为
C(A)的维度等于矩阵A的列秩,最大为
列空间C(A)的一组自然基底是矩阵A的列向量的最大线性无关组。
线性方程组与列空间
我们考虑以下线性方程组
我们很容易验证列空间
A的列空间
那么,由(8)可知,求解线性方程组从列向量角度讲,本质就是
从列空间的角度,当
时,线性方程组有解;反之则无解。
6.2 零空间
零空间的定义
对于所有使齐次线性方程组
零空间是一个向量空间。当A为m行n列实元素矩阵,所以
- 若
,则,即;
- 若
,则,即。
所以
零空间的维数
很容易知道,
特例分析
比如我们考虑例(8)所对应的其次线性方程组:
很明显,一个解为
我们可以设非零解为
到底有多少线性无关的
?也就是零空间的维数。
我们知道A三个列向量的前两个列向量线性无关,也就是前两列是C(A)的一个基,第三列可以表示成前两列的线性组合:
这种表示方法一定是唯一的。因为若有
那么
N(A)是
上的一维向量空间,即
中的一条过原点的直线。
一般分析
有了以上特例分析作为基础,我们就能容易地推广到一般情况。
对于一般的m行n列矩阵A,考虑A的列向量
这里的基虽然在原列向量
内,不一定就是最左边的r列,但是可以通过交换列向量得到这种形式,相应的零空间内各列向量的位置也需要做相应的调换,比如交换2、4列的位置,那么零空间向量相应交换2、4行的位置,变成,但这并不会影响零空间维数这个结果,我们这么做只是为了方便地分析问题。
我们任意从后面n-r个列向量中取某个
成立的
尝试写出这n-r个向量:
这下我们就能很容易看出为什么要取一个为1,其他都为0,目的就是为了一定能得到n-r个线性无关且各自唯一表示的列向量。
那么有可能还有其他的线性无关的向量吗?
也就是比如我们再随便给出一个列向量:
想要使
我们用反证法来证明这个命题,现在有一个
假设,那么,我们一定可以将
简写为:
关键来了,
假设要求的线性无关。
然后我们在(15)等式两端乘以A,便得到:
再以列向量的线性组合表示出来:
由(18)式,我们得到了
dim N(A)=n-r,r为A的秩。
当然,以上这种证明只是我自己做笔记时想出来的,肯定很繁琐,之后学习了矩阵的秩会有相关性质进行简洁的证明。
综合列空间,我们可以得到,对于
列空间和零空间对于理解非齐次线性方程组的解是非常有帮助的,列空间告诉我们什么时候有解什么时候无解,零空间告诉我们,解的结构应该是什么样子。
7
思路
考虑以下A,并进行行变换得到简化阶梯型矩阵R:
现在,记:
那么R可以表示为:
设
接下来计算RN:
这样我们就找出了
计算机求解的过程
第一步,通过消元找出R。
第二步,找出主元变量和自由变量。
第三步,给自由变量赋值0和1,并通过回代解出主变量。
举个例子:
由(23)可知解的形式为:
所以原齐次线性方程组的通解为:
其中,k为任意实数。
8
在了解了列空间和零空间之后,就可以对
以下两命题等价:
- 当
时,有解。
- 当
时,有解。
具体而言,n元线性方程组
- 无解的充要条件是
。
- 有唯一解的充要条件是
。
- 有无穷多解的充要条件是
。
接下来从简化行阶梯型R来分类:
非齐次线性方程组
数值线性代数徐树方pdf_MIT线性代数4-8:矩阵分解,向量空间,列空间和零空间,线性方程组求解...相关推荐
- 三阶矩阵的lu分解详细步骤_数学 - 线性代数导论 - #4 矩阵分解之LU分解的意义、步骤和成立条件...
线性代数导论 - #4 矩阵分解之LU分解的意义.步骤和成立条件 目前我们用于解线性方程组的方法依然是Gauss消元法.在Gauss消元法中,我们将右侧向量b与A写在一起作为一个增广矩阵进行同步的操作 ...
- 线性代数笔记:概率矩阵分解 Probabilistic Matrix Factorization (PMF)
概率矩阵分解模型可以解决大规模.稀疏且不平衡的数据. 1 PMF的两点假设 1.1.观测噪声(观测评分矩阵和近似评分矩阵之差)服从高斯噪声的正态分布 观测评分矩阵是ground truth的矩阵,我们 ...
- Eigen密集矩阵求解 1 - 线性代数及矩阵分解
简介 这里介绍线性系统的解析,如何进行各种分解计算,如LU,QR,SVD,特征值分解等. 简单线性求解 在一个线性系统,常如下表示,其中A,b分别是一个矩阵,需要求x: Ax=bAx \:= \: b ...
- matlab lud矩阵分解,MIT线性代数总结笔记——LU分解
MIT线性代数总结笔记--LU分解 矩阵分解 矩阵分解(Matrix Factorizations)就是将一个矩阵用两个以上的矩阵相乘的等式来表达.而矩阵乘法涉及到数据的合成(即将两个或多个线性变换的 ...
- 线性代数在计算机视觉的应用,线性代数在数据科学中的十大强大应用(二)
本篇为机器学习与数据科学背后的线性代数知识系列的第二篇,本篇主要介绍自然语言处理(NLP)中的线性代数与计算机视觉(CV)中的线性代数.涵盖主成分分析(PCA)与奇异值分解(SVD)背后的线性代数知识 ...
- 形象理解线性代数(三)——列空间、零空间(核)、值域、特征值(特征向量)、矩阵与空间变换、矩阵的秩
这里,我们还是要以 形象理解线性代数(一)--什么是线性变换?为基础.矩阵对向量的作用,可以理解为线性变换,同时也可以理解为空间的变换,即(m*n)的矩阵会把一个向量从m维空间变换到n维空间. 一.矩 ...
- 【线性代数】机器学习·算法必备 线性代数总结
目录 一.九层之台,起于垒土:坐标与变换 1.1 描述空间的工具:向量(Vector) 1.1.1 重温向量(Vector) 1.1.2 使用Python语言表示向量 1.1.3 向量(Vector) ...
- 考研:研究生考试(五天学完)之《线性代数与空间解析几何》研究生学霸重点知识点总结之第五课线性方程组
考研:研究生考试(五天学完)之<线性代数与空间解析几何>研究生学霸重点知识点总结之第五课线性方程组 目录 5 线性方程组 5.1.知识点 5.1.1.线性方程组有解的充要条件
- 【第六章 线性代数之 逆矩阵,列空间与零空间】3Blue1Brown
文章目录 6.逆矩阵,列空间与零空间 附注2-非方阵 6.逆矩阵,列空间与零空间 整个系列旨在透过直观的线性变换来理解矩阵和向量的运算.线性代数除了在机器人和计算机图形学中有用,还可以用来解方程组. ...
- 计算机专业线性代数是,计算机专业_线性代数期末试卷
计算机专业(本科)<线性代数>期末试卷 一. 设矩阵⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-----=2421164214112111A , 1 求A 的行列式, 2 求A 的秩.(15分) 二. 设矩 ...
最新文章
- 小米半年来最大调整:成立技术委员会,雷军称技术事关生死存亡
- 如何优化Spring Cloud微服务注册中心架构?
- 【开源】Caffe、TensorFlow、MXnet三个开源库对比
- Groovy的春天从Java7诞生那日开始
- Intel Realsense D435 pyrealsense set_option() rs.option 可配置参数翻译
- C# 控制台语音计算器
- 国立大学 计算机,新加坡国立大学 计算机
- Sublime Text3使用Package Control 报错There Are No Packages Available For Installation
- 读邹欣老师《师生关系》有感
- Dataset:智慧中国杯—全国大数据创新应用大赛七个数据集简介、下载之详细攻略
- 韦东山freeRTOS系列教程之【第六章】信号量(semaphore)
- java使用百度翻译接口实现前后端翻译功能
- 关于磁力计和加速度计的融合以及坐标系的对准
- 小波神经网络的基本原理,小波神经网络什么意思
- 女子怨男友沉迷网游 穿性感睡衣出走被性侵
- Halcon一维码识别实例
- 如何让一台连接wifi上网的电脑通过网线让另一台电脑上网?
- 1024程序员节,一份精华合辑送给你
- python抓取懂球帝部分球员数据
- JVC摄像机mp4视频丢失恢复方法