论文地址:https://arxiv.org/pdf/2006.11538.pdf

github:https://github.com/iduta/pyconv

作者认为,当前CNN主要存在两个不足:(1)实际的感受野不足;(2)在下采样中,很多的细节信息会丢失。

从图中可以看出,有的物体尺寸较大(建筑、沙发),有的物体尺寸较小(行人,书本)。这种尺寸的变化是标准卷积级经捕获的。为此,作者提出了金字塔卷积(Pyramid Convolution, PyConv),包含不同尺度的卷积核,可以提取多尺度信息,在多个任务上均取得了较好的性能

PyConv 的示意如图所示,直观来看,就是从上往下卷积核的大小依次减小,同时,在通道维度上,通道的数目依次增加。最后将得到的 feature map 拼接起来。

在图像分类任务中的 PyConv 示意所图所示,首先是9X9的卷积,16个卷积核,分为16组,因此生成16X16=256个 feature map;然后是7X7的卷积,16个卷积核,分为8组,因此生成16X8=128个 feature map;接着是5X5的卷积,16个卷积核,分为4组,因此生成16X4=64个 feature map;最后是3X3的卷积,16个卷积核,只有1组,因此生成16X1=16个 feature map。然后,会用1X1的卷积来使输出的维度都为 256。

备汪:关于分组卷积,网上有一个比较形象的图示。对于普通卷积,如果输入的 feature map 尺寸为CHW, 卷积核的数量为N,每个卷积核的尺寸为CxKxK,那么输出的 feature map 尺寸为 CHN,总的参数量为:NxCxKxK 。

如果进行分组卷积,假定要分成 G 组,每组输入的 feature map 数量为 \(\frac{C}{G}\),每组输出的 feature map 数量为 \(\frac{N}{G}\),每个卷积核的尺寸为\(\frac{C}{G}\times K\times K\), 每组的卷积核数量为 \(\frac{N}{G}\),卷积核只与同组的输入进行卷积,则总的参数量为 \(N\times \frac{C}{G} \times K \times K\),则总的参数量减少为以前的 \(\frac{1}{G}\)。

当分组数量等于输入map数量,输出map数量也等于输入map的数量,即 G=N=C,每个卷积核尺寸为\(1\times K \times K\)时,就成了 Depthwise convolution。

金字塔卷积 PyConv,通过集成不同尺度的卷积核,提升了多个视觉任务的性能,同时,该模块是一种“即插即用”的模块,可以较好的嵌入不同的网络架构中。

金字塔卷积:Pyramidal Convolution的更多相关文章

  1. 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (二)

    本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...

  2. 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一)

    本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...

  3. 卷积(convolution)与相关(correlation)(matlab 实现)

    1. 卷积(convolution) 输出 y(n) 是作为在 x(k) 和 h(n−k)(反转和移位)重叠之下的样本和求出的. 考虑下面两个序列: x(n)=[3,11,7,0,−1,4,2],−3 ...

  4. 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (三)

    本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...

  5. 【论文笔记】Pyramidal Convolution: Rethinking Convolutional Neural Networks for Visual Recognition

    地址:https://arxiv.org/pdf/2006.11538.pdf github:https://github.com/iduta/pyconv 目前的卷积神经网络普遍使用3×3的卷积神经 ...

  6. 转置卷积Transposed Convolution

    转置卷积Transposed Convolution 我们为卷积神经网络引入的层,包括卷积层和池层,通常会减小输入的宽度和高度,或者保持不变.然而,语义分割和生成对抗网络等应用程序需要预测每个像素的值 ...

  7. 信号处理——卷积(convolution)的实现

    作者:桂. 时间:2017-03-07  22:33:37 链接:http://www.cnblogs.com/xingshansi/p/6517301.html 前言 信号时域.频域对应关系,及其D ...

  8. 各种卷积类型Convolution

    从最开始的卷积层,发展至今,卷积已不再是当初的卷积,而是一个研究方向.在反卷积这篇博客中,介绍了一些常见的卷积的关系,本篇博客就是要梳理这些有趣的卷积结构. 阅读本篇博客之前,建议将这篇博客结合在一起 ...

  9. [翻译] 扩张卷积 (Dilated Convolution)

    英文原文: Dilated Convolution 简单来说,扩张卷积只是运用卷积到一个指定间隔的输入.按照这个定义,给定我们的输入是一个2维图片,扩张率 k=1 是通常的卷积,k=2 的意思是每个输 ...

随机推荐

  1. Electron: 如何以 Vue.js, Vuetify 开始应用

    Electron: 使用 JavaScript, HTML 和 CSS 等 Web 技术创建原生程序的框架 Vue.js: Web 前端用于构建用户界面的渐进式框架 Vuetify: Vue.js 的 ...

  2. 一文说通MongoDB via Python操作

    Python并不仅仅是一个做Machine Learning的语言.   说到Python,一般都会感觉它关联着ML,如果不是做ML开发,就会觉得离自己很远.而实际上,作为一门语言,Python在应用 ...

  3. Java项目开启远程调试(tomcat、springboot)

    当我们运行一个项目的时候,一般都是在本地进行debug.但是如果是一个分布式的微服务,这时候我们选择远程debug是我们开发的利器. 环境apache-tomcat-8.5.16 Linux 如何启用 ...

  4. 飞越面试官(二)--JUC

    大家好!我是本号唯一官方指定没头屑的小便--怕屁林. JUC是什么东西?我相信很多经验尚浅的小伙伴部分都会为之一懵,我也是,三个字母都会读,连在一起就不知道在说什么,其实如果把它的全称写出来,“jav ...

  5. Oracle Solaris 10图文安装

    文章目录 1. 虚拟机软件 2. solaris 10镜像 3. 安装OS 4. 允许远程使用root用户登录SSH 5. bash配置 5.1. 修改bash 5.2. 修改提示符 6. CRT连接 ...

  6. CF1051F The Shortest Statement 题解

    题目 You are given a weighed undirected connected graph, consisting of n vertices and m edges. You sho ...

  7. 洛谷P3237 米特运输

    题目链接 题意: 中文题,挺好理解.就是让节点的权值等于各子节点权值之和,然后每个子节点的权值相等,原本每个点有一个权值,通过最少次的修改(可以修改成小数)使其满足要求. 分析: 题意一旦读明白,题什 ...

  8. Aaronson,又是思维题

    题目: Recently, Peter saw the equation x0+2x1+4x2+...+2mxm=nx0+2x1+4x2+...+2mxm=n. He wants to find a ...

  9. 记录一次dns引发的线程池故障

    # 问题描述 公司做的是一个支付系统,会对接很多第三方公司. 突然有一天,有一家第三方(简称金花平台)反应收不到我们的通知消息. # 排查过程 我们登陆自己的服务器,检查程序日志,是有给金花平台发送通 ...

  10. Maven 专题(四):什么是Maven

    1 Maven 简介 Maven 是 Apache 软件基金会组织维护的一款自动化构建工具,专注服务于 Java 平台的项目构建和 依赖管理.Maven 这个单词的本意是:专家,内行.读音是['meɪ ...