李宏毅《机器学习2025》笔记 第四讲 —— Mamba

发布于:2025-07-03 ⋅ 阅读:(16) ⋅ 点赞:(0)

一、概述

        RNN、Self-attention和Linear Attention都是用于seq2seq的技术,输入一串向量,输出另一串融合了所有输入向量的信息的向量。Transformer的出现使得Self-attention取代了RNN,Mamba这一类模型的出现又使得Linear Attention成为一个研究热点。而Linear Attention可以看作特殊的RNN或Self-attention.

        注:本文中的Self-attention都指Masked Self-attention.

二、RNN

        RNN(循环神经网络) 是在Transformer提出Self-attention Layer之前最常用的技术,它通过将输入一个一个进行处理来传递融合的信息。如图所示,H代表当前时间的Hidden State,每次先根据前一个时间点的Hidden State和当前输入生成新的Hidden State,再由这个新的Hidden State生成输出,重复下去。

RNN过程

        另外fA, fB, fC这三个函数是可以变化的,让他们随着x而变化效果会好很多。

改进的RNN

        这其实和AI-Agent的记忆功能很相似,每次有新的记忆 (输入) 时通过Write模组 (fB函数) 提取出需要写入的信息,并通过Reflection模组 (fA函数) 从过去的Memory (Hidden State) 中提取与当前输入相关的信息,最后再由Read模组 (fC函数) 从新的Memory (Hidden State) 中读取需要的信息。

RNN与AI Agent‘s Memory的对比

 二、Self-attention

        Self-attention相比RNN最大的优势就是训练时可以并行计算,因此它的训练效率要高很多。但是在推理的时候由于需要读取前面所有的向量来获取信息,所以它所需要的内存和计算量会随序列长度的增加而增加,RNN就不会,因为前面的信息都在Hidden State里面。

Self-attention

         随着现在对序列长度的要求越来越高,特别是多模态数据的处理,Self-attention的缺点越来越凸显,于是人们开始怀念起RNN,开始思考RNN是否真的不能并行,然后就出现了Linear Attention.

三、Linear Attention

        首先看RNN展开后的式子,可以发现其无法并行的原因是由于要一步步调用fA.

RNN展开式

        那么只要把fA给去掉,H就可以并行计算了。

去掉fA后的RNN展开式

        假设H是一个 d*d 的矩阵,让我们换一种写法,令fB(x) = v·k,fC(H) = H·q,其中q = Wq·x,v = Wv·x,k = Wk·x,再写出y的式子,会发现它和Self-attention很像。

换变量后的式子

        整理一下,令k·q = α,就可以看出这就是Self-attention去掉了softmax,而这就是Linear Attention.

Linear Attention式子

        因此,Linear Attention在训练的时候可以当作Self-attention,原因是RNN去掉fA后变得可并行计算了,提高了训练效率;在推理的时候可以当作RNN,原因是Self-attention每次把H存下来,下次计算H时直接使用Ht = (Ht-1 + fB(x))·q来算,不需要再读取前面的输入,并且没有softmax,不用存储前面所有的α避免了内存占用随序列变长而增大

Linear Attention的训练与推理 

        但是正因为少了softmax,Linear Attention的效果不如Self-attention,因为它存储的重要性都是绝对的,而实际上一个事件的重要性应该是相对的。

softmax的作用

        所以要改进Linear Attention就得让它学会遗忘。常见的方法有:

                1)通过乘上一个固定的小于1的γ来逐渐遗忘,但是这样会导致以前的重要的事件丢失;

                2) 通过乘上变化的γ来选择性的遗忘,但是这样还是太简单了;

                3)通过乘以一个矩阵G来选择哪些记忆需要保留,哪些需要遗忘,哪些需要减弱;

四、Mamba

        Mamba采用了优化的Linear Attention,通过乘以一个复杂的G来选择记忆。

各种模型的G矩阵 

        Linear Attention总体不如Self-attention,而Mamba是第一个在效果上打败Transformer的Linear Attention架构,并且由于Linear Attention在推理速度方面的优势,Mamba的推理速度也远超Transformer.

模型能力图

推理速度图


网站公告

今日签到

点亮在社区的每一天
去签到