【机器学习300问】132、自注意力机制(Self-Attention)和传统注意力机制(Attention)的区别?

最近学习注意力机制的时候,发现相同的概念很多,有必要给这些概念做一下区分,不然后续的学习可能会混成一团。本文先区分一下自注意力机制传统注意力机制。我会先直接给出它们之间有何区别的结论,然后通过一个例子来说明。

【机器学习300问】131、什么是Attention机制?简单Seq2Seq模型加上注意力机制为例说明。https://blog.csdn.net/qq_39780701/article/details/139905142

一、注意力机制和自注意力机制的区别

(1)关注的对象不同

  • 注意力机制通常设计两个不同的序列
  • 自注意力机制则是在单一序列内部操作

(2)应用场景不同

  • 注意力机制常用在跨序列的信息传输任务中,当我们说"传统注意力机制"的时候,其实是指全局注意力机制(Global Attention),比如机器翻译任务。
  • 自注意力机制则多用在需要理解序列内部结构的任务,比如自然语言处理中的句子表示学习任务,Transformer架构通过自注意力机制直接建模句子中所有单词之间的相互依赖关系,生成高质量的句子表示。

(3)计算方式不同

  • 注意力机制涉及跨序列的匹配和权重分配,通常在编码器和解码器之间构建一个注意力分布,强调输入序列中对生成特定输出最相关的部分。
  • 自注意力机制是计算序列内所有元素两两之间的相似性,然后基于这些相关性重新加权序列中的元素,以增强对序列全局上下文的理解。

二、举例说明两者的区别

(1)传统注意力机制的例子

假设我们正在处理英译法机器翻译任务,源句为"The movie was boring.",在典型的编码器-解码器架构中,源句经过编码器处理,转化为一系列向量表示,每个向量对应英语句子中的一个单词。

在生成法语句子的第一个词时,解码器会使用注意力机制"看"英语句子的不同部分。比如,如果第一个法语词应该是"Le",这很可能对应英语的定冠词"The"。此时,解码器(作为查询)会查看英语序列中的各个单词(作为键),并基于它们与"Le"这个目标词的相关性来分配注意力权重。

最终,它可能会发现"the"这个英语单词与当前输出最相关,于是给予它更高的权重,而其它单词权重较低。这样,解码器就能更加关注与当前翻译任务最相关的输入部分。

(2)自注意力机制的例子

假设我们在分析一个句子的情感色彩:"The movie was boring but the acting was superb." 使用自注意力机制,我们不是在不同序列间寻找关联,而是在这个句子内部探索词语之间的相互关系。

在自注意力的计算过程中,对于句子中的每个词(比如"boring"),模型会计算这个词与句子中所有其他词(包括它自己)的相关性。这意味着"boring"这个词会基于它与"movie"、"was"、"but"等词的上下文关系来重新加权。在这个例子中,"boring"与"movie"关系紧密,因为它修饰"movie",所以模型可能会给"movie"较高的权重,而像"superb"这样的词由于情感色彩相反,可能获得较低的权重。通过这样的过程,每个词都被赋予了一个基于其在句子中角色和上下文的新表示,从而帮助模型更好地理解整个句子的含义。

相关推荐
奔跑中的小象5 小时前
统信UOS + 天数AI卡部署SGLang服务手册
人工智能·uos·sglang·天数智芯
DevSecOps选型指南5 小时前
中国版Mythos,为何是悬镜安全灵脉CodeAI?
人工智能·安全
Shockang5 小时前
LangGraph 状态机实战
人工智能
刹那芳华19925 小时前
循环神经网络的从零开始实现(RNN)
人工智能·rnn·深度学习
阿童木写作5 小时前
跨境图片翻译工具多合一,批量图片视频字幕翻译加智能抠图
人工智能·python·音视频·语音识别
科技之门5 小时前
AI3D从建模到贴图、绑骨和动画的完整流程怎么做?V2Fun完整工作流指南
人工智能·3d·贴图
宇宙第一小趴菜5 小时前
二、机器学习的应用领域和发展史
人工智能·机器学习
前端开发江鸟5 小时前
我写过 MCP Server,却一直以为 MCP 只有 Tool
人工智能
天国梦6 小时前
自习室智能化升级避坑指南:天学网AI智习室方案实测与选型建议
大数据·人工智能
阿里云云原生6 小时前
可用性从 99.9% 跃升至 99.995%:畅捷通如何用 AI 重塑运维底座?
运维·网络·人工智能