计算机视觉技术是一门包括了计算机科学与工程、神经生理学、物理学、信号处理、认知科学、应用数学与统计等多门科学学科的综合性科学技术。作为目前人工智能领域落地应用相对比较好的方向之一,计算机视觉未来的产业创新空间还是比较大的。
当然对于初学者往往会觉得学习起来太困难,与典型的软件工程学科不同,使用DCNN进行图像分类的好书并不多,理解这一领域的最好方法是阅读学术论文。但读什么论文呢?我从哪里开始读起呢?在本篇文章中,我将为初学者介绍10篇最佳论文。通过这些论文,我们可以看到这一领域是如何发展的,以及研究人员是如何根据先前的研究成果提出新的想法的,即使你已经在这个领域工作了一段时间,但它仍然有助于你理清脉络。
1998年:LeNet
深度学习在文档识别中的应用
LeNet于1998年推出,为未来使用卷积神经网络的图像分类研究奠定了基础。许多经典的CNN技术(例如池化层,全连接层,填充和激活层)被该模型用来提取特征并进行分类,借助均方误差损失函数和20个训练周期,在MNIST测试集上的准确率达到99.05%。即使在20年后,许多最先进的分类网络仍然大体上遵循这种模式。
2012年:AlexNet
深度卷积神经网络的ImageNet分类
尽管LeNet取得了巨大的成就,显示了CNN的潜力,但由于计算能力和数据量有限,该领域的发展停滞了10年。CNN似乎只能解决一些简单的任务,如数字识别,但是对于更复杂的特征(如人脸和物体),带有SVM分类器的HarrCascade或SIFT特征提取器是更可取的方法。
然而,在2012年ImageNet大规模视觉识别挑战赛中,Alex Krizhevsky提出了一种基于CNN的解决方案,并将ImageNet测试集top-5的准确率从73.8%大幅提高到84.7%。他们的方法继承了LeNet的多层CNN思想,但大大增加了CNN的规模。
从上图中可以看出,与LeNet的32x32相比,AlexNet的输入为224x224,LeNet卷积核有6个通道,但AlexNet的有192个通道。虽然设计没有太大的变化,但随着参数的增加,网络捕捉和表示复杂特征的能力也提高了数百倍。
为了训练一个大模型,亚历克斯使用了两个GTX580GPU,每个GPU有3GB的内存,这开创了GPU训练的潮流,此外,ReLU非线性函数的使用也有助于降低计算成本。
除了为网络带来更多的参数外,它还探讨了一个大网络使用一个Dropout层带来的过拟合问题。虽然它的局部响应规范化方法在后来并没有得到太多的普及,但是启发了其他重要的规范化技术,如 BatchNorm 被用来解决梯度饱和问题。
总之,AlexNet定义了未来10年的分类网络框架:卷积、ReLu非线性激活、MaxPooling和全连接层的组合。
2014年:VGG
用于大型图像识别的超深度卷积网络
利用CNN进行视觉识别取得了巨大成功,整个研究界都大吃一惊,所有人都开始研究为什么这种神经网络能够如此出色地工作,例如在2013年发表的“可视化和理解卷积网络”中,马修·齐勒(Matthew Zeiler)讨论了CNN如何获取特征并可视化中间表示,突然之间,每个人都开始意识到CNN在2014年将成为计算机视觉的未来。
在所有直接关注者中,Visual Geometry Group的VGG网络是最吸引眼球的网络,在ImageNet测试集上,top-5的准确度达到93.2%,top-1的准确度达到了76.3%。
遵循AlexNet的设计,VGG网络有两个主要更新:
1)VGG不仅使用了像AlexNet这样更广泛的网络,而且使用了更深的网络,VGG-19具有19个卷积层,而AlexNet中只有5个。
2)VGG还展示了一些小的3x3卷积滤波器可以代替AlexNet的单个7x7甚至11x11滤波器,在降低计算成本的同时实现更好的性能。由于这种优雅的设计,VGG也成为了其他计算机视觉任务中许多开拓性网络的骨干网络,例如用于语义分割的FCN和用于对象检测的Faster R-CNN。