范式异化与真理归一:基于贾子理论重构认知秩序、反思现代学术体系结构性危机
2026/7/31 5:30:58
| 维度 | RNN / LSTM / GRU | Self-Attention |
|---|---|---|
| 路径长度 | O(n) 顺序传递 | O(1) 直接连接 |
| 并行性 | 必须逐步计算,无法并行 | 所有位置同时计算 |
| 长距离依赖 | 信息随步数衰减 | 任意两位置直接交互 |
| 最大路径长度 | O(n) | O(1) |
| 每层复杂度 | O(n · d²) | O(n² · d) |
RNN (必须串行): h_1 → h_2 → h_3 → h_4 → ... → h_n ● ● ● ● ● t=1 t=2 t=3 t=4 t=n 必须等 h_{t-1} 算完才能算 h_t → 无法并行 序列越长,等待越久 Self-Attention (全并行): h_1 h_2 h_3 h_4 ... h_n │ │ │ │ │ └────┴────┴────┴─────┬─────┘ │ 一次性计算所有位置 Q, K, V 矩阵乘法 → GPU 高效并行实际影响:训练速度数量级提升,这是 Transformer 能在大规模数据上训练的关键前提。
句子: "The cat, which already ate fish, was full." RNN 传递链: cat → which → already → ate → fish → was → full ● ● ● ● ● ● ● │─────│───────│─────────│──────│──────│─────│ 信息从 "cat" 传到 "full" 需经过 5 步 每步经过 tanh/sigmoid 门控 → 信息逐步衰减 距离越远,保留的信息越少Self-Attention 注意力矩阵 (每个位置直接关注所有位置): cat which already ate fish was full cat [ ● . . . . . . ] full [ ● . . . . . . ] ↑ ↑ "full" 直接关注 "cat" → 路径长度 = 1 任意两个位置之间: 只需一次注意力计算即可交互RNN: 位置 i 到位置 j 的信息路径 = |i - j| 步 → 距离 100 的两个词需要 100 步传递 Self-Attention: 位置 i 到位置 j 的信息路径 = 1 步 → 任意距离都是直接连接 多层堆叠: L 层 Self-Attention → 最大路径长度 = O(L) L 层 RNN → 最大路径长度 = O(L × n)RNN: 整个序列 → 压缩进最终隐状态 h_n → 一个固定向量 → 长序列早期信息被"冲刷" Self-Attention: 每个位置都保留独立的表示 → 通过注意力矩阵动态聚合所需信息 → 无信息压缩瓶颈RNN: 隐状态是黑盒,难以解释词间关系 Self-Attention: 注意力权重矩阵直接可视化词间依赖 例: "The animal didn't cross the street because it was tired" ↑ 注意力可视化: "it" 对 "animal" 的权重最高 → 指代消解可解释Step 1: 每个位置生成 Q, K, V 位置 i: Q_i = X_i · W_Q 位置 j: K_j = X_j · W_K, V_j = X_j · W_V Step 2: 任意两位置直接计算相似度 S[i,j] = Q_i · K_j^T / √d_k → 不受 |i - j| 距离影响 Step 3: 加权聚合 Output_i = Σ_j softmax(S[i,j]) · V_j → 位置 i 直接从位置 j 提取信息,无论 j 有多远Layer 1: 每个位置直接关注所有位置 → 捕捉直接依赖 Layer 2: 在 Layer 1 的输出上再次注意力 → 捕捉间接依赖 Layer L: 通过 L 层堆叠,捕捉 L 跳的复合关系 例: "The cat that the dog chased ran away" Layer 1: "ran" 关注 "cat" (主谓) Layer 2: "ran" 通过 "cat" 间接关联 "dog" (复杂句法)Self-Attention 本身是排列不变的 (permutation-invariant) → 不感知位置顺序 位置编码注入位置信息: PE(pos, 2i) = sin(pos / 10000^{2i/d}) PE(pos, 2i+1) = cos(pos / 10000^{2i/d}) → 使模型能区分词序,结合注意力机制捕捉带位置感知的长距离依赖优势: ✓ 并行计算 → 训练快 ✓ 长距离依赖 → 路径 O(1) ✓ 可解释 → 注意力可视化 代价: ✗ 计算复杂度 O(n²·d) → 序列长度平方增长 ✗ 内存复杂度 O(n²) → 注意力矩阵 n×n ✗ 短序列时 O(n²·d) > O(n·d²),RNN 反而更高效 序列长度 n vs 维度 d: n < d → RNN 更高效 n > d → Self-Attention 更高效 (通常 d=512, n 可达数千)信息流路径: RNN: i ──→ ──→ ──→ ──→ ──→ j O(n) 步 ● ● ● ● ● ● Self-Attn: i ──────────────────────→ j O(1) 步 ● ● └──── 直接注意力连接 ──────┘Self-Attention 通过让序列中任意两个位置直接计算注意力,将信息交互路径从 RNN 的 O(n) 降为 O(1),彻底解决了长距离依赖衰减问题;同时所有位置可并行计算,大幅提升训练效率,代价是 O(n²) 的计算和内存复杂度。