什么是矩阵
神经网络每一层把一组数字变成另一组数字——这个变换用什么来表示?
多条规则,一张表格
先把数学放一边。想象你盘下了一家奶茶店,菜单上有 3 款招牌饮品, 每一款都按自己的配方,用到同样的 4 种原料——茶叶、牛奶、糖、珍珠。
配方是这样的(数字是「份数」):
- 珍珠奶茶:2 份茶 + 1 份奶 + 0 份糖 + 3 份珍珠
- 奶霸布丁:0 份茶 + 4 份奶 + 1 份糖 + 2 份珍珠
- 古早甜茶:1 份茶 + 0 份奶 + 3 份糖 + 1 份珍珠
今天进货,4 种原料每份的价格分别记作 x₁、x₂、x₃、x₄。 你想立刻知道:每款饮品的成本各是多少?很简单——把配方里的份数当权重,给原料价格做一次加权求和:
奶霸布丁 y₂ = 0x₁ + 4x₂ + 1x₃ + 2x₄
古早甜茶 y₃ = 1x₁ + 0x₂ + 3x₃ + 1x₄
三款饮品,就是三条加权求和——权重正好是配方里每种原料的份数。 现实中可能是几百款产品、上百种原料,神经网络里更是几百万个权重。 与其把每条公式分开写,数学家干脆把所有配方的份数排成一张矩形表格, 叫做矩阵(matrix)。一张配方表,就是一个矩阵。
矩阵用 m × n 描述大小:m 行(这里是饮品数,也就是输出的数量)、n 列(这里是原料数,也就是输入的数量)。这个例子里 m=3、n=4。 记住这个画面:一行一份配方,一列一种原料——后面所有关于矩阵的运算,都能退回这张表来理解。
矩阵乘向量:一行一次点积
接着上面的奶茶店。假设今天的原料价格是 茶 1 元、奶 2 元、糖 1 元、珍珠 0 元(珍珠正在促销免费), 写成列向量 x = [1, 2, 1, 0]。 要一次算出三款饮品的成本,就是做矩阵乘法 Wx——它的意思是:用 W 的每一行(每份配方)和 x(原料价格)做点积,结果拼成成本向量。 点积是上一课学的:对应位置相乘再相加。
于是珍珠奶茶 4 元、奶霸布丁 9 元、古早甜茶 4 元—— 一次矩阵乘法,整张菜单的成本一起算完了。这正是矩阵的用处:把「同时做很多组加权求和」这件事,压缩成一个动作。神经网络的每一层,做的就是这一个动作,只不过配方表大得多。
维度:从几维到几维
矩阵乘法的核心规则只有一条,记住形状就够了:
两个关键点:
- 列数必须匹配:W 有 n 列,x 就必须是 n 维。维度不符则无法计算。
- 行数决定输出:W 有 m 行,输出 y 就是 m 维。矩阵是把「n 维空间」变成「m 维空间」的工具。
这个「从几维变到几维」的性质,是下一课《线性变换》的核心:矩阵不只是计算工具, 它在几何上代表一次空间变换——旋转、缩放、压缩或拉伸。
总结
矩阵是把多组权重整齐排列的工具:每行是一组系数,每列对应一个输入。 矩阵乘向量(Wx)就是每行与 x 做点积——m 行产生 m 个结果,拼成 m 维输出向量。 维度规则:W(m×n)× x(n维)= y(m 维),内层必须相等,外层决定结果。
这一课你亲手发现了
- 矩阵:m×n 的数字表格,m 行 n 列;把多组系数整理成一个对象。
- 矩阵乘向量:Wx = 「每行与 x 做点积」,本质是同时计算多个加权求和。
- 维度规则:(m×n)×(n维)=(m维);W 把 n 维输入变成 m 维输出。
- 内层匹配:W 的列数必须等于 x 的维度,否则点积无从对齐。
学习小测验
做完这一课,来检测一下核心知识点。选出你的答案后点击「提交」,即可看到正确选项与讲解。
什么是线性变换
矩阵乘法不只是数字游戏——它是把整个坐标空间一起旋转、拉伸、搬动。这「变」的过程,几何上是什么样子?