本文将介绍过去五年内发表的一些重要论文, 并探讨其重要性论文 15 涉及通用网络架构的发展, 论文 69 则是其他网络架构的论文点击原文即可查看更详细的内容
1.AlexNet(2012)
AlexNet 是卷积神经网络架构的起源 (尽管可能会有人认为, 1998 年 Yann LeCun 发表的论文才是真正的开创性出版物) 这篇名为基于深度卷积网络 ImageNet 分类的论文总共被引用 6,184 次, 被公认为是该领域最具影响力的论文之一在 2012 年的 ImageNet 大规模视觉识别挑战赛中, Alex Krizhevsky 等人创建的大而深的卷积神经网络取得了大赛冠军将分类误差从 26%降至 15%, 这是一个惊人的改进, 几乎让所有的计算机视觉社区为之震撼从那时起, 卷积神经网络被广泛传播, 成了一个家喻户晓的名字
该论文讨论了 AlexNet 架构的网络结构与现代架构相比, AlexNet 使用了相对简单的网络结构: 由 5 个卷积层最大池化层 drop-out 层和 3 个全连接层组成他们设计的网络可用于对 1000 个类别进行分类
主要论点
1. 在 ImageNet 数据集上训练网络, ImageNet 数据集包含超过 1500 万张注释图像, 类别超过 22000 个
2. 使用 ReLU 处理非线性函数(这样可以减少训练时间, 因为 ReLU 比传统的 tanh 函数运行速度要快几倍)
3. 使用的数据增强技术包括: 图像转换, 水平反射和补丁提取
4. 采用 drop-out 层, 解决了训练数据的过拟合问题
5. 使用批量随机梯度下降训练架构, 其中动量和权重衰减都有固定的具体值
重要性
Krizhevsky 等人在 2012 年开发出来的神经网络, 是卷积神经网络在计算机视觉社区的一场盛宴这是首次在 ImageNet 数据集上性能表现非常好的架构, 利用了今天仍在使用的技术, 如数据增强和 dropout 这篇论文阐述了卷积神经网络的优点, 并创造了其他神经网络难以逾越的性能
2.ZF Net
由于 AlexNet 在 2012 年闪亮登场, 在 2013 的 ImageNet 大规模视觉识别挑战赛中出现的卷积神经网络架构数量大幅度增加, 该年度大赛冠军是由纽约大学的 Matthew Zeiler 团队创建的网络 ZF Net, 该架构实现了低至 11.2%的误差率 ZF Net 架构相当于对 AlexNet 架构做了微调, 但作者仍然提出了一些能够提高模型性能的重要设想这篇论文之所以特别重要, 另一个原因就是作者花了很多精力来解释卷积神经网络的可视化, 并展示了如何正确的可视化滤波器和权重
在这篇题为卷积神经网络的可视化和理解的论文中, Zeiler 团队首先解释了重新对卷积神经网络感兴趣的原因, 这源自于大型训练集的可访问性, 以及随着 GPU 的使用率增大, 计算能力也有提高作者还提到更好的架构会减少试验和误差次数尽管和三年前相比, 我们对卷积神经网络有了更全面的理解, 但这仍然是很多研究人员所面临的问题! 本文的主要贡献是对 AlexNet 架构的细节做了微调, 并且以一种很有意思的方法对特征映射做了可视化处理
主要论点
1.ZF Net 与 AlexNet 模型有非常相似的架构, 同时也做了一些微调
2.AlexNet 训练了 1500 万张图片, 而 ZF Net 仅仅训练了 130 万张图片
3.AlexNet 在第一层使用 11*11 的滤波器, 而 ZF Net 使用了 7*7 的滤波器和一个较小的步长做这一调整的原因是第一个卷积层中使用较小的滤波器有助于将大量的原始像素信息保留在输入数组中 11*11 的滤波器会过滤掉很多有用的信息, 尤其是在第一个卷积层
4. 随着卷积网络的发展, 使用滤波器的数量有所增加
5. 将 ReLUs 作为其激活函数, 交叉熵代价函数作为误差函数, 并使用批量随机梯度下降进行训练
6. 开发了一种名为去卷积网络的可视化技术, 有助于测试不同的特征激活与输入数组的关系之所以被称为去卷积, 因为它将特征映射为像素(与卷积层的作用正好相反)
DeConvNet
DeConvNet 模型的基本思想是, 在卷积神经网络已经训练好的每一层, 都增加一个去卷积返回图像像素图像输入到卷积神经网络中, 并在每个级别计算其特征激活假设现在要检查第四个卷积层中某个特征激活, 我们来存储这一个特征映射的激活, 但将卷积层中的所有其他激活都设为 0, 然后将此特征映射作为输入传递给 DeConvNet 模型该 DeConvNet 模型具有与原始卷积神经网络相同的滤波器然后, 输入经过一系列的反池化 (和最大池化相反) 校正以及前面每个层的滤波器操作, 然后到达输入数组
这整个过程是因为我们想要检查到底哪种类型的结构激活给定的特征映射 我们来看看第一层和第二层的可视化效果
我们知道, 卷积层中的第一层是一个基本特征检测器, 检测边缘或颜色如上图所示, 我们可以看到, 在第二层有更多的循环特征被检测到下面, 我们来看看第 345 层
这些层显示了更多高级特征, 如狗的头部或鲜花需要注意的是, 在第一个卷积层之后, 我们通常会有一个池化层对图像进行下采样 (例如, 将 32*32*3 数组转换为 16*16*3 的数组) 这样做可以在第二层看到原始图像范围更广的特征
重要性
ZF Net 模型不仅是 2013 年度 ImageNet 大规模视觉识别挑战赛的冠军, 而且还提供了有关卷积神经网络运行的绝佳的视觉效果, 并展示了更多能够提高性能的方法 ZF Net 模型所描述的可视化方法不仅有助于解释卷积神经网络的内部运行机制, 而且还提供了对网络架构进行改进的独特见解
3. VGG Net (2014)
VGG Net 是 2014 年创建的架构(但并不是 ImageNet 大规模视觉识别挑战赛的冠军), 其利用率达到 7.3%来自牛津大学的 Karen Simonyan 和 Andrew Zisserman 创建了一个特别简单的 19 层的卷积神经网络, 使用步长为 1 的 3*3 的滤波器, 步长为 2 的 2*2 池化层
主要论点
1. 仅仅使用了 3*3 的滤波器, 这与 AlexNet 第一层使用的 11*11 滤波器和 ZF Net 使用的 7*7 滤波器大不相同作者证明了两个 3*3 卷积层的组合具有 5*5 的有效感受野在使用较小的滤波器的同时, 也模拟出了一个更大的滤波器, 同时也减少了参数的数量此外, 我们还可以在两个卷积层中使用 ReLU 层
2. 三个卷积层的组合具有 7*7 的有效感受野
3. 随着每层的深入, 输入数组随之减小(卷积层和池化层的原因), 过滤器的数量随之, 因此数组的深度也不断增加
4. 有趣的是, 滤波器的数量在每个最大池化层之后都会增加一倍这强化了缩小空间维度的想法, 但增加了网络的深度
5. 特别适用于图像分类和本地化任务作者使用本地化的形式作为回归
6. 用 Caffe 构建架构
7. 在训练过程中使用数据增强技术是抖动( scale jittering )
8. 在每个卷积层之后使用 ReLU 层, 并采用批梯度下降进行训练
重要性
VGG Net 模型一直都是我心目中最有影响力的论文之一, 因为它强化了这一观点: 为了使视觉数据可以分层表示, 卷积神经网络必须具有更加深入的网络层
4. GoogLeNet (2015)
谷歌使用了 Inception 模块来代替简单网络架构这一概念, GoogLeNet 模型是一个 22 层的卷积神经网络架构, 并且是 2014 年度 ImageNet 大规模视觉识别挑战赛的冠军, 误差率高达 6.7%据我所知, 这是第一个真正摒弃了在顺序结构中对卷积层和池化层进行简单堆叠的卷积神经网络架构之一这个新架构着重考虑内存和功耗(堆叠所有的这些层并添加大量的滤波器会产生计算成本和内存成本, 同时也会增加过拟合的概率)
Inception 模块
并不是像以前的架构按顺序运行, GoogLeNet 架构中存在可以并行的网络如下图所示, 这个方框被称为 Inception 模块
让我们来看看它的内部组成
底部的绿色框是输入, 最上面的是输出在传统的卷积网络的每一层, 你必须选择是否进行池化或卷积操作(也可以选择过滤器大小)Inception 模块可以所有这些操作这正是 GoogLeNet 的亮点之一
这样会导致太多的输出, 为了解决这一问题, 作者在 3*3 和 5*5 的层前面添加 1*1 的卷积操作对其进行降维举个例子, 假设输入数组为 100*100*60(这不一定是图像大小, 只是网络任意一层的输入)使用 20 个 1*1 卷积滤波器可以让将数组降到 100*100*20 这就意味着 3*3 和 5*5 的卷积操作不会有大量的操作由于我们正在降低数组的维度, 这一操作被称作特征池化, 这和我们用普通的最大池化层来减小图片的高度和宽度比较相似
GoogLeNet 模型有什么用? 这个网络由网络层的一个网络一个中型卷积滤波器一个大型卷积滤波器和一个池化操作组成卷积网络能够提取输入数组的细节信息, 而 5*5 滤波器能够覆盖输入较大范围的接受野, 因此也能够提取其细节信息你还可以在 GoogLeNet 模型中进行池化操作, 这有助于降低空间维度并避免过拟合最重要的是, 在每个卷积层之后都有 ReLU 函数, 这有助于改善网络的非线性基本上, 网络在执行这些操作的同时, 仍能够保持计算上的良好性能
主要论点
1. 在整个架构中使用了九个 Inception 模块, 总共超过 100 层!
2. 没有使用全连接层! 他们使用平均池化, 这大大节省了参数的数量
3. 使用的参数比 AlexNet 架构少 12 倍
4. 利用 R-CNN 的概念介绍其检测架构
5.Inception 模块有了版本更新(版本 6 和 7)
重要性
GoogLeNet 模型是第一个引入卷积神经网络层并不需要依次叠加这一理念的架构之一, 作为 Inception 模块的一部分, 富有创造性的层结构提高了整体性能和计算效率
敬请期待后续论文介绍理解卷积神经网络的利器: 9 篇重要的深度学习论文(下)!
以上为译文
来源: https://juejin.im/post/5ab316286fb9a028bc2da499