深度学习中的注意力机制2025年6月25日 | 阅读 7 分钟 注意力机制通过学习关注输入数据中最重要部分来进行决策,从而彻底改变了深度学习。注意力机制允许模型根据输入部分对任务的重要性程度,赋予它们不同的权重。这种思想——就像人类的感知一样,我们看到场景或句子中的某些内容,然后过滤掉一些东西,只关注某些事物,这种模式被复制到了算法中。 注意力机制最初应用于自然语言处理任务,例如机器翻译,以及一定程度上的图像处理、语音识别等。因此,注意力机制能够让模型处理长距离依赖关系,因为这些权重是上下文感知的。在某种程度上,它也有助于引入更灵活、更具扩展性的架构,例如 Transformer(相比于 RNN 等序列模型)。因此,在现代深度学习范式中,注意力机制占据主导地位。 使用深度学习注意力机制的原因
深度学习中注意力机制的工作原理1. 输入转换 模型首先将输入转换为三个独立的向量,分别对应于每个元素: 查询 (Q) 键 (K) 值 (V) 输入首先通过线性投影进行学习。 2. 分数计算 模型为每个查询-键对计算一个注意力分数。 Q • Kᵀ 被称为点积注意力,Score =。 该分数代表了查询在任何键上应获得的相关权重大小。 3. 分数缩放 为此,将分数除以键维度的平方根进行缩放,以避免过大的值对 softmax 函数产生不利影响。 缩放分数 = (Q • Kᵀ) / √dₖ 4. Softmax 应用 最后,将缩放后的分数通过 softmax 函数,得到注意力权重(总和为 1 的概率)。 5. 值的加权求和 它根据相关注意力权重对 V 值进行加权。 这些值在通道维度上合并,以产生模型的注意力输出。 6. 输出 信息的具体相关性是上下文相关的,因此代表了当前的查询,这被捕获在上下文向量中,作为最终输出——最终输出不仅捕获了输入中的相关信息,还捕获了相关内容的具体细节,具体取决于当前查询。 注意力机制的优势
注意力机制的挑战
注意力机制的局限性
注意力机制的应用机器翻译 翻译模型旨在对源语言和目标语言中的单词进行对齐。与将整个句子压缩成固定向量不同,注意力机制使模型能够关注源句子中与它生成的每个目标语言单词相关的单词。 文本摘要 在抽取式和生成式摘要中,注意力机制允许模型选择文档中最重要部分,并使生成的摘要在保持连贯性的同时聚焦于文档的最关键部分。 问答 在回答问题时,模型可以专注于段落的相关部分。这提供了答案可能出现的区域,并有助于模型更好地了解问题与上下文的对齐。 图像字幕生成 对于图像字幕生成任务,注意力机制有助于模型在生成字幕中的每个单词时关注图像的特定区域,从而使字幕输出更具描述性,并与图像特征相关。 语音识别 通过赋予语音序列到序列模型注意力机制,可以帮助它们在解码语音转文本时关注相关的音频帧。这样做可以改善音频信号与文本的对齐。 文档分类 注意力机制使模型能够以不同的方式对文档中的不同单词或句子进行加权,从而提高分类任务(如垃圾邮件检测或情感分析)的准确性。 示例 输出 Dot Product Scores: [1 0 1] Attention Weights: [0.4223188 0.1553624 0.4223188] Attention Output (Context Vector): [6.333188 3.663624] 说明 点积分数 [1 0 1]
注意力权重 [0.4223188 0.1553624 0.4223188]
模型对值 2 的权重较低,因为搜索键未能与其自身的键值匹配。 注意力输出(上下文向量):[6.333188 3.663624]
基于此输入,模型希望使用值 1 和值 3 的数据多于值 2。 结论通过注意力机制,深度学习已成为深度学习领域的一场变革,它使模型能够专注于输入中最相关部分。与均匀的数据处理相反,注意力机制支持动态的、上下文敏感的决策制定,在各种任务上提供了显著的性能提升。 注意力是一种处理长序列、从中提取有用模式以及通过实现并行化来加速神经网络训练的强大方法。这是 Transformer 等架构以及 BERT、GPT 等其他架构的基础。 注意力机制具有一些优势,例如更高的准确性、更强的灵活性和更好的可解释性,但也有代价,那就是更高的内存使用量和计算需求。但总而言之,这些缺点很容易被其带来的好处所抵消,它是当今最先进的人工智能系统的关键组成部分。 下一主题机器学习中的外推法 |
我们请求您订阅我们的新闻通讯以获取最新更新。