我最早系统地学习线性代数是在大二时候,当时特意选修了学校物理系开设的4学分的线代,大概也就是比我们自己专业的线代多了一章向量空间的内容,其实最后上完发现,整个课程内容还是偏向于计算,对线性代数的几何直觉少有提起,对线性代数的实际运用更是鲜有涉及。同济的那本薄薄的如同九阴真经一般的教材,把线性代数讲的云里雾里,当时一个人在自习教室度过多少不眠之夜,一点一点去思考其概念定理背后的实际意义,多半也是边猜边想,苦不堪言。直到多年以后,有幸在网上听到了MIT的Strang老师开设的线代公开课,才对一些基础概念渐渐明朗,虽然至今又过去了很多年,但是对一些本质的理解,依然清晰。
不过,仔细想想,国内的教材写的云里雾里,才促使了我自发的思考,如果一切得来太容易,也许就不会那么刻骨铭心。我很早之前就想过这个问题,国内的教科书作者简直就是在下一盘大棋,自己出版的书写的高深莫测,翻译国外的书又翻译的含糊曲折,那么留给学生的只有两条路,要么去看原版的英语书,要么就是自己一点点看云雾缭绕的国产书,边猜边想边证明,不管走哪条路,都能走向成功。
最近,在youtube上看到了3Blue1Brown的Essence of linear algebra这门课,有种如获至宝的感觉,整个课程的时间并不长,但是对线性代数的讲解却十分到位,有种浓缩版的Gilbert Strang线代课程的感觉。希望通过这个课程,重温一下Linear Algebra。
Essence of linear algebra preview
-
线性代数使用场合
讲师在课程中说道:许多学生学完了线代,会进行许多的计算,比如算行列式,算特征值,特征向量,算矩阵乘积,但是却不理解为什么矩阵的乘法这样定义,为什么cross product会和determinant(行列式)有关系,或者特征值究竟代表的是什么东西,其实这也是我当时学线代时候的疑问,书上并没有很明确的解释,也没有这样的视频课程来给你阐述,一切都是要靠自己去想。讲师指出,很多学生对这些概念背后的几何意义含糊不清,但是实际上,会进行线性代数的数值运算和真正在几何层面理解线性代数概念,完全不是一个level。几何意义的理解可以让你知道什么时候用什么数学工具来解决实际的问题,并且可以解释其结果的意义。当实计算结果这件事,交给计算机来做就行了。课堂上应该花大力气讲解概念,而不是计算,如果真的要讲计算,也应该是教会学生用matlab这样的工具。求逆矩阵,求代数余子式,求特征值什么的,还不是分分钟的事。
-
课程的目录
Vectors, what even are they?
-
向量的三种理解
讲师上来就开门见山说道:The fundamental, root-of-it-all building block for linear algebra is the vector.
向量是线性代数的基石(国外课程往往从向量开始说起,也就是从本质入手,国内则上来先定义逆序数,计算行列式,代数余子式,很容易把学生带偏),对向量的理解可以有三种角度:物理系学生的角度、计算机系学生的角度以及数学系学生的角度。
物理系:向量是一个矢量(arrows pointing in space), 或者说是一个在空间中有指向的箭头,定义这个向量,需要它的长度以及它指向的方向两个方面。在平面上的向量是二维的,在空间中的向量是三维的。
计算机系:向量是ordered lists,并且在这些lists中存放的内容是numbers。
数学系: a vector can be anything (-_-|||) 它们之间可以相加,相乘,也可以被数乘。 -
向量的几何意义
不同于物理,在线代的领域里,把vector放在一个坐标系中,比如xy坐标系,其出发点在原点。比如这个向量,其数字的意义代表从该向量的起点(也就是原点)到终点分别在x轴和y轴上的距离,正负号代表方向。三维空间一样,只是多了一个Z轴。
-
向量加法的几何意义
三角形法则,好比有2只蚂蚁在一张纸上,第一只蚂蚁向上走2步向右走1步,然后再向下走1步,向右走3步。第2只蚂蚁直接向上走1步,向右走4步,就能和第一只蚂蚁站在相同的位置。也就是说第一只蚂蚁两次行动叠加之后所处的位置,和第二只蚂蚁一次行动是一致的。再进一步理解,其实要达到向右4步,向上1步的那个位置,有无数种走法,第一只蚂蚁的两次行动只是其中的一种分解。它也可以走10次走到那个位置。
-
向量乘法的几何意义
乘以大于1的数值,就是将这个向量拉伸
乘以小于1的数值,就是将这个向量压缩
乘以负数,就是将这个向量翻转
拉伸,压缩,翻转向量的行为,统称为scaling,而这些数值本身,称之为scalars
Linear combinations, span, and basis vectors
把这里的3和-2都看作是一个scalar,它们对原点的单位向量i和j进行scaling
于是,该(3,-2)向量就变成了两个scaling过的单位向量的和。
i和j是xy坐标系中的基础向量(basis vectors)
[其实也可以选择不同的basis vectors,比如说在平面上任意的两个向量作为基,这样得到的scalars的数值是不相同的,但是同样可以通过对这一对任意选择的basis vectors进行linear combination,而得到在平面上的任意向量。详见视频]
-
线性组合
Linear Combination的几何意义如图所示,完整上来说,其实是向量之间的线性组合,其主体是向量,线性组合是一个操作,将各个向量scaling之后,相加在一起,就得到了参与操作的向量之间的一个Linear Combination。 -
线性组合的不同情况
如果参与组合的一对向量不共线,那么由它们进行线性组合所得到的向量可以达到平面上的任意一个点
如果参与组合的一对向量共线,那么由它们进行线性组合所得到的向量的终点被限制在一条通过原点的直线上
如果参与组合的一对向量都是零向量,那么由它们进行线性组合所得到的向量永远是零向量
-
span
span : 是一组集合,它包含两个向量之间的全部线性组合
如果你面对的是一组向量,那么考虑这些向量的坐标点。
三维空间中,两个不共线的向量之间的span,也就是它们全部线性组合的集合,是一个由这两个向量所张成的平面。
如果在三维空间中,有3个向量,其中有2个共线,那么它们3者之间的线性组合所形成的set,只是三维空间中的一个平面,其中有一个向量是多余的(redundant),因为span的set由两个向量便可以决定。而这两个共线的向量被称之为线性相关(Linearly dependent)线性无关(Linearly independent)的两个向量,不能通过scaling得到对方,其在平面上的几何意义是不共线
二维空间的linearly independent
三维空间的linearly independent
-
basis的定义
The basis of a vector space is a set of linearly independent vectors that span the full spaces.
对于任意一个向量空间而言,它的基是一组相互之间线性独立的向量的集合,这些向量之间通过线性组合,可以span整个向量空间。
Linear transformations and matrices
-
Linear transformations
讲师说道,transformations其实无非是function的fancy说法,本质上也是input和output,输入一个vector,经过某个transformatio