先这样答
Transformer 的结构可以按数据流来理解:输入先经过嵌入,并加入位置信息。这样,模型得到带有位置信息的输入表示。之后,表示会进入 N 层堆叠的网络。每一层都由多头自注意力和前馈网络组成。两个组件都配有残差连接与归一化。
多头自注意力负责管信息交换。它让当前位置根据输入中的相关信息更新自己的表示。前馈网络负责管特征变换。它对每个位置的表示继续加工,得到新的特征。残差连接与归一化负责管训练稳定。它们会出现在注意力模块和前馈网络对应的结构中。
经过 N 层处理后,输出层把最终表示映射到词表。面试时,我会按“输入嵌入加位置信息、N 层堆叠、输出映射词表”的顺序回答。每层再展开成“多头自注意力加前馈网络”,并补充残差连接与归一化的作用。这样比直接背论文公式更清楚。
面试官会怎么追问
-
「一层 Transformer 具体包含哪些部分?」 一层包含多头自注意力和前馈网络。两个部分都配有残差连接与归一化。注意力负责信息交换,前馈网络负责特征变换。
-
「自注意力和前馈网络的分工是什么?」 自注意力负责管信息交换。它处理输入中不同位置之间的信息关系。前馈网络负责管特征变换。它继续加工每个位置得到的表示。
-
「为什么结构里需要残差连接和归一化?」 残差连接与归一化负责管训练稳定。它们分别配在多头自注意力和前馈网络对应的结构中。回答时,应把它们和两个主要组件一起说明。
回答的坑
- 只说有注意力机制,不说输入嵌入、位置信息、N 层堆叠和输出映射,数据流就没有讲完整。
- 把前馈网络也解释成信息交换,混淆了自注意力与特征变换的分工。
同系列的题
—— 本题完 ——