跳到主要内容

矩阵到底有什么用?一个动画讲透线性代数的本质

· 阅读需 10 分钟
MATHmana

本文是视频《矩阵到底有什么用?一个动画讲透线性代数的本质》(作者:MATHmana)的精读笔记,配套中配视频观看效果更佳。

这是一条约 7 分钟的法国数学科普动画。上一集里作者刚用一大堆矩阵做出了旋转与扭转的动画效果,这一集开宗明义——“矩阵可不是白学的,它特别实在”——并用一场“煎饼之夜”的采购账,把矩阵从吓人的大写字母还原成人人都会的算账动作。看完你至少带走三样东西:矩阵乘法究竟在算什么、矩阵和线性函数是什么关系、为什么几何里的拉伸旋转剪切投影背后全是矩阵。

图:开场动画——矩阵驱动的旋转与扭转变换

全景:一条主线看懂​

全片是一条“从算账到代数”的单行道。第一步,煎饼之夜的采购账随着“食材变多、客人变杂”自然长出矩阵(3 列=三类客人,4 行=四样食材)。第二步,矩阵升格为一台函数——人数向量进、购物清单出,3 个数进、4 个数出;第三步,展示这类函数自带的两条性质(输入翻倍则输出翻倍、两拨客人合并则采购相加)。最后反手一拉:凡具备这两条性质的就是线性函数,而线性函数统治着几何里的拉伸、旋转、剪切、投影——开场那段旋转动画正是它们的成果。

图:全片逻辑主线——采购清单 → 矩阵 → 函数 → 线性 → 几何变换

一、矩阵不是定义出来的,是“煎饼之夜”算出来的​

论点:矩阵不是课本里凭空掉下来的定义,它是“分门别类地乘、再逐行相加”这个日常动作本身的形状。

作者的论证方式很聪明:从最朴素的版本起步——煎饼之夜来了 3 位客人,每人做面糊要 2 个鸡蛋,3 × 2 = 6 个,答案毫无悬念。但他紧接着主动亮出两次“简化声明”,而正是这两次声明把问题一步步推向矩阵。

第一次简化:真实采购远不止鸡蛋。完整食材清单是鸡蛋、面粉、牛奶、啤酒四样,一人份对应 2 个鸡蛋、1 公斤面粉、1 升牛奶、1 瓶啤酒;把一人份需求乘以 3 个人,就得到该采购的总量。第二次简化:现实里客人不整齐,每个人吃的量不一样——这一条马上在下一节引爆。

结论:当“好几种食材”撞上“好几类客人”,一个数乘一个数就不够用了,你需要一张表格。矩阵已经在门口。

图:煎饼之夜——从“3 人 × 2 蛋”开始的采购问题

本节要点:矩阵的出发点不是抽象定义,而是“多类需求 × 多类人数”的日常算账;作者主动交代的两次简化(食材变多、客人变杂),正是矩阵登场的台阶。

二、三类客人、四种食材:26 个鸡蛋引出矩阵乘法​

论点:客人一分等级,“乘了再相加”就自动升级为矩阵乘法。

客人构成:3 位普通客人 + 2 位橄榄球员 + 4 位芭蕾舞星。需求也分了级:普通人每人 2 个鸡蛋,橄榄球员每人 4 个,芭蕾舞星每人 3 个——后两类都是运动员,饭量就是比普通人猛。算法不变:每类人的单人需求乘以该类人数,再按行求和。先只看鸡蛋:

客人类别人数每人鸡蛋鸡蛋小计
普通客人326
橄榄球员248
芭蕾舞星4312
合计9—26

“好家伙,二十六个鸡蛋!我得买二十六个。” ——作者把 3×2+2×4+4×3=6+8+12 算到合计时的惊呼(视频 01:46)

把所有食材、所有类型的人一起算,就得到一张 4 行(食材)× 3 列(客人类别)的大表格——作者正式给它命名:矩阵。绿色第一列是普通人的需求,蓝色第二列是橄榄球员的需求,紫色第三列是芭蕾舞星的需求。表里最值得盯住的是第三列与啤酒行交叉处的那个 0,作者解释得很接地气:“芭蕾舞星的面糊里不放啤酒,反正我也不会给她们买”(02:27)。0 不是计算的残渣,而是信息:它如实记录了一条现实规则,所以购物清单里自然不会为她们出现啤酒。

