Non-local Neural Networks 论文阅读小结

论文链接: https://arxiv.org/abs/1711.07971.

程序链接: https://github.com/Henuzhaoyli/Non-local_pytorch.

1 摘要

卷积操作和循环操作都是一次处理一个局部的模块。本文提出了一个非局部操作,来捕获远程的依赖关系,非局部操作将某一位置的响应计算为所有位置特征的加权和。

对于卷积核循环操作,为了得到远距离的信息,需要重复的操作,缺点:

1. 计算效率低
2. 优化困难

利用Non-Local 模块的优点
1. 非局部操作通过计算任意两个位置之间的相互作用,直接捕获长期依赖关系,而不管它们的位置距离如何
2. 非局部操作是有效的,即使只有几个层(例如,5),也能获得最佳结果
3. 最后,我们的非局部操作保持了可变的输入大小,并且可以很容易地与其他操作(例如,我们将使用的卷积)结合在一起。

Non-Local Neural Networks

在这里插入图片描述
上面的公式中,输入是x,输出是y,i和j分别代表输入的某个空间位置,x_i是一个向量,维数跟x的channel数一样,f是一个计算任意两点相似关系的函数,g是一个映射函数,将一个点映射成一个向量,可以看成是计算一个点的特征。也就是说,为了计算输出层的一个点,需要将输入的每个点都考虑一遍,而且考虑的方式很像attention:输出的某个点在原图上的attention

2.1 理论研究

以图像为例,为了简化问题,作者简单地设置g函数为一个1*1的卷积。相似性度量函数f的选择有多种:

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章