说明:网络上关于论文的描述是挺多的,但是只从论文表面很难的透彻,所以本文从网络出发,可以更好的理解HA-CNN,如果有错,欢迎指出,感谢!
论文贡献点:
- HA-CNN
- 交叉注意交互学习机制,以进一步提高注意选择和特征表示之间的相容性。
HA-CNN
1.总布局
- 全局分支(+soft attention),目的是从整个图像中学习最优的整体特征。
- 局部分支包含了4个直流,每个支流的目的是学习图片的一个局部区域
2.HA模块
上图红色的HA模块有两个输出,一个是soft attention,一个是hard attention。
soft attention(包括空间注意力、通道注意力)软注意学习的目的是选择细粒度的重要像素点
,它们是pixel级。
hard attention( local 注意力)硬注意学习则致力于搜索粗糙的潜在判别区域
,它们是region级。
他们在功能上有很大的互补性。他们的结合使用可以提高模型的性能
软、硬注意力生成图
3.HA-CNN网络总分析
4.Cross-Attention Interaction
以下是对于HA-CNN图中的加号处描述
考虑了一种交叉注意交互机制,通过跨分支参与的局部和全局特征的交互来丰富他们的联合学习和谐。通过这样做,我们可以同时降低局部分支的复杂性(较少的层),因为全局分支的学习能力可以部分共享。
公式描述(需要结合我上面手绘图
,–>表示经过):
1:初始图片–>HA1处的STN–>d1得到的一个local
2:是经过HA1后的图片–>HA2处的STN得到的一个local
3:两个local图的和(也就是HA-CNN图中加号的描述)
将3经过d2后就得到了local2的特征
实验分析
- 硬注意力(local)提升较高
- Cross-Attention Interaction(红色加号的操作)影响确实很大
- HA-CNN模型很小
启发
1. 三个不同的HA,且层层递进(让HA输出的soft attention 和hard attention都在渐进式学习)
解释:
根据HA-CNN图来看,共有3个HA, 每个HA模块都经过了专门的优化
(具体指的是经过d1,d2,d3三个不同的inception生成三个HA),以单独处理其自身级别的输入特性表示。在CNN分层框架中,这自然允许分层的多层次注意力学习,以分而治之的设计精神逐步完善注意力地图。可以显著减少注意搜索空间(即模型优化的复杂性),同时允许多尺度的层次特征选择性来丰富最终的特征表示。这种渐进的整体注意力模型对于人的识别来说既直观又重要。
2. Cross-Attention Interaction
解释:
这一部分是对于局部分支的操作,一个local的生成由局部分支
的local和全局分支
的local相加得到。**全局分支local的描述:**因为一张图片经过HA1后便有了注意力,HA2产生stn参数,作用到有注意力的图片上,则说明得到的local是经过全局注意力洗礼过的。
所以两个local相加的特征会更好。