Transformer 模型
切换语言: Transformer Model
M6 是项目中的标准 Transformer 编码路线。
为什么标准 Transformer 仍然必须存在
即便已经有很多更新的变体,标准 Transformer 仍然是关键参考,因为它提供:
显式的全局 token-to-token 交互;
最容易理解的注意力基线;
用于比较 Linear Transformer、iTransformer、MAE 的中心参照点。
结构概览
输入:one-hot 序列
前端:先用 CNN 做降采样
token 形式:压缩后的序列加 CLS token
编码器:堆叠 TransformerEncoderLayer
输出:CLS 表示
它的核心注意力算子可以写成:
这意味着每个 token 都会根据内容,自适应地汇总其他 token 的信息,因此 Transformer 才会成为最标准的全局交互模型。
为什么 CNN 前端重要
如果直接对 10kbp 单碱基序列做二次复杂度注意力,代价会很高。CNN 前端先压缩 token 数,可以让模型保留全局注意力优势,同时避免在原始长度上直接支付完整二次代价。
从功能上看,CNN 前端扮演的是局部压缩器:先把 motif 级局部信号提炼成更短的 token 序列,再让注意力层在这些压缩单元之间建模更大范围依赖。
优势 +++
全局交互表达能力强;
是最标准的注意力比较基线;
也为 MAE 预训练路线提供了天然基础。
计算复杂度与适用范围
时间复杂度:标准自注意力对 token 数是二次复杂度,近似为 \(O(T^2 \cdot d)\), 这也是前端先用 CNN 压缩 token 的根本原因。
显存特征:注意力图同样随 token 数二次增长,是长序列输入时的主要瓶颈。
适用范围:适合压缩后 token 长度仍然可控、而显式全局交互确实值得为之付出代价的情况。
局限 +++
相比线性时间路线仍然更重;
依赖降采样,可能压缩掉部分细粒度信息。