线性代数本质

Linear Algebra Restudy Project

Introduction 前言

视频地址:线性代数的本质-合集-3Blue1Brown-BiliBili

为什么写这一篇学习笔记

emmm,线性代数还是很重要的,但是那本紫皮书(同济高教版),并没有去细致的讲解线性代数的本质,课上老师也没有去深入,导致光看课本也无法生动具体的理解到位课本上的概念,所以才有“系统重学线性代数”的打算,当然,发现了更好的视频课程,就先来感受一下吧。

面向人群

个人强烈推荐 即将学习紫皮线代 的同学阅读这篇学习笔记/或观看3B1B的视频,会对你接下来学习提供很大的帮助。

对于想要速通复习线代的,这篇文章/大佬的视频也能帮助到你。

建议本视频/笔记看到行列式之后就可以跟着教材学习了,然后有不理解的再回到这个视频/教材学习。

Body 正文

要留时间给自己思考哇

\

向量究竟是什么?

Vector向量

三种理解向量的视角

物理视角(也是我们中学中学习的):有方向的线段

计算机专业视角:LIst(列表),可以理解为结构体(吧)或者多维数组,每一个单元存放的是不同类型的变量,或者就是多个同类型的变量。

\

\

\

数学视角:两者集大成者

只要保证向量相加及数字与向量相乘是有意义的即可(加法与数乘)

\

\

well,先来确定一种思考"向量"的特定方式(便于后续引入)

“向量是空间中的箭头”,当然一般起始位置在原点

然后,把它与计算机里的那种理解结合起来

向量加法:(平移了w)三角形法则/平行四边形法则

\

\

向量数乘

\

标量Scalar在这个语境下可以和数字Number混用

\

向量的线性组合、张成的空间和基

\

\

把坐标看作标量,基向量就是这些标量缩放的对象。

就是用坐标的数值去数乘(缩放)基向量。

每当我们用数字去描述向量时,它都依赖我们正在使用的基向量。

\

两个数乘向量的和被称为这两个向量的线性组合Linear Combination

\

\

所有可以表示为给定向量线性组合的向量的集合,被称为给定向量张成的空间Span

\

所以"对大部分二维向量来说,它们张成的空间是所有二维向量的集合;但当它们共线时,他们张成的空间就是终点落在一条直线上的向量的集合"

\

为了避免拥挤,我们通常把向量抽象为它的终点

\

三维情况

\

线性相关Linearly dependent

你有多个向量,并且可以移除其中一个而不减小张成的空间,我们称之为,线性相关

另一种表述方法:其中一个向量可以表示为其他向量的线性组合,因为这个向量已经落在这个由其余向量张成的空间中。

\

\

\

<<这个是线性变换那一节的截图,可以往下翻看那一节

\

\

\

线性无关 Linearly independent

如果所有向量都给张成空间添加了新的维度,就被称之为线性无关

\

\

基basis

The basis of a vector space is a set of linearly independent vectors
that span the full space.

自己献丑翻译一下:向量空间的基就是一组可以张成整个空间的线性无关的向量集合。(大概这个意思,如有不正确的地方,欢迎指出)

\

矩阵与线性变换

这节比较重要哦!

线性变换Linear transformation

可以把这里的变换理解为函数,只是输入的是向量,根据这种"函数"输出新的向量。

\

\

The word "transformation" suggests that you think using
movement.用运动的方式去思考变换

从输入 变换 到输出

什么是线性 Linearly

直观说,如果一个变换具有以下两条性质,我们称之为线性。

\

1.直线变换后仍然是直线

2.原点保持固定

\

eg:

1.这个就不是线性变换

2.下面这两张图片是变换前和变换后

\

3.这个很妙,并不是说只有水平和竖直的线在变换后仍是水平竖直就够的。

\

总的来说,线性变换可以理解为"保持网格线平行且等距分布"的变换

eg:

\

一个线性变换的流程

一个原坐标系向量坐标(x,y),变换后就是拿x,y分别乘变换后的基向量

再把前面所述抽象起来

\

第一行左侧矩阵就是变换后的基向量的矩阵,右侧就是一个任意初始的向量,想要知道这个初始向量再线性变换之后变成了什么样子,就向上图中一样乘起来再相加

\

再抽象成一般的情况

\

但我们还可以这样去想矩阵向量乘法

变换后的基向量 与 任意给定向量 的 线性组合

剪切/错切 Shear (补充)

