DeepSeek MLA
复制本地路径 | 在线编辑
总结
先回顾一下,Attention 计算所需要的 QKV 矩阵,都要分别用矩阵去乘以输入 h 来完成。MLA 的思想是对输入 h 先进行压缩降维,计算的时候再乘以一个矩阵去升维。所以原来存储的矩阵变为存储压缩用的矩阵和升维用的矩阵,会显著减少显存占用。因为是相当于把原来的矩阵进行拆分,而原来的矩阵通常是稀疏的。
比如下面的图,说一下这里的符号:
- \(W^{DQ}\) 就表示原来的 \(W^Q\) 拆分成了两个矩阵 \(W^{DQ}\) 和 \(W^{UQ}\);
- \(W^{QR}\) 是解耦 RoPE 用到的矩阵,这也是 MLA 工作的一部分,但和上面那一段的原理无关,可以就当成原来也会用的一个矩阵;
- \(W^{DKV}\) 这个意思是 \(W^{DK}\) 和 \(W^{DV}\) 其实是同一个矩阵,也就是 K 和 V 的降维或降维用的是同一个矩阵;

更细节的原理
更细节的原理我没有深入,可以看这篇文章:https://www.cnblogs.com/rossiXYZ/p/18827618
可以看到,实在太多了,说明 MLA 也是一个相当庞大的研究方向。只有深入去搞,才有意义去看更多的细节。