影响深度卷积神经网络算法的关键参数是#28#29?卷积核个数filters 卷积核尺寸kernel_size 步长striders 填充方式padding 卷积核激活方式activation 卷积核权重参数初
影响深度卷积神经网络算法的关键参数是#28#29?
卷积核个数filters 卷积核尺寸kernel_size 步长striders 填充方式padding 卷积核激活方式activation 卷积核权重参数初始分布 卷积核偏置参数初始分布池化尺寸 池化步长 池化方式优化算法 目标函数 batch大小正则化 数据预处理等能影响的参数太多卷积神经网络有哪些重要的技巧细节?
除了带你动手学深度学习,李沐大神还带你深挖卷积神经网络的各种实践「技艺」。近日AWS的研究者研究了一系列训练过程和模型架构的改进方法,他们在多个神经网络架构和数据集上评估它们,并研究它们对最终模型准确率的影响。自 2012 年 AlexNet 大展神威以来,研究者已经{繁:經}提出了各gè 种卷积架构,包括 VGG、NiN、Inception、ResNet、DenseNet 和 NASNet 等,我们会发现模型的准确率正稳定提升。
但是现在这些提升并不仅仅来源于架构的修正,还来源于训练过程的改进:包括损失函数的优化、数据预处理方法澳门威尼斯人的提炼和(hé)最优化方法的提升等。在过去几年中,卷积网络与图像分割出现大量的改进,但大多数在文献中只作为实现细节而简要提及,而其它还有一些技巧甚至只能在源代码中找到。
在这篇论文中,李沐等研究者研究了一系列训练过程和模型架构的改进方法。这些方法都能提升模型的准确率,且几乎不增加任何计算复杂度。它们大多数shù 都是次要的「技巧」,例如【pinyin:rú】修正卷积步幅大小或调整学习率策略等
总的来说,采用这些技巧会产生很大的不同。因此研究者希望【读:亚博体育wàng】在多个神经网络架构和数据集上评估它们,并研究它们对最终模型准确率的影响。
研究者的实验表明,一些技巧可以显著提升准确率,且将它们组{繁体:組}合在一起能进一步提升模型的准确率。研究者还对比了基线 ResNet 、加了各种技巧的 ResNet、以及其它相关的神经网络,下表 1 展示了所有的准确率对比。这些技巧将 ResNet50 的 Top-1 验证准确率从 75.3%提高到 79.29%,还优于其他更新和改进的网络架构。此外,研究者还表示这些技巧很多都可以迁移到dào 其它领域和数据集,例如目标检测和语义分割等。
论lùn 文:Bag of Tricks for Image Classification with Convolutional Neural Networks
论《繁:論》文地址:https://arxiv.org/pdf/1812.01187.pdf
摘要:图像分类研究近期[拼音:qī]的多数进展都可以归功于训练过程的调整,例如数据增强和优化方法的变化。然而,在这些文献中,大多数微调方《练:fāng》法要么被简单地作为实现细节,或仅能在源代码中看到。在本文中,我们将测试一系列的微调方法,并通过控制变量实验评估它们对最终准zhǔn 确率的影响
我们将展示通过组合不同的微调方法,我们可以显著地改善多种 CNN 模型。例如,我们将 ImageNet 上训练的 ResNet-50 的 top-1 验证准确率从 75.3% 提升到 79.29。本研究还表明,图像分类准确率的提高可以在其他应用领域(如目标检测和语义分割)中实现更好的迁移学习性能
2 训练过程
目前我们基本上都用小批量 SGD 或其变体训练神经网络,Algorithm 1 展示了 SGD 的模版过程(感兴趣的读者可以查阅原论文)。利用广泛使用的 ResNet 实现作为我们的基线,训练过程主要分为以下六个步骤:- 随机采样一张图片,并解码为 32 位的原始像素浮点值,每一个像素值的取值范围为 [0, 255]。
- 随机以 [3/4, 4/3] 为长宽比、[8%, 100%] 为比例裁减矩形区域,然后再缩放为 224#2A224 的方图。
- 以 0.5 的概率随机水平翻转图像。
- 从均匀分布 [0.6, 1.4] 中抽取系数,并用于缩放色调和明亮度等。
- 从正态分布 N #280, 0.1#29 中采样一个系数,以添加 PCA 噪声。
- 图像分别通过减去(123.68, 116.779, 103.939),并除以(58.393, 57.12, 57.375)而获得经归一化的 RGB 三通道。
表 2:文献中实现的验(读:yàn)证准确率与我们基(拼音:jī)线模型的验证准确率,注意 Inception V3 的输入图像大小是 299#2A299。
3 高效训练
随着 GPU 等硬件的流行,很多与性能相关的权衡取舍或最优选择都已经发生了改变。在这一章节中,我们研究了能利用低精度和大批量训练优势的多种技术,它们都不会损害模型的准确率,甚至有一些技术还能同时提升准确率与训练速度。3.1 大批[pī]量训练
对于凸优化问题,随着批量的增加,收敛速度会降低。人(读:rén)们已经知道神经网络会有类似的实证结果 [25]。换句话说,对于相同数量的 epoch,大批量训练的模型与使用较小批量训练的模型相(pinyin:xiāng)比,验证准确率会降低。因此有很多方法与技巧都旨在解决这个问题:
线性扩展学习率:较大的批量会减(繁体:減)少梯度的噪声,从而可以增《zēng》加学习率来加快收敛。
学习率预热:在预热这一【yī】启发式方法中,我们在最初使用较(繁:較)小的学习率,然后在训练过程变得稳定时换回初始学习率。
Zero γ:注意 ResNet 块的最后一层可以是批pī 归一化层(BN)。在 zero γ启发式方法中,我们对所有残差块末端的 BN 层初始化γ=0。因此,所有{yǒu}的残差块仅返回输入值,这相当于网络拥有更少的层,在初始阶段更容易训练。
无偏衰减:无偏衰减启发式方法(练:fǎ)仅[拼音:jǐn]应用权重衰减到卷积层和全连接层的权重,其它如 BN 中的γ和β都不进行衰减。
表 4:ResNet-50 上每种有效训练启发式的准确率效果[练:guǒ]。
3.2 低【练:dī】精度训练
然而,新硬件可能具有增强的算术逻辑【jí】单元以用于较低精度的数据类型。尽管具备性能优势,但[dàn]是精度降低具有较窄的取值范围,因此有可能出现超出范围而扰乱训练进度的[练:de]情况。
表(繁体:錶) 3:ResNet-50 在基线(BS = 256 与 FP32)和更高效硬件设[shè]置(BS = 1024 与 FP16)之间的训练时间[繁体:間]和验证准确率的比较。
4 模型变体
我们将简要介绍 ResNet 架构,特别是与模型变体调整相关的模块。ResNet 网络由一个输入主干、四个后续阶段和一个最终输出层组成,如图 1 所示。输入主干有一个 7×7 卷积,输出通道有 64 个,步幅为 2,接着是 3 ×3 最大池化层,步幅为 2。输入主干(input stem)将输入宽度和高度减小 4 倍,并将其通道尺寸增加到 64。从阶段 2 开始,每个阶段从下采样块开始,然后是几个残差块。在下采样块中,存在路径 A 和路(拼音:lù)径 B。路径 A 具有三个卷积[繁体:積],其卷积核大小分别为 1×1、3×3 和 1×1
第一个卷积的步幅为 2,以将输入长度和宽度减半,最后一个卷积的输出通道比前两个大 4 倍,称为瓶颈结构。路径 B 使用步长为 2 的 1×1 卷积将输入形状变换为路径 A 的输出形状,因此我们可以对两个路径的输出[繁:齣]求和以获得下采样块的输出。残差块类似于下采样块,除了仅使用步幅为 1 的卷积【繁体:積】
我们可以改变每【读:měi】个阶段中残差块的数量以获得不同的 ResNet 模[练:mó]型,例如 ResNet-50 和 ResNet-152,其中《读:zhōng》的数字表示网络中卷积层的数量。
图 1:ResNet-50 的架构。图中说(繁:說)明了卷积层的卷[繁:捲]积核大小、输出通道大小和步幅大小(默认值为 1),池化层也类似。
图 2:三个 ResNet 变《繁体:變》体。ResNet-B 修改 ResNet 的下采样模块。ResNet-C 进一步修改输入主干。在此基础上,ResNet-D 再次修【练:xiū】改了下采样(繁:樣)块。
表 5:将 ResNet-50 与三种{繁:種}模型变[biàn]体进【jìn】行模型大小(参数数量)、FLOPs 和 ImageNet 验证准确率(top-1、top-5)的比较。
5 训练方法改进
5.1 余弦学习率衰减Loshchilov 等人 [18] 提出《繁:齣》余弦退火策略,其简【繁:簡】化版本是按照余弦函数将学习速率从(繁体:從)初始值降低到 0。假设批次总数为 T(忽略预热阶段),然后在批次 t,学习率η_t 计算如下:
其中η是初始学习率lǜ ,我们将此方案称为「余弦」衰减。
图 3:可视化带有预热方案的学习率变化。顶部:批量大(读:dà)小(拼音:xiǎo)为 1024 的余弦衰减和按迭代步衰减方{练:fāng}案。底部:关于两个方案的 top-1 验证准确率曲线。
5.2 标签【繁体:籤】平滑
标《繁体:標》签平滑的想法首先被提tí 出用于训练 Inception-v2 [26]。它将真实概率的构造改成[拼音:chéng]:
其(qí)中ε是一个小常数,K 是标签总数量。
图 4:ImageNet 上标签平滑效果的可视化。顶部:当增加ε时,目标类别与其它类别之间的理论差【chà】距减小。下图:最大预测与其它类[繁:類]别平均值之间差距的经验分布。很明显,通过标签平滑,分布中心处于理论值并具有较少的极端值。
5.世界杯3 知{pinyin:zhī}识蒸馏
在知识蒸馏 [10] 中,我们使用教师[拼音:shī]模型来帮助训练当前模型(被称为学生模型)。教师模型《读:xíng》通常是具有更高准确率的预训练模型,因此通过模仿,学生模型能够在保持模型复杂性相同的同时提高其自身的准确率。一个例子是使用 ResNet-152 作为教师模型来帮助训《繁:訓》练 ResNet-50。
5.4 混合(繁体:閤)训练
在混合训练(mixup)中,每次我们随机抽样两个样本 #2皇冠体育8x_i,y_i#29 和 #28x_j,y_j#29。然后我们通过这两个样本的加权[繁:權]线性插值构建一个新的样本:
其中 λ∈[0,1] 是从 Beta#28α, α#29 分布提取的随机数。在混(hùn)合训练中,我们只使用新《拼音:xīn》的样本 #28x hat, y hat#29。
5.5 实验(繁体:驗)结果
表 6:通过堆【拼音娱乐城:duī】叠训练改进方法,得到的 ImageNet 验证准确率。基线模型为第 3 节所描述的。
6 迁移学习
6.1 目标检测表[繁体:錶] 8:在 Pascal VOC 上评估各种预训练基础网络的 Faster-RCNN 性能。
6.2 语义[yì]分割
表 9:在 ADE20K 上评估各《练:gè》种基础网络的 FCN 性能。
本文链接:http://21taiyang.com/SoccerSports/7085134.html
蒙特卡{pinyin:kǎ}洛模拟软件转载请注明出处来源