DiCENet:Dimension-wise Convolutions for Efficient Networks

DiCENet:Dimension-wise Convolutions for Efficient Networks

Source code: https://github.com/sacmehta/EdgeNets
原文:https://arxiv.org/pdf/1906.03516v1.pdf

DiCENet

在这里插入图片描述
在本文中,我们提出了一种新的CNN模型DiCENet,它是使用以下方法构建的:(1)维度方向卷积和(2)有效信道融合。 通过学习所有维度的表示,引入的块最大限度地利用了输入张量中的信息,同时降低了网络的复杂性并实现了高精度。 我们的模型显示了对各种视觉识别任务(包括图像分类,对象检测和语义分割)的最新模型的显着改进。 我们的模型提供与具有更少FLOP的现有模型相同或更好的性能,包括特定于任务的模型。显然,DiCENet在较少的FLOP(70-100 MFLOP)下提供具有竞争力的性能基于语音架构搜索的方法。
下面,主要将讲两个模块:维度卷积(DimConv)&信道融合(EFuse)

维度卷积(DimConv)

维度卷积根据张量的所有维度信息进行编码(原文:DimConv encode information from all dimensions of the tensor.)这样做提高了卷积的学习能力并且减少了在其他层上的计算负担。

详细方法:
输入X:D×H×W
同水平的深度卷积:k:×n×n,n 为核大小;通过深度卷积,输出为Y:D×H×W。
为了沿着信道维度进一步编码信息,对输入张量的深度卷积维度进行扩张,并命名为DimConv.

DimConv 有三个分支:
这三个分支分别沿着深度KD:1×N×N;宽度KW:N×N×1;高度KH:N×1×N编码来自输入张量的所有维度的信息。
这些独立分支的输出沿着通道维度连接起来以产生输出:Y_Dimw={YD,YW,YH}为3D×H×W形式。
为了便于学习内部维度表示,我们在YDimW中对空间平面(或特征图)进行分组,使得每个组具有来自每个维度的空间平面。 然后,我们将这些按维度分组的表示与D逐点群卷积核kCD∈R3×1×1组合以产生加权平均输出YDimW∈RD×H×W

信道融合(EFuse)

信道融合方式
为了能够使得一D×H×W的输入能够得到一个输出为D×H×W的张量,逐点群卷积执行H×W×D×D的操作,这个计算量较大,因此我们设计了EFuse作为替代。

详细方法:
在EFuse中,使用全局平均池化操作来压缩Y_Dimw的空间维度,以提取全局向量描述符yg∈RD。而不是对空间中所有元素进行通道融合。

然后,使用全连接的层融合全局向量yg内的通道,以产生融合向量yg∈RD。

并行地,我们通过将D深度卷积核kS∈R1×n×n应用于YDimW来编码空间表示以产生输出YS。

接下来,我们通过在yf上应用sigmoid,然后沿着空间维度将其与YS的所有元素相乘,沿着空间维度在YS上传播融合矢量yf。 我们选择sigmoid函数来防止训练期间的梯度爆炸。
EFuse的复杂度为D^2 + n^2 ×H×W×D.逐点群卷积的计算复杂度为H×W×D^2
在这里插入图片描述

举个例子:如果输入为256×56×56,n=3,EFuse需要的计算量(7290880)比逐点群卷积(point-wise)计算量(205520896)少28倍。

这是本文模型框架图

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值