[错切是在某方向上,按照一定的比例对图形的每个点到某条平行于该方向的直线的有向距离做放缩得到的平面图形。]{.ql-color-#333333}

\

矩阵乘法与线性变换复合

矩阵的积 Product

引入:对矩阵先旋转 再剪切(看似两个线性变换)

但其实可以看作一个 复合变换Composition

\

再进行简化

<<左乘右乘

\

\

这个需要从右往左读,用复合函数来理解康康(就是那种从里到外依次作用的感觉)

\

为什么M1M2不一定等于M2M1(相乘)

举个例子

比如我先进行剪切,再进行旋转,我得到的是这样的基向量

\

但如果我先旋转再剪切呢

很好理解吧(而且没有计算)

\

比如来理解一下矩阵的结合律Association

(AB)C=A(BC)

为什么正确,因为有没有括号不影响作用的顺序

都是从C到B到A哈哈

>>

\

现在来试试不依靠动画来计算矩阵乘积

\

这个可以理解为
对一组基向量进行线性变换,所以可以把M1拆成两个列向量,分别被M2作用,得出来的结果就是矩阵的乘积

示意如下

同理,第二列答案是(0,2)T (转置

\

抽象为如下结论

\

###(footnote前面章节的脚注)三维空间中的线性变换

本节建议去看视频,更直观

但是作法相同,可以推广到更多维的空间

\

行列式determinant

线性变换的这个缩放比例(可以理解为空间中的任意一块面积变换后与之前的比值),即线性变换改变面积的比例,就是线性变换的行列式

\

\

来看看它的意义

<如果行列式是负值呢?,即将区域在空间中改变orientation,可以理解为翻转。

比如

\

\

说明定向发生了改变。

在三维空间的直观理解可以来看视频

\

其实就是空间体积的缩放比例

《降维打击》

\

这里为什么列向量必然线性相关,因为有两个向量在同一平面了,可以互相表示

\

三维中行列式为负

“右手定则”

如果在变换之后不能用右手这么表示,说明行列式为负值。

\

所以求行列式的时候,任意两行或者两列交换要添加负号,因为行列式已经改变了定向

\

>

直观理解二阶行列式求法

逆矩阵、列空间与零空间

\

\

\

\

A就代表一个线性变换,我们只用理解空间变形以及前后向量的重叠来理解复杂的方程组

逆矩阵Inverse

使V向量"倒带"回X的线性变换矩阵,就是逆矩阵

eg:

\

\

\

\

这种什么都不做的变换称之为恒等变换

矩阵的秩Rank

方程数等于向量数时,可以写成线性代数的形式,按照Ax=v来写的话,可以赋予这个方程组几何意义

A是线性变换,然后我们找到一个x在变换后可以与v重合

只要A不将空间压缩到更低的维度上(也就是行列式不为零)那它就存在逆变换,使得变换前后无异

没有一个线性变换可以将一条直线"解压缩"为一个平面

这会需要将每一个单独的向量变换为一整条线的向量

\

这里多理解一下

对于三维的空间,压缩成一个平面/线/点,那也不存在逆变换

\

<不过在行列式为零的时候(不存在逆矩阵),解仍可能存在

\

在Ax=v中

比如我要找的v刚好在线性变换的直线上

\

借鉴弹幕一下:

答:因为 增广在n维度 A在n-1维度 只有当增广和A都在n维度时 才有唯一解

>

\

秩Rank

\

某些零向量似乎压空间压得更严格,比如把一个3*3的矩阵 压缩成直线 比
压缩成平面 存在解的难度更高,我们用秩来表达

\

还是拿3*3的矩阵举例

当变换的结果为一条直线,即结果是一维的,我们称这个变换的秩为1.

\

变换后的向量落在二维平面上,这个变换的秩就是2

\

满秩就是指,变换没有改变维数

列空间 Column space

\

所有可能的输出向量Av构成的集合

\

\

所以更精确的 秩的定义是 列空间的维数

!!零向量一定在列空间中,因为线性变换必须保持原点位置不变。对于一个满秩变换来说,唯一能在变换后落在原点的就是零向量自身。对于非满秩的矩阵,它可以将空间压缩到更低的维度(有一系列向量在变换后成为零向量)

如果一个二维线性变换将空间压缩到一条直线上,那么沿某个不同方向直线上的所有向量就被压缩到原点。

如果一个三维线性变换将空间压缩到一个平面上,同样也会有一整条线上的向量在变换后落在原点。若是三维线性变换将空间压缩到一条直线上,那么就有一整个平面上的向量在变换后落在原点

可以去视频看图像。

\

零空间/核 Null space/Kernel

变换后落在原点的向量的集合就被称作矩阵的"零空间"或"核"。

\

\

中间那个点就是核/零空间。

对于线性方程组Ax=v来说,当向量v恰好为零向量时,零空间能给出这个向量方程所有可能的解

非方阵 nonsquare matrices

可以理解为跨维数表达

\

也可以用矩阵表达这样的线性变换

\

\

这样3*2的矩阵表示的就是在一个三维空间的一个平面,仍然是平面,与变换前的2*2空间秩相同,为2.

\

所以一个3*2矩阵的集合意义就是将二维空间映射到三维空间上,因为只输入了两个基向量,但是用三维空间里的坐标来表示

\

同理,2*3矩阵,就是一个降维,将一个三维空间降到二维

\

\

二维到一维

如果一条直线上有一系列等距分布的点,映射到数轴之后,它们将保持等距分布

\

点积与对偶性

点积 Dot product

\

注意是正交投影,跟高中学习的数量积 似乎 相同。

\

<为什么点积和顺序无关

如上图,可以是 w的投影长度×v的长度

也可以是w的长度×v的投影长度

\

如果是两个对称且相同的向量进行点积,我们可以说他们俩互为镜像,所以相同

但延长其中一个向量之后我们怎么理解呢

数乘!

\

也就是说,我们可以理解为还是原来两个镜面向量相乘,只不过都乘上了各自的系数

\

也可以理解为投影在乘上系数之后的投影也是原投影乘上系数后的长度。

\

两种理解都可以,缩放向量对点积结果的影响是相同的。

>

\

那,为什么点积的运算过程(对应坐标相乘并相加)和投影是一致的?

\

引入下面概念

\

对称性 Duality

还记得线性变换的直观理解是什么吗?

Line of dots remains evenly spaced.

也就是原来直线上等距分布的点,变换后等距分布在直线/数轴上

\

假设我有一个线性变换,将两个基向量做出如图变换

\

\

\

完全从数值角度来计算的时候,它就是矩阵向量乘法

----------------------------------------------------------

为了理解两者之间的联系,我们从头理一遍,假装自己没有看上面的内容

\

u是一个在该数轴上的向量,终点落在这个数轴上,就叫u-hat

如果将二维向量直接投影到这条数轴上,相当于定义了一个二维向量到数的函数,而且这个函数是线性的。(如果是直线上均匀分布的点在投影后在数轴上等距分布,如下图)

可以把它(投影)看作一个接收两个坐标并输出一个坐标的函数

(u-hat只是恰好就是这条数轴上的向量

\

根据这个投影规则,我们定义一个从二维到一维的线性变换,所以这个线性变换有两列,但只有一行。[1×2矩阵]

\

找到这样一个变换,使得i-hat,j-hat能投影到该数轴上。方括号中是i,j变换后的位置,根据前面所说的对称性,可以知道i-hat投影之后落在
u-hat的横坐标 的长度处

(注意,里面i-hat,j-hat,u-hat都是单位向量)

同理可知j-hat投影长度就是u-hat纵坐标长度。

\

那空间中任意向量,只需要经过[ux,uy]的变换(左乘),就能到数轴上

所以点积可以理解为
将项链投影到单位向量所在的直线上所得到的投影长度。(那么点积就可以看作将其中一个向量转化为线性变换,因为结果一致)

\

\

对于非单位向量其实就相当于乘上系数,整条思路其实还是跟前面一致的。

\

**启发!**
你在任何时候看到一个线性变换,它的输出空间是一维数轴,那么在空间中会存在一个唯一的向量v与它相关

叉积

标准理解

<先用一种不太标准,但是比较简单直观的方式理解一下

两向量做平行四边形围成的面积

但是还有定向问题

因为i在j的右侧,所以是正的

v在w的左侧,所以是负的(面积已知)

\

@赶紧复习一下行列式的内容

\

\

为什么可以这么干?

求这个行列式可以看作从基向量变换到了该位置,并求出了面积的比值,基向量围成的面积为1,所以直接对两向量求叉积/行列式,就是求面积。那为什么行列式算出来是负值呢?

\

因为,v在w的左侧,所以叉乘的值为负值

\

<那什么是真正的叉积呢?

\

通过两个三维向量生成一个新的三维向量。(维数上去了,产生的结果不是数,是向量)

\

这个向量的长度是平行四边形的面积,方向垂直于平行四边形所在面

\

不过垂直于该面有两个方向。用右手定则判断方向

举个例子,w和v长度都为2

那么v×w就在x轴负半轴方向四个单位长度

\

可以推广至更一般的情况

@高中立体几何算法向量

\

假装i,j,k都是数,那么最后算出来的结果就是一个线性组合

用线性变换的角度理解

每当你看到一个从空间到数轴的线性变换,你都能找到一个向量,被称作
对偶向量Dual vector ,使得引用线性变换与对偶向量点积等价。

\

所以我们用下面的思路来寻找叉积的几何理解

  • 三个向量进行叉乘,第一直觉可能是这三个向量组成的矩阵求行列式。即,在空间中围城的平行六面体,求体积,然后根据定向确定符号。

\

但不太对,因为叉积得到的是向量,而不是数。那我们不妨把第一列向量设为变量,v,w固定不动,这样就有一个从三维空间到数轴的函数。输入一个向量,通过行列式求得一个数(体积),然后再根据定向确定符号,把这一步概括为一个函数

fuck,这节没听懂,还要重来

基变换

那我们如何在不同坐标系之间进行转化?

\

\

相似矩阵

当我们用矩阵表示线性变换的时候,我们其实是在跟踪基向量的去向,而这个矩阵,跟我们所选择的坐标系相关

那如果是在其他坐标系中,如何表示这个线性变换呢?

用詹妮弗(新基)的任一向量翻译成我的语言(旧基),然后用我的语言进行线性变换,然后再翻译成詹妮弗的语言(新基)

\

\

\

\

\

把改任一向量抽象为变量,那么前面三个矩阵的复合就是用詹妮弗语言(新基)描述的线性变换矩阵

**Conclusion**

同济教材上的定义是,若有可逆矩阵P使得

P-1AP = B,那么A,B相似。这种变换也称作相似变换。

\

现在有了几何的直观理解,其实就是想用你的语言翻译在我这的线性变化罢了。

\

特征向量与特征值

特征向量 Eigenvectors 特征值 Eigenvalue

\

我们考虑这个线性变换对单个向量的作用,并考虑这个向量张成的空间,即通过原点和向量尖端的直线

大部分向量在变换中都离开了其张成的空间,那么那些变换后 仍在其
原向量张成空间 的向量就是特征向量

比如

\

\

\

\

\

那么三维空间是什么情况呢?

想象一个三维空间/立体的旋转,在三维空间找到的特征向量其实就是 旋转轴Axis

顺便提一句,在这种情况下,相应的特征值必须为1,因为旋转并不缩放任何一个向量,所以向量的长度不变

\

\

\

\

\

v为非零向量,要使得结果为零向量,v前矩阵的行列式值必须为0。

\

<<二维线性变换不一定存在特征向量

eg. 旋转

\

对矩阵求行列式会发现没有实数解,这表明没有特征向量(所以说,特征值出现复数,一般对应变换中的某种旋转)

\

eg.剪切

<<可能出现只有一个特征值,但是特征向量不止在一条直线上的情况

特征基 eigenbasis & 对角化

基向量恰好是特征向量时,i变为原来的-1倍,j变为原来的两倍,再把新向量合成一个矩阵

\

这种矩阵就是对角矩阵,因为只有对角线上有数。

又因为所有基向量都是特征向量,那么对角元就是它的特征值。

\

如果你的变换有许多特征向量,多到可以张成全空间,那么你可以通过转换坐标系的方式,使得这些特征向量成为基向量。

\

看不懂的话就要复习上一节内容。

这个新矩阵必然为对角矩阵,并且对角元是对应的特征值

因为,它所处的坐标系的基向量只在变换中进行缩放(在当前坐标系下缩放,线性变换的矩阵就是一个对角阵呀)

\

所以这个行为就是 `对角化`

\

那么一组基向量(由特征向量组成)构成的集合被成为 `特征基`

\

当然,也不是所有矩阵都可以对角化(因为前面的前提是特征向量可以张成全空间)

就比如说,剪切

\

一道练习题

\

抽象向量空间

\

卧槽!这一节有必要后面温故。

稍微提一嘴与微积分中一致的概念

不好表达什么是向量空间。

那确定一个向量空间,需要满足8个公理

\

ps.后面还有俩视频是讲计算的,后续补上。