第一课时:方程组的几何解释
线性方程组的两种理解方式:行图像(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 转化为: