线性代数基础
线性代数是深度学习的”操作系统”——神经网络的权重是矩阵,前向传播是矩阵乘法,反向传播是矩阵求导,连注意力机制都是一系列矩阵运算。本页系统梳理机器学习所需的线性代数核心知识。前置阅读:数值优化与数学基础。
把线性代数想象成一套”批量操作压缩工具”。当你要同时处理成千上万个数据点、成百上千万个参数时,逐个运算太慢——线性代数让你用矩阵和向量一次性表达和执行所有运算:
- 向量(vector)= 一列数。可以理解为空间中的一个点,或一组特征的集合(如一个人的身高、体重、年龄)。
- 矩阵(matrix)= 一个数的表格。可以理解为一组向量,或一个”变换规则”——输入一个向量,经过矩阵乘法后输出另一个向量(旋转、缩放、投影)。
- 矩阵乘法= 批量的线性组合。把”对每个向量做同样的线性变换”打包成一次操作,GPU 天然擅长并行执行。
- 特征值/特征向量= 矩阵变换中”方向不变只缩放”的特殊方向。找到了它们就找到了理解矩阵行为的关键。
- SVD(奇异值分解)= 把任意矩阵拆解成”旋转-缩放-旋转”三步。任何矩阵都可以这么拆,是降维、压缩、推荐的数学根基。
向量(vector)是有序的数字列表,也称为 n 维空间中的点。一个 n 维向量写为 ,每个 称为分量(component)。在机器学习中,向量通常写成列向量(纵向排列),记作 (表示 v 是 n 维实数向量空间中的一个元素)。
核心运算:
- 加法:对应分量相加。
几何上相当于两个向量首尾相接(平行四边形法则)。
-
标量乘法:每个分量乘以同一个数 。。几何上相当于沿原方向缩放(c > 1 放大,0 < c < 1 缩小,c < 0 反向)。
-
点积(dot product,又称内积 / inner product):
结果是一个标量(单个数)。几何含义极为重要——点积等于两个向量长度之积再乘以夹角余弦:
因此点积为零意味着两向量正交(orthogonal,即垂直)。点积为正值意味着夹角小于 90°,负值意味着大于 90°。在注意力机制中,Query 和 Key 的点积正是用来衡量两者的”匹配度”。
- 范数(norm):衡量向量的”长度”。最常用的是 L2 范数(欧几里得长度):
L1 范数是分量绝对值之和 ,L∞ 范数是最大分量的绝对值 。
矩阵与矩阵运算
Section titled “矩阵与矩阵运算”矩阵(matrix)是一个 行 列的数字表格,记作 ,其中第 行第 列的元素记为 或 。若 则称为方阵(square matrix)。
核心运算:
- 矩阵加法:同形状矩阵对应元素相加。。
- 标量乘法:每个元素乘以同一个标量。。
- 矩阵乘法:()乘以 ()得到 (),其中:
即 等于 A 第 行与 B 第 列的点积。矩阵乘法不满足交换律:(通常情况下)。这一点至关重要——它意味着运算的顺序不可随意调换。
计算复杂度:朴素的矩阵乘法需要 次乘加运算。对于 方阵,这是 。深度学习中动辄处理几千维向量,一次矩阵乘法就需要数十亿次浮点运算——这就是为什么 GPU 的并行架构如此重要。
- 转置(transpose):行列互换。 的转置记为 ,即 。一个 的矩阵转置后变为 。性质:(顺序翻转)。
- 逐元素乘法(Hadamard product,又称 element-wise product):同形状矩阵对应元素相乘,记作 。。在深度学习中常用于掩码操作(如 Attention Mask)和梯度计算。
逆矩阵与行列式
Section titled “逆矩阵与行列式”逆矩阵(inverse):对于方阵 ,如果存在矩阵 使得 (单位矩阵,对角线为 1 其余为 0),则称 A 可逆。逆矩阵类似于”倒数”在矩阵世界的对应物。并非所有方阵都有逆——只有非奇异(行列式不为零)的方阵才可逆。
行列式(determinant):方阵的一个标量值,记 或 。几何含义是矩阵变换对空间的”体积缩放因子”。行列式为零意味着矩阵将空间压缩到更低的维度(信息丢失),此时矩阵不可逆。行列式为负表示翻转了空间方向(如镜像)。
对于 2×2 矩阵:
对于 3×3 矩阵,可按第一行展开(余子式展开):
秩与线性无关
Section titled “秩与线性无关”线性无关(linear independence):一组向量 中没有任何一个能用其他向量的线性组合表示,则称它们线性无关。换言之,不存在不全为零的标量 使得 。否则称为线性相关(有冗余信息)。
秩(rank):矩阵中线性无关的行(或列)的最大数目,记作 。秩反映了矩阵所携带的”有效信息维度”。一个 的矩阵,秩最多为 。秩小于行数或列数意味着存在冗余信息(某些行/列可由其他行/列线性表出)。
AI 中的意义:当数据的协方差矩阵不满秩时(特征数大于样本数,即”维数灾难”场景),PCA 等方法会遇到数值不稳定。深度学习中过参数化模型的权重矩阵往往是低秩的——这正是 LoRA(低秩自适应)方法的理论基础。
特征值与特征向量
Section titled “特征值与特征向量”对于方阵 ,如果存在非零向量 和标量 使得:
则称 为 的特征向量(eigenvector), 为对应的特征值(eigenvalue)。
直观理解:矩阵 对特征向量 的作用只是将其缩放了 倍,不改变方向( 为负时方向翻转)。特征向量是理解矩阵变换的”骨架”——抓住了特征向量,就理解了这个矩阵在空间中做了什么。
特征值分解(eigendecomposition):如果方阵 A 有 n 个线性无关的特征向量,可以分解为:
其中 的列是特征向量, 是对角线上排列特征值的对角矩阵。
对称矩阵的特殊性质:对称矩阵()的特征值全为实数,且特征向量可以选为相互正交的。此时 是正交矩阵(),分解简化为 。许多重要矩阵(如协方差矩阵、图拉普拉斯矩阵、Hessian 矩阵)都是对称的,这一性质在 PCA、谱聚类中至关重要。
正定矩阵(positive definite):如果对所有非零向量 ,都有 ,则称 A 正定。等价于所有特征值为正。Hessian 矩阵正定意味着损失函数在该点是局部凸的(极小值点)——这是二阶优化方法的核心判断条件。
奇异值分解(SVD)
Section titled “奇异值分解(SVD)”奇异值分解(Singular Value Decomposition)是线性代数中最强大的工具之一。它将任意 矩阵 分解为三个矩阵的乘积:
其中:
- 是 正交矩阵(列向量两两正交且长度为 1),称为左奇异向量。
- 是 正交矩阵,称为右奇异向量。
- 是 的对角矩阵,对角线上的值称为奇异值(singular values),按从大到小排列。
直觉:SVD 把任何线性变换拆成”旋转 → 沿各轴缩放 → 再旋转”三步。奇异值告诉你每个轴方向上的缩放强度。矩阵的谱范数(spectral norm,最大奇异值 )在深度学习中用于衡量权重矩阵的”大小”,是谱归一化(Spectral Normalization)的理论基础。
最佳低秩近似(Eckart-Young 定理):保留前 个最大奇异值、截掉其余的,就得到了矩阵的最佳秩- 近似(在 Frobenius 范数意义下最优):
这就是 PCA、推荐系统、图像压缩的共同数学根基。
向量范数在机器学习中无处不在:
- L2 范数(欧几里得):最常用,对应”直线距离”。正则化中的权重衰减(weight decay)用的就是 L2 范数的平方。详见正则化技术。
- L1 范数:分量绝对值之和。产生稀疏解(大量分量为零),用于 L1 正则化(Lasso),能自动做特征选择。
- L∞ 范数:最大分量的绝对值。
- Frobenius 范数(矩阵范数):矩阵所有元素平方和的平方根 。在损失函数中用于衡量两个矩阵的差异。
两个向量之间的距离常用:
- L2 距离(差的 L2 范数):
- 余弦相似度(cosine similarity):
取值范围 ,1 表示方向完全相同,0 表示正交(无关),-1 表示方向相反。在 NLP 的词向量中,余弦相似度是衡量词义相似度的标准度量。详见词向量与嵌入模型。
线性变换的几何理解(补充)
Section titled “线性变换的几何理解(补充)”矩阵乘法 的本质是将向量 进行线性变换。理解几种基本变换有助于建立几何直觉:
| 变换类型 | 矩阵示例 | 效果 |
|---|---|---|
| 缩放 | x 轴方向放大 2 倍,y 轴方向缩小为 0.5 | |
| 旋转 | 绕原点逆时针旋转 θ 角度 | |
| 投影 | 投影到 x 轴上(信息丢失,不可逆) | |
| 剪切 | 顶部向右滑动,底部不动 |
为什么这对 AI 重要:神经网络的每一层本质上都是”线性变换(矩阵乘法)+ 非线性激活函数”。如果没有非线性激活函数,无论多深的网络都等价于一个单层线性变换(因为矩阵乘法的复合仍是矩阵乘法)。这就是为什么激活函数如此关键。
线性代数核心概念层次
Section titled “线性代数核心概念层次”矩阵分解方法谱系
Section titled “矩阵分解方法谱系”矩阵乘法在神经网络中的流转
Section titled “矩阵乘法在神经网络中的流转”NumPy 矩阵运算与特征值分解
Section titled “NumPy 矩阵运算与特征值分解”import numpy as np
# --- 矩阵乘法:神经网络的前向传播就是连续的矩阵乘法 ---W = np.random.randn(3, 4) # 权重矩阵: 4维输入 → 3维输出x = np.random.randn(4) # 输入向量b = np.random.randn(3) # 偏置y = W @ x + b # 前向传播: y = Wx + bprint(f"输出向量: {y}") # 3维向量
# --- 点积与余弦相似度:衡量向量方向的相似度 ---v1 = np.array([1, 2, 3])v2 = np.array([2, 4, 6]) # v2 = 2*v1,方向完全相同cos_sim = np.dot(v1, v2) / (np.linalg.norm(v1) * np.linalg.norm(v2))print(f"余弦相似度: {cos_sim:.4f}") # 1.0000(方向完全一致)
# --- 特征值分解:协方差矩阵 → 找到数据变化最大的方向 ---np.random.seed(42)data = np.random.randn(100, 3) * np.array([3, 1, 0.5]) # 3维数据, 各维度方差不同cov = np.cov(data.T) # 协方差矩阵 (3x3),是对称矩阵eigvals, eigvecs = np.linalg.eigh(cov) # 特征值分解(对称矩阵用eigh)print(f"特征值(从小到大): {eigvals}")print(f"最大特征值方向(主成分): {eigvecs[:, -1]}") # 最后一列是最大特征值对应的特征向量PyTorch 中的张量运算与自动微分
Section titled “PyTorch 中的张量运算与自动微分”import torch
# --- PyTorch 的核心:张量(Tensor)就是可以放在 GPU 上、支持自动求导的矩阵 ---device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
# 模拟一个简单的线性层 y = Wx + bW = torch.randn(64, 128, device=device, requires_grad=True) # 权重: 128维输入 → 64维输出b = torch.randn(64, device=device, requires_grad=True) # 偏置x = torch.randn(32, 128, device=device) # batch_size=32, 输入维度=128
# 前向传播: 对整个 batch 同时计算(矩阵乘法天然批量处理)y = x @ W.T + b # (32, 128) @ (128, 64) + (64,) → (32, 64) 广播加偏置print(f"输出形状: {y.shape}") # torch.Size([32, 64])
# --- 反向传播: PyTorch 自动计算所有矩阵的梯度 ---loss = y.pow(2).mean() # 简单的损失函数: 输出的平方均值loss.backward() # 自动微分——本质是对矩阵运算链式求导print(f"W 的梯度形状: {W.grad.shape}") # 与 W 同形状 (64, 128)print(f"W 的梯度范数: {W.grad.norm():.4f}") # 梯度的 L2 范数SVD 降维:用前 k 个奇异值近似矩阵
Section titled “SVD 降维:用前 k 个奇异值近似矩阵”import numpy as np
# 构造一个低秩矩阵(大部分信息集中在前几个维度)np.random.seed(42)A = np.random.randn(20, 10) @ np.random.randn(10, 15) # 秩为10的 20×15 矩阵
# SVD 分解U, S, Vt = np.linalg.svd(A, full_matrices=False)print(f"奇异值: {np.round(S[:5], 2)}") # 前5个奇异值远大于后面的
# 只保留前 k 个奇异值 → 压缩矩阵k = 3A_approx = U[:, :k] @ np.diag(S[:k]) @ Vt[:k, :]error = np.linalg.norm(A - A_approx) / np.linalg.norm(A) # 相对误差 (Frobenius 范数)total_energy = np.sum(S**2) # 总能量 = 所有奇异值的平方和kept_energy = np.sum(S[:k]**2) # 保留的能量print(f"保留前 {k} 个奇异值, 相对误差 = {error:.4f}")print(f"信息保留率: {kept_energy / total_energy:.2%}")实战:用线性代数理解 Attention 机制
Section titled “实战:用线性代数理解 Attention 机制”Attention 是 Transformer 的核心,其本质就是一系列矩阵运算:
import torchimport torch.nn.functional as F
batch_size, seq_len, d_model = 2, 10, 64
# Q, K, V 矩阵:将输入序列投影到三个不同的表示空间Q = torch.randn(batch_size, seq_len, d_model) # Query: "我在找什么"K = torch.randn(batch_size, seq_len, d_model) # Key: "我有什么"V = torch.randn(batch_size, seq_len, d_model) # Value: "我的实际内容"
# 核心公式: Attention(Q,K,V) = softmax(Q·K^T / √d_k) · Vscores = Q @ K.transpose(-2, -1) # (batch, seq, seq) —— 矩阵乘法计算所有位置的相似度scores = scores / (d_model ** 0.5) # 缩放:防止点积过大导致 softmax 梯度消失attention_weights = F.softmax(scores, dim=-1) # 对每一行做 softmax,得到权重分布output = attention_weights @ V # (batch, seq, d_model) —— 加权求和
print(f"Attention 权重形状: {attention_weights.shape}") # (2, 10, 10)print(f"每行权重和应为1: {attention_weights[0, 0].sum():.4f}") # 1.0000print(f"输出形状: {output.shape}") # (2, 10, 64)这个例子揭示了 Attention 的线性代数本质:一次矩阵转置、两次矩阵乘法、一次逐元素缩放——仅此而已。详见 Flash Attention。
- 矩阵乘法是性能瓶颈也是优化重点:深度学习 90% 的计算量在矩阵乘法上。GPU 的 Tensor Core 专为加速矩阵乘法设计,使用混合精度训练可进一步提速 2-3 倍。详见混合精度训练。
- 几乎不存在真正的求逆:数值上,直接计算 既慢又不稳定。实际工程中解线性方程组 时,用 LU 分解或 QR 分解,而不是先求逆再乘——不仅快得多,数值也更稳定。经验法则:如果你的代码中有
np.linalg.inv,大概率应该用np.linalg.solve替代。 - 注意维度匹配和广播规则:NumPy/PyTorch 的广播(broadcasting)机制非常方便但也极其危险——维度不匹配时不报错而是隐式广播,可能产生静默错误。调试时先检查 tensor 的 shape 是否符合预期。
- SVD 是万能瑞士军刀:PCA 降维、推荐系统(协同过滤)、图像压缩、潜在语义分析(LSA)——当你需要”提取最重要的几个方向”时,SVD 几乎总是答案。详见降维方法。
- 特征值分解只适用于方阵:非方阵需要用 SVD。但当你确实有方阵(特别是对称矩阵)时,特征值分解比 SVD 更快且物理含义更直接。
- 条件数(condition number)决定数值稳定性:(最大奇异值与最小奇异值之比)。条件数很大的矩阵在数值运算中误差会急剧放大,是梯度爆炸/消失的数学根源之一。
- 神经网络的前向传播:全连接层 本质就是矩阵乘法加向量加法。所有深度学习框架的核心计算都是优化的矩阵乘法。详见反向传播。
- 主成分分析(PCA):用协方差矩阵的特征值分解或直接用 SVD,找到数据方差最大的方向,实现降维和数据可视化。详见降维方法。
- 推荐系统:Netflix 竞赛冠军方案的核心就是对”用户-电影”评分矩阵做 SVD,分解出用户偏好和电影特征的低维表示。详见推荐系统。
- 词向量与嵌入:Word2Vec、GloVe 等词嵌入方法将词表示为高维向量,用向量间的余弦相似度衡量词义相似度。详见嵌入模型。
- PageRank:Google 搜索引擎的核心算法,本质是对网页链接矩阵求主特征向量——一个纯粹的特征值问题。
- Transformer 的自注意力:Self-Attention 机制完全由矩阵运算构成:。理解矩阵乘法和 softmax 就理解了 Transformer 的计算核心。详见预训练架构。
- 低秩微调(LoRA):将预训练权重的更新分解为两个低秩矩阵的乘积 (其中 ),大幅减少可训练参数。详见参数高效微调。
典型类库与工具
Section titled “典型类库与工具”| 类库 | 语言 | 说明 |
|---|---|---|
| numpy.linalg | Python | NumPy 线性代数模块:矩阵乘法、求逆、行列式、特征值分解、SVD 等 |
| scipy.linalg | Python | SciPy 线性代数模块,比 numpy.linalg 更全面,包含 LU/QR/Cholesky 分解 |
| torch.linalg / torch.mm | Python | PyTorch 线性代数与矩阵运算,支持 GPU 加速和自动微分 |
| torch.nn.Linear | Python | PyTorch 全连接层,封装了矩阵乘法 + 偏置,是构建神经网络的基本单元 |
| LAPACK | Fortran/C | 底层线性代数库,几乎所有高级语言的线性代数实现都基于它 |
| Eigen | C++ | 高性能 C++ 模板线性代数库,广泛用于机器人、图形学、游戏引擎 |
| cuBLAS / cuSOLVER | CUDA | NVIDIA GPU 上的线性代数库,PyTorch/TensorFlow 底层调用它进行 GPU 加速 |
| 术语 | 英文 | 解释 |
|---|---|---|
| 向量 | Vector | 有序数字列表,表示空间中的一个点或一组特征 |
| 矩阵 | Matrix | m 行 n 列的数字表格,可视为一组向量或一个线性变换 |
| 张量 | Tensor | 向量/矩阵的推广,可以有任意多个维度;在深度学习中是基本数据结构 |
| 点积 / 内积 | Dot Product / Inner Product | 两向量对应分量乘积之和,衡量方向一致性 |
| 范数 | Norm | 衡量向量”长度”的函数,L2 范数即欧几里得长度 |
| 矩阵乘法 | Matrix Multiplication | A(m×k) 乘以 B(k×n) 得到 C(m×n),不满足交换律 |
| 转置 | Transpose | 矩阵行列互换,A 的转置记为 A^T |
| 逆矩阵 | Inverse Matrix | A^(-1) 使 A·A^(-1) = I,只有非奇异方阵才可逆 |
| 行列式 | Determinant | 方阵的标量值,几何含义为变换的体积缩放因子,为零则矩阵不可逆 |
| 秩 | Rank | 矩阵中线性无关的行(列)的最大数,反映有效信息维度 |
| 特征值 | Eigenvalue | 满足 Av = λv 的标量 λ,反映变换在该方向的缩放强度 |
| 特征向量 | Eigenvector | 矩阵变换中方向不变只缩放的向量,是理解矩阵行为的关键 |
| 奇异值分解 | SVD | 将任意矩阵分解为 U·Σ·V^T,用于降维、压缩、推荐等 |
| 奇异值 | Singular Value | SVD 中对角矩阵 Σ 上的值,按从大到小排列,反映各轴的缩放强度 |
| 正交矩阵 | Orthogonal Matrix | 列向量两两正交且长度为 1 的方阵,其转置等于其逆 |
| 正定矩阵 | Positive Definite | 所有特征值为正的对称矩阵,x^T·A·x > 0 对所有非零 x 成立 |
| 条件数 | Condition Number | 最大奇异值与最小奇异值之比,衡量矩阵数值计算的稳定性 |
| Frobenius 范数 | Frobenius Norm | 矩阵所有元素平方和的平方根,用于衡量矩阵”大小”或两个矩阵的差异 |
| 谱范数 | Spectral Norm | 矩阵的最大奇异值,用于谱归一化等深度学习技术 |
- Strang,「Introduction to Linear Algebra」(6th Ed., 2023):MIT 经典教材(Gilbert Strang 著),从几何直觉出发讲解,配套免费公开课(MIT 18.06),入门首选。
- Strang,「Linear Algebra and Its Applications」(5th Ed., 2017):Strang 的另一本进阶教材,侧重线性代数在工程和数据科学中的应用。
- 3Blue1Brown,「Essence of Linear Algebra」视频系列:YouTube 上最受欢迎的线性代数可视化教程,15 个短视频建立完整的几何直觉,强烈推荐。
- Trefethen & Bau,「Numerical Linear Algebra」(1997):从数值计算角度讲解矩阵分解和算法,适合需要深入理解底层实现的读者。
- Goodfellow, Bengio & Courville,「Deep Learning」Ch.2 (2016):深度学习圣经的第二章,专门为机器学习读者提炼的线性代数速览,重点突出、实用性强。
最新进展(2025-2026)
Section titled “最新进展(2025-2026)”线性代数作为数学基础学科已有百年历史,但其与深度学习的交叉在 2024-2026 年间涌现了多个重要研究方向。
矩阵乘法的”去”与”留”
Section titled “矩阵乘法的”去”与”留””矩阵乘法是神经网络的计算基石,但也占据了绝大部分算力消耗。2024-2025 年出现了一个引人注目的研究方向——MatMul-free(无矩阵乘法)语言模型。该工作 (arXiv:2406.02528) 证明,在高达 27 亿参数的规模下,可以用逐元素运算(element-wise multiplication)和加法替代 Transformer 中的密集矩阵乘法,同时保持与标准 Transformer 相当的性能。该方案在推理时可减少超过 10 倍内存消耗,并在神经形态硬件上实现 4 倍吞吐量和 10 倍能效提升。
这一方向的哲学启发是:矩阵乘法的 内存和 计算复杂度在大模型时代正在成为瓶颈,而低秩分解、稀疏运算、逐元素运算等线性代数替代方案可能开启新的架构范式。
低秩微调(LoRA)与线性代数的工程化
Section titled “低秩微调(LoRA)与线性代数的工程化”LoRA(Low-Rank Adaptation)(arXiv:2106.09685) 是线性代数”低秩近似”思想在大模型微调中的直接应用。其核心假设是:预训练模型在下游任务上的权重更新 具有低秩结构(即”内蕴维度”远小于参数维度)。因此将更新分解为:
训练时冻结原始权重 ,只训练 和 ,可训练参数减少上万倍。2025 年这一方向进一步演化出 DoRA(Weight-Decomposed Low-Rank Adaptation)、PiSSA(Principal Singular Values and Singular Vectors Adaptation)等改进方法,后者直接利用 SVD 分解初始化低秩矩阵,展现了线性代数工具在大模型工程中的持续价值。详见参数高效微调方法。
随机化数值线性代数(RandNLA)
Section titled “随机化数值线性代数(RandNLA)”面对超大规模矩阵(如百亿参数模型的海量权重矩阵),精确的 SVD/特征值分解变得不可承受。随机化数值线性代数(Randomized Numerical Linear Algebra)通过随机投影(random projection)和随机采样,在数学保证下以极低的计算成本获得近似分解:
- 随机化 SVD:先生成一个随机矩阵 ,计算 ,再做小规模 SVD。复杂度从 降低到 ( 为目标秩),且可天然并行化。
- 这一技术在 2025 年被广泛用于大规模推荐系统的实时协同过滤和 LLM 的 KV Cache 压缩中。
线性注意力与状态空间模型中的矩阵结构
Section titled “线性注意力与状态空间模型中的矩阵结构”传统 Transformer 的注意力矩阵 规模为 ( 为序列长度),这限制了长文本处理。2024-2025 年的线性注意力(Linear Attention)和状态空间模型(SSM,如 Mamba、Griffin)(arXiv:2402.19427) 从矩阵结构入手:将密集的注意力矩阵替换为可递推计算的低秩或对角结构,将序列建模的复杂度从 降为 。其数学本质是利用矩阵的结合律重排计算顺序,避免显式构造完整的 注意力矩阵。
混合精度与 FP8 矩阵运算
Section titled “混合精度与 FP8 矩阵运算”2024-2025 年,NVIDIA H100/H200 GPU 全面支持 FP8(8 位浮点)矩阵乘法。这在线性代数层面意味着:矩阵乘法的每个元素从 16 位(FP16/BF16)压缩到 8 位存储和计算,吞吐量翻倍的同时显存减半。但 FP8 的动态范围更小(有效位数更少),对矩阵运算的数值稳定性提出了更高要求——这正是条件数、缩放因子等线性代数概念在工程中的直接体现。详见混合精度训练。
张量分解与模型压缩
Section titled “张量分解与模型压缩”张量分解(Tensor Decomposition)是矩阵 SVD 的高维推广,将多维张量分解为低秩组件的乘积。2025 年,Tensor-Train(TT)分解和 Tucker 分解被成功应用于压缩 LLM 的嵌入层和 FFN 层权重,在几乎不损失精度的前提下将模型体积压缩 5-10 倍。这一方向有望成为端侧大模型部署的关键技术之一。详见模型量化与压缩。