结论:完整计算与前面一模一样——每一列乘以对应类别的人数,再把每种食材一行的数量相加,购物清单出炉。所谓矩阵乘法,不过是把这套日常动作批量执行。

图:食材 × 客人类别的大表格——矩阵正式登场

本节要点:矩阵的列是“谁来吃”、行是“买什么”;矩阵乘法 = 每列乘人数、逐行求和;矩阵里的每个数字(包括 0)都对应一条现实规则。

三、换个视角:矩阵是一台“3 进 4 出”的函数机器​

论点:矩阵不是一张静止的账本,而是一台机器——人数向量从右边进去,采购清单从左边出来。

实际书写时大家用标准写法,但作者强烈建议在脑中想象信息的流动:右边的向量从上方降落,依次去乘矩阵的各列。这里有一条他反复强调“特别重要”的对应关系——第一列对应第一个分量,第二列对应第二个分量,第三列对应第三个分量;矩阵里装的内容,正是由这条对应确定的:第 n 列就是第 n 类人的单位需求。

顺着这条对应,水到渠成地引出全片最核心的升维:

“这就是个函数运算。一个 x,就是右边的向量,送进矩阵这个函数,左边就出结果。” ——作者把矩阵升格为“函数”时的原话(视频 03:53)

由此,几个此前含糊的讲究全部落位。矩阵要用大写字母书写,因为它不像法国高中毕业班(terminale)里那样只是几个简单的小数字——现在的运算对象是向量,即多个数打包在一起:本例 3 个数进(三类人的人数)、4 个数出(四样食材的采购量)。矩阵的形状因此成了一本维数说明书:有 3 列,因为有 3 个输入;有 4 行,因为有 4 个输出。作者还补了一句:矩阵能算的东西很多,但每次的推理思路都一样;正因为这种用法极其常见,才值得把它抽象成函数。

结论:列数即输入维数、行数即输出维数、第 n 列即第 n 类人的单位需求——矩阵的每个特征都编码着一条含义。

图:向量从上方流入矩阵,左侧吐出采购清单

本节要点:矩阵 = 函数,3 进 4 出;列数 = 输入维数、行数 = 输出维数;第 n 列对应输入向量的第 n 个分量,这是读懂“矩阵里装了什么”的钥匙。

四、两条特别酷的性质:翻倍与合并​

论点:用矩阵造出来的函数,出厂自带两条与“比例”(proportionnalité)非常接近的性质。

性质一,齐次性(比例性):把每类客人的数量都翻一倍,所需采购量也精确翻倍——输出随输入等比例缩放。写成符号就是 f(kx) = k·f(x):先放大再算,等于先算再放大,两种顺序可以交换;落到计算上,就是把倍数(乘数)提到括号外面,这正对应性质清单第一行讲过的那次“小乘法”。

性质二,可加性:两拨客人(X1 队和 X2 队)同一天来家里聚会,要采购的东西就是两队之和——X1 队的采购量加上 X2 队的采购量。作者给这条性质念了一句口诀:

“和的像,就是像的和。” ——作者用 X1、X2 两拨客人合并聚会、采购量相加的例子,总结可加性(视频 05:26)

图:口诀对应的动画场景——两队客人与两份采购单

加法情形同样可以交换:先合并客人再算采购,等于分别算采购再合并。作者还顺手吐了个槽:这些性质说穿了就是“反过来、换一换”,但数学书里通常用字母来呈现,读起来不太容易消化;符号化写法看着繁琐,可因为它极其常见,习惯了就好。

结论:这两条性质不是巧合,而是矩阵的构造方式自动附赠的——这为下一节的“双向定义”埋好了伏笔。

图:客人翻倍则采购翻倍、两队客人则采购相加

本节要点:齐次性 f(kx)=k·f(x)、可加性 f(x₁+x₂)=f(x₁)+f(x₂);两条说的都是“顺序可以换”;它们是矩阵函数的出厂设置。

五、双向奔赴:矩阵与线性函数互为定义​

论点:前面两条性质不只是矩阵的福利,它们就是“线性函数”的定义——矩阵与线性函数是同一枚硬币的两面。

论证分三步走。正向:凡是用矩阵构造出来的函数,都自动具备齐次性与可加性。反向:反过来,只要一个函数具备这两条性质,数学上就称它为线性函数(fonction linéaire)。再进一步:只要线性函数处理的是向量(就像本例中的函数那样),它就一定可以用矩阵来表示。三步合起来,“矩阵”和“线性”从此可以互相翻译。

