Linear Transformer 模型 ======================= 切换语言: :doc:`../en/LinearTransformerModel` ``M7`` 是标准 Transformer 的线性注意力替代路线。 核心动机 +++++++++++++++++++++++++++++ 标准注意力对序列长度是二次复杂度。对基因组长序列来说,这很容易成为瓶颈。 Linear Transformer 用核函数化近似替代 softmax 注意力,希望在保留全局交互风格的 同时,把复杂度更好地控制在线性时间风格。 项目中的实现特点 +++++++++++++++++++++++++++++ - 输入:one-hot 序列投影到模型空间 - 位置编码:正弦位置编码 - 注意力:ELU+1 核函数映射 - 池化:对序列位置做均值池化 它的关键近似,是把 softmax 注意力改写为核特征映射形式: .. math:: \mathrm{Attn}(Q, K, V) \approx \frac{\phi(Q)\big(\phi(K)^\top V\big)} {\phi(Q)\big(\phi(K)^\top \mathbf{1}\big)} 其中 :math:`\phi(\cdot)` 是诸如 ELU+1 这样的正值核映射。这样就能重排计算顺序, 使复杂度对序列长度呈线性时间风格增长。 为什么它对 EPI 有意义 +++++++++++++++++++++ 这个模型实际在问一个很重要的问题:是否能在保留注意力全局交互气质的同时, 比标准 Transformer 更适合处理超长 DNA 序列。 这对基因组任务很关键,因为长程调控依赖恰恰出现在序列很长的区域,而完整二次注意力 也正是在这个长度区间开始变得昂贵。 优势 +++ - 比标准注意力更适合长序列扩展; - 不必强依赖 CNN 前端先压缩 token; - 很适合做长程序列建模比较。 计算复杂度与适用范围 +++++++++++++++++++++ - 时间复杂度:通过线性化注意力把长度依赖降到近似线性风格,避免完整 :math:`T^2` 注意力图。 - 显存特征:比标准 Transformer 更友好,因为不需要显式物化完整 token 两两矩阵。 - 适用范围:适合长窗口序列,并且仍然希望保留注意力式全局交互气质的场景。 局限 +++ - 线性化注意力本质上是近似,不是完整 softmax 注意力的严格等价物; - 近似是否足够好,取决于任务关心的交互是否被保留下来。 .. image:: ../img/div.png