Transformer注意力机制总结

ViT

直接上图

Transformer注意力机制总结_第1张图片

这个是最原始的transformer,后续出的一些transformer都是在这个基础上进行的改进。

里面的注意力机制借鉴李宏毅老师的图:

Transformer注意力机制总结_第2张图片 

注意力分数是由query矩阵和key矩阵点成得到的。这个点乘是对全图进行处理,进行全图的自注意力。

Swintransformer

swintransformer是在ViT的基础上对全图进行了窗口化的处理。

直接上图:

Transformer注意力机制总结_第3张图片

论文作者处理的方式是对整张图划分为许多窗口,这样处理起来效率更高,划分为一个个窗口之后,就带有了卷积的归纳偏置的性质,在处理图片的时候收敛更快,不容易过拟合(个人理解,如有错误欢迎批评)。

还有很多transformer的其他变体,例如BoTNet:

Transformer注意力机制总结_第4张图片

Cross_ViT: 

 Transformer注意力机制总结_第5张图片

将图片划分为不同大小的patch,然后分别进行处理。

跨patch的注意力如图:

Transformer注意力机制总结_第6张图片

DynamicViT

上图:

Transformer注意力机制总结_第7张图片

这里特征重利用为:

Transformer注意力机制总结_第8张图片 

关系重利用为:

Transformer注意力机制总结_第9张图片 

这里就不仔细介绍了,有兴趣的朋友们可以去下载原文多了解一下。

原文连接:

ViT:

arXiv:2010.11929

Swintransformer:

arXiv:2103.14030

BoTNet:

https://arxiv.org/abs/2101.116Cross_ViT:

Cross_ViT:

arXiv:2103.14899

DynamicViT:

arXiv:2105.15075

还有很多transformer和卷积结合互补的文章,只要是我看过的以后也会陆续地有个小总结吧。欢迎大家关注我,及时的对我批评指正。 

你可能感兴趣的:(transformer,深度学习,人工智能)