论文地址: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. python黑帽子之tcp服务端

    试着用python创建一个标准的多线程tcp服务器 import socket import threading bind_ip = "0.0.0.0" bind_port = 8 ...

  2. springBoot--集成RocketMQ

    1.导入依赖 <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>sprin ...

  3. 如何使用ABP进行软件开发之基础概览

    ABP框架简述 1)简介 在.NET众多的技术框架中,ABP框架(本系列中指aspnetboilerplate项目)以其独特的魅力吸引了一群优秀开发者广泛的使用. 在该框架的赋能之下,开发者可根据需求 ...

  4. vue全家桶(2.6)

    3.9.滚动行为 设置滚动行为的作用是导航到新路由时,让页面滚动到你想要的位置. const router = new VueRouter({ routes: [...], scrollBehavio ...

  5. C# 做的Windows 应用程序 服务

    运行服务: ,cmd下进入目录 cd C:\Windows\Microsoft.NET\Framework\v4.0.30319\ ,安装服务 installutil F:\中原集团\天津CCHR\t ...

  6. JavaScript基础对象创建模式之命名空间(Namespace)模式(022)

    JavaScript中的创建对象的基本方法有字面声明(Object Literal)和构造函数两种,但JavaScript并没有特别的语法来表示如命名空间.模块.包.私有属性.静态属性等等面向对象程序 ...

  7. CentOS7下普通账号通过systemctl管理服务需要输入root密码问题

    问题描述: 使用普通账号test通过systemctl启动系统服务提示需要输入root密码: 解决方案: 根据上面提示得知权限由polkit进行管理,对应的是org.freedesktop.syste ...

  8. [译]高性能缓存库Caffeine介绍及实践

    概览 本文我们将介绍Caffeine-一个Java高性能缓存库.缓存和Map之间的一个根本区别是缓存会将储存的元素逐出.逐出策略决定了在什么时间应该删除哪些对象,逐出策略直接影响缓存的命中率,这是缓存 ...

  9. 在html中如何兼容使用WebP格式的图片【图片升级到WebP】

    把已有的图片转换为WebP格式 要使用WebP格式,需要将你网站用到的图片都制作一份WebP格式的版本,如果你使用CDN服务商,它们一般都会提供转码到WebP格式的选项.如又拍云: 增加这样的配置后, ...

  10. [JAVA]SpringBoot中让接口支持跨域

    官方原文:https://spring.io/blog/2015/06/08/cors-support-in-spring-framework ===抽空翻译 最简单办法:在方法上增加注解: @Cro ...