Self-attention自注意力机制——李宏毅机器学习笔记

self-attention想要解决的问题

复杂的输入

Self-attention自注意力机制——李宏毅机器学习笔记_第1张图片
每次输入的length不同时,即Vector Set大小不同,该如何处理?
one-hot encoding,缺点:所有的词汇之间没有语义资讯。
word embedding,会给每一个词汇一个向量,一个句子则是一排长度不一
的向量,具有语义资讯。
Self-attention自注意力机制——李宏毅机器学习笔记_第2张图片
1min便有6000个frame
Self-attention自注意力机制——李宏毅机器学习笔记_第3张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第4张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第5张图片

输出是什么?

(1)Each vector has a label
Self-attention自注意力机制——李宏毅机器学习笔记_第6张图片
(2)The whole sequence has a label
Self-attention自注意力机制——李宏毅机器学习笔记_第7张图片
(3)Model decides the number of labels itself
Self-attention自注意力机制——李宏毅机器学习笔记_第8张图片

Sequence Labeling

Self-attention自注意力机制——李宏毅机器学习笔记_第9张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第10张图片
使用fc缺点:假设是词性标记,则无法正确识别。
Self-attention自注意力机制——李宏毅机器学习笔记_第11张图片
It is possible to consider the context?
Self-attention自注意力机制——李宏毅机器学习笔记_第12张图片
a window covers the whole sequence?
sequence长度有长有短,首先我们需要统计训练资料,查看一下最长的sequence有多长,然后开一个window(大于最长的sequence),这就会导致fc所需参数多,运算量大,容易overfitting。
所以使用self-attention:
知名paper:Attention is all you need.
Self-attention自注意力机制——李宏毅机器学习笔记_第13张图片

Self-attention自注意力机制——李宏毅机器学习笔记_第14张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第15张图片
如何计算‘阿尔法’数值:
(1)Dot-product——常用
(2)Additive
Self-attention自注意力机制——李宏毅机器学习笔记_第16张图片
Dot-product
w先随机生成,后通过梯度下降训练得出。
Self-attention自注意力机制——李宏毅机器学习笔记_第17张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第18张图片
为什么要用soft-max?
不一定用soft-max,只是比较常见,也可以用别的。

得到a’后,我们可以知道哪些向量与a1是最有关系的,然后我们开始根据attention score来抽取重要资讯
Self-attention自注意力机制——李宏毅机器学习笔记_第19张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第20张图片
b1-b4是可以并行计算得到
Self-attention自注意力机制——李宏毅机器学习笔记_第21张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第22张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第23张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第24张图片
softmax可以使用其他
Self-attention自注意力机制——李宏毅机器学习笔记_第25张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第26张图片
从I——>O就是做了self-attention
self-attention layer中唯一需要学习的参数是W
Self-attention自注意力机制——李宏毅机器学习笔记_第27张图片

Multi-head Self-attention多头注意力机制

翻译、语音辨识用multi-head往往可以得到比较好的结果,至于多少个head也是需要调参的。
Self-attention自注意力机制——李宏毅机器学习笔记_第28张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第29张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第30张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第31张图片
self-attention layer少了一个很重要的资讯——位置资讯,如果需要可以加入positional encoding。(这个问题尚待研究)
Self-attention自注意力机制——李宏毅机器学习笔记_第32张图片

self-attention的应用

Self-attention自注意力机制——李宏毅机器学习笔记_第33张图片
使用self-attention 处理语音时,会产生很长的向量,即attention matrix太大,不容易训练,因此使用truncated self-attention,看一部分(自己设定)而不去看整句话。
Self-attention自注意力机制——李宏毅机器学习笔记_第34张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第35张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第36张图片

Self -attention 和 CNN的关系

Self-attention自注意力机制——李宏毅机器学习笔记_第37张图片
self-attention中的receptive field是机器自己学出来的,自己决定需要考虑哪些信息。

Self-attention自注意力机制——李宏毅机器学习笔记_第38张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第39张图片

Self-attention VS RNN

(1)self-attention考虑的范围较广
Self-attention自注意力机制——李宏毅机器学习笔记_第40张图片

(2)倘若RNN要考虑最右边黄色vector要考虑最左边蓝色vector,则它需要将蓝色vector存到Memory中,然后不能忘掉一路带到最右边。
Self-attention自注意力机制——李宏毅机器学习笔记_第41张图片
(3)RNN:nonparallel
Self-attention自注意力机制——李宏毅机器学习笔记_第42张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第43张图片
Self-attention自注意力机制——李宏毅机器学习笔记_第44张图片

你可能感兴趣的:(李宏毅机器学习笔记,人工智能,自然语言处理)