线性代数知识点整理
课程主页: http://speech.ee.ntu.edu.tw/~tlkagk/courses_LA16.html
一个线性系统满足两个条件:Persevering Multiplication和Persevering Addition。
Persevering Multiplication
Persevering Addition
多元线性方程组是一个线性系统 。
向量是一堆数的集合,分为列向量和行向量,本文中,向量默认是列向量,行向量用其转置表示。
向量与标量相乘 ,每一维都与该标量相乘:
向量相加 ,使用平行四边形法则:
零向量 :所有维度的值都为0:
标准向量 :一个维度是1,其余维度是0:
向量集 :可以包含有限个或无限个向量:
R n : 所有的n维向量组成的向量集合
矩阵是一组向量:
如果矩阵有m行和n列,我们就说矩阵的大小为m*n,如果m=n,我们称为方阵(square matrix)。
矩阵的元素下标表示,先行后列:
矩阵与标量相乘 :每一个元素分别与该标量相乘。
矩阵相加 :两个矩阵的形状必须一致,同位置的元素分别相加。
零矩阵 :所有元素均为0的矩阵。
单位矩阵Identity matrix :必须是方阵,对角线元素为1,其余为0,用I n 表示n*n的单位矩阵。
同形状的矩阵的一些运算法则 :
矩阵的转置 :沿左上到右下的对角线为轴进行翻转,将(i,j)位置的元素与(j,i)位置的元素互换得到的矩阵,转置的矩阵用A T 表示。
矩阵转置的一些运算规则 :
矩阵和向量相乘,结果如下:
从行的角度来看矩阵和向量相乘 :从行的角度看,矩阵A和向量x相乘,其结果是矩阵的A的每一行与向量x做点积(dot product,后面再介绍) 的结果。
从列的角度来看矩阵和向量相乘 :从列的角度看,矩阵A和向量x相乘,相当于对矩阵A的列向量做了一次线性组合。
因此,无论从行角度还是列角度,矩阵A的列数要与向量x的维数相同。
矩阵和向量相乘的一些性质 :
如果A和B都是m*n的矩阵,对所有的w,如果都有Aw=Bw,那么是否意味着A=B。结果是显然的。既然是所有的w,那么我们用标准向量就可以得到A和B的每一列都是相同的,因此A=B。
对于一个线性方程组,我们可以写成矩阵和向量相乘的形式:
对于一个线性方程组,其解的情况可能是无解,有唯一解或者有无穷多个解。我们把所有的解的集合称为 解集(solution set)
如果线性方程组有解,我们就称其为 相容的(consistent) ,若无解,则称为 不相容的(inconsistent) 。
线性组合是一个操作,将各个向量缩放之后,相加在一起,就得到了参与操作的向量之间的线性组合。
所以线性方程组的问题可以转变成:b是否可以表示成A中列向量的线性组合?
举几个例子:
通过观察上面的例子,你可能会想,在二维平面中,是不是只要两个向量不平行,就一定有解?答案是肯定的,但有解时两个向量不一定平行,因为目标向量也可能跟它们平行。
对于一个向量集S,其向量的所有线性组合组成的向量集V,称为 Span(S) ,也被称为 S张成的空间 。
举几个二维空间中的例子吧,如果S中只有零向量,那么其张成的空间也只有零向量。
如果S中包含一个非零向量,那么其张成的空间是一条直线:
如果一个向量集包含两个不平行的非零向量,那么其可以张成整个二维平面:
所以一个线性方程组的问题又可以转换成两一个等价的问题:向量b是否在A的列向量所张成的空间中?
在上一节中,我们知道了如果b可以表示成A中列向量的线性组合或者b在A的列向量所张成的空间中,那么线性方程组有解,否则无解。但是,有解的情况下是唯一解还是多个解呢?我们还不知道。
给定一个向量集,如果其中一个向量可以表示成其余向量的线性组合,那么我们就说这组向量是 线性相关(Linear Dependent) 的。值得注意的是,零向量是任意向量的线性组合,因此只要包含零向量的向量集,都是线性相关的。
线性相关还有另一种定义,即可以找到一组非全零的标量,使得线性组合为零向量。
与之相对应,如果无法找到一组非全零的标量,使得线性组合得到零向量,那么这组向量就是 线性无关的(Linear Independent) :
判断向量集是线性无关还是线性相关,其实就是看一个 齐次方程(Homogeneous Equations) 有无非零解:
由此,对于Ax=b,我们可以得到两个结论:如果A的列是线性相关的,且Ax=b有解,那么,它有无穷多个解;如果Ax=b有无穷多个解,那么A的列是线性相关的:
矩阵的秩(Rank) 定义为线性无关的列的最大数目:
矩阵的零化度(Nullity) 是矩阵的列数减去矩阵的秩:
也就是说,如果一个m*n的矩阵,其秩为n的话,它的列是线性无关的:
所以总结一下线性方程组的解的相关问题:
如果两个线性方程组的解集是相同的,我们就称它们是等价的(equivalent)。
对线性方程组做以下三种操作可以得到等价的方程组:
1)交换两行
2)对其中一行变为k倍
3)将一行的k倍加到另一行上
上面的三种操作我们也称为 初等行变换(elementary row operations)
这里我们介绍一下 增广矩阵(Augmented Matrix) ,即将A和b进行横向拼接:
因此,通过初等行变换,如果我们能够将增广矩阵转换为一个相对简单的形式,那么我们可以很快的得出最终的解。
我们首先介绍行阶梯形式的矩阵,它满足两个条件,首先是非零行要在全零行的上面,其 先导元素(leading entries,每行的第一个非零元素) 按阶梯型排列:
在上述两个条件的基础上,如果先导元素所在的列都是标准向量的话,那么它就是 简化行阶梯形式Reduced Row Echelon Form :
下面的矩阵不是简化行阶梯形式:
而下面的矩阵是简化行阶梯形式:
根据简化行阶梯形式,我们很容易得到线性方程组的解的形式。
如果简化行阶梯形式是[I;b']的,那么线性方程组有唯一解:
下面的例子是有无穷多个解的情况,可以看到,第1、3、5列是包含先导元素的标准向量,其对应的变量也称为基本变量,而第2、4个变量被称为自由变量:
下面的例子是无解的情况,先导元素出现在了最后一列:
通过将增广矩阵化简为简约行阶梯形式,进而求解线性方程组解的方法,我们称之为 高斯消元法(Gaussian Elimination)
接下来,我们来看一下简约行阶梯型形式的一些性质:
(1)化简为简约行阶梯型形式之后,列之间的关系不变
也就是说, 初等行变换不改变矩阵中列之间的关系 。加入A的简约行阶梯形式是R,那么Ax=0和Rx=0有相同的解集。
但是对于行来说,行阶梯形式改变了行之间的关系,比如原先两行是两倍的关系,其中一行变为二倍之后,二者就相等了,关系自然改变了。
(2)简约行阶梯形式改变了矩阵列所张成的空间
举个简单的例子就能理解,假设一个矩阵是[[1,2],[2,4]],它所张成的空间是y=2x,化简后得到[[1,0],[0,0]],此时所张成的空间却是整个平面。但是没有改变行所张成的空间。
(3)先导元素所在的列线性无关,其他列是这些列的线性组合
先导元素所在的列,在原矩阵中被称为 主列(pivot columns) ,这些列是线性无关的,其他列可以有主列的线性组合得到。
(4) 矩阵的秩等于主列的个数,等于简约行阶梯型里非0行的个数
根据这个性质,我们可以得到矩阵的秩的一个性质:
Rank(A) <= Min(Number of columns,Number of rows)
因为秩等于主列的个数,所以秩一定小于等于列的个数,因为秩等于简约行阶梯型中非零行的个数,所以秩一定小于等于矩阵行的个数。
有这个性质我们还可以得出两个简单的结论: 对于m*n的矩阵A,如果m<n,那么矩阵A的列一定是线性相关的 和 在R m 空间中,无法找到多于m个线性无关的向量 。
所以我们再来回顾一下矩阵秩的判定,我们已经有多种得到矩阵秩的方式:
(5)当m*n的矩阵A的秩为m是,方程组Ax=b恒有解
对于增广矩阵来说,如果变为简约行阶梯型后先导元素出现在了最后一列,则无解。
什么情况下Ax=b恒有解呢?b是一个m*1的向量,也就是说矩阵A的列向量可以张成整个R m 空间,即A的秩为行数m,也就是A变成简约行阶梯型之后没有全0行。
(6)m个线性无关的m维向量可以张成整个R m 空间,R m 空间中多于m个向量的向量集一定线性相关
如果m*n的矩阵的秩为n或者m,那么说该矩阵为 满秩(Full Rank) 。
给定两个矩阵A和B,其相乘结果中的元素(i,j)是矩阵A的第i行和矩阵B的第j列的内积,因此,矩阵A的列数一定要个矩阵B的行数相等。
矩阵乘法可以看作是两个线性方程的组合:
(1) AB <> BA
(2)(AB) T = B T A T
(3)其他性质
(4)对角矩阵相乘
分块矩阵相乘和普通矩阵相乘其实是相同的:
如果两个方阵A和B的乘积是单位矩阵,AB=I,那么A和B就是互为逆矩阵。
一个矩阵是 可逆的(invertible) 的,必须满足两个条件,首先要是方阵,其次是可以找到另一个方阵B,使得AB=I。
并不是所有的方阵都是可逆的。同时,一个矩阵的逆矩阵是唯一的 :
逆矩阵可以用来求解一个线性方程组,但这种方法要求A是一个方阵,同时在计算上并不是十分有效率的:
我们之前介绍了三种初等行变换,其实初等行变换都可以用矩阵相乘表示,这种左乘的矩阵被称作 初等矩阵(Elementary Matrix) 。即单位矩阵经过一次初等变换得到的矩阵。
既然左乘一个初等矩阵相当于对单位矩阵做一次初等行变换,那么只要再左乘一个相反操作的初等矩阵,就可以再次变回单位矩阵,所以初等矩阵的逆很容易得到:
广告 您可能关注的内容 |