赞
踩
Transformer架构解析\n整体架构\nTranformer的整体结构如下图所示,主要包括编码器和解码器两部分组成。对于输入序列在嵌入的基础上加入了位置编码引入了序列的位置信息。编码器和解码器的基本构成结构类似,主要包含注意力模块、前向模块和归一化模块,由 Input Embedding 和 Positional Embedding 求和输入Multi-Head-Attention,然后做了一个ADD&Norm,再通过Feed Forward进行输出。\n\n\n\n自注意力机制\n自注意力机制是Transformer架构的核心要素,通过对序列引入了注意力的加权,提高了模型的性能,使得模型在预测时关注序列适当的部分。在计算的时候需要用到矩阵Q(查询)、K(键值)、V(值),Q、K、V通过W Q W_QW \nQ\n\t\n 、W K W_KW \nK\n\t\n 、W V W_VW \nV\n\t\n 与输入X的点积获得并在训练过程中被学习,在计算获得Q,K,V后可以通过下述方式计算注意力权重,公式中除以d k \\sqrt d_k \nd\n\t\n \nk\n\t\n ,主要是为了保持权重不过快饱和,维持权重方差在合适范围不会增长过快。\n\n\n\n多头注意力模块\n单个注意力的表达能力是有限的,因此在这基础上可以堆叠多个注意力,侧重关注不同的部分,形成了多头注意力模块。多头注意力包含多个自注意力层,首先将输入X分别传递到h个不同的自注意力层中,计算得到h个输出矩阵Z,多头注意力模块将它们拼接在一起,然后传入一个线性层,得到多头注意力模块最终的输出Z。\n\n\n\n前向层模块\n前向层模块比较简单,是一个两层的全连接层,第一层的激活函数为RELU,第二层不使用激活函数,通过线性变换,先将数据映射到高纬度的空间再映射到低纬度的空间,提取了更深层次的特征。\n\n\n\nADD&Norm模块\nAdd & Norm层由Add和Norm两部分组成,Add指X+MultiHeadAttention(X),是一种残差连接,通常用于解决多层网络训练的问题,可以让网络只关注当前差异的部分,在ResNet中经常用到,Norm指Layer Normalization,通常用于RNN结构,Layer Normalization会将每一层神经元的输入都转成均值方差都一样的,这样可以加快收敛。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。