这个是10张feature map画出来的图
深度学习正在努力让神经网络变得越来越深 [13],因为更深的模型意味着更复杂的处理带来的更好的分类性能,诸如 [4] 等研究已经把神经网络成功地训练到了一百多层。但是我们却把目光放在让模型更宽上,因为我们认为神经网络在这一方向上还有很多的性能供我们挖掘,同时更宽的模型能够更好地并行化以利用计算能力提升带来的红利。
前人已经在这个方面做了许多的重要的工作,Ensemble-based classifiers[12] 描述的是将图像进行不同处理后并输入不同神经网络,最终输出各神经网络输出的平均的一种宽的图像分类神经网络结构,multi-column deep neural network[1] 中阐述的使用不同预处理方式处理输入数据的结构展现了卷积神经网络在这种宽结构上的优越性能。同时,本工作在一定程度上受到了 RCNN[2] 的启发,其使用神经网络对图像不同部位进行分类的方式是我们带步距卷积采样方式的雏形,而使用卷积神经网络作为卷积核的想法则来自于 network in network[11],它使用了多层神经网络替代来原本基于广义线性模型(GLM)的卷积核,带来了更优的分类性能。
我们提出的模型使用带步进的拥有大卷积核卷积层采样,使用小的卷积神经网络替代传统卷积层中的卷积核,使用全局平均池(Global Average-pooling) [11] 平均各卷积核的输出输出最终结果。小卷积神经网络于普通的用于 MNIST 数据集中的传统的卷积神经网络没有什么太大的差别,主要是使用了 Dropout[14] 技术来抑制过分的过拟合并用平均池层替代最大池层,目的是体现本模型所带来的的提升。现阶段我们已经在 MNIST数据集上完成了测试,获得了具有一定说服力的实验结果。
如图 1 所示,输入图像被以带步进卷积的方式切割并输入到小卷积神经网络中,小卷积神经网络的输出结合在一起成为一个特征图,这可以看做是小卷积神经网络充当带步进卷积层的卷积核。最后本模型用全局平均池处理这个特征图输出最终分类结果。
为了证明我们提出的方法的优势,我们只在 LeNet[8] 的基础上做了了少许改动,包括使用ReLU激活函数以加快拟合速度,增加了神经元的数量以便和现在的其他工作形成对比,在每一层后面都用了Dropout技术以抑制过拟合,把最大池换成了平均池,这些都是现在的卷积神经网络非常常用的技术。
如表 1 所示, 我们使用两种小卷积神经网络来验证我们的模型在更深的神经网络上的性能。
在训练过程中,我们使用了 AdamOptimizer[5],共训练 100epoches,初始学习率设置如表 2 所示。 1
MNIST 手写数字数据集提供了六万的训练集和一万的测试集,它的图片是被规范处理过的 28*28 的灰度图。我们分别测试了我们使用的两种小卷积神经网络在我们的模型上的性能,我们实验的结果如表 3 所示,两种小卷积神经网络的测试结果分别为 0.37和 0.33,可以看出,我们的模型能够为简单的卷积神经网络带来较大的提升,而且更深的小卷积神经网络也能带来更好的效果。
我们认为我们的模型在对比 RCNN-96 和 Maxout In Maxout 这样的模型的时候的时候还是有较大优势的,因为显然的,我们的模型更浅,拥有更少的参数。我们认为 Multi-column Deep Neural Networks 拥有更好的效果是因为它使用了更复杂的基分类器(卷积神经网络)(他们用了 winner-take-all 神经元等技术),我们正在考虑是否使用类似的基分类器。
在集成学习中,有如下公式 [7]:
$$E = \overline{E} - \overline{A}$$
其中\(E\)是模型误差,\(\overline{E}\)是各分类器平均误差,\(\overline{A}\)是各分类器的平均分歧(分类器输出与总输出的差)。
我们认为,我们提出的方法所达到的效果在一定程度上来自于我们增加了各分类器的分歧,虽然我们在一定程度上减小了各分类器的分类精度,但平均分歧的增加是大于误差的增加的。
按照[11] 的说法,由于各个小神经网络之间的权值存在共享,所以它们难以形成强 的组合,从而减少了过拟合的可能,但是在我们的模型中却存在难以估量的过拟合,以 至于我们几乎在每一个层中都用了 dropout 来减小过拟合程度(甚至包括输出层,当然, 我们认为在防止过拟合的诸多措施中,输出层的 dropout 在防止过拟合方面有不容小觑 的贡献)。我们认为这些过拟合的原因是各个卷积核对图像上的同一个区域重复采样了 过多次,我们现在还在致力于解决这一问题:一方面,更小的卷积核会使得小卷积神经 网络的输入图像过小,这让小卷积神经网络更难收敛;另一方面,小神经网络内必须使 用卷积来实现更好的图像能力。
这样的学习率是极其夸张的,按照道理来说,这样会严重过拟合(实验结果确实如 此),但是事实上只有这样的学习率才能成功地把模型训练出来,所以我们在输出层加 Dropout,以平衡大学习率带来的影响。一些关于 Batch normalization(BN)的实验显 示,在用了 BN 之后,在使用大学习率时收敛速度很快,似乎可以使用正常的学习率进 行训练,但是这时还是难以训练到模型在之前所能达到的效果。
在我们的早期的尝试中,我们曾经尝试使用多个 CNNIC 层来进行分类,但是我们 面临着许多问题:a) 为了使用更多的 CNNIC 层,我们不得不使用为 1 的步进或者较小 步进,这样带来的是计算量上的爆炸式的增长,对于模型来讲是灾难性的。b) 如我们之 前的实验所展现的,使用步进为 1 或者较小步进的 CNNIC 层无法带来任何提升,只有 计算量的增长。
这样的一个结构有许许多多的超参数,诸如小卷积神经网络的输入的图像的尺寸、 卷积层步进大小、Dropout 率、学习率和,很多的参数的调节是没有先例可循的,其中 固然存在一些的超参数的调节能够体现模型本身的特性,但是我们并不想把过多的时间 花在这些参数的调节上。
我们正在尝试使用 [10] 中所采用的 Batch normalization 来提升我们的模型 的性能,同时更多的 tricky (雾)也在考虑之中。
CIFAR-10/100[6] 是彩色图像数据集,我们将在这个数据集上 进行进一步的实验,以进一步证明模型的优势。
[11] 中展示了其特征图并对其进行了分析,我们认为这样做有利于人们 理解这一结构。
[1] Dan Ciregan, Ueli Meier, and Jurgen Schmidhuber. Multi-column deep neural networks for image classification. computer vision and pattern recognition, pages 3642–3649, 2012.
[2] Ross Girshick, Jeff Donahue, Trevor Darrell, and Jitendra Malik. Rich feature hierarchies for accurate object detection and semantic segmentation. pages 580– 587, 2013.
[3] Ian J Goodfellow, David Warde-Farley, Mehdi Mirza, Aaron Courville, and Yoshua Bengio. Maxout networks. Computer Science, pages 1319–1327, 2013.
[4] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. computer vision and pattern recognition, pages 770–778, 2016.
[5] Diederik P Kingma and Jimmy Ba. Adam: A method for stochastic optimization. Computer Science, 2014.
[6] Alex Krizhevsky. Learning multiple layers of features from tiny images. 2009.
[7] Anders Krogh and Jesper Vedelsby. Neural network ensembles, cross validation, and active learning. In NIPS, 1994.
[8] Yann Lecun, Leon Bottou, Yoshua Bengio, and Patrick Haffner. Gradient-based learning applied to document recognition. Proceedings of the IEEE, 86(11):2278– 2324, 1998.
[9] Ming Liang and Xiaolin Hu. Recurrent convolutional neural network for object recognition. pages 3367–3375, 2015.
[10] Zhibin Liao and Gustavo Carneiro. On the importance of normalisation layers in deep learning with piecewise linear activation units. workshop on applications of computer vision, pages 1–8, 2016.
[11] Min Lin, Qiang Chen, and Shuicheng Yan. Network in network. international conference on learning representations, 2014.
[12] Lior Rokach. Ensemble-based classifiers. Artificial Intelligence Review, 33:1–39,2010.
[13] Karen Simonyan and Andrew Zisserman. Very deep convolutional networks for large-scale image recognition. international conference on learning representations,2015.
[14] Nitish Srivastava, Geoffrey E Hinton, Alex Krizhevsky, Ilya Sutskever, and Ruslan Salakhutdinov. Dropout: a simple way to prevent neural networks from overfitting. Journal of Machine Learning Research, 15(1):1929–1958, 2014.
在这个链接中 2 你可以找到本模型的相关代码。
1:训练在由科创基金资助的 NVIDIA GTX1060 6GB 上进行
2:XXXXXXXXXXXXXXXXXX/MyWorkShop/Convolutional-Neural-Networks-in-Convolution
本报告PDF版本下载:
[修改于 7年1个月前 - 2017/12/24 16:25:18]
200字以内,仅用于支线交流,主线讨论请采用回复功能。