深度学习 必然用到的 线性代数知识
把标量到张量、点积到范数全串起来,帮你从 0 → 1 搭建 AI 数学底座 🚀
1 标量:深度学习的最小单元
标量 就是一维空间里的“点”,只有大小没有方向。例如温度 52 °F、学习率 0.001。
- 记号:普通小写 x;域:x ∈ ℝ
- 代码:
torch.tensor(3.0)
在网络中,标量常作为超参数或单一输出出现(如二分类概率)。它让后续向量、矩阵的世界有了可度量的起点。
📊 标量由只有一个元素的张量表示。下面的代码将实例化两个标量,并执行一些熟悉的算术运算,即加法、乘法、除法和指数。
2 向量:特征打包者
把多个标量排成一列就是 向量。大小 + 方向 = 能描述“状态”。
- 记号:粗体小写 x,维度 n → x ∈ ℝⁿ
- 用途:一条用户画像、一帧心电图、一张词嵌入
- 代码:
torch.arange(4)
→tensor([0,1,2,3])
向量让模型一次性“看见”多特征,用长度(维度)衡量信息量 👍。
3 矩阵:表格数据的万能容器
矩阵 是“批量向量”或“二维表”。
- 记号:粗体大写 A ∈ ℝ^{m×n}
- 行表示样本,列表示特征;深度学习 mini-batch 自然采用行批次
- 核心操作:转置
A.T
、索引A[i,j]
、对称性检查A==A.T
矩阵让 GPU 并行冲浪,线性层的权重本质就是矩阵乘法权值🎯。
📊 可以通过行索引(i)和列索引(j)来访问矩阵中的标量元素,
4 张量:多维世界的坐标系
再在矩阵外加轴,就得到 张量。
- 3D 图像:
(C,H,W)
;视频:(T,C,H,W)
- 代码:
torch.arange(24).reshape(2,3,4)
张量是 PyTorch 的一等公民,支持广播、切片、视图变换,让高阶数据和算子自然对齐。
📊 张量是描述具有任意数量轴的n维数组的通用方法。例如,向量是一阶张量,矩阵是二阶张量。张量用特殊字体的大写字母表示(例如,X、Y和Z)
5 按元素运算与 Hadamard 积:并行的力量
同形状张量可逐元素加减乘除:
- Hadamard 积
A ⊙ B
=A * B
→ 特征级交互 - 标量 + 张量:自动广播,不改变形状
GPU 核心一次算 N 个元素,秒杀循环,真正体现“向量化编程”🔥。
📊 两个矩阵的按元素乘法称为Hadamard积(Hadamard product)(数学符号⊙)
6 降维:从海量数据中找平均
求 sum / mean / cumsum 可沿指定轴“折叠”张量:
A.sum(axis=0)
→ 列汇总;keepdims=True
保维度- 用于 softmax 归一化、特征池化、全局平均池化
降维技术让模型聚焦信息密度,减小参数量同时抑制过拟合。
7 点积:度量相似度的核心操作
两向量 x·y = Σ xi yi:
-
加权和(权重非负且和为1)
-
余弦相似度(单位向量时)
-
代码:
torch.dot(x,y)
或(x*y).sum()
点积是注意力机制、Word2Vec 的基石,对齐“相关性”就靠它。点积的本质是相似性,余弦相似度的本质是方向相似性,因为余弦是单位向量的点积,规范化消除了长度影响。
📊 给定两个向量x, y ,它们的点积是相同位置的按元素乘积的和
8 矩阵-向量积:线性变换的快速电梯
Ax 把 x ∈ ℝⁿ 变成 ℝᵐ:
- 每行 aᵢ 与 x 点积,得到新向量元素
- PyTorch:
torch.mv(A,x)
这是全连接层 forward 的数学本质,也能表示旋转、缩放等几何变换。
9 矩阵-矩阵乘法:批量线性映射
AB 可看作 m 次矩阵-向量乘再拼接:
- 形状要求:A(n×k) · B(k×m) → C(n×m)
- 代码:
torch.mm(A,B)
矩阵乘是多头注意力、卷积的幕后英雄,使并行度再上层楼。
📊 矩阵‐矩阵乘法AB看作简单地执行m次矩阵‐向量积,并将结果拼接在一起,形成一个n × m矩阵
10 范数:给向量量身定做的尺子
- L2 范数 ∥x∥₂ = √Σ xi² → 距离、正则化;
torch.norm(x)
- L1 范数 ∥x∥₁ = Σ|xi| → 稀疏性,抗离群
向量的范数是表示一个向量有多大
欧几里得距离就是L2范数 代表真实距离 用于kmeans算法等 余弦相似度用于文本相似性 因为它代表方向
范数和 目标函数 密切相关:L2 正则抑制大权重,L1 促稀疏,在深度学习中我们经常试图解决优化问题:最大化分配给观测数据的概率; 最小化预测和真实观测之间的距离。用向量表示物品(如单词、产品或新闻文章),以便最小化相似项目之间的距离,最大化不同项目之间的距离。目标,或许是深度学习算法最重要的组成部分(除了数据),通常被表达为范数。
概念 | 公式/操作 | 实战意义 |
---|---|---|
标量 | c = 5/9(f-32) | 超参数/单输出 |
向量 | x ∈ ℝⁿ | 用户画像 |
矩阵 | A ∈ ℝ^{m×n} | 批次数据 |
张量 | (N,C,H,W,…) | 图像/视频 |
Hadamard 积 | A⊙B | 特征交互 |
降维 | sum/mean | 池化归一 |
点积 | x·y | 相似度 |
范数 | ∥x∥₁/₂/ₚ | 正则化 |
📊 上表浓缩 8 大核心要素,横向对照“公式 → 作用 → 应用”,帮你一眼锁定线性代数在深度学习中的落地场景。读表时先关注左列概念,再往右看公式和实战意义
| ∥x∥₁/₂/ₚ | 正则化 |
📊 上表浓缩 8 大核心要素,横向对照“公式 → 作用 → 应用”,帮你一眼锁定线性代数在深度学习中的落地场景。读表时先关注左列概念,再往右看公式和实战意义