[论文解读] Learning Compact Convolutional Neural Networks with Nested Dropout
本文提出嵌套dropout方法,通过在训练过程中根据信息量对卷积核进行排序,自动学习紧凑且任务自适应的卷积神经网络结构。通过从几何分布中抽样以逐步丢弃高索引卷积核,网络可在极少训练迭代次数内识别出最优卷积核数量(例如,conv1为23个),在参数量减少25%的同时,达到与完整网络相当的准确率。
Recently, nested dropout was proposed as a method for ordering representation units in autoencoders by their information content, without diminishing reconstruction cost. However, it has only been applied to training fully-connected autoencoders in an unsupervised setting. We explore the impact of nested dropout on the convolutional layers in a CNN trained by backpropagation, investigating whether nested dropout can provide a simple and systematic way to determine the optimal representation size with respect to the desired accuracy and desired task and data complexity.
研究动机与目标
- 探究嵌套dropout——此前仅用于自编码器——是否可有效应用于反向传播训练的卷积神经网络的卷积层。
- 开发一种基于数据和任务复杂度的系统性方法,以确定最优网络容量。
- 实现在卷积层中自动、逐步学习卷积核数量,无需手动调整超参数。
- 证明嵌套dropout可生成紧凑且高准确率的模型,且所需训练迭代次数少于暴力搜索法。
提出的方法
- 通过从几何分布中抽样一个数k,将索引从k+1到n的所有卷积核丢弃,将嵌套dropout应用于卷积层,保留前k+1个卷积核。
- 卷积核按迭代方式训练:在固定迭代次数后,扫描索引递增,后续抽样仅考虑剩余卷积核。
- 在Caffe中通过添加自定义嵌套dropout层实现该方法,该层可置于任意层(如卷积层或全连接层)之后,并与求解器集成以实现单位扫描。
- 该方法支持逐步增加网络容量:低索引卷积核首先收敛并被固定,而高索引卷积核则被逐步丢弃。
- 该过程按层逐个应用:先确定conv1的最优卷积核数量,再使用嵌套dropout确定conv2的卷积核数量。
- 训练过程采用小批量随机梯度下降,每批100个样本,卷积核移除基于收敛性而非固定迭代次数。
实验结果
研究问题
- RQ1嵌套dropout是否可成功应用于反向传播训练的卷积神经网络的卷积层,以学习紧凑表示?
- RQ2嵌套dropout是否能实现基于给定任务和数据复杂度的最优卷积核数量的自动确定?
- RQ3与暴力搜索法相比,嵌套dropout是否可减少所需训练迭代次数?
- RQ4嵌套dropout训练的网络性能与完整网络(所有卷积核均保留)及随机剪枝网络相比如何?
- RQ5嵌套dropout是否能识别出维持高准确率的最小卷积核集合,同时减少模型参数?
主要发现
- 嵌套dropout网络在conv1中仅使用23个卷积核即达到最大测试准确率,优于需训练32个独立网络的暴力搜索法。
- 使用嵌套dropout的模型在conv1含23个卷积核时,测试准确率为0.787,与完整32卷积核基线网络的0.786准确率相当。
- 嵌套dropout训练仅需90,000次迭代,而暴力搜索法训练32个独立网络需2,880,000次迭代。
- 对conv1和conv2同时应用嵌套dropout,使前两层总参数量减少25%,从64个卷积核减少至48个。
- 可视化结果表明,嵌套dropout网络中高索引卷积核携带的信息极少,证实仅前23个卷积核对性能至关重要。
- 在5,000次迭代后,conv2已学习到25个卷积核,训练准确率达78%,表明网络可收敛至紧凑且高效的架构。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。