【transformer】|李宏毅 self attention

transformer里面 应用了self-attention

输入表示

【transformer】|李宏毅 self attention_第1张图片

模型输入向量长度不同
[外链图片转存失败,源站可能有防盗链机制,在这里插入!建描述]议将图片上https://传(imblog.csdnimg.cn/230V5-1623195232715.ttps://img-mblog.csdnimg.cn/20210623195232715.png)]
如何对每个单词表示?
【transformer】|李宏毅 self attention_第2张图片
独热编码的问题在于单词之间没有关联
通过word embedding 表示

输出

【transformer】|李宏毅 self attention_第3张图片
seq2seq就是输出向量维度由模型决定

注意 本文只分析N-N 第一个类型

self-attention层

【transformer】|李宏毅 self attention_第4张图片
怎么获取每个输入的关联程度呢?

【transformer】|李宏毅 self attention_第5张图片

两个向量作为输入,经过一个模块获得关联度,这个模块通常使用点积

【transformer】|李宏毅 self attention_第6张图片
将此模块用在所有输入上,并用softmax得到注意力分数
【transformer】|李宏毅 self attention_第7张图片

抽取信息,得到对应的一个输出
【transformer】|李宏毅 self attention_第8张图片

并行输出

【transformer】|李宏毅 self attention_第9张图片
【transformer】|李宏毅 self attention_第10张图片

需要L*L大小的矩阵表示注意力
【transformer】|李宏毅 self attention_第11张图片

综上

并行只需要三步矩阵乘法
只需要wk,wq wv 三个权重需要学习
【transformer】|李宏毅 self attention_第12张图片

multi-head

【transformer】|李宏毅 self attention_第13张图片
在这里插入图片描述

positional enccoding

注意:四个输入对于self-attention 是没有顺序的

解决:设计位置向量ei,加到输入ai上
每一列是一个ei

attention is all you need里面手工设计

【transformer】|李宏毅 self attention_第14张图片

图像应用

【transformer】|李宏毅 self attention_第15张图片

【transformer】|李宏毅 self attention_第16张图片

3000W图的时候,CNN好
【transformer】|李宏毅 self attention_第17张图片

你可能感兴趣的:(【transformer】|李宏毅 self attention)