Transformer之编码器

这篇博客深入探讨了Transformer模型的构建原理,包括其并行训练的优势、位置嵌入的实现方式以及自注意力机制的工作机制。位置嵌入通过sine和cosine函数为模型提供位置信息,而自注意力机制则允许模型在编码过程中捕捉到词与词之间的关系。此外,博客还介绍了多头注意力和残差连接在Transformer中的作用,以克服注意力集中在自身位置的问题,加速训练过程。
摘要由CSDN通过智能技术生成

Bert是从transformer中衍生出来的预训练的模型,transformer模型已经得到广泛应用,应用的方式是先进行预训练语言模型,然后把预训练的模型适配给下游任务,以完成各种不同的任务,比如分类,生成,标记等。

1.transformer编码器

transform和LSTM最大的区别:LSTM的训练是迭代的,一个接一个字的进行训练。transform的训练是并行的,所有的字全部同时训练,这样就大大加快了计算效率,该模型使用了位置嵌入来对语言的顺序进行理解,使用子注意力机制和全连接层来进行计算。

transform模型主要分为两个部分,分别是编码器和解码器。编码器负责把自然语言序列映射称为隐藏层(含有自然语言序列的数学表达),然后解码器把隐藏层在映射为自然语言序列。

transformer由self-atention和feedforwoard neural network组成

简单步骤:

1.输入自然语言序列到编码器

2.编码器输出的隐藏层,在输入到解码器

3.启动解码器

4. 得到第一个字

5.将第一个字落下来再输入到解码器,得到第二个字

6.重复此过程,直到解码器输出终止符,序列生成完成。

1.1位置嵌入

由于transform模型没有循环神经网络的迭代,必须提供每个字的位置信息给transformer才能识别处语言中的顺序关系。

定义一个位置嵌入的概念,位置嵌入的维度为[max sequence length ,embedding dimension],嵌入的维度同词向量的维度,max sequence length属于超参数,指的是限定的最大单个句长。

我们一般以字为单位训练transformermoxing,不适用分词,首先要初始化字向量为[vocab size,embedding dimension].vocab size为总共的字库数量,embedding dimension为字向量的维度也就是每个字的数学表达。

论文中使用sine和consine函数的线性变换来提供给模型位置信息。pos指的是句中字的位置,取值范围是[0,max sequence length],i指的是词向量的维度,取值范围是[0,emdedding dimension].对应着emdedding dimension维度的一组奇数和偶数的序号的维度,分别使用上面的sin和cos函数做处理,从而产生不同的周期性变化,而位置嵌入在embedding dimension维度上随着维度序号的增大,周期变化会越来越慢,从而产生一种包含位置信息的纹理,位置嵌入函数的周期从2\pi -10000*2\pi变化,而每一个位置在embedding dimension维度上都会得到不同周期的sin和cos函数的取值组合,从而产生独一的纹理位置信息,模型从学到位置之间的依赖关系和自然语言的时序特性。


                
  • 7
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VIT(Vision Transformer)是一种基于Transformer结构的视觉编码器模型。它将图像分割为一系列的图像块(patches),然后将这些图像块转换为序列数据,再通过Transformer模型进行处理。 VIT的编码器结构主要包括以下几个部分: 1. 图像块分割:将输入图像分割为固定大小的图像块,通常是将图像划分为非重叠的块。 2. 嵌入层(Embedding):将每个图像块映射到一个低维特征向量,常用的方式是通过一个线性变换将每个图像块的像素值转换为一个固定大小的向量。 3. 位置编码(Positional Encoding):为了保留序列的位置信息,在嵌入特征向量中添加位置编码,使得不同位置的图像块可以在模型中进行区分。 4. Transformer编码器层:VIT使用多层Transformer编码器来处理嵌入特征向量序列。每个Transformer编码器层由多头自注意力机制(Multi-head Self-Attention)、前馈神经网络(Feed-Forward Neural Network)和残差连接(Residual Connections)组成。 5. 全局平均池化(Global Average Pooling):为了得到整个图像的表示,对最后一个Transformer编码器层的输出进行全局平均池化操作,将序列数据转换为一个固定维度的向量表示。 6. 分类层:将全局平均池化的输出连接到一个分类层(通常是一个全连接层),用于进行最终的分类预测。 总结起来,VIT的编码器结构可以看作是将图像块分割、嵌入、位置编码和多层Transformer编码器结合起来,最后通过全局平均池化和分类层进行预测。这种结构使得VIT能够在视觉任务中取得很好的性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值