把线性代数(LA)中每个概念理解清楚,并且理清概念间的来龙去脉。
几乎所有的LA内容都是围绕下面这组等价命题展开的:
对于方阵A(n*n):
1.A可逆(A是非奇异阵)
2.<=> 线性系统 Ax=0 有唯一解,零解
3.<=> 线性系统 Ax=b 有唯一解
4.<=> A的最简化行阶梯矩阵 rref(A)=I 是单位矩阵
5.<=> A可以表示称一系列初等矩阵的乘积
6.<=> A的列向量线性无关
7.<=> A的列向量可以生成n维空间
8.<=> A的列向量是n维空间的基
9.<=> A的行秩==A的列秩==n
10.<=> A满秩(r==n)
11.<=> A的行空间维度==A的列空间维度==n
12.<=> A的行向量线性无关
13.<=> A的行列式 det(A)!=0
14.<=> 0不是A的特征值
因为真实世界通常是多维度的,单个数已经不足以来描述真实世界。线性代数研究的就是一组数,也就是向量。
向量
向量是一组有序的数,表示方向,如物理世界中。又可以表示多维世界。有序说明了(a, b)和(b, a)是两个不同的向量。
向量有其基本的运算:
1.向量加法
2.数量乘法
由这两个基本操作想到了向量空间。
向量空间
空间是一个集合,我们经常说的2D,3D空间,实际上是欧几里得空间。现在知道,欧几里得空间是点集,又是起点为(0,0)的向量集合。此处所讨论的向量空间默认指的是欧几里得向量空间。
向量空间是个集合,其中的元素必须定义两个基本运算:
1.向量加法
2.数量乘法
这两个基本运算又必须满足十条性质。(这是向量空间的定义)
这两个运算十分重要,因为这使得向量成为向量。
之所以把向量默认为欧几里得空间的向量,是因为现实世界中,欧几里得空间是最常见的。
把不是欧几里得空间的其他空间称为“广义线性空间”。比如,所有的2*2的方阵构成一个向量空间,其中定义向两加法为矩阵加法,定义数量乘法为矩阵的数量乘法。可以证明这个空间中的2*2方阵满足十条性质。
有了空间,就有子空间。
子空间
啥是子空间:如果V是一个向量空间,S是V的子集,而且S也是一个向量空间(或者说,S对加法和数量乘法封闭),那么称S是V的一个子空间。
比如,2维欧几里得空间是一个向量空间V,现在有一条过(0,0)的直线,所有这条直线上的向量构成V的一个子空间S。可以证明S对加法和数量乘法封闭。
而假如现在由一条不过(0,0)的直线,所有在这条直线的向量空间不是V的子空间。可以证明,这个空间对加法和数量乘法不封闭。
补充一点,之所以(0,0)点是个关键,是因为欧几里得空间的向量起点一定要是(0,0)。
上述例子进一步说,S空间是过(0,0)的一条直线。那么任何这条只直线上的非零向量v都可表示空间S中的其他任何向量,也就是说v可以生成S中的所有向量。那么这个非零向量v就是这个子空间中的一组基,子空间的维度为1。
有一点需要注意,如果一个欧几里得空间中每个实数元素组包含n个元素,这个空间维度一定是n吗?错!正如上述,过原点的一条直线是二维欧几里得空间的一个子空间,这个子空间中每个元素含有x,y两个元素,但是这个子空间的维度是1,非2。
那么什么是空间的一组基呢?
空间的基
先看两个命题:
命题1:如果m个向量生成n维空间,则m最小为n。
命题2:如果m个n维向量线性无关,则m最大为n。
由上述两个命题,可以得到空间基的定义:
若一组向量可以生成整个n维空间,且线性无关,则这组向量一定有n个。这样一组向量是n维空间的的一组基。
基的作用是啥:在n维空间中,如果给定一组基,任何一个向量(或点)都可以表示成这组基的线性组合。而且表示方法唯一。
比如2维欧几里得空间中由无数组基,其中最常使用的是标准正交基:(e1,e2)。e1与e2正交,就是垂直,且模为1。
实际上,我们常说的一个向量,如(12,8),默认是使用二维欧几里得空间的基来表示的,也就是说,(12,8)左边是默认左乘(e1, e2)=((1,0)T,(0,1)T)。这个乘法表示的含义是,在(1,0)T这个方向上移动12个单位,在(0,1)T这个方向上移动8个单位,后得到的点或坐标(12,8)。
同样这个点也可以使用其他的基来表示。如(u,v)=((4,1)T,(2,3)T)。在这个基中,(12,8)用(2,2)来表示,就是说,在方向(4,1)T上移动2个单位,在(2,3)T方向上移动2个单位,就移动到了(12,8)。所以在(u,v)这组基下(2,2)来表示同一个点。
由上述,可以理解:矩阵A的列向量线性无关+矩阵A可以生成n维空间=>A是方阵且A的列向量是n为空间的基。也就是等假命题6,7,8。
只是用标准正交基不行吗,为什么还要由其他基。因为对于特定的问题,把问题放到其他基会更容易解决问题。
知道了什么是空间的基,那什么是空间的维度呢?
空间的维度
空间维度的定义是:一个空间的基中,向量的个数,称为空间的维度。
如二维欧几里得空间的基(e1,e2)这个基中由两个向量,所以dim()=2。
回看空间基的两个命题,什么叫线性无关? 什么又是“生成n维空间”?
线性无关
定义:对于p个n维向量,存在一组k(p个)全为零时才有,v与对应k相乘后相加的结果为0。则称p个v线性无关。
也就是说,任何一个v都是独立存在的,不能由其他向量的线性组合来代替。
反过来,如果一组向量线性相关,那么表示其中有一个向量可以由其他向量线性表示,这个向量对应的k为0。也就是说,被线性表示的向量不能增加系统的信息量,系统有信息冗余。
把上述“v与对应k相乘后相加”称作v的线性组合。
线性组合
就是向量相乘后相加,体现了向量的两种最基本运算:向量相加,数量乘法。
从矩阵的列视角来看,矩阵与向量的乘法也是个线性组合,是矩阵列向量的线性组合。其中的v以列向量的形式构成矩阵,所有的k构成向量。
另一个例子,Guass-Jordan 消元法,结果的每一行,是原来矩阵各行的一个线性组合。注意,消元法的结果描述的是原矩阵列向量的关系。
生成空间
假如有两个线性无关的二维向量(u,v),在二维欧几里得空间中的任何一个向量都可以表示成u,v的线性组合,则称u,v可以生成整个二维空间。
可以拓展到n维空间。
但是既然u,v可以生成整个二维空间,那么再增加任意一个向量w,这三个向量u,v,w也能生成整个二维空间。只需要w前的系数为0。问题来了,至少需要多少个向量才能生成整个二维空间呢?结论是:对于n维空间,至少需要n个向量才能生成。用反证法,把问题转化齐次线性方程组解的问题。
看待矩阵的4大视角
视角:
空间视角:列向量 (坐标系或空间)
系统视角:线性方程组
函数视角:行向量 (与线性变换相关)
数据视角:记录与特征
线性系统
啥是线性?所有未知数是一次的。
线性系统就是多个一次方程联立。线性系统中存在一个矩阵叫做增广矩阵。对这个矩阵的操作使用Guass-Jordan消元,返回一个阶梯矩阵。使用这个操作来判断这个线性方程组解的结构。解的结构本质上是经过消元后,方程组的个数与未知数个数的关系。
线性系统中,当等号右边全为零时,叫做其次方程组。
许多LA相关问题都可以经由线性系统的视角,证明线性方程组的解,来证明。
比如:方阵的逆与线性相关的关系。如何判断线性相关否,根据定义来:这几个向量的线性组合(等号右边为0)是否只有零解,若只有零解,表示定义中的k全为零,全为零啥意思,就是所有k对应的所有向量线性无关(线性无关的定义)。 如果方阵A可逆,那么Ax=0 <=> A的逆*A = A的逆*0,即I*x=0(0矩阵),所以x=0。
也就是说,方阵A可逆,则A的列向量线性无关。
线性变换
变换是一个函数,一个线性变换T(x)必须满足两个条件:
T(u+v)=T(u)+T(v)
T(C*u)=C*T(u)
, C属于1D欧几里得空间
看,又是加法和数量乘法。
一个线性变换对应一个矩阵。而且所有矩阵都对应一个线性变换。
从几何角度理解特征值特征向量时,因为只给出了一个变换,所以首先那需要判断这个变换是否是一个线性变换,若果是,那么就对应一个矩阵。有了矩阵,才能根据定义找到特征值和特征向量。
基与坐标系
行空间
列空间
方阵的秩
标准正交基
方阵的行列式
行列式只是方阵的一个属性,对于非方阵是没有行列式这一说的(暂时)。方阵A的行列式用det(A)
表示。对于二维欧几里得空间,它由无数个基,怎样来区分彼此呢?可以使用基构成的面积的大小来区分。对于3D欧几里得空间,就是体积了。
所以行列式的几何意义就明确了。由于行列式有正负之分的,所以更确切的说,行列式的几何意义是有向面积或有向体积。
行列式其实是用于研究特征值和特征矩阵的。
行列式的计算在大学是着重练习的,但其实计算不是重点。这里由个通用的计算行列式的方法:
进行Guass消元,
过程中不做归一化,
行置换列置换操作,每一次置换操作,符号改变一次没所以要记录置换了多少次,
最终化为上三角矩阵,即对角线以下为0。
堆中行列式的结果,就是对角向上元素累乘。
补充一点,啥是初等矩阵
:对单位矩阵进行初等行操作得到的矩阵。
还有一部分内容是关于行列式的代数表达
,涉及到余子式,代数余子式,伴随矩阵,Cramer法则等。代数表达在数学上很优美,但是咋实际计算行列式值时,很低效。行列式中重要的是其性质,之后的LA高阶内容都会用到行列式性质。
特征值特征向量
这又是方阵的另外两个属性。是把方阵作为基,从变换的角度看的。这个变换拥有一些特征,这些特征被特征向量特征值描述。
一个向量在基A
中的表达是u
,在标准正交基E
中的表达是v
,如果变换满足A*u=lambda*E*v
,而E*v=u
,给出一个向量,默认都是用E
基表达。lambda
为标量。
也就是A*u=lambda*u
,也就是说,u
和v
同方向。lambda
称作方阵A
的特征值,u
为A
对于lambda
的特征向量。
如何求一个方阵的特征值和特征向量?
对于
A*u=lambda*u
.当
u
为零向量时,不论A是啥,等号都成立,所以u=0
是平凡解。也就是说,u=0
不是任何方阵的特征向量。不能表达A的特性。当
lambda=0
时,不是平凡解。lambda=0
,即A*u=0
。是齐次线性方程组。上一条说过了,u
不能为0向量。也就是说,A*u=0
有非零解。
回忆:[若A可逆,A*u=0只有零解],现在条件是,u是其非零解,即A不可逆。
总结:若lambda=0
是A
的特征值, 那么A
不可逆。即不可逆方阵的一个特征值可以是0.接着求,
A*u=lambda*E*v
=>A*u - I*lambda*u = 0
=>(A-lambda*I)*u=0
我希望这个表达式有非零解。若有非零解,则
(A-lambda*I)
不可逆,就是说det(A-lambda*I)=0
. (看到了把,行列式在此出现)。根据
det(A-lambda*I)=0
可以求出A的若干特征值lambda
,进一步,把lambda
带入A*u=lambda*u
便可以求得这个lambda对应的特征向量组。
理解的重点:
* A的特征向量不可能是0向量,
* 同一个向量在不同的基中的表示同方向或逆方向,
* 特征值特征向量与变换有关。
特征值与特征向量的一些性质:
- 如果u值A对应于lambda的一个特征向量,则k*u也是lambda的一个特征向量。
- 如果A的一个lambda=0,则A不可逆。
- 对角矩阵,上三角矩阵,下三角矩阵的特征值,就是主对角线上元素的值。
- 如果lambda是A是特征值,则lambda^m 是A^m的特值。
- 如果lambda是A的特征值,则1/lambda是A的逆的特征值。
从几何角度理解特征值和特征向量
几何中,一个变换,比如投影变换:2D中将任意向量投影到向量(2,3)所在的直线。不一定对应一个矩阵。所以要先判断这个变换是一个线性变换。根据线性变换的内容:满足下面两个条件才是线性变换:
T(u+v)=T(u)+T(v)
T(C*u)=C*T(u)
, C属于1D欧几里得空间
显然投影变换满足上述条件,所以可以得到矩阵A。不过我们不求矩阵A,也可以从几何角度的到这个变换的特征值特征向量。投影变换的特征值是什么呢?因为从定义看,特征向量经过变换后与变换前同方向。所以秩序在投影变换图中找那些向量满足变换前后同方向。
显然对于过(0,0)和(2,3)两点的直线l,其上向量俊满足上述条件。对于特征值,英文l上的 向量投影到自身,还是自身,所以lambda=1。