版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Transformer网络主讲:XXX时间:2026/8/30目录CONTENTS01经典注意力机制02Transformer架构03视觉Transformer模型经典注意力机制AIPARTONE背景介绍在2015年的ICLR会议上,论文《NEURALMACHINETRANSLATIONBYJOINTLYLEARNINGTOALIGNANDTRANSLATE》中提出了关于注意力机制的一些初步想法。在2016年的ICLR会议上,论文《FEED-FORWARDNETWORKSWITHATTENTIONCANSOLVESOMELONG-TERMMEMORYPROBLEMS》正式提出了注意力机制。为什么要关注“注意力”?注意力机制的核心思想是引导模型有选择地关注输入中的关键信息,从而提升对全局依赖关系的建模能力。生活类比:人类面对复杂信息时,往往选择关注与当前任务相关的部分,以减轻认知负担并提高处理效率。注意力机制正是模拟这一行为——动态分配“注意力权重”,帮助模型明确重点区域,过滤冗余信息。SE注意力机制(Squeeze-and-Excitation)
SE注意力机制(Squeeze-and-Excitation)2.激励(Excitation):通过一个或多个全连接层,利用压缩后的信息学习每个通道的重要性,输出一个权重系数。该权重系数可以通过激活函数(如Sigmoid)进行归一化。具体而言,通过全连接层和激活函数(如ReLU)来学习每个通道的权重向量。首先将Z输入一个全连接层FC(用于降低维度),然后应用ReLU激活,再输入另一个全连接层FC(用于恢复维度),最终通过Sigmoid函数得到通道的权重向量:权重向量S是每个通道的权重系数,值在0到1之间。SE注意力机制(Squeeze-and-Excitation)
SE注意力机制(Squeeze-and-Excitation)SE注意力机制即插即用,可嵌入任意网络结构中如ResNet、Inception等。左图是将SE模块嵌入到Inception结构的一个示例。方框旁边的维度信息代表该层的输出。这里文章使用globalaveragepooling作为Squeeze操作。紧接着两个FullyConnected层组成一个Bottleneck结构去建模通道间的相关性,并输出和输入特征同样数目的权重。首先将特征维度降低到输入的1/16,然后经过ReLu激活后再通过一个FullyConnected层升回到原来的维度。这样做比直接用一个FullyConnected层的好处在于:具有更多的非线性,可以更好地拟合通道间复杂的相关性;极大地减少了参数量和计算量。然后通过一个Sigmoid的门获得0~1之间归一化的权重,最后通过一个Scale的操作来将归一化后的权重加权到每个通道的特征上。SE注意力机制(Squeeze-and-Excitation)SE注意力机制即插即用,可嵌入任意网络结构中如ResNet、Inception等。除此之外,SE模块还可以嵌入到含有skip-connections的模块中。左图是将SE嵌入到ResNet模块中的一个例子,操作过程基本和SE-Inception一样,只不过是在Addition前对分支上Residual的特征进行了特征重标定。如果对Addition后主支上的特征进行重标定,由于在主干上存在0~1的scale操作,在网络较深BP优化时就会在靠近输入层容易出现梯度消散的情况,导致模型难以优化。通过在原始网络结构的
buildingblock单元中嵌入SE模块,可以获得不同种类的SENet。如SE-BN-Inception、SE-ResNet、SE-ReNeXt、SE-Inception-ResNet-v2等等。SE注意力机制(Squeeze-and-Excitation)为了验证SENets的有效性,模型将在ImageNet数据集上进行实验,并从两个方面来进行论证。一个是性能的增益vs.网络的深度;另一个是将SE嵌入到现有的不同网络中进行结果对比。首先来看网络的深度对SE的影响。上表分别展示了ResNet-50、ResNet-101、ResNet-152的结果。第一栏Original是原作者实现的结果,为了进行公平的比较,文章在ROCS上重新进行了实验得到Ourre-implementation的结果。最后一栏SE-module是指嵌入了SE模块的结果,它的训练参数和第二栏Ourre-implementation一致。括号中的数值是指相对于Ourre-implementation的精度提升的幅值。从上表可以看出,SE-ResNets在各种深度上都远远超过了其对应的没有SE的结构版本的精度,这说明无论网络的深度如何,SE模块都能够给网络带来性能上的增益。值得一提的是,SE-ResNet-50可以达到和ResNet-101一样的精度;更甚,SE-ResNet-101远远地超过了更深的ResNet-152。SE注意力机制(Squeeze-and-Excitation)另外,为了验证SE模块的泛化能力,论文也在除ResNet以外的结构上进行了实验。从上表可以看出,将SE模块嵌入到ResNeXt、BN-Inception、Inception-ResNet-v2上均获得了不菲的增益效果。由此看出,SE的增益效果不仅仅局限于某些特殊的网络结构,它具有很强的泛化性。SE注意力机制(Squeeze-and-Excitation)在上表中文章列出了一些最新的在ImageNet分类上的网络的结果。SENet实质上是一个SE-ResNeXt-152(64x4d),在ResNeXt-152上嵌入SE模块。可以看出SENet获得了在single-crop上最好的性能。CBAM(ConvolutionalBlockAttentionModule)
CBAM(ConvolutionalBlockAttentionModule)
CBAM(ConvolutionalBlockAttentionModule)
CBAM(ConvolutionalBlockAttentionModule)
CBAM(ConvolutionalBlockAttentionModule)CBAM注意力机制也是即插即用的,可嵌入任意网络结构中,下图是CBAM与ResNet中的ResBlock集成图。这张图显示了模块在ResBlock中集成后的精确位置。这里对每个模块的卷积输出应用CBAM。CBAM(ConvolutionalBlockAttentionModule)原文献中进行了较多的对比实验,旨在验证注意力模块的积极作用。上图为不同通道注意力方法的比较。我们可以观察到,使用文献提出方法表现优于之前提出SE方法。这里仅使用ChannelAttention,对比的是使用AvgPool、MaxPool以及都使用时的性能CBAM(ConvolutionalBlockAttentionModule)如左图所示,文献比对了不同空间注意力方法。将提出的通道池化(即沿通道轴进行平均池化和最大池化)与接下来卷积操作的大核大小7一起使用,表现最好。这里仅使用SpatialAttention,对比的是不同Avg,Max以及kernel_size的性能差异。也对比了不同组合通道注意力和空间注意力的方法性能。使用两种注意力都能降低错误率,而最佳的结合策略(即顺序,先通道)可以进一步提高准确性。CBAM(ConvolutionalBlockAttentionModule)上图为CBAM,SE,Baseline等最后一层卷积层使用Gradcam进行可视化的对比图,可以看到CBAM是真正地提取出了积极有效的特征。自注意力机制(Self-Attention)自注意力机制的核心思想是输入的每个元素都可以和其他所有元素进行交互,以获得更丰富的特征表示。它能够动态地为每个元素分配权重,使得模型在处理信息时能够聚焦重要的部分。全连接层虽然可以通过滑动窗口的方式捕捉局部上下文,但在处理长序列或需要全局信息的任务中,效果有限。Self-Attention机制能够动态计算输入序列中每个元素之间的相关性,从而在生成输出时同时考虑整个序列的上下文信息。这种机制不受固定窗口的限制,能够更好地捕捉远距离依赖。
自注意力机制(Self-Attention)
自注意力机制(Self-Attention)
QKTQKT1234123412341234Softmax12341234自注意力机制(Self-Attention)
多头自注意力(Multi-HeadSelf-Attention)
TransformerAIPARTTWO背景介绍Transformer是由Google研究人员在2017年NIPS会议上发表的论文《AttentionIsAllYouNeed》中提出的一种用于seq2seq任务的模型。它不含RNN的循环结构,也不含CNN的卷积结构,完全基于注意力机制构建。在机器翻译等任务中取得了显著的性能提升。Transformer的提出是为了解决传统序列建模模型的效率低、长依赖捕捉弱等核心问题,同时顺应了硬件并行计算的发展趋势和NLP复杂任务的需求,而此前注意力机制等技术的积累,也为其提供了坚实的理论支撑。背景介绍2018年10月,Google发出一篇论文《BERT:Pre-trainingofDeepBidirectionalTransformersforLanguageUnderstanding》,BERT模型横空出世,并横扫NLP领域11项任务的最佳成绩!而在BERT中发挥重要作用的结构就是Transformer,之后又相继出现XLNET,roBERT等模型击败了BERT,但是他们的核心没有变,仍然是Transformer。Transformer的编码器-解码器架构Transformer模型与传统的Seq2Seq模型类似,都基于编码器-解码器架构。如左图所示,输入序列“我是土豆”首先通过左边的编码器进行处理,得到一个中间表示,然后中间表示被送入右边的解码器,最终输出对应的翻译结果“Iamapotato”。Encoder和Decoder都包含6个block。同样是中英文翻译的例子,输入是“我是一名学生”,输出是“Iamastudent”,整个翻译过程就是通过Encoder处理输入序列,再由Decoder生成输出序列来完成的。编码器-解码器架构Transformer的编码器-解码器架构与Sq2Seq模型不同,Transformer采用了堆叠的多头自注意力机制和全连接层。此外,Transformer模还引入了一些关键的新技术,比如Trnsformer块、相加及归一化操作以及位置编码。具体来说,Transformer使用Transformer块来替代Seq2Seq模型中的RNN。
如左图所示,在输入被传入Transformer之前,需要先进行位置编码处理。Transformer模型的编码器和解码器由多个相同的Transformer块堆叠而成,每个Transformer块包含两个核心部多头自注意力机制和前馈神经网络。此外,在每个块的输出之后,都会进行相加及归一化操用于归一化和稳定训练过程。Transformer的整体流程
为什么需要位置编码?具体而言,我们需要获取输入句子的每一个单词的表示向量X,X由单词的Embedding(Embedding就是从原始数据提取出来的Feature)和单词位置的Embedding相加得到。Embedding是一种把文本、图片、音频等数据转换为计算机能理解的数字向量的技术。自然语言中的单词是离散的符号,计算机无法直接处理,所以需要通过词嵌入技术把它们转换成数值向量。只要是使用深度学习模型处理NLP问题,在模型中就需要添加Embedding层。Transformer的整体流程manwomankingqueen单词数据词嵌入WordEmbedding数值向量0.6-0.30.90.8-0.2-0.8-0.90.60.20.9-0.90.2-0.5-0.60.5-0.50.70.80.9-0.6-0.60.5-0.10.8-0.70.8-0.4-0.9Transformer的整体流程manwomankingqueen词语:词表索引:133456850010000维度的one-hot向量[1,0,0,0,…][0,0,1,0,…][0,0,0,0,…][0,0,0,0,…]One-Hot编码是一种简单而直观的文本表示方法。它将每个单词表示为一个二进制向量,其中向量的长度等于词汇表的大小,而向量中只有一个位置为1,其余位置为0。1的位置由词语的词表索引决定。但随着单词数量的增加,编码的维度也会增加。不仅纬度高,且非常稀疏,单词向量之间都是正交的,没有任何语义关系。假设词表中有10000个单词one-hot编码manwomankingqueen[1,0,0,0,…][0,0,1,0,…][0,0,0,0,…][0,0,0,0,…]高维稀疏向量词嵌入(如word2vec)0.6-0.30.90.8-0.2-0.8-0.90.60.20.9-0.90.2-0.5-0.60.5-0.50.70.80.9-0.6-0.60.5-0.10.8-0.70.8-0.4-0.9低微连续向量浮点数词嵌入技术:有效将自然语言词语转换为数值向量表达词语之间的语义关系为更高级的NLP任务提供坚实基础Transformer的整体流程WordEmbeddingTransformer中除了单词的Embedding,还需要使用位置Embedding表示单词出现在句子中的位置。因为Transformer不采用RNN的结构,而是使用全局信息,不能利用单词的顺序信息,而这部分信息对于NLP来说非常重要。所以Transformer中使用位置Embedding保存单词在序列中的相对或绝对位置。位置编码通常表示为一个与输入序列长度和模型维度相关的矩阵。该矩阵会与词嵌入矩阵逐元素相加,从而为每个词向量显式地注入其在序列中的位置信息。在多种位置编码方式中,最常用的方式之一是固定位置编码(SinusoidalPositionEncoding),它基于可解析的三角函数构造,具有良好的可解释性,并能够自然地泛化到不同长度的输入序列上,因此被广泛应用于各类Transformer模型中。固定位置编码使用了正弦函数和余弦函数的组合,其公式如下:其中,pos表示位置索引,取值范围为0,1,2,…,N-1;i表示维度索引,取值范围为0,1,2,…,D-1;D是位置编码的维度,与输入的词嵌入的维度相同。2i表示偶数的维度,2i+1表示奇数维度。Transformer的整体流程与Sq2Seq模型不同,Transformer采用了堆叠的多头自注意力机制和全连接层。此外,Transformer模还引入了一些关键的新技术,比如Trnsformer块、相加及归一化操作以及位置编码。具体来说,Transformer使用Transformer块来替代Seq2Seq模型中的RNN。
如左图所示,在输入被传入Transformer之前,需要先进行位置编码处理。Transformer模型的编码器和解码器由多个相同的Transformer块堆叠而成,每个Transformer块包含两个核心部多头自注意力机制和前馈神经网络。此外,在每个块的输出之后,都会进行相加及归一化操用于归一化和稳定训练过程。Transformer的整体流程
与Sq2Seq模型不同,Transformer采用了堆叠的多头自注意力机制和全连接层。此外,Transformer模还引入了一些关键的新技术,比如Trnsformer块、相加及归一化操作以及位置编码。具体来说,Transformer使用Transformer块来替代Seq2Seq模型中的RNN。
如左图所示,在输入被传入Transformer之前,需要先进行位置编码处理。Transformer模型的编码器和解码器由多个相同的Transformer块堆叠而成,每个Transformer块包含两个核心部多头自注意力机制和前馈神经网络。此外,在每个块的输出之后,都会进行相加及归一化操用于归一化和稳定训练过程。Transformer的整体流程
Transformer的整体流程
Transformer的整体流程
Transformer的整体流程Decoderblock的第一个Multi-HeadAttention采用了Masked操作,因为在翻译的过程中是顺序翻译的,即翻译完第i个单词,才可以翻译第i+1个单词。通过Masked操作可以防止第i个单词知道i+1个单词之后的信息。Decoder输出:Iamastudent<end>Decoder输入:<Begin>IamastudentDecoderTransformer的整体流程Decoderblock的第一个Multi-HeadAttention采用了Masked操作,因为在翻译的过程中是顺序翻译的,即翻译完第i个单词,才可以翻译第i+1个单词。通过Masked操作可以防止第i个单词知道i+1个单词之后的信息。Decoder输出:Iamastudent<end>Decoder输入:<Begin>IamastudentDecoderTransformer的整体流程第一步:Decoder的输入矩阵和Mask矩阵,输入矩阵包含“<Begin>Iamastudent”(0,1,2,3,4)五个单词的表示向量,Mask是一个5×5的矩阵(和QKT维度一致)。在Mask可以发现单词0只能使用单词0的信息,而单词1可以使用单词0,1的信息,即只能使用之前的信息。01234输入矩阵01234Mask矩阵01234不遮挡遮挡Transformer的整体流程第二步:和之前的Self-Attention一样通过输入矩阵X计算得到Q,K,V矩阵。然后计算Q和KT的乘积QKT。QKTQKT01234012340123401234Transformer的整体流程第三步:在得到QKT之后需要进行Softmax,计算attentionscore,我们在Softmax之前需要使用Mask矩阵遮挡住每一个单词之后的信息。QKT0123401234Mask矩阵按位相乘MaskQKT01234012340123401234得到MaskQKT之后在MaskQKT上进行Softmax,每一行的和都为1。但是单词0在单词1,2,3,4上的attentionscore都为0。Transformer的整体流程第四步:使用MaskQKT与矩阵V相乘,得到输出Z,则单词1的输出向量z1是只包含单词1信息的。MaskQKT0123401234通过上述步骤就可以得到一个MaskSelf-Attention的输出矩阵Zi,然后和Encoder类似,通过Multi-HeadAttention拼接多个输出Zi然后计算得到第一个Multi-HeadAttention的最终输出,最终输出与输入X维度一样。VZz1z2z3z4z0Transformer的整体流程
Transformer的整体流程01234最终输出ZDecoderblock最后的部分是利用Softmax预测下一个单词,在之前的网络层我们可以得到一个最终的输出Z,因为Mask的存在,使得单词0的输出z0只包含单词0的信息。Softmax根据输出矩阵的每一行预测下一个单词。只包含单词0的信息包含单词0,1,2,3,4的信息01234Softmax预测单词1Softmax预测单词2Softmax预测单词3Softmax预测单词4Softmax预测单词5参考文献[1]HuJ,ShenL,SunG.Squeeze-and-excitationnetworks
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026及未来5年中国多层复合地板数据监测研究报告
- 2026年新教师师德修养与职业认同课件(知识竞赛版)
- 2026事业单位工勤技能-湖南-湖南电工四级(中级工)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-湖南-湖南堤灌维护工四级(中级工)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-湖北-湖北计算机文字录入处理员四级(中级工)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-湖北-湖北房管员五级(初级工)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-湖北-湖北不动产测绘员二级(技师)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-海南-海南机械冷加工一级(高级技师)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-海南-海南公路养护工四级(中级工)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-浙江-浙江水文勘测工一级(高级技师)历年参考题库含答案详解3套试卷
- 2026云南曲靖国金资本运营集团有限公司招聘3人笔试历年常考点试题专练附带答案详解
- 海湾 GST-GM9000图形显示装置软件用户手册F2.480.067YC Ver3.01
- GB/T 13320-2025钢质模锻件金相组织评级图及评定方法
- 2026中国资源循环集团电池有限公司招聘4人备考题库及一套参考答案详解
- JJG(交通) 111-2012 前插式激光测距自动弯沉仪
- 《化工企业可燃液体常压储罐区安全管理规范》解读课件
- 高中高三数学解析几何专项课件
- GB/T 46623-2025金属增材制造成形件机械性能与其取样方向、位置的相关性
- 2025至2030中国生物质燃气设备行业市场发展分析及发展前景与投资报告
- 小儿败血症课件
- 危楼拆除安全培训课件
评论
0/150
提交评论