第一课时:方程组的几何解释
线性方程组的两种理解方式:行图像(row picture)、列图像(column picture)
- 行图像:试图将每一个完整方程所表示的图像表示出来;
- 列图像:关注矩阵的列所表示的向量,把两个方程组放在一起考虑。这样做的目的是找到两个列向量的正确的线性组合为右侧向量。
方程组解的情况:
如果是奇异矩阵,即不可逆矩阵,在行图像中看即至少有两个方程组所表示的平面是平行的,在列图像中看即至少有两个列向量是指向同一方向的(即不相互独立,相当于同一个向量),此时,只有b处在这个向量和另一个非共线向量所表示的平面内时,方程组才有解。
矩阵与向量相乘的方法
- 将矩阵 A 与向量
x 的相乘,看成 A 各列的线性组合,这是极力推荐的:
- 矩阵乘以右侧列向量可看成矩阵各列向量的线性组合,结果为列向量
- 左侧行向量乘以矩阵可看成矩阵各行向量的线性组合,结果为行向量
- 原始点乘方式
第三课时:矩阵乘法、矩阵的逆
矩阵乘法
行列点乘、列方法、行方法、列x行方法、分块乘法
矩阵的逆
A为不可逆矩阵的充要条件:
- 行列式为0
- 列向量的线性组合可以得到0向量
- 秩小于n
- Ax=0有非0解
- 有特征值0
求逆的方法(Gauss-Jordan):
- 将矩阵A和I放到一起形成增广矩阵
- 对增广矩阵中的A进行消元,将A变成I
- A的逆即为消元过后增广矩阵的右侧部分
证明:设
另外:
- (AB)−1=B−1A−1
- (AT)−1=(A−1)T(求逆操作可以与转置操作颠倒顺序)
第四课时:A的LU分解
A=LU 是最基础的矩阵分解。L 是下三角矩阵,U 是A通过消元得到的上三角矩阵。L 是对A进行的所有操作矩阵的逆的反向乘积。
例:E32E31E21A=U,那么 A=E−121E−131E−132U=LU.
消元的复杂度:
对于1个 n×n矩阵,需要进行的加和乘的操作次数为 O(∑n2)=O(n3)
第五课时:转置、置换、向量空间
置换(Permutation)矩阵:
- 用来对矩阵进行行互换操作的矩阵,是重新排列了的单位矩阵
- n阶单位阵共有 n! 个置换矩阵,这些置换矩阵构成置换矩阵群
- 所有置换矩阵都可逆,且逆等于转置
实际上在做LU分解的时候,需要对矩阵A进行行互换,以避免主元上出现0,这里就可以用到置换矩阵。因此LU分解可以表示为:PA=LU.
向量空间、子空间
向量空间:对加法和数乘运算封闭,即对线性组合封闭,即空间内的向量的线性组合仍然在空间之内。例:直线、平面、三维空间。
子空间:取某向量空间的部分空间,这部分的向量对加法和数乘封闭,称这个空间为子空间。
例:
- R2(平面)的子空间:穿过原点的直线、原点/零向量.
- R3的子空间:穿过原点的平面、穿过原点的直线、原点/零向量.
矩阵的子空间:
通过列向量构造,矩阵的列向量的所有线性组合构成了一个子空间,称为列空间。如果列向量恰好在一条线上,那么子空间就是一条直线。
如果列空间部分向量线性相关,那么称其中最大的非线性相关列向量为主列。
第六课时:列空间和零空间
从列空间的角度看 Ax=b 的解,如果方程有解的话,说明 b 位于 A 的列空间之中.这样的b应满足以下条件:
- b为零向量。因为Ax=0总有一个零解。
- b是列向量的线性组合.
零空间(Null space):
零空间指的是 Ax=0 的所有解x所构成的空间。
例如:
此时的零空间是 R3 中穿过原点的一条直线。
求解零空间可以使用消元法.
证明零空间是一个向量空间:
如果 Av=0,Aw=0,设a,b为常数,那么 a⋅Av+b⋅Aw=A(a⋅v+b⋅w)=0. 即零空间的向量对加法和数乘封闭.
前面考虑的是 b=0 的情况,那么如果 b≠0,那么它的解空间是否构成向量空间呢?
答案是否定的,因为明显零向量不在这个空间。它通常是不过原点的平面或者不过原点的直线。
第七课时:求解Ax=0:主变量、特解
消元:对矩阵A的行向量做线性变换是不会改变解空间的。
对矩阵A的消元可以得到阶梯形(echelon)矩阵U(这里如果应该进行消元的列的主元为0的话,就对下一列进行消元,这时的消元后矩阵就是阶梯形的),每行的首个非零元素为 主元 (pivot).
这里引出 秩 的概念:Rank(A)=主元的个数
消元后得到方程变成了Ux=0,但解和列空间不变。通过回代即可求解。
称含主元的列为主列,其它列为自由列。
求解零空间的算法:
- 对A 进行矩阵消元,确定主列,其余为自由列;
- 然后对自由变量分配数值。一般的,可以令其中一变量为1,其他均为0,求出一个解,再令另一个变量为1,其他为0,完成另一个解。。求出的这些解向量完全不同,每一个解都是零空间的一部分,整个解就构成了完整的零空间了。
特解:给定自由变量特定的值(0或1)求出的解。特解的个数即为自由列的个数。通过特解的线性组合能够构造整个零空间,
算法总结:消元后矩阵U 的秩Rank(A)=r,表示主变量的个数,主元的个数,表示只有r 个方程起作用,
那么自由变量的个数即n-r 个,令自由变量取1,0 值就能得到特解,所有的特解构成了零空间的基,特解的线性组合即构成了整个零空间。
简化行阶梯形
R=reduced row echelon form(rref):主元变为1,主元上下都是0.这样的矩阵所包含的信息:
- 主行、主列
- 一个单位阵:主行和主列交汇处的元素
- 全0行:表示该行是其它行的线性组合
- Ax=0⟶Ux=0⟶Rx=0 解越来越清晰明了
将矩阵R中的主元列和自由列分别放在一起形成单位矩阵I和自由列矩阵F。一个有趣的现象是:特解结果中,自由行中数字的相反数即特解中的主元值。
即 R=[I0F0],且特解为[−FI],Ax=0转化为:
matlab中使用null(A,’r’)可以得到由rref方式得到的零空间的基向量。
重要结论:矩阵主列个数与其转置的主列个数相等!即矩阵的秩与其转置的秩相等
第八课时:求解Ax=b:可解性和解的结构
Ax=b可解必须满足的条件:
- b属于A的列空间
- 行的线性组合如果得到0向量,那么b中的元素相同组合也为0
二者等价。
求解方法:
- 先求特解,将所有的自由量设置为0,得到特解 xp,满足 Axp=b
- 求解零空间的特解,得到零空间,记其中的向量为 xn,满足 Axn=0
- 方程Ax=b的通解即为特解加上零空间的任意向量
因为 Axp=b,且 Axp=b,那么 A(xp+xn)=0。 对于方程的某个解,其与零空间内任意向量之和仍为解。
把这些解在空间中表示出来, xp 是一个非原点的点,xn 是一个子空间(穿过原点的直线、穿过原点的平面…),那么 xp+xn 的组合是一个不经过原点的平面、直线,不再是一个子空间。
例:
经过消元后得到:
1). 令自由量 x2=x4=0,解得:xp=[−203/20]T.
2). 现在求 Ax=0 的零空间,令 x2=1,x4=0,解得:xn1=[−2100]T;令 x2=0,x4=1,解得:xn2=[−20−21]T.(也可由rref方式得到)
故通解为:
秩与 Ax=b 的解的关系
秩 r 的 m×n 的矩阵 A 始终有:
- 列满秩:r=n,各列线性无关(此时必有n≤m)
- 每列都有主元,没有自由变量
- 零空间只有零向量,列的线性组合无法产生0向量
- Ax=b的解:0个或者一个,如果有的话,那么唯一解是特解 xp
- 此时A的 rref 矩阵满足形式 R=[I0]
行满秩:r=m,各行线性无关(此时必有 m≤n)
- 每行都有一个主元,自由变量 n-r 个
- 对任意的 b,
Ax=b 都有解,且有无穷多个解 - 此时A的 rref 矩阵满足形式 R=[IF]
满秩方阵,r=m=n,行向量、列向量 均线性无关
- 零空间只含0向量
- 对任意的b,Ax=b 都有解,且唯一
- 可逆矩阵
- 此时A的rref矩阵为 R=I
总结:
A的秩 | 解的数量 | 解的情况 |
---|---|---|
r=m=n | 唯一解 | 列向量线性组合 |
r=n<m | 无解或唯一解 | 若b在列空间中则有解 |
r=m<n | 无穷多解 | 特解+零空间 |
r<m,r<n | 无解或无穷多解 | 若b的行与列向量有相同组合关系则有无穷解,否则无解 |
第九课时:线性相关性、基、维数
线性相关性(Linear independence):
- 如果矩阵 A 的零空间中存在非零向量,那么各列线性相关。此时秩Rank(A)
生成空间(The space they span):
向量组
向量空间的基(basis):
向量空间的一组基是指:
一系列的向量,v1,v2,⋯,vd,这些向量具有两大性质:
1)他们是线性无关的,可逆;
2)他们生成整个空间;
对于给定的 N 维空间,基向量的个数就是 N 个。向量空间的基不唯一,满足条件的向量组都可以是基向量。
维数(dimension):
即基向量的个数,空间的大小
列空间的维数=主列的个数=矩阵的秩
注意:不是矩阵的维数
例如:矩阵 A=⎡⎣⎢111212323111⎤⎦⎥,R=[I0F0]=⎡⎣⎢100010110100⎤⎦⎥,它的列向量能生成列空间,但这些列向量不是 R3 基,它们是列空间的基,列空间的维数是2。
零空间的维数=自由列的个数=自由变量的数目。
已知矩阵 Am×n,秩为 r,那么自由变量为 n-r,即dim(N(A))=n-r. 注意只与矩阵的列数目有关,可见:
列空间的维数(r)+零空间的维数(n-r)=矩阵的列数(n)
第十课时:四个基本子空间
对于矩阵 Am×n,称列空间、零空间、行空间、左零空间为四个基本子空间,线性代数的核心内容就是研究四个基本空间及其关系。
零空间 N(A)
n 维向量,是 Ax=0 的解,所以 N(A) 在 Rn 里。
列空间 C(A)
列向量是 m 维的,所以 C(A)在 Rm 里。
行空间 C(AT)
A 的行的所有线性组合,即A转置的列的线性组合(因为我们不习惯处理行向量),C(AT) 在 Rn 里。
A 的转置的零空间 N(AT) ——A的左零空间
N(AT) 在 Rm 里
重要结论:
- 行空间和零空间在 Rn 里,他们的维数加起来等于n,
- 列空间和左零空间在 Rm 里,他们的维数加起来等于m
- 行空间的维数和列空间的维数相同,都等于秩的大小 r
- 零空间:主变量有 r 个,自由变量有 n-r 个,零空间的维数为 n-r
- 左零空间:维数为 m-r
换句话说:
- n 维空间中存在两个子空间,一个r 维的行空间,一个n-r 维的零空间,维数和为n;
- m 维空间中存在两个子空间,一个r 维的列空间,一个m-r 维的左零空间,维数和为m。
基的问题:
- 列空间:主列即为一组基
- 零空间:一组特解即为一组基
- 行空间:通过初等行变换成最简形式,rref形的前r行即为一组基
行变换不会对行空间产生影响,但会对列空间产生影响。
左零空间(A 转置的零空间):为什么叫左零空间?
ATy=0,将等式左右两边都转置,得:yTA=0T,所以叫左零空间。求矩阵的左零空间,就试着寻找一个产生零行向量的行组合,求矩阵的零空间,就试着寻找一个产生零列向量的列组合。
第十一课时:矩阵空间、秩1矩阵
矩阵空间:
把 Rn 的概念延伸至 Rn×n,矩阵空间也是向量空间,它们仍对加法和数乘封闭。例如 3x3 矩阵的加法和数乘仍停留在 3x3 矩阵空间,它有一些子空间,如:3x3对称矩阵、3x3上三角矩阵。
普通矩阵M
3x3 矩阵的一组基有9个矩阵(分别令某个元素为1,其余为0)。实际上,这个空间与9维空间相同,只是9个数字写成了一个方阵。
对称矩阵S
3x3对称矩阵的一组基有6个矩阵,对角线三个元素和对角线以上的3 个元素分别为1 其余为0
上三角矩阵U
维数为6,一组一组基是:上三角的 6 个元素分别为1 其余为0.
对于其它子空间:
S∩U:维数为3,只有对角线上的非0元素
S+U:维数为9,取S 内任一元素(矩阵)加上U 内任一元素(矩阵)即可
S∪U:不构成子空间!
其它向量空间的例子:
微分方程 d2ydx2+y=0,它的解空间(零空间)可以描述为:y=c1cosx+c2sinx,解空间的基为 cosx 和 sinx,解空间的维度为 2.
秩 1 矩阵
所有秩1 的矩阵都可表示为一列乘以一行的形式:A=UVT,U 是列向量,V 也是列向量。如 [1248510]=[12][145]
所有矩阵都可以表示为秩1矩阵的组合。如果有5×17的矩阵,秩为4,可以把这5×17的矩阵分解为4个秩1矩阵的组合。
秩1矩阵组成的集合是子空间吗?不是!
假设矩阵空间M 为所有5×17 的矩阵,一个由秩4 矩阵组成的子集,子集中两个矩阵相加结果很可能是一个秩5 矩阵;由秩1 矩阵组成的子集,相加结果很可能是一个秩2 矩阵。
R4 中的向量 v=[v1,v2,v3,v4]T,假设 S={v∈R4|v1+v2+v3+v4=0},那么 S 是子空间吗?是!
因为 S 中的向量对加法、数乘封闭。其实,S 是矩阵
A的行空间是一维空间,列空间也是一维空间;
A的左零空间是0维空间,没有任何向量,基是空集。
第十三课时:复习一
已知:Ax=⎡⎣⎢242⎤⎦⎥,x=⎡⎣⎢200⎤⎦⎥+c⎡⎣⎢110⎤⎦⎥+d⎡⎣⎢001⎤⎦⎥
(1)求行空间的维数
(2)矩阵A是什么样的
答:
(1) 首先,A是一个3x3的矩阵(因为b有三行,且x为三行);其次,由解的结构可知,A的零空间的维数是2(两个零空间特解),所以矩阵A的秩为1,即行空间的维数为1.
(2) 由 xp=[200]T,可知A的第一列为 [121]T;然后因为零空间中包含 [121]T,说明A的最后一列均为0;最后由零空间包含 [110]T,故第二列为[−1−2−1]T。即:
A=⎡⎣⎢121−1−2−1000⎤⎦⎥T如果方阵的零空间只含零向量,那么它的转置的零空间也只包含零向量。
如果方阵 A 满足
A2=0 ,那么是否可以推出 A=0?
答案:不能。反例:[0010][0010]=[0000]已知矩阵 B=⎡⎣⎢101110001⎤⎦⎥⎡⎣⎢100010−1102−10⎤⎦⎥.
(1)B的零空间的基是什么?
(2)求解 Bx=⎡⎣⎢101⎤⎦⎥ 的通解。
答:
(1)左边是可逆矩阵,如果C是可逆矩阵的话,那么零空间N(CD)=N(D),零空间不会因为C而改变。因此B的零空间等价于右边矩阵的零空间。一组基为:⎡⎣⎢⎢⎢1−110⎤⎦⎥⎥⎥,⎡⎣⎢⎢⎢−2101⎤⎦⎥⎥⎥
(2)只需要求出一个特解即可。因为B的第一列和b是一样的,所以可以得到特解 [1000]T. 加上(2)得到的零空间即可得到通解。判断:如果A和B的4个子空间相同,那么 A=cB,c为常数.
答:错误. 反例:任意同阶的可逆方阵A和B的4个子空间都相同。如果交换一个矩阵中的两行,行空间和零空间不变,列空间和左零空间改变。
为什么向量 v=(123)不能同时为一个矩阵的行向量和零空间的一个向量,即 v 为什么不能同时存在于行空间和零空间。行空间和零空间的交集只有零向量。实际上,零空间与行空间正交。