0. 基本信息
- 题目:CONVOLUTIONAL NEURAL NETWORKS WITH LAYER REUSE
- pytorch代码:https://github.com/okankop/CNN-layer-reuse
- 类别:一种比较新的网络结构,layer reuse;
1. 摘要点评
作者写的很清晰,layer reuse有不少好处:
- 减少参数量
- 增加模型的复杂度
- 实验性能佳
- 实质感觉就是将RNN的思想,嵌入到了CNN的卷积模块当中,并不是很革命的研究,但是也算一种有意思的实现。
2.网络结构

- 把block的输入和输出搞成一样的尺寸,实现input->block->output->block->...>最终output,的循环利用layer的模式。
- 这种“回环”结构在控制中十分常见,应该具有稳定block的最终output输出信息的能力。个人建议,作者可以在控制论中找更多的依据,可以有更好的故事。
- 当然这种结构,减少了参数的存储空间,但是增加了运行时间,是一种以时间换空间的做法。
-
channel shuffle是什么鬼呢?原来是伴随着组卷积(group conv)的一个通道交换的策略,LruNet的block中使用了组卷积,channel shuffel如下图。
shuffle Net论文中图,准确的阐释了channel shuffle的意义
3. 实验结果
- cifar 10, cifar 100, fashion-mnist三个数据集做测试;
- 增加循环次数到14,精度最高;【时间换空间,当然时间投入越多,越有效果吧】
- channel shuffle一下,精度提高不少【显然的事情,比人都证明的了】;
- 不采用时间换空间策略,相同卷积流程的算法,精度更高,但是参数量增大很多【说明,这种时间换空间的做法还是有精度性能损失的】。
- 与shuffle net, mobile net对比,精度还是差一些,当然LruNet具有参数量少的优势。
网友评论