• channel-wise卷积--学习笔记


    1. 背景:

      1. 分组卷积的分组思想会导致channel间的信息阻隔,为了增加分组间的channel信息交流,一般需要添加一个融合层。

      2. 一般网络最后都使用全局池化和全连接层进行最后的分类,但参数量巨大,可转化为深度可分离卷积,使用固定权重的深度卷积代替全局池化,pointwise卷积代替全连接层。

      3. alexnet使用完全独立的组卷积,两个组之间没有信息交互

      4. mobilenet使用深度可分离卷积,使用1X1 point-wise 卷积全连接使各个通道交换信息。(1X1标准卷积是一种全连接结构,从m个特征到n个特征的映射,需要使用n个1X1*m的卷积核)

      5. shuffleNet虽然使用完全独立的组卷积,但每次组卷积之前都重新打乱各通道的顺序,实现通道间顺序的交互

    2. channel-wise卷积:

      1. 在channel维度上进行滑动,能够更好地保留channel间的信息交流

      2. 改变输入到输出的稠密连接方式:将输入输出的维度连接进行稀疏化而非全连接(每个输出仅与部分输入相连,以一定的stride去采样多个相关输入进行输出,能够减低参数量以及保证channel间一定程度的信息流),区别于分组卷积的严格分组。

      3. channel-wise卷积使用1个共享的1维卷积核(1个d_c维的卷积核),相当于对原始输入在通道维度上做采样。

      4. 一般网络最后是全局池化+全连接层,但是全连接层的参数量十分巨大,将全连接层修改为channel-wise convolution。全局池化相当于DfXDfX1的3D卷积,而channel-wise convolution相当于是1X1XDc的3D卷积,因此两者可以组合成DfXDfXDc的3D卷积,其中  ,是为了保证最后得到n个映射(stride=1 padding=0)。

      5. 核心:通过1维卷积,在channel维度上卷积(采样),实现了分组卷积各通道的稀疏通信,在channel维度上滑动采样,一个组的特征来自多个通道采样,一个通道可以被多个组采样,使得各组的通道信息充分相融

      6. channel-wise卷积可视化:

    3. 深度可分离卷积:

      1. 能够减少网络的计算量和参数量

      2.  全连接分类层的权重实际非常稀疏(很多是为0或接近0的值(论文ChannelNets: Compact and Efficient Convolutional Neural Networks via Channel-Wise Convolutions对全连接分类层进行了可视化)) 

    4. point-wise和channel-wise对比:
  • 相关阅读:
    降噪耳机哪款好用?主动降噪蓝牙耳机推荐
    在IDEA中使用Git
    vue 自定义指令简单记录
    leetcode:1201. 丑数 III【二分 + 数学 + 容斥原理】
    猴子也能学会的jQuery第一期——什么是jQuery
    『亚马逊云科技产品测评』活动征文|利用EC2云服务器快速部署一个SpringBoot项目
    Dubbo中的Triple协议和应用级服务发现
    canvas note
    十分钟搞定Jenkins+Gitlab+Docker前后端部署,以Spring和Vue项目为例
    Linux运维_Bash脚本_部署安装DocBook-XML-4.5(XML-DTD)
  • 原文地址:https://blog.csdn.net/weixin_45647721/article/details/126285555