自注意力机制(self-attention)

前言

输入的类型
请添加图片描述
输入一堆向量
文字处理
声音讯号
图的节点可以看作一个向量表示
输出是什么呢

  • 每一个向量都有一个标签
    应用:
    词性标注,语音,social network
  • 整个句子有一个标签
    应用:
    情感分析,语音辨认,图
  • 机器自己决定输出多少个标签
    应用:seq2seq(机器翻译)请添加图片描述

引入self-attention

Sequence Labeling
使用全连接神经网络
如果是词性标注的问题,对于全连接神经网络而言,不能区别第一个saw和第二个saw,完全不知道怎么处理

请添加图片描述
输入的Sequence有长有短
self-attention 考虑了整个句子的信息,可以叠加多层

self-attention计算流程

请添加图片描述
两个向量之间的关联性,左边的向量乘上 w q w^q wq矩阵,右边的向量乘上 w k w^k wk矩阵
另外一种计算方式如右边
请添加图片描述
根据 α i \alpha_i αi去抽取最重要的资讯,哪些向量和 a 1 a^1 a1是最有关系的
请添加图片描述
得到attention分数,得到 b 1 . . . . . . b 4 b^1......b^4 b1......b4,可以同时得到这些向量, w q , w k , w v w^q,w^k,w^v wq,wk,wv都是未知的需要从train data找出来

在这里插入图片描述

Multi-head self-attention

请添加图片描述

Positional Encoding

在自注意力机制中没有位置信息,完全没有这个资讯
为每一个位置设置一个独特的位置编码 vector e i e^i ei,请添加图片描述
在语音辨识方面
不需要要看完整句话
请添加图片描述

Self-attention vs CNN

在处理图像问题时,每一个像素点都可以看成一个三维的向量,维度就是图像的通道数,所以图像也可以看成是很多向量输入的模型
自注意力机制和CNN的概念类似,都是希望网络不仅仅考虑某一个向量,也就是CNN中希望模型不仅仅考虑某一个像素点,而是让模型考虑一个正方形或者矩形的感受野(Receptive field)
对于自注意力机制来说,相当于模型自己决定receptive field是怎样的形状和类型
其实CNN卷积神经网络是特殊情况下的一种self-attention,self-attention就是复杂版的CNN
请添加图片描述

请添加图片描述
Self-attention 的弹性比较大
请添加图片描述

self-attention vs RNN

  • Self-attention可以考虑全部的输入,而RNN似乎只能考虑之前的输入(左边)。但是当使用双向RNN的时候可以避免这一问题。
  • Self-attention可以容易地考虑比较久之前的输入,而RNN的最早输入由于经过了很多层网络的处理变得较难考虑。
  • Self-attention可以并行计算,而RNN不同层之间具有先后顺序。

请添加图片描述
This is one type of Graph Neural Network(GNN)
请添加图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值