线性代数(笔记十) MIT公开课(来源网易云课堂)
课程来源:网易云课堂学习计划(课程链接)
作者简述:作者为一名正在读研的学生,自己的数学状态较差。本科期间所学均能算跟得上,而且通过自己的努力经过了研究生考试。但是对数学的理解并不透彻,只是根据课上所学去做题而已。如今科研中,许多过程均需要用到所学的数学知识,然而一个好的理解和一个扎实的基础才是科研之本。数学虽然是作为一种工具,如果不了解含义,无论是是使用上还是在其基础之上进行修改均显得支支吾吾。于是决定重新学习线性代数相关知识,并做此笔记以供复习或和他人分享。
用途:此系列文章均是作者在课上所学及其自己相关的数学思想所做的笔记,如有理解错误之处还望大家指出。本系列文章均可不咨询情况下任意转载和学习(不可商用)。
作者研究方向为机器学习,如果有相同方向的小伙伴想一起学习,请加QQ123854340(备注来源博客),如果人数较多还可能建群。同时发现文章中有错误之处也请发邮件到123854340@qq.com或者下方留言。
在上节课中,我们讲述了线性相关、线性无关及生成空间等相关知识。这节课中我们主要关注四个基本子空间。
一、四个基本子空间
在前面的章节中,我们提到过矩阵A的列空间C(A)及矩阵的零空间N(A)。 这节课中我们还要介绍其余两个子空间,他们分别是R(A)矩阵A的行空间和LN(A)矩阵A的左零空间。
我们已经很清楚矩阵A的列空间C(A)是由矩阵A的列所组成的空间,而其零空间N(A)则是由满足Ax=0的所有的解x所构成的空间。那另外两个空间又表示什么呢?其中,矩阵的行空间R(A)是矩阵A的行经过自由组合所构成的空间。如果用矩阵A^(A的转置)去表示的话,矩阵A的行空间R(A)还可以表示成C(A^)。即矩阵A的转置的列空间。在此基础之上,我们可以类比的得到N(A^)矩阵A的转置的零空间,我们也称之为LN(A)矩阵A的左零空间。
当给定矩阵A(m×n),我们分析下四个子空间都属于哪个空间中。
C(A)属于空间Rm,原因如下:
由定义可知,C(A)是由矩阵A的列向量所构成的空间。对于一个m×n的矩阵A有n个列向量。而对于每一个列向量又有m个分量,说明每个向量都是m维的。所以C(A)是处于空间Rm中的,他是Rm的子空间。
类似的我们可以得到 N(A)属于空间Rn
R(A)属于空间Rn
LN(A)属于空间Rm
对于其原因,我希望大家可以仔细的去分析。弄清楚原因,而且还要和上节课中讲的向量空间的维度区分清楚。
由于我们上节课中学习了向量空间的基及其维度,那么这四个基本子空间的基和维度又是什么?我们接下来简单分析一下。
我们先给出如下表格:
类型 基 维度
C(A) pivot cols r
R(A) pivot rows r
N(A) special solution n-r
LN(A) 稍后详细说 m-r
首先我们说一下C(A)的基及维度,仍然根据定义,我们知道C(A)是由矩阵A的各个列向量通过线性组合所构成的空间。在A的各个列向量中,线性无关的向量构成了该生成空间的基,其个数是向量空间的维度。在我们求解方程组(Ax=0)的过程中,我们经常会对A进行所谓的加减消元(也就是行变换),最后得到R(矩阵A所对应的行最简形式)。这样我们就可以很容易的看出其主元及主元所在的列。当然主元所在的列向量之间就是线性无关的。个数我们用r(矩阵A的秩)表示。所以我们得到如上答案。类似的主元所在的行也是线性无关的,个数也等于矩阵的秩r。所以R(A)的基及维度也就得到了。除了主元之外,我们称之为自由变元。通常为求得Ax=0的解空间,我们常常为自由变元赋值得到special solution(按照我们以往的赋值方式比如两个自由变元一般赋值0、1和1、0,那么这两个特解显然是线性无关的)。而解空间就是由这线性无关的特解线性组合而成,一般表示如下图(只是个例子)。所以特解为零空间的基,特解的个数为零空间的维度。
有一点需要我们注意的是,在我们对矩阵A进行行变换时,我们得到了R(行最简形式)。那么他们所对应的列空间C(R)、C(A)已经不相同了。对于国内教材而言,也就是行变换会改变矩阵列的性质,而不会改变行的性质,即R(R)= R(A)。下面我们根据例子详细说下原因:
在上图中左侧矩阵为原矩阵A右侧为经过行变换得到的R矩阵。经过行变换以后,A的第一列列向量[1,1,1]^已经不在C(R)中了,也就是说由R的列向量组成的空间中不存在C(A)中的向量。显然他们已经不是同一个列空间了。那么为什么行空间没有发生改变呢?我们由A进行一系列行变换得到了R,行变换等价于行向量之间的线性组合。也就是A通过行向量的线性组合得到了R,而对应的我们一定会通过R的行向量的线性组合得到A,这个变换是上个过程的逆变换。所以他们的行向量都可以通过线性组合互相转换,继而具有相同的行空间。
二、矩阵A的左零空间
对于矩阵A的左零空间我们表示如下:
LN(A)= N(A^)
继而我们得到矩阵A的左零空间就是满足A^y=0的所有的解y所构成的空间(类比零空间)。
对于A^y = 0,我们两边同时取转置得到 y^A^^=0^,化简后,我们会得到y^A = 0。如果A是m×n矩阵,要满足如上关系(必须满足矩阵乘法原则),显然y^必须是1×m的行向量,而0便为1×n的0向量。所以可以看出矩阵A的左零空间是寻找所有使得矩阵A变成0向量所对应的行向量y^所构成的空间。那么我们怎么得到左零空间中的向量呢?
我们注意到,当我们将矩阵A化简为矩阵R时,矩阵R中将会出现全为0的行向量。且R也已经是无法化简的行最简形式。于是我们类比求矩阵逆的过程:
[A I]→[I E]
通过对A矩阵变换成单位阵I的过程中,后添加的单位阵记录了变换过程E(E为初等变换的组合,前面讲过)。假设我们全程都用的行变换,则可以得到EA = I,则可以得到E = A~。在这里我们依旧利用这个原理添加单位矩阵I:
[A I]→[R E]
在这个变换过程中I记录了由A到R的变换过程E,类比得到EA = R。由此我们可以得到下图(A是上个例子的A):
这样我们就可以得到将矩阵A变成0向量的行向量有哪些,只需在E中对应找就可以。对于例子我们可以得到:
继而空间的基及维度也就确定了。
在这节的讲解中,概念十分抽象。文字叙述占比例较大,无法直观的表达。不知道能不能看懂,如果细心看了视频应该会很容易明白。不过有些地方也可能是我个人的理解不到位,如有更好理解的方式方法,欢迎和我讨论。