TL;DR
融合Non-Local Network和SENet两个方法。
精简了Non-Local的计算复杂度。
方法
首先是对Non Local的改进,non local中包含一个self-attention操作,计算复杂。但实际上,如上图,其中每个图代表红点位置对应的热度图,不同位置之间其实没有明显差别,故此本文对此做了精简。直接将HW*HW大小的不同位置的关系图降为了HW*1*1,但相应的feature最终的大小也变为了C*1*1。此外,由于前人的工作,有没有不太重要,故此将省去。Simplified NL Block的公式如下。
可以看出是可以移到attention外的,故此进一步精简计算量变为下图中的(b)。
对比SE Net发现,Non-Local和SE都可以抽象为context modeling + transform两个阶段,因此可以用se block的transform阶段优化下non local,在有non-local的spatial attention的情况下引入se的channel spatial,最终形成图d的GC block。同时也可以说SE的GAP是non-local的一种特殊形式。
实验
表4可以看出相对于原始模型,GC Block明显增加了参数量,但计算量没有明显增加。相对于No-Local而言,计算量明显下降。符合预期。
此外,在实际任务上也能取得明显的涨点。