首页 > 其他分享 >Self-attention

Self-attention

时间:2024-03-10 13:45:20浏览次数:17  
标签:输出 RNN Self attention CNN self 向量

输入n个向量,要输出相同个数的向量(比如,输入一个句子,输出句子中每个词的词性。每个单词转化为向量可以用one-hot vector或者word embedding方法)

如果将每个向量连一个FC(fully connected network),会出现像 I saw a saw这种情况,两个saw单词一样,所以两个FC输出结果也会一样

这时,我们可以在FC之前加一层网络,这个网络要考虑到整个句子,即self-attention

 

要考虑当前向量和其余向量的相似程度,流程如下

 先由某个向量通过运算(其中$W^q,W^k,W^v$为矩阵,需要通过学习得出)来求出对应的query,key和v,将当前向量的query和自己及其余向量的key做点乘,得到的$\alpha$就是原始的相似度,再通过softmax归一化得到了权重$\alpha^\prime$(不一定是softmax,也可以用Relu等,只是一般softmax),最后将对应的权重和系数v相乘再累加,得到了当前向量所对应的输出

从矩阵的角度来看:

还有一种扩展,Multi-head Self-attention,就是每个向量产生出两个q,k,v,第一个q做运算时候都与第一个k做运算,同理,得到第一个输出和第二个输出,在这两个输出线性组合得到最终的输出

 

 总结一下:

  1. 可以在加上一个和位置有关的参数:Positional Encoding
  2. 发现 dot-product 做的事情和 CNN 中 filter 对每一个 receptive field 做的事相似,这两者有什么关系?事实上,CNN 是 self-attention 的特殊版,因为 CNN 是对每一个感受野做运算,而 self-attention 实际上是拿每一个序列中的向量和序列中的所有向量做运算,相当于把感受野设置为整个序列。在数据量相对较小的时候,CNN 效果好,数据量极大的时候,self-attention 较好
  3. self-attention 和 RNN 的关系?比 RNN 更强。首先,RNN 是串行的,无法并行;其次,RNN(双向 RNN 也是)对于头和尾两个元素的相关性没有那么高,但是 self-attention 没有这个问题
  4. 由于需要更新的是整个矩阵,运算量较大,因此产生了许多其它的变形(如 transformer)。

标签:输出,RNN,Self,attention,CNN,self,向量
From: https://www.cnblogs.com/ybx-tih/p/18064076

相关文章

  • Bootstrap Your Own Latent A New Approach to Self-Supervised Learning论文阅读笔记
    BootstrapYourOwnLatentANewApproachtoSelf-SupervisedLearning论文阅读笔记Abstract​ 我们提出了BYOL,一种新的自监督图像表示学习的方法。BYOL依赖于两个神经网络,即在线网络和目标网络,它们相互作用和相互学习。从一个图像的增广视图出发,我们训练在线网络来预测同一图......
  • LLM 加速技巧:Muti Query Attention
    前言 MQA是19年提出的一种新的Attention机制,其能够在保证模型效果的同时加快decoder生成token的速度。在大语言模型时代被广泛使用,很多LLM都采用了MQA,如Falcon、PaLM、StarCoder等。本文转载自DeephubImba作者:FlorianJune仅用于学术分享,若侵权请联系删除欢迎关注......
  • LLM 加速技巧:Muti Query Attention
    MQA是19年提出的一种新的Attention机制,其能够在保证模型效果的同时加快decoder生成token的速度。在大语言模型时代被广泛使用,很多LLM都采用了MQA,如Falcon、PaLM、StarCoder等。在介绍MQA之前,我们先回顾一下传统的多头注意力Multi-HeadAttention(MHA)多头注意力是tra......
  • 基于CNN-GRU-Attention的时间序列回归预测matlab仿真
    1.算法运行效果图预览 2.算法运行软件版本matlab2022a 3.算法理论概述        CNN-GRU-Attention模型结合了卷积神经网络(CNN)、门控循环单元(GRU)和注意力机制(Attention)来进行时间序列数据的回归预测。CNN用于提取时间序列的局部特征,GRU用于捕获时间序列的长期......
  • 李宏毅2022机器学习HW4 Speaker Identification上(Dataset &Self-Attention)
    Homework4Dataset介绍及处理Datasetintroduction训练数据集metadata.json包括speakers和n_mels,前者表示每个speaker所包含的多条语音信息(每条信息有一个路径feature_path和改条信息的长度mel_len或理解为frame数即可),后者表示滤波器数量,简单理解为特征数即可,由此可知每个.pt......
  • 【李宏毅机器学习2021】(四)Self-attention
    引入Self-attention前面学到的内容输入都是一个向量,假如输入是一排向量,又应如何处理。来看下有什么例子需要将一排向量输入模型:当输入是一排向量时,输出有三种类型:输入和输出的长度一样,每一个向量对应一个label,如词性标注、音标识别、节点特性(如会不会买某件商品)。一......
  • /proc/pid/mountinfo /proc/self/mountinfo
    该文件包含有关进程的挂载名称空间中的挂载的信息(参见mount_namespaces(7))。它提供了各种信息(例如,传播状态、绑定挂载的挂载根、每个挂载及其父挂载的标识符),这些信息在(旧的)/proc/pid/挂载文件中是没有的(例如,不可扩展性、无法区分每个挂载和每个超级块选项)。 (4)root:......
  • Multi-behavior Self-supervised Learning for Recommendation论文阅读笔记
    Abstract本文提出了一个多行为自监督学习框架,以及一种自适应优化方法。具体而言,我们设计了一个行为感知的图神经网络,结合自注意力机制来捕捉行为的多样性和依赖关系。为了增强对目标行为下的数据稀疏性和辅助行为的嘈杂交互的鲁棒性,我们提出了一种新的自监督学习范式,以在行为间和......
  • 【linux新手起步02】vi编辑时出现E325:ATTENTION。
    vi编辑时出现E325:ATTENTION一、原因二、解决方法:rm+swap文件路径以及名称一.原因:出现这个问题,是因为由于在编辑该文件的时候异常退出,因为vim在编辑文件时会创建一个交换文件swapfile以保证文件的安全性。点击查看代码E325:ATTENTIONFoundaswapfilebythen......
  • macos签名报错——unable to build chain to self-signed root for signer
    自己的解决方案,先把两个证书都给安装上  这个组织单位我是装G2因为公司的证书这边组织单位填的是G2   然后再装自己的两个证书installer和application就搞定了这边要注意的是如果依旧无效的话,可以先把自己的这几个证书给删了,然后再装,正常就好了。。。我也是......