万字长文解读深度学习——Transformer

说明:
**💡💡💡本文后续更新和完善将在新账号展开,请移步新地址:
深度学习笔记——Transformer
**


历史文章

机器学习

机器学习笔记——损失函数、代价函数和KL散度
机器学习笔记——特征工程、正则化、强化学习
机器学习笔记——30种常见机器学习算法简要汇总
机器学习笔记——感知机、多层感知机(MLP)、支持向量机(SVM)
机器学习笔记——KNN(K-Nearest Neighbors,K 近邻算法)
机器学习笔记——朴素贝叶斯算法
机器学习笔记——决策树
机器学习笔记——集成学习、Bagging(随机森林)、Boosting(AdaBoost、GBDT、XGBoost、LightGBM)、Stacking
机器学习笔记——Boosting中常用算法(GBDT、XGBoost、LightGBM)迭代路径
机器学习笔记——聚类算法(Kmeans、GMM-使用EM优化)
机器学习笔记——降维

深度学习

深度学习笔记——优化算法、激活函数
深度学习——归一化、正则化
深度学习——权重初始化、评估指标、梯度消失和梯度爆炸
深度学习笔记——前向传播与反向传播、神经网络(前馈神经网络与反馈神经网络)、常见算法概要汇总
深度学习笔记——卷积神经网络CNN
深度学习笔记——循环神经网络RNN、LSTM、GRU、Bi-RNN
深度学习笔记——Transformer
深度学习笔记——3种常见的Transformer位置编码
深度学习笔记——GPT、BERT、T5
深度学习笔记——ViT、ViLT
深度学习笔记——DiT(Diffusion Transformer)
深度学习笔记——多模态模型CLIP、BLIP
深度学习笔记——AE、VAE
深度学习笔记——生成对抗网络GAN
深度学习笔记——模型训练工具(DeepSpeed、Accelerate)
深度学习笔记——模型压缩和优化技术(蒸馏、剪枝、量化)

文章目录

在这里插入图片描述

初识Transformer

Transformer 是一种革命性的神经网络架构,最早由 Vaswani 等人在 2017 年提出,它彻底改变了自然语言处理(NLP)的领域。与传统的递归神经网络(RNN)和长短期记忆网络(LSTM)不同,Transformer不依赖于序列的时间步 ,而是通过注意力机制 并行处理整个输入序列。它在诸如机器翻译、文本生成和语言模型等任务中表现出色。下面详细介绍 Transformer 的原理、结构和应用。

1. 编码器-解码器架构

Transformer 的架构由两个部分组成:

  • 编码器(Encoder):将输入序列 -> (映射) -> 连续的表示空间
  • 解码器(Decoder):根据编码器的输出 ->生成目标序列

编码器和解码器均由多个相同的层堆叠而成。每层都有两个主要组件

  • 多头自注意力机制(Multi-Head Self-Attention Mechanism)
  • 前馈神经网络(Feed-Forward Neural Network)

解码器的额外结构

解码器除了与编码器相同的结构外,还多了一个编码器-解码器注意力机制,它在生成每个目标时依赖于编码器的输出

2. 自注意力机制(Self-Attention Mechanism)

Transformer 的核心是自注意力机制,它能够捕捉输入序列中的全局依赖关系,并且不需要像 RNN 那样逐步计算
在这里插入图片描述

解码器中的注意力机制的2点特殊

  1. 编码器-解码器注意力机制:解码器中,不仅包含自注意力机制,还包括一个与编码器输出交互的注意力机制,它允许解码器在生成每个词时参考编码器的上下文信息
  2. 未来遮蔽确保在生成第 t 个词时,只能看到之前生成的词,而看不到未来的词

3. 位置编码(Positional Encoding)

因为 Transformer 不依赖输入序列的顺序信息,它需要显式地将位置信息引入模型中。为此,Transformer 使用位置编码(Positional Encoding)来为每个输入向量添加位置信息。
位置编码通过正弦和余弦函数生成,并按照序列的索引位置注入到每个词向量中:
在这里插入图片描述
其中 ( p o s pos pos ) 是词在序列中的位置,( i i i ) 是词向量的维度索引,( d d d ) 是词向量的总维度。

4. 前馈神经网络(Feed-Forward Neural Network, FFN)

在每个编码器和解码器层中,除了自注意力机制外,还包括一个前馈神经网络。每个时间步上的前馈网络是独立应用的,它的公式如下:
在这里插入图片描述

5. 残差连接和层归一化(Residual Connections and Layer Normalization)

Transformer 的每个子层(如自注意力机制或前馈神经网络)面都有一个残差连接(Residual Connection)和层归一化(Layer Normalization),确保在网络训练的过程中信息可以直接传递,缓解深层网络中的梯度消失问题
残差连接的形式为:
在这里插入图片描述

6. Transformer 的应用

Transformer 由于其并行计算的优势,以及在处理长距离依赖关系上的优越表现,在许多任务中取得了卓越的成果:

  • 机器翻译:例如谷歌翻译。
  • 文本生成:例如 OpenAI 的 GPT 系列模型。
  • 文本摘要:自动生成文档摘要。
  • 语言建模:如 BERT、GPT 及其变体,用于各种 NLP 任务。
  • 图像处理&多模态:ViT、ViLT。

7. Transformer 的优势

  • 并行处理不依赖时间步顺序,可以并行处理整个序列,因此训练速度更快,特别适合大规模数据集。
  • 长距离依赖处理能力强注意力机制,能够轻松处理序列中远距离的依赖关系,而不像 RNN 或 LSTM 那样受限于序列的长度。
  • 广泛的应用:Transformer 已成为 NLP 的标准架构,并被扩展到其他领域,如图像处理(Vision Transformer, ViT)和语音处理等。

编码解码的过程

编码过程(Encoder)

主要任务是将输入序列转换为一种捕捉全局上下文信息的表示。这一过程确保输入序列中的每个元素(如文本中的单词或句子中的其他单位)都能够有效地“理解”整个输入序列中的其他元素,从而为后续任务(如机器翻译、文本生成等)提供丰富的上下文信息。

输入数据的准备(输入数据向量化+位置编码)

在这里插入图片描述
其中 x e m b e d d i n g x_{embedding} xembedding是输入数据向量化; P E p o s i t i o n PE_{position} PEposition是位置编码,具体实现如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值