分享
Task3:基于Transformer解决机器翻译任务
输入“/”快速插入内容
📖
Task3:基于Transformer解决机器翻译任务
2024年7月4日创建
20670
28179
16
1
💡
教程贡献者说:
前面我们介绍了
Seq2Seq 这种编码器、解码器架构
,
中间层使用的GRU网络,并且网络中加入了注意力机制(Attention Mechanism)
今天我们的任务是
了解 Transformer 模型,并
基于 Transformer 模型实现在机器翻译任务上的应用
!
你可以从中学会
Transformer的关键模块(位置编码、多头注意力机制、残差网络和层标准化等)
一、Transformer 介绍
基于
循环
或
卷积
神经网络的序列到序列建模方法是现存机器翻译任务中的经典方法。然而,它们在
建模文本长程依赖方面都存在一定的局限性
。
•
对于
卷积神经网络
来说,受限的上下文窗口在建模长文本方面天然地存在不足。如果要对长距离依赖进行描述,需要多层卷积操作,而且不同层之间信息传递也可能有损失,这些都限制了模型的能力。
•
而对于
循环神经网络
来说,上下文的语义依赖是通过维护循环单元中的隐状态实现的。在编码过程中,每一个时间步的输入建模都涉及到对隐藏状态的修改。随着序列长度的增加,编码在隐藏状态中的序列早期的上下文信息被逐渐遗忘。尽管注意力机制的引入在一定程度上缓解了这个问题,但循环网络在编码效率方面仍存在很大的不足之处。由于编码端和解码端的每一个时间步的隐藏状态都依赖于前一时间步的计算结果,这就造成了在训练和推断阶段的低效。
循环神经网络中单词之间的依赖关系
为了更好地描述文字序列,谷歌的研究人员在 2017 年提出了一种新的模型 Transformer,学有余力的同学可以阅读一下原论文《Attention Is All You Need》,也可以直接看李沐老师的B站讲解:
Vaswani 等 - 2017 - Attention Is All You Need.pdf
2.12MB
Transformer论文逐段精读【论文精读】_哔哩哔哩_bilibili
Transformer 在原论文中第一次提出就是将其应用到
机器翻译
领域,它的出现使得机器翻译的性能和效率迈向了一个新的阶段。它摒弃了循环结构,并完全通过
注意力机制完成对源语言序列和目标语言序列全局依赖的建模
。在
抽取每个单词的上下文特征时,Transformer 通过自注意力机制(self-attention)衡量上下文中每一个单词对当前单词的重要程度。
自注意力机制的计算实例
在这个过程当中没有任何的循环单元参与计算。这种
高度可并行化
的编码过程使得模型的运行变得十分高效。当前几乎
大部分的大语言模型都是基于 Transformer 结构
,本节以应用于机器翻译的基于Transformer 的编码器和解码器介绍该模型。
Transformer的主要组件包括
编码器(Encoder)、解码器(Decoder)和注意力层
。其核心是利用
多头自注意力机制(Multi-Head Self-Attention)
,使每个位置的表示不仅依赖于当前位置,还能够直接获取其他位置的表示。自从提出以来,Transformer模型在机器翻译、文本生成等自然语言处理任务中均取得了突破性进展,成为NLP领域新的主流模型。
💡
Transformer 是各种笔试面试中必考的一个地方,里面设计的考点很多,建议大家要好好学哦!
学完之后可以尝试回答以下20道题:
https://blog.csdn.net/m0_51879931/article/details/134142492
下图展示了 Transformer 模型的基本架构: