MIT 18.06 Linear Algebra
课程简介
- 先修要求:无
- 参考材料:
- Introduction to Linear Algebra,作者:Gilbert Strang
- 《线性代数及其应用》,作者:Lay D.C.
- Essence of Linear Algebra,创作者:3Blue1Brown
- The-Art-of-Linear-Algebra,作者:kenjihiranabe
- 主要内容:
- 线性方程组、线性空间、线性映射、矩阵及行列式、多项式、特征值及对角化、二次型、内积空间、奇异值分解(SVD)、快速傅里叶变换(FFT)
个人心得
我认为,学习线性代数最重要的有两点:
- 几何直观
- 标准型思维
谈谈教材
首先说一下教材问题。大多数国内线性代数教材在第一章会直接介绍行列式和矩阵,没有任何引入。让我印象最深的一段话是:
在实际中,我们常常把 m×n 个数写成长方形的形式,为了方便阅读,再在这个数阵的两边括上括号,我们把这样的一组数称为矩阵。更进一步地,把括号换成两条竖线,这样就得到了行列式。
这种定义方式,想必初学者往往会大伤脑筋。首先,为什么我们要引入所谓矩阵和行列式呢?其次,为什么要采用这种方式书写呢?最后,所谓矩阵和行列式有什么实际用途吗?
国内的大部分教材是不会解释这些的,它们只会给出一个定义,然后证明其性质,最后列出几道练习题,一节新的内容便这样结束了。这种只知其然而不知其所以然的教学方式会严重影响学生的学习效果,甚至打击学习的积极性——一方面,线性代数在思维上有一种高中数学所没有的抽象性,大多数学生需要一个优秀的指路人为学习线性代数指明方向;另一方面,这种填鸭式的教材却并不能帮助或引导学生构建起一个完整的知识体系。
基于此,我强烈推荐使用 Gilbert Strang 老先生的 Introduction to Linear Algebra 作为线性代数的主要参考教材。并且我还建议直接使用这本书的英文版作为你大学使用的第一本纯英文教材,因为 Strang 老先生在整本书中都使用了最平易近人的语言来解释线性代数,专业性的词汇几乎很少。
这本书同国内绝大部分教材都不一样,从高中生最熟悉的向量入手,再从线性代数的角度介绍从初中就开始解的多元一次方程组,接着从直观的欧几里得空间逐步推进到抽象的向量空间,紧接着又回到高中时期常考的向量垂直(正交),结合刚刚引入的向量空间,你可以马上得到对向量空间的基本印象。然后,才引出行列式、特征值与特征向量、SVD、FFT等内容。
紧跟着 Strang 老先生的思路,你会逐步地构建起线性代数的基本框架,并且基本能理解每个定义定理的含义。想想吧,就凭借你一个人类的大脑,竟然能够构建起如此美妙而精确的线性代数大厦,这多是件美事啊!
除此之外,以下的几本教材同样出彩:
- Linear Algebra And Its Applications(中文名《线性代数及其应用》):这本书中有大量的实际应用展示,比较适合工科方向的同学。在我学习线性代数的过程中,产生过这样的迷惑:线性代数到底可以拿来做些什么?这本书就很好地给了我答案。
- Linear Algebra Done Right(中文名《线性代数应该这样学》):这本书开篇便指出“你即将第二次接触到线性代数”。的确,该书不适宜作为入门教材,因为全书的配图说明极少,大多数是代数推导,这无疑会增加该书的抽象难度。但是,如果你是已经学完一遍线性代数并且希望增加自己的代数推导能力,那么我推荐你在学有余力的情况下仔细阅读该书,并且尝试合上书后给出每个定理的基本证明。
几何直观
“数缺形时少直观,形少数时难入微。形数结合百般好,隔离分家万事休。” ——华罗庚
再来到几何直观这个话题。几何直观是我学习线性代数中最重要的依靠,尽管有人会说,使用三维欧式空间并不能解决所有抽象的线性代数的问题。就我看来,直观是帮助人理解问题的手段,而不是解决问题的方法。
因此,我总是会尝试着使用几何来解释我所写下的代数式子,并且从几何图形中获取下一步的灵感。
在我看来,恰当地运用几何直观有以下几个优点:
- 更快地得到结论(尽管有时不一定正确)。正如二元一次方程组的解没有平面上的直线相交情况来得直观,运用几何直观,你能很快地推导出一些结论。例如,如果你知道行列式可以表示一系列向量张成的高维斜长方体的有向体积的话,那么行列式的一系列性质(交换两行、某行乘上一个常数等等)就能够被迅速的推导出来。再比如,如果你从立体空间的角度观察最小二乘法,那么相关结论几乎是一目了然。
- 迅速得到思路。例如,证明等式 \(A^TAx = A^Tb\) 关于向量 \(x\) ,对任意向量 \(b\) 总有解,可以将其变形为 \(A^T (b - Ax) = 0\),这个式子的几何含义为:存在 \(A\) 的列向量空间中的一个向量 \(Ax\),使得向量 \(b - Ax\) 与 \(A\) 的列向量空间正交。那么,只需要仿照三维空间中求向量投影的方法,就能迅速得到向量 \(x\) 的值了。
但是不可避免的,使用几何直观也会带来一些缺点:
- 犯想当然的错误:由于视觉及想象上的误差,不可避免地会产生一些想当然的错误,例如想当然地认为某一组向量是正交的。所以在使用几何直观时,一定要格外小心地验证每一个步骤的正确性(毕竟一步错,步步错)
- 可能无法迅速写出严密的代数推导:在享受着几何直观带来的便利的同时,我本人深受无法快速写出对应的代数推导(甚至脑袋里知道步骤,但是无法写出严密过程)。这个缺点困扰我多时,尤其在考试中最能直观地体现出来。我的应对策略是:首先熟读书上的证明过程,将书上的代数证明分解为若干部分,每一部分对应一个几何直观;然后在作业及备考时,按照脑中的几何直观,一步一步地“翻译”成代数语言。如此有意识地训练之后,相信不仅对你从几何到代数的转换有显著地提高,而且对你阅读他人的代数解答也会有较大的帮助。
总之,多想,多转化,多练。
如果你已经学习了线性代数,那么不妨问问自己这几个问题:
- 站在几何直观的角度,一组基向量应该怎么想象?
- 站在几何直观的角度,线性映射应该怎么理解?(提示:从上问中找灵感)
- 站在几何直观的角度,既然线性映射和矩阵有一一对应的关系,那么一个矩阵的几何意义是什么?(提示:矩阵的每一列/行可以看作一个向量)
- 站在几何直观的角度,矩阵的相似和对角化应该怎么理解?(提示:需要依靠第2、3问)
- 站在几何直观的角度,解释特征向量,特征值,以及特征值的代数重数和几何重数的意义。(提示:结合上几问及 Jordan 标准型)
标准型思维
最后聊聊标准型思维。
何谓标准型思维?简单来说,将当前需要解决的复杂问题,转化为简洁的、易于处理的形式,譬如:
- 解线性方程组的时候,会将原有的复杂方程组先转化为矩阵,再转化为最易处理的阶梯形矩阵;
- 求矩阵的秩的时候,会将矩阵转化为相抵标准型(或标准阶梯型);
- 处理线性变换的时候,会将表示矩阵进行对角化,即使不能对角化,也会转化为相对简单的形式,如 Jordan 标准型,Frobenius 标准型等.(补充一点,站在几何直观的角度来看,无非就是重新选择一组基作为“参考系”)
- 处理线性映射的时候,会将表示矩阵进行 SVD 分解,得到 \(U\Sigma V\) 的形式,其中 \(\Sigma\) 是一个极为简单的矩阵。
我的线性代数老师有这样一个“暴论”:任何问题,只要你在使用标准型的情况下做出来,那么你就能把这个问题做出来。
可以这样理解:我们把任何一个线性代数问题分解为两个步骤
- 把现有情形下任意要素(矩阵等)转化为标准型(例如相抵标准型,标准阶梯型,相似标准型,Jordan 标准型...)
- 使用得到的标准型解决问题
第一个步骤在教材上往往会花大篇幅介绍,应该熟练掌握。因此,剩下的问题就变成了解决标准型下的原问题。此时,问题已经得到了很大的简化,你应该能更轻松地解决原问题了。
相关链接
- Introduction to Linear Algebra:Introduction to Linear Algebra 教材官方页面。
- Essence of Linear Algebra:3Blue1Brown 团队官方视频网站,中文字幕版可以在 B 站自行搜索。
- The-Art-of-Linear-Algebra:一本小册子,总结了 Introduction to Linear Algebra 整本书的主要知识点,可以作为一个复习材料,质量相当高。
- MIT18.06: Linear Algebra:MIT 的线性代数课程,由 Strang 讲授,几乎可以说是最好的线性代数公开课。
- MIT-Linear-Algebra-Notes:一份中文笔记,可做参考。