news 2026/5/13 14:17:53

构筑 AI 理论体系:深度学习 100 篇论文解读 第十九篇:序列建模的焦点——注意力机制 Attention Mechanism (2015)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
构筑 AI 理论体系:深度学习 100 篇论文解读 第十九篇:序列建模的焦点——注意力机制 Attention Mechanism (2015)

构筑 AI 理论体系:深度学习 100 篇论文解读

第十九篇:序列建模的焦点——注意力机制 Attention Mechanism (2015)

I. 论文背景、核心命题与作者介绍 💡

2014 年Encoder-Decoder(编码器-解码器)架构在神经机器翻译(NMT)中取得了突破。这种架构使用一个 RNN(通常是 LSTM 或 GRU)将整个输入序列压缩成一个单一的固定长度向量(Context Vector)。当输入序列很长时,这种信息瓶颈会导致翻译质量急剧下降。

Dzmitry Bahdanau及其团队在 2015 年提出的注意力机制(Attention Mechanism)彻底解决了这个信息瓶颈问题。它允许解码器在每一步输出时,动态地、有选择性地关注输入序列中的相关部分。

核心作者介绍
作者国籍机构(2015 年时)核心贡献
Dzmitry Bahdanau白俄罗斯/加拿大University of Montreal (Yoshua Bengio 团队)注意力机制在机器翻译中的首次成功应用者。
Kyunghyun Cho (赵竟玄)韩国University of MontrealGRU 的提出者,注意力机制的共同贡献者。
Yoshua Bengio加拿大University of Montreal深度学习三巨头之一。
信息项详情
论文题目Neural Machine Translation by Jointly Learning to Align and Translate
发表年份2015 年
出版刊物ICLR (International Conference on Learning Representations)
核心命题如何取代传统的固定长度上下文向量,让解码器在每一步生成输出时,能够动态地关注输入序列中最相关的部分,从而改善长序列的翻译质量?

II. 核心机制:软对齐与动态上下文 ⚙️

注意力机制的核心思想是实现软对齐(Soft Alignment)。它为输入序列的每个隐藏状态分配一个权重(Attention Weight),这些权重是动态计算的。

1. 核心概念:隐藏状态 (hhh)

隐藏状态hth_tht是循环神经网络(RNN、LSTM 或 GRU)在处理序列数据时在时间步ttt产生的、对历史信息和当前输入进行概括的“记忆”

  • 本质:它是对**从序列开始到时间步ttt为止的所有历史信息(上下文)**的压缩表示。
  • 作用:在 Encoder-Decoder 架构中,编码器产生的一系列隐藏状态构成了输入序列的完整信息库,解码器则使用自己的隐藏状态进行查询

关于隐藏状态数量的澄清:
隐藏状态的维度(向量的宽度)是一个超参数(由开发者手动设置),与句子长度和网络层数无关。

但是,隐藏状态的数量(时间步ttt的总数)是由输入序列的长度决定的:如果输入句子有NNN个词,则编码器将产生NNN个隐藏状态{h1,h2,…,hN}\{h_1, h_2, \dots, h_N\}{h1,h2,,hN}

2. 关键输入与角色划分(Q, K, V 概念映射)

在编码器-解码器架构中,注意力机制工作的起点是:

  • 输入序列信息(键KKK和值VVV):这是编码器处理输入句子后产生的所有时间步的隐藏状态Hencoder={h1enc,h2enc,…,hTxenc}H_{encoder} = \{h_1^{enc}, h_2^{enc}, \dots, h_{T_x}^{enc}\}Hencoder={h1enc,h2enc,,hTxenc}
  • 当前查询信息(查询QQQ):这是解码器在生成第ttt个目标词时使用的前一个隐藏状态ht−1h_{t-1}ht1

符号解释:

  • hench^{enc}henc:隐藏状态,是编码器 RNN 单元在特定时间步输出的向量,代表了历史信息的压缩记忆
  • HencoderH_{encoder}Hencoder: 编码器生成的所有隐藏状态的集合。
  • TxT_xTx:输入序列的总长度(即隐藏状态的总时间步数)。
3. 步骤一:计算对齐分数(Scoring/Energy)

目标是计算查询ht−1h_{t-1}ht1所有输入状态hiench_{i}^{enc}hienc相关性或“匹配度”。

  • 计算:使用对齐模型(Score Function)输出一个分数score(ht−1,hienc)\text{score}(h_{t-1}, h_{i}^{enc})score(ht1,hienc)

公式解释:

  • ht−1h_{t-1}ht1: 表示解码器的前一个时间步的隐藏状态(查询QQQ)。
  • hiench_{i}^{enc}hienc: 表示编码器的第iii个时间步的隐藏状态(键KKK/值VVV)。
4. 步骤二:归一化与注意力权重的确定

将所有分数转换成概率分布,确保总和为 1。

  • 计算:
    αti=exp⁡(score(ht−1,hienc))∑j=1Txexp⁡(score(ht−1,hjenc))\alpha_{ti} = \frac{\exp(\text{score}(h_{t-1}, h_{i}^{enc}))}{\sum_{j=1}^{T_x} \exp(\text{score}(h_{t-1}, h_{j}^{enc}))}αti=j=1Txexp(score(ht1,hjenc))exp(score(ht1,hienc))
    • 结果:αti\alpha_{ti}αti是最终的注意力权重

