十分钟理解线性代数的本质_B站-《线性代数的本质》-笔记

闲来无事,假期把B站上《线性代数的本质》系列看了一遍,在此记录一下要点。(系列里的所有动画的程序可以在https://github.com/3b1b/manim获得。这个系列能够让你从变换的角度来解读和理解线性代数的一些概念。

一、向量是什么

向量(Vector):

物理领域,是由方向和长度确定的一个量。

计算机领域,是一个有序的数字列表,比如。

数学领域,更加抽象,可以进行相加和数乘操作的任何量。

加法:沿两个向量运动的方向运动到的的最终方向,乘法:向量在其方向上scale的大小。

二、线性组合、张成的空间、基

向量坐标(coordinate):对一个空间中每个向量,其坐标都是一组基向量(basis vectors)的缩放相加(scale and add)形式即线性组合。不同的基向量就是不同的坐标系。

张成空间(span):即一组基向量通过线性组合能够表达的向量集合。

如果考虑单个向量,把它当做是一条线;而如果考虑一个向量集合,把每一个向量表示为一个点。(在几何可视化的时候更加清晰)

线性相关(linearly dependent):如果你有一组n个向量,而其中存在一些向量,即使把这些向量去掉,也不会减少张成空间的维度,那么这组向量线性相关。

如果一组n个向量线性无关,那么可以张成n维空间。

三、矩阵与线性变换(*)

线性变换(linear transformation):一个函数(映射),接受输入向量,输出对应向量。为什么叫变换呢,就是让你以一种运动的眼光来审视它。至于线性变换,就是限制变换为以下条件:

变换前在一条直线上的点(向量),变换后仍然在一条直线上;(包括对角线的向量)

变换过程中,原点的位置不能变。(能变的是仿射变换affine transformation)

那么,如何用数值来描述这些各种各样的线性变换呢?也就是给你一个n维空间中的向量坐标,如何计算变换后的向量坐标。

由于任意给定一个向量,它的坐标都是一组基向量的线性组合,所以有,而对任意的线性变换,设变换后上述基向量集合变化为,那么。

那么,如果一个n维空间中,原始的坐标是,那么任意的线性变换,只需要由下面这个的矩阵定义,其中每一列表示变换后每个基向量的坐标:

而这个变换矩阵和向量变换前坐标进行矩阵向量间乘法的结果就是变换后的坐标,所以,矩阵乘法就是计算线性变换作用于给定向量的一种方式。

四、矩阵乘法与线性变换复合

矩阵:代表线性变换;

矩阵和向量的乘法:代表线性变换作用于向量。

复合变换:几个线性变换的复合(composition)。

矩阵和矩阵的乘法:两个矩阵A、B相乘:,等价于先进行线性变换B,再进行线性变换A,可以这样认为:,C就是代表这个复合变换的矩阵。

五、行列式

行列式(determinant):一个线性变换的行列式,代表变换后单位区域面积与变换前单位区域空间之比。比如,在二维空间中表示线性变换A后每个区域面积被拉大到了原先的2倍,而在n维空间中表示线性变换B后整个n维空间被挤压到不足n维了。(若行列式的值为负数,可以认为空间的取向被翻转了)

所以在这种理解下也是显而易见的。

六、逆矩阵、列空间与零空间

线性方程组(linear system of equations):未知量之间只进行加法和与常数的乘积这两种运算的方程组,能够用矩阵和向量表示为的形式,也就是寻找一个向量,这个向量在进行变换后与向量是重合的。这节用线性方程组引入了其他概念的理解。

逆矩阵(inverse matrice):就是逆向变换,就是把变换造成的影响消除的变换,所以,这里的I就是恒等变换(identity transformation)。但是如果一个矩阵的行列式为0,就意味着空间被挤压了,那么就无法找到一个变换把空间恢复原状。

列空间(column space):对任意向量,所有可能的输出向量的集合。满秩就代表着列空间的维数和输入空间的维数相同。

秩(rank):形容一个变换之后得到的空间的维度。

零空间(null space)或者核(kernel):变换后落在原点的向量的集合。

附:关于非方阵

之前的理解老是拿方阵作为例子,这里讲一下对非方阵的理解。如果一个的方阵表示2维空间到2维空间的变换,其中每一列表示变换后的基向量。那么一个的矩阵呢,可以认为它代表着一个2维空间到3维空间的变换,其中每一列的意义不变,所以变换后的每个基向量的坐标是3维的,对应矩阵有3行;基向量只有2个,对应原空间是2维的。

七、点积与对偶性

点积(dot product):两个向量,其点积的结果如下:

a和b同方向:a在b方向上投影的长度乘上b的长度。

a和b反方向:上面的结果加上一个负号。

假定向量,,设,那么,其中n是一个标量。从点积的角度理解,可以认为是计算了两个向量的相似度,而从变换的角度理解,就可以认为是变换T针对向量向1维空间的坐标变换。因此可以认为两个n维向量的点积也就是前一个n维向量是一个n维到1维的变换,把后一个投影到了1维空间得到一个坐标。嗯,不过有什么用吗?

八、从线性变换的角度理解叉积

叉积(cross product):记为,若,,那么我们把a和b的坐标分别作为矩阵的列:

可以从行列式的定义去理解这个计算过程。也就是计算出和张成的图形的面积。

在三维空间中,该计算过程变成:

为了证明上面的计算结果满足叉积的定义,用线性变换的角度理解三维叉积。

对偶向量(dual vector):如果一个n维到1维的变换存在,那么一定存在一个n维向量和这个变换等价,这个向量就是这个变换的对偶向量。

那么我们根据和计算一个三维到一维的线性变换,并找到其对偶向量,证明这个对偶向量就是。

如果我们把二维的叉积自然的扩展到三维,可以得到:

而实际上,三维的叉积也是两个向量之间的运算,所以我们把看做变量,可以得到如下的形式:

也就是得到了一个三维到一维空间(数轴)的线性变换。其中从第三项到第四项应用了点积得出的推论。所以,我们可以看出,三维叉积的计算结果就是找到了这个三维到一维变换的对偶向量。

九、基变换

这节讲了如何将向量坐标在两个不同的坐标系下(基向量下)互相转化。

假如小明有一组基向量,以你的坐标系来描述其坐标是,那么将其组成一个矩阵,这个矩阵叫做基变换矩阵。

这时有一个向量,其坐标是以小明的坐标系来描述的。

那么你要计算出这个向量在你的坐标系下的坐标,使用。

这是因为A等价于一个我们的坐标系到小明的坐标系的变换(小明的语言到我们的语言的变换),因此上面等式左边结果就把一个小明语言中的向量转化为我们语言中的向量。

同样的,对于小明坐标系下的任意向量,若小明的坐标系中发生了线性变换B(用我们的坐标系描述),那么就是变换后小明坐标系下向量的新坐标。这个过程首先应用基变换,而后应用线性变换,最后应用基变换的逆,那么就是用小明的坐标系描述的相同线性变换矩阵。

所以,当你看到一个形式的矩阵,你要明白M是你的角度看到的一个变换,而矩阵的结果转换了视角,是从另一个角度看到的同一个变换。

十、特征向量与特征值

特征向量(Eigen Vectors):在一个线性变换中,没有离开其所张成空间的向量。

特征值(Eigen Values):特征向量在变换中缩放(scale)的比例。因此,同一个特征值可以有多个不同特征向量这一事实也就显而易见了。

对角矩阵(diagonal matrix):对应一种线性变换,其中所有的基向量都是特征向量。对角矩阵的计算很方便。

特征基(eigen basis):对一个变换M,如果其特征向量能够张成原有空间维度,那么将其作为基变换矩阵A,就是原来的变换M在新的基向量下的变换,重要的是这个结果是一个对角矩阵容易计算。

十一、抽象向量空间

将函数或算子(operators)看做是更抽象的向量。将线性代数中的概念与代数中的概念类比。

满足下面两个性质的变换是线性的:

可加性:

成比例(一阶齐次):

那么,求导数是一种线性运算,因为其符合上面两个性质,所以可以使用一个矩阵A代表求导算子。

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页