Transformer学习-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之间的关联
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值