哈工大孟维康:让注意力有 “棱角”|Attention

绿洲资本·2025年10月20日 15:57
参赞生命力

过去几年中,Transformer 作为生成式 AI 的核心架构,几乎定义了整个行业的技术走向。而其核心模块 Self-Attention(自注意力)得益于表现力的强大,在视觉与语言模型领域几乎成为标配。

然而,纵然有着亮眼的性能表现,其带来的现实问题却难以回避——自注意力机制是空间平方复杂度的挑战,意味着昂贵的投入和巨大的能耗。于是模型训练一度陷入资源王者的军备竞赛,令中小团队和企业望而却步。

基于此,学界与产业界在平衡效率与性能方面的探索从未停止。

Linear Attention(线性注意力)是这一努力的代表性尝试,它的基本思路,是通过核函数(Kernel Function)而非通过 Self-Attention 中的 Softmax 来计算,以降低复杂度。不过,降低了复杂度的 Linear Attention 固然有其动人的一面,却依然存在两道硬伤:

由于弃用了 Softmax 的指数型缩放,注意力的分布变 “平” 了(高熵),这种 “平” 会削弱模型的区分能力,在一些精细细节或者重要特征中丧失了尖锐性(Spikeness)。

Linear Attention 的另一个核心问题是:用非负的核函数(比如 ReLU)去近似 Softmax 时,所有负数信息都被 “截掉” 了,导致模型只能看到 “正相关”,而看不到 “负相关” 或 “抑制关系”。这样一来,注意力图就变得片面,从而影响表达力。

