深度可分离卷积&&组卷积

目录

一:深度可分离卷积

深度可分离卷积完整示意图

普通卷积和深度可分离卷积计算量的对比

二:Group CONV(组卷积)


一:深度可分离卷积

深度可分离卷积被提出于MobileNet中,其主要作用用于减少模型参数和运算量。

深度可分离卷积主要由两部分构成:DW卷积和PW卷积

网络中的亮点在于(1)DW卷积(大大的减少了运算量和参数数量)

(2)增加了参数α和β

传统卷积和DW卷积的对比图如下所示:

在DW卷积中每个卷积核的深度都是为1的,每个卷积核只负责与输入特征矩阵的一个channel进行卷积运算,然后再得到相应的输出矩阵的一个channel

深度可分离卷积完整示意图

图中的PW卷积其实和普通的卷积区别不大,只是将卷积核大小变为1

普通卷积和深度可分离卷积计算量的对比

 

其中D_{F}代表的是输入特征矩阵的高和宽,D_{K}是卷积核的大小,M是输入特征矩阵的深度。然后N是输出特征矩阵的深度也对应着卷积核的个数。

所以普通卷积的计算量等于:卷积核的高*卷积核的宽*输入特征矩阵的深度*卷积核的个数N*输入特征矩阵的宽*输入特征矩阵的宽

 那么深度可分离卷积的计算量就等于DW卷积和PW卷积两种卷积的和

对于DW卷积:卷积核的高*卷积核的宽*1(因为卷积核的深度为1)*输入特征矩阵的深度*输入特征矩阵的宽度*输入特征矩阵的高度

对于PW卷积:1*1(这里的卷积核大小为1)*输入特征矩阵的深度*卷积核的个数*输入特征矩阵的高度和宽度

二:Group CONV(组卷积)

 组卷积和普通卷积对比示意图如下

假设每个卷积核的高和宽都是k,再假设输入特征矩阵的channel等于C_{in},卷积核个数等于n。普通卷积核所需要的参数数量为k*k*C_{in}*n。

而在组卷积中,在图中假设将输入特征矩阵的channel划分为两个组,然后再对每个组分别进行卷积操作。假设第一个组使用n/2个卷积核那么可以得到channel=n/2的特征矩阵,同理在第二个组中也使用n/2个卷积核,那么它的输出矩阵深度也是n/2。再将这两个特征矩阵的Contact拼接起来最终得到的特征矩阵也是n

参数量:假设卷积核的高和宽都是为k的,假设输入特征矩阵的channel等于C_{in}分成了g组,使用了g/n个卷积核。并且是划分了g个组·所以还需要乘一个g。

当分组个数与输入特征矩阵的Channel是保持一致的,并且输出特征矩阵的channel也与输入特征矩阵的channel保持一致的话,此时组卷积就是DW卷积

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Transformer和卷积合是一种常见的结构,用于处理序列数据或图像数据。这种合可以充分利用Transformer和卷积两者的优势,提高模型的表达能力和性能。 在自然语言处理领域,Transformer被广泛应用于处理序列数据,如文本生成、机器翻译等任务。而卷积神经网络(CNN)则擅长捕捉局部特征和平移不变性,常用于文本分类和文本情感分析等任务。为了结合两者的优势,可以将Transformer和卷积层串联或并联在一起。 一种常见的方法是将Transformer作为编码器来提取序列的全局特征,然后将这些特征输入到卷积层中进行局部特征的提取。这种结构通常被用于文本分类任务,其中Transformer负责学习句子的整体语义信息,而卷积层则负责捕捉句子中的局部特征。通过这种合,模型可以同时学习全局和局部特征,从而提高分类性能。 在图像处理领域,Transformer和卷积合也被广泛应用于图像分类、目标检测和图像生成等任务。一种常见的方法是使用Transformer作为注意力机制,用于学习图像中的全局关系和上下文信息。而卷积层则用于提取图像的局部特征。通过这种合,模型可以同时捕捉全局和局部的图像信息,从而提高模型对图像的理解能力。 总之,Transformer和卷积合可以充分发挥两者的优势,提高模型的表达能力和性能。在不同领域和任务中,可以根据具体需求设计合适的结构来结合Transformer和卷积

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值