全球影响力最大的线性代数老师,斯特朗:学线代,看他就够了

360影视 国产动漫 2025-09-02 08:02 1

摘要:吉尔伯特·斯特朗(Gilbert Strang)是麻省理工学院(MIT)的数学教授,可以说是全球最著名、影响力最大的数学教师之一。他在 MIT 开放课程(OpenCourseWare)上的线性代数课程已经被数百万人观看过。他讲课的方式令人振奋,既平静简单,又饱

吉尔伯特·斯特朗(Gilbert Strang)是麻省理工学院(MIT)的数学教授,可以说是全球最著名、影响力最大的数学教师之一。他在 MIT 开放课程(OpenCourseWare)上的线性代数课程已经被数百万人观看过。他讲课的方式令人振奋,既平静简单,又饱含着对数学之美的热情。我记得自己做过他那本《线性代数导论》中的练习题,并逐渐意识到矩阵、向量空间、行列式与特征值、几何变换以及矩阵分解的世界,揭示出了一整套人工智能领域中的强大工具。从信号到图像,从奇迹般的优化到机器人技术、计算机视觉、深度学习、计算机图形学,以及人工智能之外的各个领域,当然还包括对宇宙进行量子力学研究的部分。

斯特朗最引以为傲的,就是他系统化总结并推广了线性代数中的“四个基本子空间”(The Four Fundamental Subspaces)。

这四个子空间是理解矩阵与线性方程组结构的核心框架,他在 MIT 18.06《线性代数导论》中反复强调过。

矩阵到底是什么?简单说,就是一个数字矩阵,像一个矩形排列的数字,有 n 列,还有 m 行。列和行包含的是同一组数字,因此它们之间必然有联系,但这种联系并不简单,因为列可能比行长,或者行列之间的关系并不直观。

第一个空间,就是列空间(column space)。列是向量,是 n 维空间中的点。物理学家可能会把向量想象成空间中的一支箭,或者是指向某个位置的点。线性代数中,向量就是一列数字。

在学习线性代数时,需要比常见的用法更抽象一些,直接跳进多维空间的思维。在课堂上经常会举这样的例子:“假设有两个十维空间中的向量。” 其实无法在脑海中清晰地想象十维空间里的一支箭,但这并不重要,因为完全知道如何把一组十个数字加到另一组十个数字上,这就是向量相加。向量也可以乘以三,这就是线性代数的核心操作。在三维空间里能做的事情,在十维空间里同样可以做到。

数学的奇妙之处在于,即便像弦理论这样的复杂理论,最终也是通过数学推导出来的。虽然无法真正把这些高维的东西具象化,但数学依然揭示了它们背后的美感。对于这种无法直接视觉化却又如此优雅的数学世界,斯特朗并不是一个很具象思维的人,所以通常停留在三维的想象上。但线性代数的美就在于,它可以轻松推广到十维,甚至更高维度。如果知道如何把两个三维向量相加,那么完全可以把两个十维向量相加,因为只是把十个分量逐一相加而已。

虽然没有很直观的画面,但斯特朗仍然会引导学生去想象十维空间中的平面。一个矩阵的所有列向量可以线性组合,组合出来的就是一个平坦的空间,他称之为“向量空间”。在想象里,它看起来就像三维空间中的一张纸,虽然现实中画不出来,但这个比喻有助于理解。

这就是四个空间中的第一个:矩阵的列空间(column space)。接下来是行空间(row space),它和列空间不一样,但本质上又是由同一组数字构成的。所以有了列空间——由所有列的线性组合构成的空间,也有了行空间——由所有行的线性组合构成的空间。这些词说起来很简单,虽然无法在黑板上完整画出来,但斯特朗会用粗粗的粉笔去尝试,学生们都很喜欢那种粉笔。

另外两个空间与它们正交。在三维空间里,如果有一个平面(就是一块平坦的曲面),那么与这个平面正交的就是一条直线,那就是零空间(null space)。因此有了两个——列空间与行空间——以及与它们各自正交的两个空间。这四个空间共同构成了一个关于矩阵的优美图景。这几乎是一种基本结构,并不困难;它在 18.06 课程里出现得很早,讲的就是这些多维空间中的平面。

