Transformer学习-self-attention

这里写自定义目录标题

  • Self-attention
  • Multi-head self-attention
  • 用self-attention解决其他问题

Self-attention

  1. 用Wq、Wk、Wv分别乘输入向量得到q、k、v向量
    在这里插入图片描述
  2. 用每个q向量乘所有的k向量得到对应项的attention,即用每项的query向量去匹配所有的key向量,得到该项对所有项的注意力打分。可以用矩阵优化运算。激活函数softmax可以用relu等替换。
    在这里插入图片描述
  3. 用q、v的相乘的结果乘v得到self-attention的输出b
    在这里插入图片描述
  4. 综上,如下图
    在这里插入图片描述

Multi-head self-attention

  1. 通过多组q、k、v来表示不同的相关性
    在这里插入图片描述
  2. 将多头的输出融合到一起
    在这里插入图片描述
  3. 位置编码,将位置信息编码为向量(每个位置一个专属向量),加到输入中即可
    在这里插入图片描述

用self-attention解决其他问题

  1. 语音解析:输入维度过大,使用truncated self-attention
    在这里插入图片描述
  2. 图像处理:每个像素(三个通道)可以看作一个三维向量,如下图可以将50个三维向量作为输入
    在这里插入图片描述
    在这里插入图片描述
  3. self-attention vs cnn:cnn相当于简化版的self-attention,卷积核的运算相当于对卷积核区域内的像素点求k、v,self-attention的感受野是自己学习的,而cnn的卷积核是手动设置的

在这里插入图片描述
cnn就是self-attention的特例。self-attention更灵活,但是如果训练集小可能更容易过拟。
在这里插入图片描述
在这里插入图片描述
4. self-attention vs RNN
在这里插入图片描述
5. self-attention for Graph:用attention来表示nodes之间的关联
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/124270.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python模拟表格任意输入位置

在表格里输入数值,要任意位置,我找到了好方法: input输入 1. 行 2. 列输入:1 excel每行输入文字input输入位置 3.2 表示输入位置在:3行个列是要实现一个类似于 Excel 表格的输入功能,并且希望能够指定输入…

基于Java的水果生鲜购物网站设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…

【Spring】Bean作用域和生命周期

Bean作用域和生命周期 一. Bean 的作用域1. Bean 的 6 种作⽤域:①. singleton②. prototype③. request④. session⑤. application⑥. websocket单例作用域(singleton) VS 全局作⽤域(application) 2. 设置作用域 二. Spring 执行流程和 Bean 的生命周期1. Spring…

机器人入门(一)

机器人入门(一) 一、ROS是什么,能用来干什么?二、哪些机器人用到了ROS?三、ROS和操作系统是绑定的吗?四、ROS 1 和ROS 2的关系是什么?4.1架构中间件改变API改变数据格式改变 4.2特性4.3工具/生态…

Flutter项目安装到Android手机一直显示在assembledebug

问题 Flutter项目安装到Android手机一直显示在assembledebug 原因 网络不好,gradle依赖下载不下来 解决方案 修改如下的文件 gradle-wrapper.properties 使用腾讯提供的gradle镜像下载 distributionUrlhttps://mirrors.cloud.tencent.com/gradle/gradle-7.5…

flink处理函数--副输出功能

背景 在flink中,如果你想要访问记录的处理时间或者事件时间,注册定时器,或者是将记录输出到多个输出流中,你都需要处理函数的帮助,本文就来通过一个例子来讲解下副输出 副输出 本文还是基于streaming-with-flink这本…

Git使用【下】

欢迎来到Cefler的博客😁 🕌博客主页:那个传说中的man的主页 🏠个人专栏:题目解析 🌎推荐文章:题目大解析(3) 目录 👉🏻标签管理理解标签标签运用 …

苹果ios系统ipa文件企业签名是什么?优势是什么?什么场合需要应用到?

企业签名是苹果开发者计划中的一种签名类型,允许企业开发者签署和分发企业内部使用的应用程序,而无需通过App Store进行公开发布。通过企业签名,企业可以在内部部署自己的应用程序,以满足特定的业务需求。 企业签名能够做到以下…

【C语言】汉诺塔 —— 详解

一、介绍 汉诺塔(Tower of Hanoi),又称河内塔,是一个源于印度古老传说的益智玩具。大焚天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。 大焚天命令婆罗门把圆盘从下面开始按…

认知智能最新研究成果

声明:以下内容仅代表个人对现象和本质探索,不代表对学术成果评价。曾有幸和马文明斯基的学生段老师和方老师一起讨论过人工智能问题。随着自己对问题进一步理解,刚好18年左右开始接触认知智能理论核心认知计算部分。 第一:算法是一…

互联网Java工程师面试题·MyBatis 篇·第二弹

目录 16、Xml 映射文件中,除了常见的 select|insert|updae|delete标签之外,还有哪些标签? 17、Mybatis 的 Xml 映射文件中,不同的 Xml 映射文件,id 是否可以重复? 18、为什么说 Mybatis 是半自动 ORM 映射…

Java泛型理解

什么是泛型? 我们都知道 Java 中有形参和实参之分,是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数,其本身没有确定的值。在调用函数时,实参将赋值给形参。 而泛型是一种参数化的类型&#xff08…