公式解释:

  • αti\alpha_{ti}αti:注意力权重。表示在解码器ttt时刻,对输入序列中第iii个时间步的关注度。
  • ∑j=1Txexp⁡(… )\sum_{j=1}^{T_x} \exp(\dots)j=1Txexp(): 对所有输入时间步jjj(从 1 到TxT_xTx)的分数进行求和,用于归一化
5. 步骤三:计算动态上下文向量

根据注意力权重αti\alpha_{ti}αti,对编码器隐藏状态hiench_{i}^{enc}hienc进行加权求和,得到动态上下文向量ctc_tct

  • 计算:
    ct=∑i=1Txαtihiencc_t = \sum_{i=1}^{T_x} \alpha_{ti} h_{i}^{enc}ct=i=1Txαtihienc
    • 结果:ctc_tct全新的、为当前解码步骤定制的上下文信息。

公式解释:

  • ctc_tct:动态上下文向量,专为解码器ttt时刻的输出而定制。
  • ∑i=1Tx\sum_{i=1}^{T_x}i=1Tx: 对输入序列中的所有时间步iii进行求和。
6. 步骤四:解码器生成输出

解码器利用ctc_tctht−1h_{t-1}ht1来计算并生成下一个输出词。


III. 历史意义与地位 👑

1. 解决信息瓶颈

注意力机制彻底打破了 RNN 编码器-解码器架构中固定上下文向量的限制。

2. 可解释性的革命

注意力权重αti\alpha_{ti}αti为深度学习模型提供了一种罕见的可解释性。通过可视化这些权重,我们可以清晰地看到模型在生成某个输出词时,“看”向了输入序列中的哪个词,实现了对齐(Alignment)的可视化。

3. Transformer 的催化剂

证明了注意力循环更有效处理序列依赖关系,为Transformer架构的诞生奠定基础。


IV. 零基础理解:注意力机制做了什么? 👶

他们做了什么:科学家给模型设计了一个机制,让它不再“一次性记住”整个长句子,而是动态地聚焦

怎么做的:

  1. 改变记忆方式:机器将输入的每个词都存放在一个单独的卡片上(即hiench_{i}^{enc}hienc隐藏状态)。
  2. 动态查找:在翻译时,机器用当前状态ht−1h_{t-1}ht1,查询)询问所有卡片:“我当前最需要看哪个词?
  3. 计算相关性:机器计算当前状态所有输入卡片匹配度,转换为 0 到 1 之间的关注度比例(权重αti\alpha_{ti}αti
  4. 形成焦点:最后,机器将所有输入词语按这个权重比例加权平均,形成一个临时的、高度聚焦的上下文信息ctc_tct)。

结果:机器翻译长句子时不再“健忘”,每次都能将注意力集中在最关键的输入部分。


下一篇预告:下一篇(第二十篇)我们将探讨另一项在 NLP 中至关重要的技术——**词嵌入(Word Embeddings)**的重大突破:Word2Vec (2013),它是如何用高效的浅层网络捕捉词语语义关系的。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/10 19:10:49

【小白笔记】删除链表的倒数第N个节点与删除链表的中间节点,环形链表(两类双指针“滑窗与速度差”)

这个问题是典型的**“双指针”**应用场景。它的巧妙之处在于:不需要先测量整个链表的长度,通过两个指针的“距离差”,只需一次遍历就能找到倒数第 NNN 个节点。1. 核心思路:快慢指针(等距离滑动) 要删除倒数…

作者头像 李华
网站建设 2026/5/11 9:36:31

测试基础|执行验收测试需要注意哪些?

通过本文的介绍,供大家了解验收测试的重要性以及它如何帮助开发测试人员确保软件应用程序满足所需的规范。 概述 验收测试涉及从用户的角度验证应用程序的验收,评估软件是否符合业务要求,以确定其是否可以发布。 在软件开发生命周期(Softw…

作者头像 李华
网站建设 2026/5/10 18:49:53

算法题 二进制表示中质数个计算置位

二进制表示中质数个计算置位 问题描述 给你两个整数 left 和 right,请你找到在 [left, right] 范围内,计算置位位数为质数的整数个数。 计算置位:指二进制表示中 1 的个数。质数:大于 1 且只能被 1 和自身整除的数。 注意&…

作者头像 李华
网站建设 2026/5/11 9:36:03

β-Amyloid (1-42), Rat;DAEFGHDSGFEVRHQKLVFFAEDVGSNKGAIIGLMVGGVVIA

一、基础性质英文名称:β-Amyloid (1-42), Rat;Amyloid β-Protein (1-42), Rat;Rat Aβ1-42中文名称:大鼠源 β- 淀粉样蛋白 (1-42);大鼠 β- 淀粉样肽 (1-42)单字母多肽序列:DAEFGHDSGFEVRHQKLVFFAEDVGSN…

作者头像 李华
网站建设 2026/5/13 14:04:16

β-Amyloid (25-35);GSNKGAIIGLM

一、基础性质英文名称:β-Amyloid (25-35);Amyloid β-Protein (25-35);Aβ25-35中文名称:β- 淀粉样蛋白 (25-35);β- 淀粉样肽 (25-35)单字母序列:GSNKGAIIGLM(标准 Aβ25-35 序列&#xff09…

作者头像 李华
网站建设 2026/5/9 20:22:25

冰 挂——冬日的风景线

冬日群峰,俨然一座童话秘境。溪流收住奔涌的脚步,倒挂悬崖,凝作晶莹剔透的冰景。 有的如乳白软酪,柔润饱满,铺满整面山壁;有的似银白玉柱,清透晶亮,挺立于崖下石阶;有的像…

作者头像 李华