从数学上看,这很说得通;但从直觉上,一开始并不容易理解正在谈论的这些东西。相比之下,微积分似乎更容易被“直觉化”。微积分比线性代数出现得更早,牛顿和莱布尼茨是抓住微积分关键思想的伟人。但线性代数更像是起点,因为它讨论的一切都是“平”的东西。微积分中的复杂性都来自曲线、来自弯曲、来自曲面——那是弯的;而线性代数里,表面都是平的,没有任何弯曲。所以,它本该先出现,但事实上并没有。在学校里也是这样,高中、大学,一年级数学通常先是微积分。

线性代数和微积分相比,线性代数本该更早进入课程体系。它更简单,因为一切都是平的。正因为这个原因,微积分在起步时常常停留在一维;后来做多元,也基本上是二维。而线性代数则一下子飞到了十维,完全没问题。让人害怕的只是心理层面:超过二维就觉得“危险”和“吓人”。但如果一切都是平的,就不会出错。

在整个数学里,哪一个概念或定理最美、最令人惊叹?答案依然是线性代数。整个数学都极其精彩,思想之间有着深刻的联系,那些原本看似无关的东西,最终常常会连在一起。但如果只谈线性代数,最基本的对象就是矩阵——一张数字的长方形表格。它可能就是一张数据表;每一列可能对应一种药物,每一行对应一个病人;如果病人对药物反应良好,就在对应的位置填一个正数。矩阵就是一个长方形的数字阵列。

真正的问题是:如何理解这些数字?手里有一大堆数字,模式是什么?到底发生了什么?

有一种方法,可以把矩阵拆成简单的部分,方法就是用“奇异值”(singular values)。这已经成为基础性的工具。很多学过工程数学或基础线性代数的人,都接触过“特征值”(eigenvalues),不过那只适用于方阵;而现实中的数据,常常是长方形矩阵,所以必须迈出那一步。

奇异值分解的定理很清晰:每个矩阵——无论是长方形还是方阵——都可以写成三个非常简单、非常特殊的矩阵的乘积。也就是说,每个矩阵都可以写成“一个旋转 × 一个伸缩(对角矩阵,除主对角线外全是 0)× 另一个旋转”。“旋转—伸缩—旋转”,就是对任意矩阵的拆解

从几何的角度看,直接想象“矩阵的作用”并不容易,但旋转是每个人都能理解的:在二维空间里绕原点转一下;在三维空间里转一下——飞行员必须熟悉那三种转法(比如偏航等),尽管名字可能记不全。在十维空间里,就有十种“转”。但是旋转是可以被想象的,伸缩也是一样。所以,奇异值分解把一大堆数字压缩成三步:旋转、伸缩、再旋转。这种表达太妙了,真的太有力量了。

数学并不难(Math is not hard)。

习惯性的说法是数学很难、很抽象,只属于少数人,但事实并非如此。很多人其实喜欢数学。斯特朗常常收到这样的留言:“我现在退休了,要重新学点数学。” 这样的信息很多,令人鼓舞。人们喜欢数学,因为数学里有秩序,有很多秩序;有些事情并不显然,但它们是真的。这让人由衷地振奋,原来有这么多人真的愿意去学更多的数学。

谈到“真理”,会不时滑向哲学。数学似乎很强力地揭示“什么是真的”,证明的意义也正在于此。然而现实世界却是混乱而复杂的。对于数学所揭示的“真”的本性,斯特朗说,他不是哲学家,只是喜欢数字。去补牙的时候,会想着数学,比如排 2 的幂:2、4、8、16…… 一直排到牙不疼了,牙医说“好了”。数学带来的,也许是对称,是确定性。

数学既是强力工具,也是一种艺术。两者都是,这正是奇妙之处。可以是艺术家,也可以热爱数学;也可以是工程师,并运用数学。

