论文传送门:Bottleneck Transformers for Visual Recognition
前置文章:ViT模型——pytorch实现
BoTNet的目的:
为网络添加注意力机制。
BoTNet的方法:
在ResNet中,将ResNet Bottleneck替换为Bottleneck Transformer。
BoT的结构:
左:标准的Transformer结构;
中:Bottleneck Transformer(BoT)结构;
右:Bot在ResNet中的应用实例。
BotNet-50的结构:
相较于ResNet-50,将c5 stage的残差结构替换为BoT结构。
MHSA的结构:
Multi-Head Self Attention结构,请参考:Attention Is All You Need。
注意:引入Position Embedding模块,为attention添加位置信息。
Position Embedding:
作者在MHSA中引入Relative Position Encodings(Embedding)模块。
作者进行消融实验,对比了No Position Encodings / Relative Position Encodings / Absolute Position Encodings以及不同的添加方式的模型性能,最后发现 q k T + q r r e l a t i v e T qk^T + qr^T_{relative} qkT+qrrelativeT的效果最好。