Local Relation Networks for Image Recognition
概
一种特殊的卷积?
主要内容
CNN通过许许多多的filters进行模式匹配(a pattern matching process), 非常低效, 本文提出利用局部相关性来替代这些卷积层.

输入特征图\(X \in \mathbb{R}^{C \times H \times W}\);
特征图通过1x1的卷积(channel transformation layer)分别获得key map, query map, 二者的大小均为\(C/m \times H \times W\);
对于query map上的每一个点\(q_{p'}\), 计算其与kxk邻域内的点\(k_p\)间的relation:
\[w(p', p) = \mathrm{softmax}(\Phi(q_{p'}, k_p) + f_{\theta_g}(p - p')),
\]其中
\[\Phi(q_{p'}, k_p) = -(q_{p'}-k_q)^2,
\]\(f_{\theta_g}(p-p')\)是通过两层1x1卷积获得的\(C/m \times k \times k\), 反映了Geometry Prior, 实际上就是相对距离的度量.
注: 因为每个\(p\)都可以用\((h, w)\)来表示点的位置, 故途中的Position是两个通道的.
此时, 对于feature map中的任一点\(p\)都有了对应的\(w\), 通过此可以计算出一个对应的值, 于是可以得到\(C \times H \times W\)的新的特征图, 概特征图反应了点与其对应的kxk邻域内的点的相对关系. 需要注意的是, 图中是\(m \times C/m \times k \times k\)的形式呈现, 这是因为作者令每\(m\)个通道共享一个relation \(w\)(用于减少计算量), 等价于每个点会被作用\(C/ m\)个kernel, 故aggregation weights 是\(C/m\)个通道的.
最后, 再通过1x1的卷积将特征图转换为\(C'\times H \times W\)的输出, 图中应该是作者的笔误.
看起来整个网络的权重似乎很少啊, 都是1x1的卷积.
Local Relation Networks for Image Recognition的更多相关文章
- Paper Reading: Relation Networks for Object Detection
Relation Networks for Object Detection笔记 写在前面:关于这篇论文的背景知识,请参考我前面的两篇随笔(<关于目标检测>和<关于注意力机制> ...
- 【ML】Two-Stream Convolutional Networks for Action Recognition in Videos
Two-Stream Convolutional Networks for Action Recognition in Videos & Towards Good Practices for ...
- 目标检测--Spatial pyramid pooling in deep convolutional networks for visual recognition(PAMI, 2015)
Spatial pyramid pooling in deep convolutional networks for visual recognition 作者: Kaiming He, Xiangy ...
- Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition Kaiming He, Xiangyu Zh ...
- SPPNet论文翻译-空间金字塔池化Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
http://www.dengfanxin.cn/?p=403 原文地址 我对物体检测的一篇重要著作SPPNet的论文的主要部分进行了翻译工作.SPPNet的初衷非常明晰,就是希望网络对输入的尺寸更加 ...
- Spatial-Temporal Relation Networks for Multi-Object Tracking
Spatial-Temporal Relation Networks for Multi-Object Tracking 2019-05-21 11:07:49 Paper: https://arxi ...
- 深度学习论文翻译解析(九):Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
论文标题:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition 标题翻译:用于视觉识别的深度卷积神 ...
- 论文阅读笔记二十五:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition(SPPNet CVPR2014)
论文源址:https://arxiv.org/abs/1406.4729 tensorflow相关代码:https://github.com/peace195/sppnet 摘要 深度卷积网络需要输入 ...
- 卷积神经网络用于视觉识别Convolutional Neural Networks for Visual Recognition
Table of Contents: Architecture Overview ConvNet Layers Convolutional Layer Pooling Layer Normalizat ...
随机推荐
- day14 linux三剑客之sed命令
day14 linux三剑客之sed命令 sed命令 Sed 主要用来自动编辑一个或多个文件.简化对文件的反复操作.编写转换程序等. sed(流式编辑器) : sed主要用来修改文件. 1.sed命令 ...
- netty系列之:手持framecodec神器,创建多路复用http2客户端
目录 简介 配置SslContext 客户端的handler 使用Http2FrameCodec Http2MultiplexHandler和Http2MultiplexCodec 使用子channe ...
- 深度学习初探——符号式编程、框架、TensorFlow
一.命令式编程(imperative)和符号式编程(symblic) 命令式: import numpy as np a = np.ones(10) b = np.ones(10) * 2 c = b ...
- scanf("%c\n",&a)和scanf("%c",&a)区别
scanf("%c",&a); 当输入字符的时候,我们按下任意字符 + 回车的时候,回车没有被当作为分隔符,而是作为一个转义字符与输入的字符一起保存在缓存区.第一次scan ...
- 02 - Vue3 UI Framework - 顶部边栏
顶部边栏比较简单,而且首页和文档页都需要,所以我们先从顶部边栏做起 前文回顾点击 这里 返回阅读列表点击 这里 初始化 首先,在 components 文件夹下,创建一个 vue 组件,命名为 Top ...
- 花授粉优化算法-python/matlab
import numpy as np from matplotlib import pyplot as plt import random # 初始化种群 def init(n_pop, lb, ub ...
- [BUUCTF]PWN——jarvisoj_tell_me_something
jarvisoj_tell_me_something 附件 步骤: 例行检查,64位程序,开启了NX保护 运行一下程序,看看程序的大概流程 64位ida载入,shift+f12检索程序里的字符串 看到 ...
- CF1427A Avoiding Zero 题解
Content 请将一个长度为 \(n\) 的数列 \(A\) 重新排序,使得这个数列所有的前缀和 \(\neq 0\),或者证明没有这样的方案. 数据范围:\(t\) 组数据,\(1\leqslan ...
- CF1292B Aroma's Search 题解
Content 给定一个坐标系,已知第一个点的坐标为 \((x_0,y_0)\),第 \(i(i>0)\) 个点的坐标满足这样的两个递推式:\(x_i=a_xx_{i-1}+b_x,y_i=a_ ...
- java 常用类库:Math:常用min、max;floor;ceil;random;
Math //7.取整数小于目标的最大整数(Math.floor(1.2));//8.取整数.获取大于目标的最大整数System.out.println(Math.ceil(1.2)); //18.获 ...