斯特朗说,自己介于中间。他肯定不是“艺术家型”“哲学家型”的人,虽然有时候听上去像,但其实不是。他非常喜欢给工程师上课,因为他们追求“一个答案”。在 MIT 数学系里,很多人喜欢教那些能迅速领会抽象思想的学生;而他也很擅长给工程师上课,因为他们在寻找“找到答案的方法”。

在教学与“构思新概念”这件事上,很多人喜欢先看例子。即便是很抽象的例子,比如三维旋转,或者十维旋转。有些人会把它推进到有“数字”的地步:有十个轴、十个角。而那些最伟大的数学家,斯特朗并不知道他们是不是也这么做;对他们来说,一个例子也许就已经是“高度抽象”的代表了。无论如何,在“例子”的空间里工作,例子似乎能“组织”头脑,大脑就是会和例子连接起来。

深度学习(Deep Learning)是一种理解数据的特定方法。数据正在淹没全球的计算机,需要从中“看见”重要的东西,无论是气候,还是其他领域。人工智能(AI)这两个字,就是对“用一种方法理解数据”的概括;而“深度学习”是其中一个具体的做法。它大量使用线性代数。

从“深度学习”这个词开始,目标是从数据中学习,学习“什么重要”。手里有数据:一些输入及其对应的“正确输出”。问题是:能否看见其中的模式?能否找到一种方法,让一个“从未见过的新输入”也能被“正确地”映射到输出?有一百万个带标签的训练样本,需要创造一个“规则”,把这些输入映射到正确的输出,然后把这个规则用到新的输入上,看会得到什么。

线性代数在寻找这个“规则”的过程中扮演了重要角色,不是全部,但很大一部分。大家依赖矩阵。线性(linear)是特别的,它讨论直线与平面。然而数据并不全是直的,它更复杂,所以必须引入一点“非线性”。事实证明,只要一个非常简单的非线性就够了:一条折线函数,前半段是一条直线,后半段是另一条直线(分段线性)。把这种简单的非线性调用上百万次,函数就复杂起来了,也就更“真实”了。这正是神经网络的特点:它们有很多这样的“折点”。

为什么这样的网络能“有效”?它把输入折叠映射到输出上,用某种目标函数来优化,并不一定最优,但在很多情况下相当不错。直觉上,这并不令人惊讶。

现在的直觉更好了。这个“分段线性、但在段与段之间有折点”的想法,可以想象成一个无限复杂的屋顶,每一块都是平的,但拼起来几乎像曲面。工程师们早就这么做了,这就是有限元法(finite element method)。设计桥梁、建筑、飞机,都会用这种“分片平坦”的思想,作为对曲面的一个可计算的近似。

这种方法的极限,过去认为是“计算极限”。问题一旦大到某个规模,即使是超级计算机也受不了。但计算能力一直在增长,极限也随之后移,使得可以处理更复杂的“曲面”。

深度学习的核心前提是:数据里“有可学之物”。如果数据完全随机,真的是随机数发生器吐出来的,那就找不到有用的规则,因为根本没有规则。另一端的极致,是那些已经知道“规律”的场景,比如牛顿定律:击打一颗球,它会如何运动。在工程里,也有关于油气在地下盆地里的分布等规律。传统的做法是由牛顿、爱因斯坦等伟人“给出规则”。新的做法(AI)是:让计算机去“学规则”。如果数据里完全没有规则,只有噪声,那就没有科学可言。AI 做的,就是“对潜在规则的自动化搜索”。

为什么线性代数会赢?线性代数是数学里很“友好”的一部分,人们能抓住要点,也能理解。它确实有点抽象,因为一旦到了十维、上百维,就会显得“很高维”;但它非常有用。在这一生里,数据的重要性节节攀升,而数据天然以“矩阵形式”出现,这注定了它属于“代数”的舞台,而不是微分方程的舞台。

还需要补充一句:概率与统计也变得极端重要,发展极快,而且它与线性代数完全不同。所以现在有三大块:微积分、线性代数(矩阵)、以及概率统计。这三者都应该占据重要位置。

来源:老胡科学一点号

相关推荐