外延也交代了:线性函数的数量极其庞大(作者原话是“一大堆”),数学、几何、经济学里几乎无处不在。学矩阵的意义由此揭晓——你学的不是一种表格写法,而是一整类函数的通用语言。

结论:矩阵 ⇒ 性质自动成立;性质 ⇒ 名叫线性;线性 + 向量 ⇒ 可用矩阵表示,三者构成一个闭环。

图:矩阵 ⇄ 线性函数的双向箭头

本节要点:矩阵与线性函数互为充要表达——“两条性质”既是矩阵的出厂设置,也是线性函数的定义本身。

六、回到几何:旋转、拉伸、剪切、投影都是矩阵​

论点:作者选几何来演示线性函数,理由朴素得可爱——因为好画。

例证一箩筐:用矩阵可以表示拉伸(étirements)、旋转(rotations)、剪切(cisaillement,图形沿某一方向错切变形)、投影(projections,比如把三维压到一个平面上)等变换;二维甚至三维都能用矩阵计算来表示。更妙的是,矩阵可以一个接一个地相继使用(复合),从而做出非常有趣的事情——这正是矩阵特别有用、值得专门讲一整段的原因。开场那句“我用了一堆矩阵做旋转和扭转”在此完成闭环:那段动画就是矩阵(含复合)的成果展示。

收尾交底:懂得以上这些,就掌握了关于矩阵的要点,现阶段不需要知道得更多。

“懂了这些,就掌握要点了。” ——作者在视频结尾的总结(视频 07:25)

图:拉伸、旋转、剪切、投影——矩阵的几何舞台

本节要点:线性函数最好画的例子就是几何变换(拉伸/旋转/剪切/投影,二维三维皆可);矩阵还能复合使用;到此为止,就是矩阵要点的全貌。

总结要点​

  • 矩阵是“分类算账”的自然产物:列是“谁来吃”(输入类别),行是“买什么”(输出类别),矩阵乘法 = 每列乘以对应人数、再按行求和。
  • 读懂矩阵的钥匙是列-分量对应:第 n 列对应输入向量的第 n 个分量,矩阵里装什么完全由这条对应决定。
  • 矩阵是一台函数机器:3 个数进、4 个数出,“3 列 4 行”的形状就是输入/输出维数的说明书。
  • 矩阵函数自带齐次性(翻倍进、翻倍出)与可加性(和的像 = 像的和);反过来,满足这两条性质的就是线性函数,而处理向量的线性函数都能写成矩阵。
  • 线性函数无处不在:几何里的拉伸、旋转、剪切、投影全是矩阵,矩阵还能一个接一个复合——懂到这一步,就是作者说的“掌握要点了”。

迁移与启发​

  • 职场与生活采购:先建“单位需求表”,再改“人数向量”。 组织年会、团建、装修买料、婚礼备品,别上来就估总额——先手写一张“对象类别 × 品项”的表(如普通同事/家属/嘉宾 × 餐标/交通/物料),再乘上各类人数;临时加人减人,只改人数那一列,表格和逻辑都不用动。这张表还能直接拿去比价、核销、分工,一举三得。
  • 投资理财:用 f(kx)=k·f(x) 给收益做“线性体检”。 佣金、管理费按比例收取,近似线性,可以放心按比例放大;但复利收益、房贷利息、杠杆亏损、阶梯税率都是非线性的——投入翻倍不等于收益翻倍,亏损放大可能远超两倍。每次加仓、加杠杆前先自问一句:“这个关系真能等比例放大吗?”不能,就先把隐藏的非线性项(门槛、边际、阈值)找出来再决策。
  • 生活决策:用“可加性”判断分开办还是一起办。 如果开销满足“和的像 = 像的和”,拆开处理最省心,各买各的互不影响;一旦出现满减、运费门槛、团购折扣,规则就变成非线性的,合并订单才划算——网购凑单、拼单省运费,赚的就是“和的像 ≠ 像的和”的那一点差价。先判断线性与否,再决定流程,省的是真金白银。

一句话升华​

把“谁 × 什么”写成一张表,混乱就只剩乘法和加法——矩阵给普通人的第一份礼物,是结构化带来的镇定。