1
0
jjyaoao 9 сар өмнө
parent
commit
cbd5737b87

+ 3 - 3
docs/chapter3/第三章 大模型基础.md

@@ -382,11 +382,11 @@ class MultiHeadAttention(nn.Module):
 
 **3.1.2.3 前馈神经网络**
 
-在每个 Encoder 和 Decoder 层中,多头注意力子层之后都跟着一个**逐位置前馈网络 (Position-wise Feed-Forward Network, FFN)**。如果说注意力层的作用是从整个序列中“动态地聚合”相关信息,那么前馈网络的作用从这些聚合后的信息中提取更高阶的特征。
+在每个 Encoder 和 Decoder 层中,多头注意力子层之后都跟着一个**逐位置前馈网络(Position-wise Feed-Forward Network, FFN)**。如果说注意力层的作用是从整个序列中“动态地聚合”相关信息,那么前馈网络的作用从这些聚合后的信息中提取更高阶的特征。
 
 这个名字的关键在于“逐位置”。它意味着这个前馈网络会独立地作用于序列中的每一个词元向量。换句话说,对于一个长度为 `seq_len` 的序列,这个 FFN 实际上会被调用 `seq_len` 次,每次处理一个词元。重要的是,所有位置共享的是同一组网络权重。这种设计既保持了对每个位置进行独立加工的能力,又大大减少了模型的参数量。这个网络的结构非常简单,由两个线性变换和一个 ReLU 激活函数组成:
 
-$$\operatorname{FFN}(x)=\max\left(0, xW_{1}+b_{1}\right) W_{2}+b_{2}$$
+$$\mathrm{FFN}(x)=\max\left(0, xW_{1}+b_{1}\right) W_{2}+b_{2}$$
 
 其中,$x$是注意力子层的输出。 $W_1,b_1,W_2,b_2$是可学习的参数。通常,第一个线性层的输出维度 `d_ff` 会远大于输入的维度 `d_model`(例如 `d_ff = 4 * d_model`),经过 ReLU 激活后再通过第二个线性层映射回 `d_model` 维度。这种“先扩大再缩小”的模式,也被称为瓶颈结构,被认为有助于模型学习更丰富的特征表示。
 
@@ -433,7 +433,7 @@ $$PE_{(pos,2i)}=\sin\left(\frac{pos}{10000^{2i/d_{\text{model}}}}\right),$$
 
 $$PE_{(pos,2i+1)}=\cos\left(\frac{pos}{10000^{2i/d_{\text{model}}}}\right)$$
 
-其中:
+其中:
 
 - $pos$ 是词元在序列中的位置(例如,$0$,$1$,$2$,...)
 - $i$ 是位置向量中的维度索引(从 $0$ 到 $d_{\text{model}}/2$)