目录
- 前言
- 符号约定
- 向量的基本性质 【定义,基向量,线性相关/无关*,向量点积】
- 矩阵的基本性质 【转置,广播,线性变换】
- 矩阵基本运算 【矩阵相乘,矩阵点积】
- 行列式 【概念,性质,右手法则,行列式计算】
- 逆矩阵 【线性方程组,列空间与秩】
- 特征分解和迹* 【特征值,迹的性质】
- 函数与向量 【函数与向量的联系,矩阵求导】
注:带 * 需要重点去看
一、前言
首先很感谢 Zsank 这位同学写的 将线性代数形象化系列文章,本文基于此将个人认为比较重要的知识点进行记录,温故而知新,同时也推荐B站上的一个不错的线代讲解系列视频
视频链接:【官方双语/合集】线性代数的本质 - 系列合集
二、符号约定
向量(vector):字母小写,如
矩阵(matrix): 字母大写,如
转置(transpose):
单位矩阵(identity matrix):
矩阵的逆(matrix inversion):
p-范数(norm):
对角矩阵(diagonal matrix):
迹:
行列式:
三、向量的性质和用法
【向量的定义】
向量可以形象化为一个有长度的箭头,或是一个有序的数组,它定义在一组基坐标系中,满足可加性以及缩放性
【坐标系及基向量】*
每当我们用数字描述向量时,它都依赖于我们正在使用的基
xy坐标系的基向量:
则xy坐标系上的向量均可以表示为在这两个方向上的缩放。例如向量
【张成空间】
首先,如果选取不同的基向量,会得到什么?
- 对二维平面来说,只要两个基向量不共线,那么根据这两个基即可得到该平面所有的二维向量;若共线,则得到这条线上所有的一维向量
- 若两基向量都为零向量,则得到零向量。
扩展到n维空间中,结论也成立:
- 所有基向量不共线,则可以得到所有的n维向量;// n维空间
- 有m个基向量共线,则可以得到所有的(n-m+1)维向量;// (n-m+1)维空间
因此,张成空间,即基向量全部线性组合构成的向量集合。
【线性相关、线性无关】*
线性相关:若移除或增加一个向量,张成的空间都不改变,则称该向量与原向量组线性相关(说明该向量与原向量的某一个向量共线)
线性无关:若移除或增加一个向量,张成的空间发生改变(维度减小或维度增加),则称线性无关(说明该向量与原向量的每一个向量都不共线)
有了上面这两个概念之后,我们就可以给出基向量的定义:向量空间的一组基是张成该空间的一个线性无关向量集。所以,任意两个不共线的二维向量可以作为二维空间的一组基。由此,也给我们带来了一个麻烦,相同坐标表示的向量,在不同基向量下,分别代表什么?这部分就是之后线性变换的基础。
【向量点积(内积,数乘)】
向量点积的计算方法
对应坐标相乘后求和,结果为一个数字
向量点积的几何意义
四、矩阵的基本性质
【矩阵与向量,张量】
矩阵与向量:从向量的角度来看,矩阵的每一列其实都是一个向量。因此,静态地说,矩阵可以看作是向量的集合,向量可以看作一列的矩阵;以运动学的角度,矩阵其实描述了向量的“运动”。即,一个向量线性变换到另一个向量的运动过程,就是矩阵
张量:一个数组中的元素分布在若干维坐标的规则网格中,我们称之为张量,张量是超过两维的数组,张量A中坐标为(i,j,k)的元素记为
【矩阵常见性质】
主对角线:从左上角到右下角的对角线
单位矩阵:沿主对角线的元素都是1,其他位置的元素都是0
对角矩阵:只在主对角线含有非0素,其他位置都是0
相似矩阵:矩阵A 与 矩阵B 相似,即有
矩阵分解:当 矩阵A 有特征值和特征向量时,可分解为,
迹:矩阵对角元素的和,
转置:
正交:
正定,半正定矩阵:所有特征值都是正数的矩阵为正定矩阵,所有特征值都是非负数的矩阵称为半正定矩阵
- 正定矩阵:
- 半正定矩阵:
广播:隐式复制向量,将向量扩充成等形状的矩阵,在numpy,TensorFlow有体现
对于(m,n)矩阵A,(1,n)矩阵B,A与B进行运算(包含加减乘除,下同),则都会将B扩充成(m,n),且每一行的值都一样,都是由第一行扩充出来的。这并不会改变B的值,而是在内存中进行临时的扩充,目的是为了计算出结果。
【线性变换】
变换,其实是函数的另外一个名字,但它暗示了可以用“运动”的方式可视化输入-输出关系
线性变换的性质:变换前后网格线保持平行且等距分布
这里暗示了两个点:
1、变换后所有直线依然为直线;
2、过原点。
仿射变换与线性变换的差别就在于仿射变换不过原点
例子: 考虑xy坐标系下
也就是说,xy坐标系上的
上面讲的这个例子,其实和高中学的坐标转换是一个意思,回想一下直角坐标系和极坐标系的基向量的转换,或许就加深了印象。
当然,看到这里,可能还不会觉得有什么,毕竟只是个变换函数而已。但是,如果注意到第二个等号的反推式,即
矩阵的第一列为变换后的
五、矩阵基本运算
【矩阵与向量相乘】*
结合前面的线性变换来理解,实际上,矩阵与向量的相乘,就是基向量的变换后再线性组合。也就是说,矩阵描述的就是基向量变换的这一过程。基向量
而我们经常使用的计算方法(最后一个等号),实际上做的就是对应坐标值缩放再相加。相当于直接跳过变换的过程而直接给出变换的结果。
(在MIT的线性代数公开课里,最后一个等号做的其实就是向量的点积,在后面会讲到;而第一个等号,是将x、y看作是缩放的系数)
这里有个特殊情况,就是矩阵若是线性相关,则该矩阵描述的是将空间降维。
因此,线性变换是操纵空间的一种手段。
【非方阵】
前面所说的矩阵与向量相乘,其实已经用到了矩阵乘法了。但在真正介绍它之前,有必要先聊聊非方阵。因为,向量,实质上可以看成一种特殊的非方阵。这样的话,我们就可以用矩阵乘法将线性变换给统一起来了。
特别地,当m=1时,表示n维空间到数轴的投影。即变换后基向量只需要用数轴上的一个数字表示即可。这部分内容与点积相关,会在后续讲到。
非方阵部分看似都是空间不同维度间的变换,跟上面讲的线性变换在空间相同维度内的变换不同。但其实我们可以通过补0让m=n,就可以让两者统一起来,只需要将0看成是在该维度上基向量长度为0即可。
【矩阵乘法,矩阵点乘】
矩阵乘法就是左矩阵第i行的第k个元素与右矩阵第j列的第k个元素相乘,求和,得到新矩阵第i行第j列的元素。而矩阵点乘则是指两个矩阵对应元素的乘积,满足的条件是:两个矩阵的维度必须相等。具体地,矩阵乘法和矩阵点乘定义为:
【矩阵乘法的几个运算律】
不满足交换律[
满足乘法结合律[
左分配律[
六、行列式
【行列式概念】
先给出结论:行列式,就是衡量矩阵(线性变换)时所占区域的缩放比例。这里的区域,即在张成空间中所占的区域,在二维中表现为面积,三维中表现为体积。
严格来说,行列式有正负之分。 行列式的绝对值才表示缩放比例,正负号表示空间是否翻转。在二维中,表现为平面的法向量是否翻转。从数值上理解正负号的话,给个提示,三角形面积公式
(有兴趣的同学可以了解下有向面积有向面积_百度百科。同理,也会有有向体积等)
【行列式为0】
当然,行列式除了正负外,还有种特殊情况,行列式为0
从几何上讲,空间被压缩了,即平面被压缩成一条线(二维行列式为0),三维空间被压缩成一个平面或一条线(三维行列式为0)
从矩阵的角度讲,行列式为0,则必然对应着矩阵列线性相关。也就是说,经过行列式为0的矩阵变换后,至少有两个基向量重叠了,所以张成空间的维度减小了。
在讨论矩阵的逆时,我们会发现行列式为0是判断一个矩阵有没有逆矩阵的重要方法之一。从几何的角度出发,张成空间维度减小后,相当于这一维的信息丢失了,无法恢复。
【右手法则】
右手法则不只是在高中物理“左力右电”时才成立。事实上,涉及到三维空间,很多时候会用到右手法则。比如三维行列式的正负。
食指始终代表基向量,中指始终表示,则此时大拇指所示方向为。若变换后右手大拇指的方向没有发生翻转(即,本来向上的,变换后向下;本来向下的,变换后向上),则空间方向没有发生改变,行列式为正,否则行列式为负。
【行列式计算】
二维行列式计算及几何意义如下:
a、d分别表示基向量
【行列式基本性质】
参照行列式的性质。下文约定,“体积”一词作为体积向所有维度的概念推广
性质1 行列式与它的转置行列式相等。
解释:只是把向量按列写与按行写的区别而已,本质上还是这两个向量,“体积”不变。由此,在行列式中, 行和列的地位相等。 性质2 互换行列式的两行(列),行列式变号。
解释:行列式表示有向“体积”,与计算顺序有关。互换行(列)后,计算顺序发生改变,故方向变化。 性质3 行列式的某一行(列)中所有的元素都乘以同一数 k,等于用数 k乘此行列式。
解释:相当于把其中一个向量拉伸了k倍。由于“体积”正比于所有向量的乘积,故“体积”也增大k倍。 推论 行列式中某一行(列)的所有元素的公因子可以提到行列式符号的外面。
解释:性质3倒推。“体积”增大了k倍,等效于其中一个向量拉伸了k倍。 性质4 行列式中如果有两行(列)元素成比例,则此行列式等于零。
解释:相当于用该行列式所表示的矩阵变换后,有两个基向量重叠了,张成空间维度减小。 推论 如果行列式有两行(列)完全相同,则此行列式为零。
解释:相当于基向量重合了。 性质5 若行列式的某一行(列)的元素都是两数之和,则此行列式等于两个子行列式之和(这部分是用我自己的话表述的,若有表达不清烦请指出)
解释:相当于其中一个向量分解出了两个分向量,也即算得的“体积”被分为了两部分。最终的“体积”相当于这两部分之和。 性质6 把行列式的某一列(行)的各元素乘以同一数然后加到另一列(行)对应的元素上去,行列式不变。
解释:相当于固定其他向量,对其中一个向量作剪切变换(即往一个方向斜拉)。实际上,底跟高都没改变,所以行列式也没有改变。(参考等底等高的平行四边形与长方形面积相等) 行列式这一节视频中最后一个问题的回答:
由于行列式衡量的是对于原空间的拉伸率,经过两次变换后相对于原空间的拉伸率,与每经过一次变换算一次相对拉伸率,最后的结果是相等的。换句话说,缩放比例系数可以累乘。
七、逆矩阵
【线性方程组】
方阵
该线性方程组的含义是,向量
【逆矩阵】
从上面的讨论可以看出,逆矩阵其实相当于一个倒推过程,即反向变换。但我们知道,矩阵存在着逆矩阵不存在的情况。在上面也说了,判断逆矩阵是否存在,方法之一就是看该矩阵的行列式是否为0。为什么这么说呢?
首先我们先来考察
-
行列式不为0,意味着在该张成空间内进行线性变换,空间没有被压缩。所以,对每一个确定的和,有且仅有一个与之对应,故有唯一解。从到的逆向变换矩阵,称为“矩阵A的逆”,记作。(这里也证明了为什么为什么成立了(又称恒等变换)。
- 使用计算机求得
后,就可以在原方程两边同时左乘,化简得,此即原线性方程组的解。
接下来我们考察
- 此时空间被压缩到较低的维度,此时没有逆变换,因为无法将一条线无损地“解压缩”为一个平面。若压缩后的向量刚好落在压缩后的空间上,则解存在;否则不存在。如图所示。
- 自然地,要完整明白地说清楚解的情况的话,必须要讲到齐次线性方程组、非齐次线性方程组、增广矩阵、秩等概念。下面可能会有所涉及。但这部分内容目的仅在于直观理解线代,所以不会进行讲解。估计以后会专门写一篇来填坑~
这里需要说明一下,前面介绍非方阵时提到过
【列空间与秩】
对于det(A)=0使空间压缩的情况,我们使用“秩”(rank)来描述变换后空间的维度。当变换结果为一条直线时,即变换后空间为一维,称该变换的秩为1;当变换后结果为一个平面时,即变换后空间为二维,称该变换的秩为2;以此类推。注意,这里说的是“该变换的秩”,即秩这一概念的对象是变换矩阵,当变换矩阵为3*3维时,它的秩仍可能为2或1,意味着经过该矩阵变换后空间被压缩成一个平面或一条线。
列空间:所有可能的输出向量
因此,秩的精确定义为矩阵列空间的维度。当秩与列数相等时,秩达到最大值,此时称“满秩”。
【零空间(核)】
- 零空间一定包含在列空间中,因为线性变换必须保持原点位置不变。
- 对满秩变换来说,变换后落到原点的只有零向量自身。
- 对非满秩变换,由于空间被压缩,变换后会有一系列向量被压成零向量,即落在原点。
- 变换后落在原点的向量的集合,就称为矩阵的“零空间”,或称为“核”。
- 对线性齐次方程组,零空间给出的就是向量方程所有可能的解。对非线性齐次方程组,若解存在,则零空间给出的就是基础解系。
八、特征分解和迹
【特征向量、特征值】
- 特征向量:特征向量就是线性变换后还留在原来直线上的向量;
- 特征值:特征值就是特征向量的缩放系数。
- 特征值为正时,特征向量在原方向上缩放;特征值为负时,特征向量反向缩放。在三维中,特征向量有个更直观的形象——旋转轴。当特征向量为旋转轴时,特征值必须为1
【矩阵的特征分解】
如何计算?
先来看公式:
为了方便计算,我们要把等式右边变成矩阵向量相乘的形式,很简单,左乘一个单位矩阵
自然地,零解总是存在的。但我们更关心的是非零解的情况。这时候,就要令矩阵
-
是的特征向量;
-
将空间降维了。
求出特征值后,回代,即可求出特征向量。
注意,在实数域,二维空间不一定有特征向量,比如旋转。(由方阵引起的线性变换,实质效果只有两种,一名旋转,一名剪切)。作者在视频里有说(那么一大段话出现不超过一秒。。。):
不过有意思的是,与相乘载复平面中表现为90°旋转和是这个二维实向量旋转变换的特征值有所关联。这部分的具体细节略微超出我今天想讨论的内容,但是注意一点,特征值出现复数的情况一般对应于变换中的某种旋转。
重根:属于单个特征值的特征向量可以是一条直线上的相反方向(剪切变换),也可以不止在一条直线上(将所有向量同时缩放)。
假设矩阵A有n个线性无关的特征向量
【与行列式的关系】
这一段是我在查找资料时发现的一个有趣的关系【1】,视频里面没有的。让我们稍微往回看一下。要求非零解,即要求
又,该方程是一元二次方程,可假设特征方程的解为
(1)(2)两式为同一个式子的不同写法,故(1)=(2)。观察它们的常数项发现,
看到这里,你肯定发现了什么对吧?事实上,对任意维度,都可以证明
即,行列式的值等于特征值的乘积。
从几何角度来理解,是比较直观的。行列式表示了变换后面积变化的大小,而特征值表示的是变换后仍留在原直线的向量的缩放的比例。借助微积分,我们只要沿这些特殊直线将区域切割成一个个很小的正方形即可,变换后就成为了菱形。将这些菱形的面积求和就得到了上面的结论。
【矩阵的迹(trace)】
这里同样部分参考了【1】。trace的公式为
同样的,对于任意维度,都可证明
即,矩阵的迹等于特征值的和。
行列式与迹,都是相似不变量,在方阵里有着重要的地位。
【特征基】
基向量都是特征向量,称为特征基
对角矩阵
- 每一列都是特征向量,非零值表示特征值
- 单位矩阵
是特征值全为1的对角矩阵
上一篇基向量末尾提到的相似矩阵中,有一个很重要的应用就是相似对角化求矩阵的n次幂。因为对角阵的特殊缘故,矩阵的n次幂简化成相当于求特征值的n次幂。
注:不是所有的方阵都能找到对角矩阵,如剪切变换就不能,因为剪切变换的特征向量不足以张成全空间(只能张成一维空间)。只有特征向量能张成全空间的矩阵才能对角化。
九、函数与向量
【函数与向量】
因为主题是线性代数,所以这里的函数特指多项式函数。
多项式函数的加减与函数的数乘与向量的加减和数乘相似,这是显而易见的,如:
(这里也可以看出为什么一定是多项式函数,因为其他如指数函数、对数函数、幂函数等都不满足上面两条式子。可加性与成比例性是最基础的性质)
由于定义在向量上的操作只有相加和数乘两种,函数都满足了。那自然想到,向量其他特性是否也可以照搬到函数上呢?是可以的,比方说线性变换。
先来看线性变换的严格定义:
- 可加性:
- 成比例(一阶齐次):
对向量来说,L代表矩阵;对函数来说,L代表函数。
对函数来说,线性算子有一个很直观的例子,求导:
【矩阵求导】
事实上,观察多项式函数的结构,
多项式函数求导矩阵
于是,求导与矩阵就这样联系起来了。(另,求不定积分时,就是求该方阵的逆)
线性代数与函数的概念之间对应:
线性变换-线性算子
点积-内积
特征向量-特征函数
参考:
【1】矩阵的特征:特征值,特征向量,行列式,trace
【2】深度学习
胖友,请不要忘了一键三连点赞哦!
转载请注明出处:QA Weekly