暑期实习基本结束了,校招即将开启。
不同以往的是,当前职场环境已不再是那个双向奔赴时代了。求职者在变多,HC 在变少,岗位要求还更高了。提前准备才是完全之策。
最近,我们又陆续整理了很多大厂的面试题,帮助一些球友解惑答疑,分享技术面试中的那些弯弯绕绕。
总结链接如下:
- 《大模型面试宝典》(2024版) 正式发布!
从端到端的角度来看,数据在Transformer中的流转可以概括为四个阶段:Embedding(嵌入)、Attention(注意力机制)、MLPs(多层感知机)和Unembedding(从模型表示到最终输出)。
Embedding -> Attention -> MLPs -> Unembedding
下面对第三个阶段MLPs(多层感知机或前馈网络)进行详细介绍:
MLPs(多层感知机)在Transformer中的位置:
-
Transformer的编码器和解码器结构:
(1)Transformer的编码器由多个相同的层堆叠而成,每个层包含两个主要的子层:一个多头自注意力(Multi-Head Self-Attention)机制和一个全连接的前馈神经网络(MLP)。
(2)Transformer的解码器也由多个相同的层堆叠而成,但每个层包含三个主要的子层:一个Masked Multi-Head Self-Attention机制(用于编码器的输出),一个Multi-Head Encoder-Decoder Attention机制(用于结合编码器的输出和解码器的当前位置信息),以及一个全连接的前馈神经网络(MLP)。
Transformer的编码器和解码器结构
- MLP在Transformer中的位置:MLP位于Self-Attention(或Masked Self-Attention)和Multi-Head Attention层之后。
MLP在Transformer中的位置
MLPs(多层感知机)的模型架构:
-
MLPs模型架构:
(1)通常包含两个线性变换层,即一个输入层、一个隐藏层和一个输出层。
(2)在每个线性变换层之间,会应用一个激活函数(如ReLU),以增强模型的非线性表示能力。
(3)数学表达式为,FFN(x) = max(0, xW1 + b1)W2 + b2。
MLPs(多层感知机)在Transformer中的作用:
-
MLP在Transformer中的作用:
(1)非线性变换:MLPs通过引入激活函数(如ReLU)提供非线性变换,这有助于模型捕获输入数据中的复杂模式。
(2)特征提取与整合:MLPs进一步处理和转换注意力机制提取的特征,提取和整合更多有用的信息,使其能够学习更加复杂的函数关系。
-
MLP的两个线性变换层的作用:
(1)第一个线性变换层:增加了输入的维度,以便网络能够学习更复杂的表示。
(2)第二个线性变换层:将维度还原到与输入相同的大小,通过残差连接和层归一化,将MLP的输出与原始输入相加并进行归一化,以确保稳定的训练过程。
MLP在Transformer中的作用
Transformer无限循环操作Attention + MLP:
- Transformer操作的本质:海量的矩阵乘法。大模型比拼的就是算力,背后大佬就是万卡集群(GPU集群)。
Transformer操作的本质
- 无限循环Attention + MLP:Attention模块和多层感知机(MLP)模块之间不断切换,直到输出完全融入到序列的最后一个向量。
无限循环Attention + MLP