大模型 “瘦身” 黑科技:DeepSeek MLA 靠 2 个矩阵,把显存砍半还不丢性能?
摘要:DeepSeek的MLA和LoRA技术通过低秩分解实现高效参数压缩,将高维特征向量压缩为少量"精华数字"存储,使用时再还原。这一过程利用压缩器和生成器矩阵:前者提取核心特征(如从4维压至2维),后者恢复完整维度。该技术基于"低秩假设",在节省50%显存的同时保持计算效率,使大模型兼具轻量化和高性能特性。典型场景下,输入向量经过降维-升维处理后,能完整保
一、引言
你敢信吗?大模型里几万个参数的特征向量,居然能被压缩成 2 个数字存起来,用的时候还能原样 “复活”?
DeepSeek 的 MLA(还有 LoRA 这类技术)里藏着个狠活:和
这对 “压缩 - 还原 CP”,靠 “低秩分解” 把高维信息榨出 “精华”,显存直接省一半,计算还没变慢 —— 这波操作,到底是怎么让大模型又轻又聪明的?
在 DeepSeek 的 MLA(以及 LoRA 等技术)中,(降维/压缩矩阵) 和
(升维/解压矩阵) 是一对形影不离的搭档。
它们的核心原理基于线性代数中的**“低秩分解 (Low-Rank Decomposition)”**。
二、原理:信息的“提炼”与“还原”
我们可以把这两个矩阵想象成一个**“压缩器”和一个“生成器”**。
-
(压缩器):
-
原理: 输入的高维向量中往往包含大量冗余信息(比如“苹果”和“水果”在语义上有重叠)。
的作用是提取最核心的**“精华特征”**(Latent Vector),抛弃噪音和冗余。
-
动作: 将高维向量
映射到一个极小的维度
。
-
-
(生成器/还原器):
-
原理: 虽然精华特征只有几个数字,但它蕴含了恢复全貌的“种子”信息。
负责把这些种子“发芽”,扩展回高维空间,以供多头注意力机制(Multi-Head)使用。
-
动作: 将低维的 Latent Vector 映射回高维,生成
和
。
-
核心假设: 大模型虽然参数很多,但在处理具体任务时,真正起作用的特征维度其实很低(即“低秩假设”)。
三、数值计算示例
为了演示,我们设定一个极简的场景:
-
输入维度 (
): 4
-
压缩维度 (Latent Dim): 2 (压缩了一半)
-
目标输出维度 (比如 KV 的总维度): 4
设定输入向量 
3.1 降维(Down-Projection)

3.2 升维 (Up-Projection)
四、MLA 中的“神来之笔”:矩阵吸收

五、两个矩阵如何初始化
这里需要区分 MLA (作为基础架构) 和 LoRA (作为微调插件),虽然它们数学形式都是 ,但初始化逻辑完全不同。
情况 A:DeepSeek MLA (从头预训练 Pre-training)
MLA 是 DeepSeek V2/V3 模型原本骨架的一部分,不是后来加进去的补丁。
-
初始化策略: 标准初始化 (Standard Initialization)
-
通常使用 Xavier (Glorot) 初始化 或 Kaiming (He) 初始化。
-
也就是两个矩阵都初始化为均值为 0、方差较小的高斯分布 (Gaussian Distribution) 随机数。
-
-
原因:
-
模型是从一张白纸开始学的。我们需要让信号在网络中流动起来。
-
如果把其中一个初始化为 0,那么输出就全为 0,梯度就断了 (Dead Neuron),模型一开始就学不到东西。
-
情况 B:LoRA (微调 Fine-tuning)
虽然 MLA 是架构,但面试常问的“低秩矩阵初始化”通常会关联到 LoRA。LoRA 的初始化非常有讲究。
-
初始化策略:
-
(矩阵 A): 高斯随机初始化 (Gaussian Initialization)。
-
(矩阵 B): 全零初始化 (Zero Initialization)。
-
六、总结
-
是为了省显存(把数据压小存起来)。
-
是为了保智商(保留了恢复高维特征的能力,让模型依然能理解复杂关系,虽然它平时是以压缩状态存在的)。
更多推荐



所有评论(0)