论文下载链接:https://arxiv.org/pdf/2202.08791.pdf
代码链接:https://github.com/OpenNLPLab/cosFormer

1. 动机

Transformer 在自然语言处理、计算机视觉和音频处理方面取得了巨大的成功。作为其核心组件之一,softmax 注意力有助于捕获长程依赖关系,但由于序列长度的二次空间和时间复杂度,从而禁止其扩展。为了降低计算复杂度,通常采用核(Kernel)方法通过逼近 softmax 算子来降低复杂度。然而,由于近似误差的存在,它们在不同任务/语料库中的性能存在差异,与普通的softmax注意力相比,其性能出现了下降。
作者认为softmax算子似乎是主要的障碍,而高效而准确地逼近softmax是很难实现的,一个问题自然出现了:我们能否用一个线性函数代替softmax算子,同时保持其关键属性?

2. 方法

本文提出cosFormer的线性变压器,其核心是将不可分解的非线性softmax操作替换为带有可分解的非线性重加权机制的线性操作。该模型既适用于随机注意力,也适用于交叉注意力,且输入序列长度具有线性时间和空间复杂度,因此对长期依赖关系的建模能力较强。