Neural Machine Translation by Jointly Learning to Align and Translate:输入输出注意力机制

注意力机制是当下深度学习中的后起之秀,最初的想法源于 Dzmitry Bahdanau 等人的论文 Neural Machine Translation by Jointly Learning to Align and Translate。了解强大的注意力技术的起源有助于我们掌握许多基于其延伸出的发展,本文将介绍这个注意力机制背后的逻辑。

语言到语言的翻译模式

Neural Machine Translation by Jointly Learning to Align and Translate 介绍了一种将原始语言中的语句翻译成目标语言中语句的模型。该模型具有"编码器-解码器"结构,使用递归神经网络(RNN)同时实现编码器和解码器。

翻译模型体系结构模型架构如下:

输入

在上述图片中,编码器的输入是原始语言中的单词序列:X₁, ... , Xᵢ, ... , X_Tₓ

  • Tₓ 是输入句子的长度,例如,在"My name is YBCarry."这句话中,Tₓ 的值是 4。
  • 每个 xᵢ 是原始语言中单词的一个离散表示(one-hot representation),其中包含一个 Kₓ 字典。也就是说,每个 Xᵢ 是一个长度为 Kₓ 的向量,通常在 5 万到 10 万字的范围内。Xᵢ 向量中只有一个条目是1,表示原始语言中的某个特定单词,所有其他条目都是 0。

编码器(Encoder)

在上述图片中,编码器是绿色的连续块。

  • 编码器是一个递归神经网络,编码器块只有一个,所有输入的语句都由这个块处理,一个词接着一个词。
  • 编码器块获取隐藏状态和输入词,并发出下一个隐藏状态,隐状态向量不是模型参数,它们是递归神经网络块的输出。h₀, h₁, ... , h_Tₓ是长度为 n 的隐藏状态向量,h₀ 是一个零向量。
  • 最后一个编码器隐藏状态 h_Tₓ 将是解码器的初始状态,即 s₀ = h_Tₓ。在上述图片中虚线箭头建立了这个连接。

解码器(Decoder)

在上述图片中,解码器是橙色的连续块。

  • 解码器结构和编码器类似,也是只有一个解码器块。
  • 解码器块输出两个信息: 目标语言中的下一个翻译单词、下一个解码器隐藏状态。所以它需要三个输入:前一个解码器的隐藏状态(蓝色箭头表示)、前一个输出的单词(黄色箭头表示)和上下文(紫色箭头表示)。上下文是注意机制作用的结果。
  • 解码器块会持续输出已翻译的单词,一直到一个特殊的句尾单词。
  • 虽然图片中编码器块和解码器块的数量相同,但在实际翻译过程中,输入和输出的句子很可能具有不同的长度。

输出

在上述图片中,解码器的输出是目标语言中的一系列单词概率向量:Y₁, ... , Yᵢ, ... , Y_Tₓ

  • Tᵧ 是目标语句的长度,在模型完成翻译之前是未知的,只有当解码器输出特殊的句尾单词时,目标语句长度才被确定。
  • 每个输出的概率向量 Yᵢ 的长度为 Kᵧ, Kᵧ 是目标语言的字典大小。向量 Y 中的条目 i 是 0 和 1 之间的实数,表示特定单词(即第 i 个单词)在目标语言中的概率,其中 i 是条目索引。Y 中的所有条目 i 总和为 1。一般是使用最高概率的单词作为解码器的第 i 个输出的单词。

相关公式

编码隐藏状态

  • 每个编码器隐藏状态 hᵢ 是一个长度为 n 的向量,其中 n 是编码器隐藏状态的维度。 n 是模型的超参数,通常在数百到几千之间。
  • 编码器的初始隐藏状态为零向量。所有连续的编码器隐藏状态 hᵢ 通过引用前面的编码器隐藏状态 hᵢ-₁ 递归定义,这就是递归神经网络的本质。

注意力机制

  • 注意力机制为每个输出单词计算一个上下文向量。对于第 t-th 个输出单词,上下文 cₜ 是所有编码器隐藏状态 h₁ 至 h_Tₓ 的加权平均值。
  • 在标准"编码器-解码器"架构中,来自输入语句的信息只能通过最终编码器隐藏状态向量 h_Tₓ 或者等效的初始解码器隐藏状态向量 s_₀ 获得。

解码器隐藏状态

  • 第一个解码隐藏状态 s_₀ 被设置为最后一个编码器隐藏状态 h_Tₓ,这就是为什么 s_₀ 具有与h_Tₓ 相同的形状。
  • 所有连续解码器隐藏状态 sₜ 通过引用前面的解码器隐藏状态 sₜ₋₁ 递归定义, 其中包括:前一个输出单词 yₜ₋₁,前一个解码器状态 sₜ₋₁ 和上下文 cₜ 来自注意力机制。

总结

本文介绍了首次引入注意力机制的基于递归神经网络的语言到语言翻译模型,并解释了投入产出机制是如何运作的,以及其背后数学的逻辑。

相关推荐
渲吧云渲染24 分钟前
SaaS模式重构工业软件竞争规则,助力中小企业快速实现数字化转型
大数据·人工智能·sass
算家云28 分钟前
DeepSeek-OCR本地部署教程:DeepSeek突破性开创上下文光学压缩,10倍效率重构文本处理范式
人工智能·计算机视觉·算家云·模型部署教程·镜像社区·deepseek-ocr
AgeClub28 分钟前
1.2亿老人需助听器:本土品牌如何以AI破局,重构巨头垄断市场?
人工智能
PPIO派欧云2 小时前
PPIO上线Qwen-VL-8B/30B、GLM-4.5-Air等多款中小尺寸模型
人工智能
chenchihwen3 小时前
AI代码开发宝库系列:FAISS向量数据库
数据库·人工智能·python·faiss·1024程序员节
张登杰踩3 小时前
工业产品表面缺陷检测方法综述:从传统视觉到深度学习
人工智能·深度学习
sponge'4 小时前
opencv学习笔记6:SVM分类器
人工智能·机器学习·支持向量机·1024程序员节
zandy10114 小时前
2025年AI IDE的深度评测与推荐:从单一功能效率转向生态壁垒
ide·人工智能
andyguo4 小时前
ChatGPT Atlas vs Chrome:AI 浏览器的新纪元
人工智能·chrome·chatgpt