专栏首页机器学习、深度学习卷积网络基础知识---Group Convolution分组卷积

卷积网络基础知识---Group Convolution分组卷积

Group Convolution分组卷积,以及Depthwise Convolution和Global Depthwise Convolution

https://www.cnblogs.com/shine-lee/p/10243114.html

写在前面 Group Convolution分组卷积,最早见于AlexNet——2012年Imagenet的冠军方法,Group Convolution被用来切分网络,使其在2个GPU上并行运行,AlexNet网络结构如下:

Convolution VS Group Convolution 在介绍Group Convolution前,先回顾下常规卷积是怎么做的,具体可以参见博文《卷积神经网络之卷积计算、作用与思想》。如果输入feature map尺寸为C∗H∗W,卷积核有N个,输出feature map与卷积核的数量相同也是N,每个卷积核的尺寸为C∗K∗K,N个卷积核的总参数量为N∗C∗K∗K,输入map与输出map的连接方式如下图左所示,图片来自链接:

Group Convolution顾名思义,则是对输入feature map进行分组,然后每组分别卷积。假设输入feature map的尺寸仍为C∗H∗W,输出feature map的数量为N个,如果设定要分成G个groups,则每组的输入feature map数量为CG,每组的输出feature map数量为NG,每个卷积核的尺寸为CG∗K∗K,卷积核的总数仍为N个,每组的卷积核数量为NG,卷积核只与其同组的输入map进行卷积,卷积核的总参数量为N∗CG∗K∗K,可见,总参数量减少为原来的 1G,其连接方式如上图右所示,group1输出map数为2,有2个卷积核,每个卷积核的channel数为4,与group1的输入map的channel数相同,卷积核只与同组的输入map卷积,而不与其他组的输入map卷积。

下图则是一个群卷积的CNN结构。filters被分成了两个group。每一个group都只有原来一半的feature map。

Group Convolution的用途 减少参数量,分成G组,则该层的参数量减少为原来的1G Group Convolution可以看成是structured sparse,每个卷积核的尺寸由C∗K∗K变为CG∗K∗K,可以将其余(C−CG)∗K∗K的参数视为0,有时甚至可以在减少参数量的同时获得更好的效果(相当于正则)。 当分组数量等于输入map数量,输出map数量也等于输入map数量,即G=N=C、N个卷积核每个尺寸为1∗K∗K时,Group Convolution就成了Depthwise Convolution,参见MobileNet和Xception等,参数量进一步缩减,如下图所示

更进一步,如果分组数G=N=C,同时卷积核的尺寸与输入map的尺寸相同,即K=H=W,则输出map为C∗1∗1即长度为C的向量,此时称之为Global Depthwise Convolution(GDC),见MobileFaceNet,可以看成是全局加权池化,与 Global Average Pooling(GAP) 的不同之处在于,GDC 给每个位置赋予了可学习的权重(对于已对齐的图像这很有效,比如人脸,中心位置和边界位置的权重自然应该不同),而GAP每个位置的权重相同,全局取个平均,如下图所示:

以上参考 A Tutorial on Filter Groups (Grouped Convolution) Interleaved Group Convolutions for Deep Neural Networks

11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 卷积网络基础知识---Depthwise Convolution && Pointwise Convolution && Separable Convolution

    https://yinguobing.com/separable-convolution/#fn2

    用户1148525
  • 目标检测--Wide-Residual-Inception Networks for Real-time Object Detection

    本文主要是在 Residual 和 Inception 基础上构建新的模型,实现实时物体检测。构建的新模型特色是占用内存少,计算量小。新网络命名为 wide-r...

    用户1148525
  • CNN交通场景解析--Spatial as Deep: Spatial CNN for Traffic Scene Understanding

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.n...

    用户1148525
  • 卷积网络基础知识---Depthwise Convolution && Pointwise Convolution && Separable Convolution

    https://yinguobing.com/separable-convolution/#fn2

    用户1148525
  • AlexNet论文阅读

    摘要主要介绍了其神经网络的结构——5个卷积层(每个卷积层($convolutional\ layers$)后面都跟有池化层($max-pooling\ lay...

    mathor
  • 为什么要使用卷积

    假设你有32X32X3的图像,一共3072个特征点,卷积成28X28X6的图像,一共4704个特征点。如果使用传统的网络,你需要3072*4704 ≈\appr...

    Steve Wang
  • Python的map函数理解四式

    这个map函数是python的内嵌的函数, 那么如何手写一个自己的map函数, 实现内嵌map函数一模一样的功能呢?

    史博
  • TrajGRU降雨量预测: 一个基准和一个新的模型

    前面看过ConvLSTM的文章: 初识ConvLSTM, 这篇文章和ConvLSTM算是姊妹篇吧,先大概看看,后面有时间再仔细研读~

    深度学习与交通大数据
  • Shader初学笔记:等值线

    http://www.cnblogs.com/lpcoder/p/7103634.html

    clawclaw
  • 创业后,回家过年成了最大的奢侈 | 创始人谈春节

    ? 来源:腾讯云启 ---- 过年,是根植在每个中国人心中的信仰,是内心会涌起仪式感的时间节点。我们会思考过去一年的跌宕起伏,如意的,不如意的,自己做了什么,...

    腾讯SaaS加速器

扫码关注云+社区

领取腾讯云代金券