Chapter 02
矩阵乘法
两个矩阵的积由前矩阵的行与后矩阵的列做内积填满新矩阵。
按章节的深度学习图示
每完成一章,下方图示会逐步填满。这是目前的结构。
左侧是矩阵 A 的一行,右侧 Y1~Y3 是与矩阵 B 各列的内积结果,合起来就是 A·B 矩阵积。
深度学习中的矩阵乘法
矩阵乘法把两个数表(矩阵)合并成一个新数表。取前矩阵的某一行与后矩阵的某一列做内积,得到的数填入结果矩阵对应位置。
对所有「行×列」的组合重复上述过程,结果矩阵就填满了。例如 2×3 矩阵乘以 3×2 矩阵,得到 2×2 的结果。
能做矩阵乘法的条件:前矩阵的列数必须等于后矩阵的行数。记住这一点,就能判断任意两个矩阵能否相乘。
深度学习中的线性层用权重矩阵乘输入——这就是矩阵乘法。假设有 10 个神经元,本需做 10 次内积,矩阵乘法一次就能全部算完。
GPU 专门为大规模并行矩阵乘法而设计。正因如此,数百万次乘法能在瞬间完成,才有了实时图像识别和聊天机器人。
深度学习中几乎所有操作都可以归结为矩阵乘法——注意力、卷积、循环网络无一例外。理解矩阵乘法就是理解深度学习的骨架。
图像识别:像素值排成矩阵,与权重矩阵相乘来提取「是狗还是猫?」等特征。这个过程在多层中反复进行。
聊天机器人与翻译:ChatGPT 和 Google 翻译将句子转为数值矩阵,再与庞大的权重矩阵相乘数十到数百次来生成回答。计算量中大部分就是矩阵乘法。
推荐系统与自动驾驶:Netflix 一次性为数千用户算推荐分数,自动驾驶汽车从摄像头画面识别障碍物——背后都是大规模矩阵乘法。
求某个元素:结果的 (i, j) 元素 = A 的第 i 行与 B 的第 j 列的内积。逐元素相乘再求和即可。
填空策略:如果空白在结果中,只需算对应行与列的内积。如果空白在 A 或 B 中,利用已知的结果值和其他元素反推即可。
检查维度:相乘前确认 A 的列数等于 B 的行数。结果矩阵大小为 (A 的行数) × (B 的列数)。
A的一行 × B的一列(内积)→ 结果矩阵的一个元素
该元素 — A 第2行 · B 第2列(一次内积)
题目
求下列矩阵积 中空格(?)处应填的数。