注意力机制

12.【李宏毅机器学习2021】Transformer (上)_哔哩哔哩_bilibili

注意力机制

INPUT:a set of vectors

如果input is a set of vectors(sequence)而不是单单的vector,比如

example 1:句子、文段

如此,向量的表示方法可分为以下两种:

1。one-hot encoding
在这里插入图片描述

2.word embedding
在这里插入图片描述

one-hot encoding看不出语义的资讯,而word embedding可以。apple和orange看不出有什么相似的。

example 2:音频

音频包含的讯号非常可观,1min就包含了6000个向量哎。
在这里插入图片描述

example 3:图

每一个节点看作一个vector

在这里插入图片描述

化学结构也是一种graph 相关的

在这里插入图片描述

OUTPUT:a set of vectors

1.Each vector has a label

在这里插入图片描述

label can be numbers(regression),classes(classification)

2.The whole sequence has a label.

eg:判断一整句话是正面的还是负面的。 sentiment analysis

3.model decides the number of labels itself.(seq2seq)

situation 1 一般又称为 sequence labeling

Sequence Labeling

在这里插入图片描述

两个saw难以分别?通过考虑上下文,在window内进行决定词性

在这里插入图片描述

self attention会吃一整个sequence的资讯,这种考虑了context的处理后向量(黑色方框),再丢进fully connected

在这里插入图片描述

SELF ATTENTION计算过程

每一个b都是考虑了所有的a sequence后才生成的

在这里插入图片描述

以b1为例,看一下怎么产生b1的吧?

step 1:通过计算alpha,找出跟a1最relevant的ax(dot-product)

根据a1,找出sequence里所有跟a1 relevant的向量。a1和a4有多相关?通过dot-product计算模组,赋给他们一个alpha。在这里插入图片描述

attention score alpha的计算示意图如下,注意要跟自身计算(a1,1)。

得到四个alpha,a11,a12,a13,a14.然后送入soft-max(or relu。。。。)层,得到a11‘。

在这里插入图片描述

上述这一步,就可以得到4个alpha,根据数值的大小便可以判断出,a?跟a1是关联度最大的。

step 2:利用alpha再计算,得出b1

在这里插入图片描述

由此,我们就做到了由一整个sequence得到b1。

input vector(a)-------->SELF ATTENTION---------->output(b)

那如果从矩阵乘法的角度去理解SELF-ATTENTION呢?

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Multi-head Self-attention

除了普通的self attention,我们可能还需要多头的self-attention。

其产生,是由于可能需要多个q,来表征多个relevance的需求。(different types of relevance)

如果q有两个,相应的,k,v也有两个。

q有两个后,计算b的过程中,注意:qi,1和ki,1 k i+1,1 … k j,1相乘,而不跟k i,2相乘。

(q1只对k1做attention)

对于另一个head,q2只对k2做attention
在这里插入图片描述

相应地,求出bi,2

在这里插入图片描述

目前为止,会发现self attention少了一个很重要的资讯————position information

Positional Encoding

input出现在sequence的前面?中间?后面?

eg:动词不容易出现在句首,那么一个句首的单词可能就不太是动词。

在有必要的情况下,把位置信息加入vector中。

在这里插入图片描述

这种位置信息向量,即是手动的(hand-crafted)。

SELF-ATTENTION的应用

在这里插入图片描述

一张图片看作是一个tensor(5 * 10 * 3)

在这里插入图片描述

CNN可看作简化版的self-attention
在这里插入图片描述在这里插入图片描述

随着资料量越来越多,self attention(浅蓝色)的效果越来越好,直至超过CNN(灰色),这是因为self attention的弹性比较好。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值