当前位置: 首页 > news >正文

Cross Attention和 Self- Attention 的区别?

Cross Attention和Self-Attention都是深度学习中常用的注意力机制,用于处理序列数据,其中Self-Attention用于计算输入序列中每个元素之间的关系,Cross Attention则是计算两个不同序列中的元素之间的关系。它们的主要区别在于计算注意力分数时所用的查询、键和值的来源不同。

在Self-Attention中,输入序列被分成三个向量(即查询向量,键向量和值向量),这三个向量均是来自于同一组输入序列,用于计算每个输入元素之间的注意力分数。因此,Self-Attention可以用于在单个序列中学习元素之间的依赖关系,例如用于语言建模中的上下文理解。

在Cross Attention中,有两个不同的输入序列,其中一个序列被用作查询向量,另一个序列被用作键和值向量。Cross Attention计算的是第一个序列中每个元素与第二个序列中所有元素之间的注意力分数,通过这种方式来学习两个序列之间的关系。例如,在图像字幕生成任务中,注意力机制可以用来将图像的特征与自然语言描述的句子相关联。

下面是一个简单的例子,演示Self-Attention和Cross Attention的区别。假设有两个序列A和B,它们分别表示句子和单词:

A = ["The", "cat", "sat", "on", "the", "mat"]

B = ["mat", "cat", "dog", "on"]

在Self-Attention中,我们会用A本身的向量来计算注意力分数,查询向量、键向量和值向量都是从A中提取的。例如,我们可以通过将A传递给一个Self-Attention层来计算每个单词之间的注意力分数。

在Cross Attention中,我们将B的向量用作键和值向量,而A的向量用作查询向量。这允许我们计算句子中每个单词与单词序列B中的所有单词之间的注意力分数。例如,我们可以通过将A和B传递给一个Cross Attention层来计算单词和单词序列B之间的注意力分数。

总之,Self-Attention和Cross Attention都是非常有用的注意力机制,它们分别用于处理序列内部和跨序列的关系

http://www.lryc.cn/news/177244.html

相关文章:

  • 《从零开始的Java世界》02面向对象(基础)
  • pve关闭windows虚拟机慢
  • 【Django】 rest_framework接口开发流程及接口功能组成
  • Kafka Log存储解析以及索引机制
  • 广告电商模式:探索新商业模式,实现三方共赢
  • 动态线程池框架DynamicTp v1.1.4大版本发布,新增若干实用特性
  • 无线通信——Mesh自组网的多跳性
  • QA 云计算实验问题汇总
  • VEX —— Functions|Groups
  • JavaSE18——接口
  • 杭州亚运会开幕式惊现数字人火炬手,动捕设备迸发动画制作新动能
  • ptmalloc源码分析 - malloc/free函数的实战篇(12)
  • 博弈论(奇偶考虑法)+计数+DP(判定转dp):CF838C
  • 郁金香2021年游戏辅助技术中级班(一)
  • 加密货币交易所偿付能力的零知识证明
  • 软考网络工程师防火墙配置考点总结
  • 【IDEA】idea恢复pom.xml文件显示灰色并带有删除线
  • Python数据分析之Excel
  • NISP证书是什么?NISP含金量如何呢?
  • 操作系统备考学习 day6(2.3.2 - 2.3.4)
  • 家电行业 EDI:Miele EDI 需求分析
  • Android ConstraintLayout app:layout_constraintHorizontal_weight
  • FPGA行业应用一:LED控制器
  • Pyspark读写csv,txt,json,xlsx,xml,avro等文件
  • LeetCode 接雨水 双指针
  • 【Linux】【网络】传输层协议:UDP
  • 数字音频工作站FL Studio 21中文版下载及电音编曲要用乐理吗 电音编曲步骤
  • 金蝶云星空与旺店通·企业奇门对接集成其他出库查询打通创建其他出库单
  • Visual Studio 如何删除多余的空行,仅保留一行空行
  • java spring cloud 企业电子招标采购系统源码:营造全面规范安全的电子招投标环境,促进招投标市场健康可持续发展