本期 Attention 访谈文章,绿洲邀请了论文《PolaFormer: Polarity-aware Linear Attention for Vision Transformers》(ICLR'25) 的第一作者、哈尔滨工业大学(深圳)与鹏城实验室联合培养博士生孟维康,了解在 PolaFormer 的工作逻辑下,是如何解决 Linear Attention 出现的以上这两个问题,以及更深入地了解他在技术探索背后的思考。

全文约 7000 字,阅读预计需 18 分钟,Enjoy

在 PolaFormer 的工作中,研究者面对 Linear Attention 存在的两个问题,针对其在视觉任务上的表现,提出了一个创新性的尝试——Polarity-Aware Linear Attention (极性感知线性注意力),力求模型能满足达到更好性能和更高的计算效率。

具体来说,对于高熵的问题,研究者认为可以通过设计一种新的核函数(Kernel Function)来降低权重分布的信息熵。具体的理论是:如果一个逐个元素计算的映射函数的一阶导数和二阶导数均大于 0(严格单调 + 凸),则可以重新缩放 q,k (权重矩阵)响应来降低信息熵。因此,在核函数设计选择的具体实现方案上,本篇工作选择了使用可学习的通道级幂函数(Learnable Channel-wise Power Function),并在论文中给出了数学上的可行性证明。

而对于负值丢失的问题,本篇工作认为可以通过极性感知的计算方式,来实现 Q 矩阵和 K 矩阵(注意力权重矩阵)所有元素平等地进行相似度计算,以实现不降低模型表现能力的目标。

(图中使用 PolaFormer 处理的图像效果更佳,接近 Softmax Attention 处理的效果,实现了缩小 Linear Attention和Softmax Attention 之间表达效果差距的目的)

简单来说,PolaFormer 的设计思路就是:既然正负信息都很重要,但又不想大幅度增加计算成本,那不如就把它们分开单独处理。这是一个混合策略对冲减法操作的思路。

其基本实现框架为:双支线极性建模 + 可学习幂函数

首先,它把 Query 和 Key 向量拆成正的部分和负的部分。然后,设计了两条并行的支线:

上支线专门处理 “同号交互”(正-正、负-负)

下支线专门处理 “异号交互”(正-负、负-正)

在 Value 向量这边,也对应拆成两半,分别送入两条支路。这样每一路都能独立处理对应的关系。最后,引入两个可学习的矩阵 G^s 和 G^o,分别对两条支线的结果进行加权调节,再把结果拼接在一起。同时,框架里叠加一个可学习的通道级幂函数,它的作用是让注意力分布更 “尖锐”,不再变 “平”,从而恢复接近 Softmax 的表现力。

针对 PolaFormer 的有效性,本篇工作在多种任务上进行了实验测试。分别为目标检测、语义分割、图像分类和长序列基准(Long Range Arena, LRA)。

大量的实验表明,本篇工作提出的 Polarity-Aware Linear Attention (极性感知线性注意力)可以有效替代 Vision Transformer 框架中的 Self-Attention 模块,并在视觉基础任务和 LRA 任务上显示出明显的性能提升。

绿洲:请您先简单介绍一下自己的背景,以及为什么会走到 PolaFormer 这个研究主题?

孟博士:我现在在哈工大(深圳)读博,导师是张正老师。其实我选择这个问题,还是从产业和学术的差别考虑的。产业界现在已经默认了像 Transformer 这样的大模型在精度上够用了,但企业要部署时会更在意效率,比如能不能在移动端、在纯客户端上跑起来。像 LLaMA、qwen 系列数十 B 规模的模型,在资源受限情境下,其实还是很难落地的。

所以过去学界大家拼命追求的 “更高精度”,慢慢变成了“ 更高效率” 和 “更好适配性”。这是一个转变。企业有数据、有机器,因此他们有更多的试错机会,可以不断迭代,但对一些小的研究团队或者初创企业来说,就得去补这个缺口,想办法做得更高效,才能在大模型已经很卷的情况下找到突破口。

绿洲:我们理解注意力机制有很多变体,比如 Linear Attention 之外,还有 Sparse Attention 等等。那么想了解的是,我们为什么最初选择针对 Linear Attention 去做优化?背后的考虑是什么?

孟博士:Linear Attention 本身不是一个全新的架构,差不多 2020 年就已经有人提出过。它有一些很稳定的性质。相比之下 Sparse Attention 我觉得核心问题更多在别的地方。比如从表达能力上讲,它可能会随机丢掉一些相似度信息,实验里我们也发现,当模型规模越来越大时,Sparse Attention 的性能并不能很好维持。小任务可能还行,比如一两层的小网络,它能在效率和表现之间找到一个平衡。但当模型规模上去以后,丢失的信息就会很多。

Linear Attention 不一样,它不存在这种 “随机丢失” 的风险。它做的事情其实就是把计算相似度的过程用矩阵分解的方式改写,保证了复杂度下降的同时不会丢失全局信息。所以不论是处理短文本还是长序列,它都能保持比较稳定的表现。

绿洲:所以如果我理解没错的话,您在论文里主要是聚焦解决两个问题:一是 Linear Attention 的注意力分布过于平均,不够尖锐;二是因为非负约束,导致一些负值交互信息被丢失。PolaFormer 的设计就是针对这两点提出的,对吗?

孟博士:对,差不多。整体来说,Softmax 对注意力机制的权重有一些很好的性质,但它没办法线性化。我们要做的,就是尽量保留 Softmax 的这些性质。

在论文里我把问题拆成两个:第一个是非负约束(non-negativity constraint),会让 Linear Attention 丢失掉负值交互;第二个是尖锐性(spikiness)的缺失,导致分布太过平坦。

这两个问题,本质上都和核函数(kernel function)的设计有关。Softmax 的核函数本身具备一些优点,但因为计算特性,不能直接转化成线性形式。所以我们的做法是把 Softmax 的核函数分解,用一种新的核函数近似,既能保持非负性,又能通过幂函数的方式恢复分布的尖锐性,从而更接近标准 Attention 的效果。

绿洲:能不能请您给大家简单介绍一下 PolaFormer 的整体设计?

孟博士:PolaFormer 的核心是一个双分支的架构(dual-stream structure)。我们把输入的 Query 和 Key 向量先拆分成正分量和负分量,然后分别送进两条支路。一条处理同号交互(same-signed interactions), 也就是正-正和负-负;另一条处理异号交互(opposite-signed interactions),也就是正-负和负-正

在 Value 这一侧,我们沿着通道维度(channel dimension)把向量一分为二,每个分支各自作用在一半的 Value 上,这样不会增加额外的复杂度。最后,再通过两个可学习的极性感知矩阵把两路的结果拼接起来。

绿洲:这个双分支结构,从图示上看,好像就是两套注意力的计算。那我们关心的是,您如何保证在增加双分支的同时,整体计算复杂度依然在可控范围内?那在实现过程中,双分支是否也会显著增加成本?

孟博士:这个问题是这样的。最后在实现时,我们在 Q、K、V 三个矩阵里,我们对 V 做了一次拆分,把它沿着通道维度(dimension)分成两半。这样,在双分支计算时,每个分支只作用在 V 的一半上,相当于两路加起来还是覆盖完整的 V。

所以整体复杂度不变,只是把原本的计算重新分配成了两路,计算量的轻微增加,。

绿洲:Value(V)为什么选择在通道维度(channel dimension)上进行拆分?

孟博士:其实是因为在计算上,它只能在通道维度上做拆分。如果我们看注意力的公式,每一个 Key(K)都会和对应的 Value(V)配对使用。

假设 K 的维度是 n × d,其中 n 是序列长度,d 是特征维度。那么在 Attention 里,K 和 V 在序列维度(sequence dimension)上是一一对应的。换句话说,K(i)必须和 V(i)匹配。

所以如果我们去沿着序列维度来切分 V,就会导致 K 和 V 对应不上,计算无法成立。

而在通道维度上拆分则不会有这个问题。这样我们就能把 V 一分为二,分别送到两个分支里去做同号和异号的计算,同时保持结构合理。可以参见论文中的公式。

绿洲:接下来我想问的是函数设计和选择的问题,我理解这也是这篇工作的一个关键问题 - 用什么来替代 Softmax。

论文里您用数学证明了选择一种可学习的通道级幂函数(channel-wise power function),来替代 Softmax 的指数函数。能不能展开讲一下:在函数选择上,您当时的思路和逻辑是什么?理论上很多函数都能满足降熵的效果,那为什么最后会选择这个幂函数?是不是也尝试过其他函数?

孟博士:是这样的。我们在论文里证明了,如果一个逐元素函数(element-wise function)的性质满足一阶导和二阶导都大于 0,也就是严格单调且凸(strictly increasing & convex),它就能保证注意力分布的熵会降低。

但是这里其实还有个问题,就是虽然大家都满足 “导数大于 0”,但到底大多少、函数在不同区间的曲率是什么样的,其实是难以统一定义的。而且这个差异会显著影响分布被压缩或放大的程度。我们在这个问题上其实也没有特别标准的答案。

所以我们最后选择了幂函数,是因为它非常简单直观,又容易通过指数 p 去控制凸性的强弱。我们还把这个指数设计成通道级的可学习的,这样不同通道可以自适应地调整自己的 “尖锐度”。

相比之下,之前像 Lightning Attention、或者更早的 Linformer、RNS,这些方法其实都没有考虑过如何从函数选择的角度解决 “分布过平” 的问题。

可以说,我们的工作算是第一次明确把这个问题提了出来。

绿洲:这也是这篇工作的主要贡献之一吧?

孟博士:对,可以说是我们比较核心的工作之一。我们最后确定选择幂函数(power function),比如在调节时,就可以通过指数大小更直接地控制注意力分布的尖锐程度(spikiness)让它更集中或更平滑。从实验里也能很直观地看到这种效果。

当然,这只是第一步。我们目前还没有完全深入,比如说到底需要多尖锐才合适,或者分布的熵应该降低到什么范围才最优,这些都还没有一个确定答案。换句话说,我们只是提出了一个方向:证明幂函数确实有效,并且能在表达力和效率之间取得平衡。至于更细致的参数选择,还需要未来进一步探索。

绿洲:我觉得这也是一个很有意思的点。因为从这个角度,我们就能更好理解这篇论文里提到的 “potential(潜在研究方向)”。

孟博士:是的。之前很多工作只是说 “我们提出一个核函数(kernel function)”,但并没有明确给出这个核函数应该满足哪些性质。

我们这篇工作给出了一个比较系统的思路:如果要在线性注意力里设计一个新的核函数,它至少应该满足哪些条件,才能保证注意力分布既高效又足够表达

所以我认为,重要的不是用了幂函数本身,而是提出了一套可推广的设计准则。这意味着,未来研究者可以在此基础上尝试更多类型的函数,只要满足这些条件,理论上都能取得类似的效果,甚至可能更好。

绿洲:能不能帮我们总结一下,对核函数的选择框架。在这个框架里,函数选择其实是有自由度的,但同时也有一些限制条件,可不可以再总结一遍这些限制条件?

孟博士:好的,我觉得核心大概有三个方面。

第一个,是非负约束(non-negative constraint)。我们在注意力计算里必须保证权重是非负的,这是最基本的条件。

第二个,是尖锐性(spikiness)。我们论文里提出要通过双流(streams)的方式,把这个问题讲清楚,确保注意力分布不会过于平坦。

第三个,是全参数参与计算(full-parameter participation)。这一点其实也很关键。因为在标准 Attention 里,每个元素都会被参与计算,但很多 Linear Attention 的方法,为了满足非负约束,往往直接把所有负数截掉。这样做的结果是,注意力分布里可能有一半甚至更多的信息被舍弃,相当于 3/4 的部分被 miss 掉。

绿洲:我想确认一下,全参数参与计算(full-parameter participation)算不算是一个独立的限制条件?还是说它其实是为了解决非负约束带来的问题?

孟博士:我觉得它应该算是一个单独的限制条件。因为单靠 “非负约束” 很难解决所有问题。每个输入的分布不一样,你没法保证某个维度永远是正的,另一个维度永远是负的。在这种不可控的情况下,以往的很多工作做法就是 “直接把负的部分全都丢掉,只保留正的”,比如用 ReLU 处理掉所有负数。这么做虽然保证了非负,但问题是太粗暴了:一些本来有意义的负数相似度全都被映射成了 0,信息损失很严重。

举个例子,如果 query、key 向量的某个维度是 -100,而另一个是 -99,这两者其实绝对值很大,对模型表达能力可能很重要。但一旦经过 ReLU,它们都会被变成 0,这个差别就彻底消失了。这样一来,模型在学习时就缺少了区分能力。

绿洲:在论文中,您们提出了可学习的极性感知混合机制(learnable polarity-aware mixing)。能不能具体解释一下,它们是怎么体现出互补性的?有没有遇到过两者学习结果相似、失去互补性的情况?

孟博士:这个问题可以直接看论文第五页的 Figure 3。

你会发现 (G^s) 和 (G^o) 的权重分布确实有重叠的部分,但整体模式是不同的。(G^s)(same-signed stream)更集中,基本落在 2.5 到 5.0 之间,分布比较均匀;而 (G^o)(opposite-signed stream)则更分散,说明它们在功能上是互补的。

我们设计这个机制的初衷,就是要捕捉同号交互和异号交互。公式里可以看到,这两部分本来是分开的,我们希望通过 (G^s) 和 (G^o) 的学习,把它们有效结合起来。但要保证这种互补性其实不容易,尤其是在大规模训练时,你没法完全确保两者总是严格负相关。

所以我们才引入了这种 “混合 gating” 的机制。它的好处是,即使在某些情况下两者分布有重叠,模型也能通过可学习的参数自动去平衡。实验结果表明,这种设计确实让模型性能有了明显提升。

绿洲:PolaFormer 把同号交互和异号交互的结果做元素级缩放(element-wise scaling),然后让模型自己去学习这两部分的权重平衡。也就是说,我们希望通过可学习的 G,让模型自动学到同号和异号交互之间的一种负相关关系。

我们在实验里看到性能确实提升了,但怎么证明模型真的学习到了这种 “负相关”?

孟博士:对,这个问题还是回到 Figure 3,因为 Figure 3 是个可视化,展示了 (G^s) 和 (G^o) 的权重分布。这个可视化是基于 PCA 做的,因为矩阵本身维度很高,直接看不直观。

你看图片上的结果,整体上 G 的学习是合理的:它们确实学到了一种互补关系。但你也许会发现蓝色部分的点点有点 “乱”,这是因为模型要同时满足两个条件:一是非负约束,二是负相关性。

严格来说,这两个条件是矛盾的,如果完全保证非负,那负相关性就没法保持。

所以我们最后的结论是:G学到的其实是一种 trade-off(权衡)在保证非负性的前提下,尽可能逼近两个分支之间的负相关关系。

绿洲:在论文里你们讨论了两种抬秩方法,一种是深度可分卷积(depthwise convolution, DWC),一种是可形变卷积(deformable convolution, DCN)。最后选择了前者。能不能展开讲一下,为什么会做这个选择?

孟博士:其实卷积的选择不是我们工作的核心创新点,更多是出于工程上的考虑。我们在研究时发现,Linear Attention 的相似度矩阵(similarity matrix)本身容易出现 低秩(low-rank) 的情况。比如序列长度很大,而特征维度 d 相对较小,那么 Q 和 K 相乘得到的矩阵 rank 就会不足。这会导致模型难以学习复杂的关联关系。

所以我们需要一个方法来 “抬秩”,让矩阵的 rank 更高。卷积正好能引入一些局部信息,相当于增加了额外的独立特征,让矩阵更接近满秩(full-rank),这样模型更容易学习。

在选择上,我们尝试了 DCN 和 DWC。DCN 理论上更灵活,但实现和调参都更复杂;而 DWC 在保证效果的同时,计算更简单,效率也更高。所以最后我们选择了 DWC。

但这部分并不是我们的核心贡献,更多其实是借鉴了已有的工作,来解决低秩带来的 V 矩阵学习能力下降问题。

绿洲:在未来,您觉得 Linear Attention 的下一步突破核心应该是什么?

孟博士:我认为注意力机制的表达力已经很强了,核心问题在于效率。尤其是在终端部署、算力受限场景和大模型训练中,开销太大。换句话说,下一步突破口,还是如何在保持表达力的同时,把 Attention 做得更 “轻量化”。

绿洲:在算法和硬件协同(co-design)方面,您怎么看?

孟博士:现在确实也要考虑硬件的限制。比如在实际训练或落地部署时,长序列模型往往放不进单卡 GPU,需要拆分到多卡并行,这就会带来通信开销、梯度同步和显存限制的问题。所以未来 Attention 的优化一定要和硬件一起 co-design,才能真正解决部署瓶颈。

我们研究 Linear Attention,也是希望在这些受限条件下保持效率。比如在视频处理、大语言模型等场景,它的应用潜力都很大。但很多业界的一些常识,比如  MiniMax 的 Flash Attention,其实是做了一种混合模式。他们的做法应该是每 7 层轻量注意力(lightening attention),加 1 层标准 Attention,以 7:1 的比例结合。这种方式牺牲了一些精度,但显著降低了计算和时间开销。

绿洲:那放到产业层面,您觉得 PolaFormer 能为实际应用带来什么变化或增益?

孟博士:目前我们做的实验大多还比较传统,比如图像分类、检测、分割这些 CV 任务。但未来我觉得更值得期待的,是它在长序列和高分辨率场景的应用,比如视频处理、大语言模型(LLAMA 系列等)、高分辨率生成模型上的推理和训练。

我们已经在 LLaMA 上做了一些测试,发现在长上下文(4k 以上)的设定上效率提升很明显,但因为资源和数据限制,目前还没完全做完。我的倾向是把这部分看作后续工作的重点,把它扩展成一个更 general 的模型。

从产业角度来说,长序列文本、高分辨率图像生成这些任务都非常耗时,无论训练还是推理。Linear Attention 能在保证性能下提供一个更轻量的解决方案,我认为它的前景会比标准注意力机制要光明,会降低基于 Transformer 模型的硬件需求并帮助 Transformer 大模型的落地。

补充信息:

孟维康,论文《PolaFormer:Polarity-aware Linear Attention for Vision Transformers》第一作者。现为哈尔滨工业大学(深圳)与鹏城实验室联合培养博士生,本科毕业于哈尔滨工业大学,研究方向聚焦于大规模基础模型的高效训练与推理算法。

孟维康导师为论文通讯作者张正教授,现为哈尔滨工业大学(深圳)长聘教授、博士生导师,教育部“青年长江学者”,广东特支计划“青年珠江学者”,深圳市优青。长期深耕于高效能多模态机器学习领域,尤其专注于高效与可信多模态大模型的前沿探索。

论文链接:https://arxiv.org/pdf/2501.15061

GitHub链接:

https://github.com/ZacharyMeng/PolaFormer

感谢孟博士受邀参与对谈。

绿洲持续诚邀全球一线的研究者、开发者与思考者,共同推动这场关于注意力的探索。

本文来自微信公众号“緑洲资本 Vitalbridge”,作者:参赞生命力,36氪经授权发布。

+1
0

好文章,需要你的鼓励

参与评论
评论千万条,友善第一条
后参与讨论
提交评论0/1000
36氪APP让一部分人先看到未来
36氪
鲸准
氪空间

推送和解读前沿、有料的科技创投资讯

一级市场金融信息和系统服务提供商

聚焦全球优秀创业者,项目融资率接近97%,领跑行业