大家好,欢迎来到《知识星球》专栏,这个专栏专栏剖析有三AI知识星球的内容生态,今天的内容属于网络结构1000变板块。

作者&编辑 | 言有三

你大概已经见惯了基本的卷积结构,对残差网络也了如指掌,对分组卷积也烂熟于心,也知道模型压缩的一些技巧,不过今天这里要说的,大部分同学可未必知道噢。

大众的模型结构咱们不讲,今天从卷积方式,通道变化,拓扑结构等各方面给大家介绍几个模型,立志于在这个方向发文章的同学,可要看仔细了。

1 渐变的宽度-金字塔结构

这是一个通道数的变化方式相关的网络结构。

有三AI知识星球-网络结构1000变

Pyramidal Residual Networks

通常来说,网络结构的通道数量变化是突变的,那有没有网络的增加是缓慢变化的呢?这就是金字塔结构了,名为Pyramidal Residual Networks。

作者/编辑 言有三

大家都知道,CNN等结构在特征图尺度减小的时候,通常会随之增加特征图的通道数目来增加高层的表达能力,这是模型性能的保证,大部分的模型其特征图通道数的增加是跳变的,比如从128增加到256。

之前我们讲述过随机删减深度的残差网络证明了深度残差网络的深度其实没有想象中那么深,在文章“Residual networks behave like ensembles of relatively shallow networks[C]”中的研究也表明删除掉一些block并不会显著降低性能,但是降采样的网络层除外。

本篇文章基于这个现象,认为要降低降采样的敏感性,必须要让通道的变化是缓慢的,即随着层数增加,每一层都慢慢增加宽度,命名为金字塔结构,如下。

这里a图是线性增加,b图是指数级增加。

那么到底性能如何呢?首先看下训练曲线对比:

这里两个网络的参数差不多,都是1.7M左右,从曲线上看,性能也相当。

另一个要关注的问题是,金字塔ResNet有没有实现它的初衷,即改善降低分辨率的网络层被删除时带来的性能下降,结果如下:

从结果看来,错误率确实降低了。更加具体的实验结果,大家自己去看论文吧。

