[2022]李宏毅深度学习与机器学习各种各样的Self-attention

[2022]李宏毅深度学习与机器学习各种各样的Self-attention

  • 做笔记的目的
  • Self-attention
    • Longformer 和 Big Bird
    • Reformer
    • Sinkorn
    • Linformer
    • Linear Transformer and Performer
    • Synthesizer

做笔记的目的

1、监督自己把50多个小时的视频看下去,所以每看一部分内容做一下笔记,我认为这是比较有意义的一件事情。
2、路漫漫其修远兮,学习是不断重复和积累的过程。怕自己看完视频不及时做笔记,学习效果不好,因此想着做笔记,提高学习效果。
3、因为刚刚入门深度学习,听课的过程中,理解难免有偏差,也希望各位大佬指正。

Self-attention

Self-attention 运算量非常大,所以有很多研究都在关注如何减少计算量,下图中圆圈大小代表参数量,横坐标是时间,纵坐标是准确率。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第1张图片
主要介绍下面几种方法:
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第2张图片
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第3张图片
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第4张图片
当self-attention运用到图像里面时,N会非常大运算量会非常惊人。所以一般加速的self-attention一般运用在图像领域

Longformer 和 Big Bird

Local attention
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第5张图片
只和局部的几个做attention,这种方法在一些领域比较合适,比如语言识别,当前的可能之和前后的一些信息有关系。这个就非常像CNN了,所以不一定能给出比较好的结果。
Stride Attention
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第6张图片
空n格然后计算attention。
Global Attention 设置特殊的token,但是这个需要根据人的经验的设置。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第7张图片
这么多方法,要怎么选择那?给的答案是小孩子才做选择,我全都要。可以多通道,这样就全部都要了。所以就有了Longformer,在Longformer之上加一个random attention就有了Big Bird
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第8张图片
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第9张图片

Reformer

Attention 里面并不是所有值都比较大,我们如果可以估计哪些q和k组合能形成较大的值,就可以省略计算小的value,直接计算大的value,这样的就可以减少运算量。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第10张图片
这里用到了聚类技术,相近的输入同一个类,只对同一类进行计算,如下面第二个图,只需要计算一些地方的value。同时clustering也要消耗计算资源,但是clustering有很多加速方法,这个就是另外一个故事了。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第11张图片
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第12张图片

Sinkorn

为什么不可以直接训练出来什么地方是0,什么地方是1那?这个想法其实是可行的,也有人这么做了。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第13张图片
这里好几个向量共用同一个向量,比如100个向量分为10为向量,那么就是nn只需要产生1010的向量。最后放大成100100。

Linformer

并不一定需要全部计算出来,有很多重复的。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第14张图片
做法是这样的,用N个key里面跳出K个有代表的,同时Value也挑出K个,然后相乘就可以。这里不能把query变小,因为会影响输出的维度。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第15张图片
挑选K个有代表性的,有很多种方法,比如可以做卷积,也可以乘一个N*K的向量。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第16张图片

Linear Transformer and Performer

让矩阵的计算方式转化一下,两种方法但是计算量却不一样。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第17张图片
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第18张图片

Synthesizer

真的需要q和k产生权重嘛?不可以直接学习出来吗?其实是可以的,也有人这么干,而且效果还可以。
[2022]李宏毅深度学习与机器学习各种各样的Self-attention_第19张图片
所以可能需要重新思考q和k得价值。

你可能感兴趣的:(深度学习,李宏毅深度学习笔记,深度学习,人工智能)