「技术」Transformer 结构分析
Input Embedding
将 token 转化为向量
Positional Encoding
网络结构不包含位置信息,编码引入
Scaled Dot-Product & Multi-Head Attention
\[ Q=W^QX,K=W^KX,V=W^VX \]
Scaled Dot-Product Attention
\[ \text{Attention}(Q, K, V)=\text{softmax}(\frac{QK^T}{\sqrt{d_k}})V \]
Multi-Head Attention
\[ \begin{aligned} \text{MultiHead}(Q, K, V )&=\text{Concat}(\text{head}_1,\text{head}_2,\cdots,\text{head}_h)W^O\\ \text{where}\ \text{head}_i &=\text{Attention}(QW_i^Q,KW_i^K,VW_i^V) \end{aligned} \]
多头注意力中每个自注意力生成 \(d_k=d_{model}/h\) 维的特征, 使用 Concat + 线性层将各特征混合
Add & Norm
- Add:防止退化
- Norm:防止梯度消失
- shortcut
Feed Forward
全连接层 + ReLU + 全连接层, 增强拟合能力
Mask Multi-Head Attention
在训练时控制词可见性