[1] Han D, Kim J, Kim J. Deep pyramidal residual networks[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2017: 5927-5935.

2 分支众多-分形结构

这是一个多分支结构相关的网络结构。

有三AI知识星球-网络结构1000变

FractalNet

残差网络可以使得上千层的网络结构设计成为可能,但并不是只有残差网络可以做到,FractalNet(分形网络)便是如此。

作者/编辑 言有三

分形是一个数学概念,指的是具有以非整数维形式填充空间的形态特征,也就是说它的有效维度不是整数。不过我们这里可以不用关注它的数学定义,而是关注它的,分形几何结构的一部分具有和整体相似的结构,即自相似,如下图形:

分形网络,顾名思义也是这样的特点了,局部的结构和全局相似,如下图:

可以看到包含了各种长度不同的子路径,从左到右:

第一列路径只有一条,长度l。

第二列路径两条,长度l/2。

第三列路径四条,长度l/4。

第二列路径八条,长度l/8。

它与残差网络的不同之处在于,绿色模块表示的非线性变换,即下一层不可能直接得到上一层的信号,而是经过了变换。

这样的一种包含了不同深度的子网络,与之前提过的stochastic depth有异曲同工之妙,它也可以被看作是不同深度的网络的ensemble。

作者们通过随机丢弃某些深度的方法也做了实验,丢弃的样例如下:

上面展示了两种路径,训练时混合使用。

Global: 只选择一条路径,且是同一列,这条路径就是独立的强预测路径。

Local:包含多个路径,但是保证每一层至少要有一个输入。

那么结果如何呢?

如上,与各种网络进行了对比,性能很好。在添加了drop-path技术后,还有极大提升,并且单独只拿出其中最深的一条路径所得的网络,都有接近最好的模型的性能。

与残差网络的相关研究一样,分形网络的研究也表明路径的有效长度才是训练深度网络的真正影响因素,不论是分形网络,还是残差网络,都拥有更短的有效的梯度传播路径,从而使得深层网络训练更不容易过拟合。

[1] Larsson G, Maire M, Shakhnarovich G. Fractalnet: Ultra-deep neural networks without residuals[J]. arXiv preprint arXiv:1605.07648, 2016.

3 一切可连-环形网络

这是一个基于跳层的复杂拓扑网络结构。

有三AI知识星球-网络结构1000变

CliqueNet

DenseNet通过复用不同层级的特征图,提高了通道的利用率,不过它的连接是前向的,即信息只能从浅层向深层传递,而CliqueNet则更进一步,信息的传递是双向的。

作者/编辑 言有三

结构如上图所示,CliqueNet不仅有前传的部分,还有后传,这种网络架构同时受到了RNN等循环网络和注意力机制的启发,使得特征图重复使用而且更加精炼。

CliqueNet的训练包含两个阶段。第一个阶段与 DenseNet 相同,即图中的Stage-1,此时浅层特征向深层进行传递,这可以视为初始化过程。

第二个阶段中每一层不仅接受前面所有层的特征图,也接受后面层级的特征图反馈。可以看出这是一种循环的反馈结构,可以利用更高级视觉信息来精炼前面层级的特征,实现空间注意力的效果。实验结果表明,它有效地抑制了背景和噪声的激活。

整体的网络架构如上:网络由很多的block组成,每一个block的stage II的特征通过global pool串接生成最终的特征。与DenseNet的不同之处在于,随着网络架构,每一个block的输入输出特征图不需要增加,从而更加高效,结果如下:

从上表可以看出,参数量和精度是非常具有优势的。

[1] Yang Y, Zhong Z, Shen T, et al. Convolutional neural networks with alternately updated clique[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 2413-2422.

4 不规则的卷积核-可变形网络

这是一个卷积核的形状相关的网络结构。

有三AI知识星球-网络结构1000变

Deformable Convolution

卷积操作本身具有非常固定的几何结构,标准的卷积操作是一个非常规矩的采样,通常是正方形,如果卷积核采用非规矩的采样,即它的形状不再是标准的方形,而是任意形状,则称之为可形变卷积(Deformable Convolution)。

作者/编辑 言有三

要描述上面的卷积核,不仅仅需要权重系数,还需要每一个点的偏移量,可变形卷积的思想最早以Active Convolution的形式被提出。

在Active Convolution中,卷积核的各个分量都有自己的偏移量,对于一个3*3的卷积,就包含了18个系数,其中X方向和Y方向的偏移量各9个。不过各个通道共享该系数,所以与输入输出通道数无关。

对于输入通道为M,输出通道为N,使用3*3的卷积的Active Convolution,权重参数量为M*N*3*3,偏移参数量为2*3*3,远远小于权重参数量,所以增加的参数量几乎可以忽略不计。

在Deformable convolutional networks,每一个通道不共享偏移量,偏移参数量为2*M*3*3,增加的参数量比Active Convolution更多,但是相比卷积核权重参数量M*N*3*3,仍然小很多,所以不会大幅度增加模型的大小,而且实际实现时可以对输出通道进行分组。

从上图就可以看出可变形卷积有更灵活的感受野。

可变形卷积的实现只需要增加偏移量的学习,实际就是多了一个offset层,给offset输出通道数变量,我们还可以对输出进行分组,控制要学习的变形的种类。

最后看一下参数对比和性能。

实验了各个网络层的结果,参数量的增加很小,性能也是提升的。具体的效果如何,大家不妨用自己的实验结果来验证。

[1] Jeon Y , Kim J . Active Convolution: Learning the Shape of Convolution for Image Classification[J]. 2017.

[2] Dai J, Qi H, Xiong Y, et al. Deformable Convolutional Networks[J]. 2017.

5 测试可变的网络-可分叉网络

这是一个推理时动态变化的网络结构。

有三AI知识星球-网络结构1000变

BranchyNet

通常来说模型训练完之后结构就是固定的,测试时图片沿着固定的通路进行计算。然而测试样本本身有不同的难度,简单的样本只需要少量的计算量就可以完成任务,困难的样本则需要更多的计算量。

作者/编辑 言有三

如上图所示,它在正常网络通道上包含了多个旁路分支,这样的思想是基于观察到随着网络的加深,表征能力越来越强,大部分简单的图片可以在较浅层时学习到足以识别的特征,如上图中的Exit 1通道。一些更难的样本需要进一步的学习,如上图中的Exit 2通道,而只有极少数样本需要整个网络,如Exit3通道。这样的思想可以实现精度和计算量的平衡,对于大部分样本,可以用更小的计算量完成任务。

那么如何判断是否可以提前结束呢?在提出该网络的论文中,作者采用分类信息熵,一旦该通道的分类信息熵低于某一个阈值,说明已经以很高的置信度获得了分类的结果,直到最终的通道。

在训练的时候,每一个通道都会对损失有贡献,越靠近浅层的网络权重越大。多通道的损失不仅增强了梯度信息,也在一定程度上实现了正则化。

将BranchyNet的设计思想用于LeNet,AlexNet,ResNet结构后,在维持性能的前提下,加速效果明显。

对于拥有N个分支的网络,需要的就是N-1个阈值,因为最后一个分支不需要阈值。

LeNet系列网络可以让超过90%的样本在第一个分支提前终止,AlexNet提前终止样本比例也超过一半,ResNet提前终止样本比例超过了40%。

[1] Teerapittayanon S, McDanel B, Kung H T. Branchynet: Fast inference via early exiting from deep neural networks[C]//2016 23rd International Conference on Pattern Recognition (ICPR). IEEE, 2016: 2464-2469.

更多相关模型的解读,在有三AI知识星球中进行剖析,感兴趣的可以来,【知识星球】超3万字的网络结构解读,学习必备。

有三AI夏季划

暑期正浓,有三AI夏季划进行中,相比春季划内容更难更全,且更加贴近工业界实战,目标是系统性成长为中级CV算法工程师。这一次的报名周期会持续到国庆,请有需要的同学持续关注,点击图片阅读详细信息。

有三AI“夏季划”出炉,今夏进阶中级CV算法工程师

转载文章请后台联系

侵权必究

往期知识星球

  • 有三AI知识星球官宣,BAT等大咖等你来撩

  • 揭秘7大AI学习板块,这个星球推荐你拥有

  • 有三AI 1000问回归,备战秋招,更多,更快,更好,等你来战!

  • 【知识星球】做作业还能赢奖金,传统图像/机器学习/深度学习尽在不言

  • 【知识星球】颜值,自拍,美学三大任务简介和数据集下载

  • 【知识星球】数据集板块重磅发布,海量数据集介绍与下载

  • 【知识星球】猫猫狗狗与深度学习那些事儿

  • 【知识星球】超3万字的网络结构解读,学习必备

  • 【知识星球】视频分类/行为识别网络和数据集上新

  • 【知识星球】3D网络结构解读系列上新

  • 【知识星球】动态推理网络结构上新,不是所有的网络都是不变的

  • 【知识星球】Attention网络结构上新,聚焦才能赢

  • 【知识星球】几个人像分割数据集简介和下载

【知识星球】总有些骨骼轻奇,姿态妖娆的模型结构设计,不知道你知不知道,反正我知道一些...相关推荐

  1. 【杂谈】有三AI知识星球一周年了!为什么公众号+星球才是完整的?

    文/编辑 | 言有三 今天,有三AI知识星球开设正好一周年,在有了微信公众号生态后,为什么我们还要做一个知识星球呢?为什么我们说每一个核心的有三AI粉丝一定是在知识星球里呢?今天来总结一下我们知识星球 ...

  2. 中秋假期快乐!不发技术文章,有三AI知识星球半价三天

    之前在朋友圈说好的中秋节三天不发文章,让大家也好好休息充电一下.昨天收到了不少粉丝朋友的中秋节祝福,为了感谢铁粉们,这个假期我们还是送大家一点东西吧. 月饼咱们就不送了,不值多少钱也不好吃.这三天有三 ...

  3. 【知识星球】有没有网络模型是动态变化的,每次用的时候都不一样?

    欢迎大家来到<知识星球>专栏,这里是网络结构1000变小专题,今天给大家介绍一类网络结构,它是动态变化的,每一次使用的时候都不一样. 作者&编辑 | 言有三 1 训练时变化的网络结 ...

  4. 【杂谈】为什么邀请大家加入硬核知识星球有三AI

    文/编辑 | 言有三 今天给大家介绍一下有三AI知识星球,推荐铁粉们加入.有三AI知识星球秉承公众号的风格,有以下几个特点. (1) 只做原创.星球内有三发布的所有内容均为原创,从不转载. (2) 传 ...

  5. 【知识星球】图像降噪模型和数据集内容开启更新,经典问题永垂不朽!

    欢迎大家来到<知识星球>专栏,这里是网络结构1000变小专题,今天介绍的是我们知识星球图像降噪模型和数据集相关专题上线. 作者&编辑 | 言有三 1 图像降噪问题 图像降噪是深度学 ...

  6. 【知识星球】softmax损失相关的小问题

    欢迎大家来到<知识星球>专栏,这里是AI1000问小专题. 作者&编辑 | 言有三 1 Softmax相关的问题 Softmax在图像分类,分割任务中是很常见的,关于它有些常见的小 ...

  7. 【知识星球】ElementAI提出超复杂多尺度细粒度图像分类Attention模型

    欢迎大家来到<知识星球>专栏,这里是网络结构1000变小专题. 作者&编辑 | 言有三 1 Attention模型 Attention机制已经被证明在很多的任务中都能提升其性能,我 ...

  8. 【知识星球】为什么图像分类任务要从256*256中裁剪出224*224

    欢迎大家来到<知识星球>专栏,这里是AI1000问小专题. 作者&编辑 | 言有三 1 图像分类任务输入尺寸相关的问题 有关于经典的图像分类任务中的输入图像尺寸问题,很多同学都有疑 ...

  9. 【知识星球】从SVM对偶问题,到疲劳驾驶检测,到实用工业级别的模型压缩技巧...

    欢迎大家来到<知识星球>专栏,本次发布这两天有三AI知识星球中专栏<AI 1000问>,<模型结构1000变>,<数据集>的知识便利贴. 作者& ...

最新文章

  1. python 字符串的魔法 day11(2)
  2. 浅谈Java网络编程之Socket (2)
  3. Python 程序员最常犯的十个错误,作为小白的你是不是也经常犯?
  4. 如何更改CPropertySheet的背景色
  5. 伦巴时间步的动作要领_准军集结号,叶教官队列动作教学
  6. A20 文件系统预装APK
  7. 编写函数实现随机产生指定范围的整数的功能
  8. Ask for help
  9. 搞懂PDCA循环,学会闭环思维
  10. python中将字符变为大写_python3.4.3将汉字转换为大写拼音首字母
  11. 使用OTP动态口令(每30s变一次)进行登录认证
  12. 简述变分法在泛函极值问题中的应用
  13. 八位知名设计师评iOS7:新鲜但复杂
  14. STM32智能门锁学习二,RFID刷卡解锁
  15. C1模拟试卷的一个算法题
  16. Day10 空时编码理论之无线信道、分集和复用
  17. C++ Reference: Standard C++ Library reference: C Library: cstdio: clearerr
  18. 【luogu P2455 [SDOI2006]线性方程组】 题解
  19. JDK、JRE、JVM三者分别表示什么?有何区别?
  20. 旭荣管理软件怎么修改小票内容_PowerPhotos for Mac照片库管理软件

热门文章

  1. JVM GC耗时频频升高,这次排查完想说:还有谁?
  2. 10分钟看懂, Java NIO 底层原理
  3. 一文读懂Redis常见对象类型的底层数据结构
  4. apt-get update 出现E: Could not get lock /var/lib/apt/lists/lock问题的解决
  5. 一定是你想要的微服务资源springboot、springcloud、docker、dubbo
  6. 一看就懂的动态规划入门教程
  7. linux git reposi,关于linux:GitLab:无法从远程存储库读取
  8. Hibernate 的Set、List、Map集合操作(添加,修改,查询)
  9. 使用MySQL Workbench远程管理工具进行远程管理Mysql的错误及解决办法
  10. 公共关系计算机操作题,2012年计算机二级Access考前模拟题及答案(8)