-
图像分类是计算机视觉研究的基础,广泛应用于安防、交通、医学等图像识别领域。传统的分类算法有K最近邻(k-nearest neighbor, KNN)、支持向量机(support vector machine, SVM)、聚类等基于决策理论的方法,以及贝叶斯分类、BP(back propagation)神经网络等基于统计的方法。深度神经网络技术不断发展,在BP神经网络的基础上,引入可学习权重的卷积层,大幅减少了模型参数,使其在图像分类、图像识别任务上表现优异,硬件计算能力不断发展,使得更深层的卷积神经网络模型成为可能,进一步增强了模型性能。
模型复杂度和样本数量是影响CNNs模型性能的两个关键因素。对于图像任务而言,目前改善样本数量不足的主要手段是图像增强[1],文献[2-4]通过图像翻转、平移、随机裁剪等方法,从一个已有的图像数据库中生成更多训练数据,此外还可利用伽马校正、加噪声、基于直方图的动态方法扩充数据。文献[5]提出了APAC的方法, 指导图像增强方法的使用。文献[6]提出了手动提取特征的方法,在手写识别数据集上利用Auto-encoder压缩特征,使用压缩过的特征进行训练,来改善手写数字识别。文献[7]结合不同的数据预处理技术设计了一个交通信号分类系统,用于识别各种交通信号。文献[8]使用图像旋转、伽马校正、噪声注入、分割背景等方法,将目标移到图像中心,以此构建水果分类系统。文献[9]使用预处理方法,把只有500个医疗图像的数据集扩充到1 200个,增强了模型对图像的适应性,提高了阿兹海默症分类的准确率。
本文基于文献[10-14]提出的CNNs模型,通过提高样本数量和模型融合的方法对其进行改进,实验结果表明了改进方法的有效性。
-
最大似然估计:给出样本数量为m的数据集${{\boldsymbol{X}}_{\rm{1}}} = \{ ({{\boldsymbol{x}}^{(1)}}, {y^{(1)}}), ({{\boldsymbol{x}}^{(2)}}, {y^{(2)}}), \cdots , ({{\boldsymbol{x}}^{(m)}}, {y^{{\rm{(}}m{\rm{)}}}})\} $,每个样本y由未知真实数据分布${p_{{\rm{data}}}}({\boldsymbol{x}})$生成,${p_{{\rm{model}}}}({\boldsymbol{x}};{\boldsymbol{\theta }})$将任意输入x映射到实数来估计真实概率,对${\boldsymbol{\theta }}$的最大似然估计定义为:
$$ \begin{aligned} \boldsymbol{\theta}_{\mathrm{ML}} &=\underset{\boldsymbol{\theta}}{\arg \max } ~p_{\text {model }}\left(\boldsymbol{X}_{1} ; \boldsymbol{\theta}\right)=\\ & \arg \max _{\boldsymbol{\theta}} \prod\limits_{i=1}^{m} p_{\text {model }}\left(\boldsymbol{x}^{i} ; \boldsymbol{\theta}\right) \end{aligned} $$ (1) 式中,i=1, 2, …, m,扩展到监督学习并估计条件概率分布${\rm{p}}({y^{(i)}}|{{\boldsymbol{x}}^{{\rm{(}}i{\rm{)}}}};{\boldsymbol{\theta }})$,给定样本x预测y值,此时的条件最大似然估计为:
$$ \boldsymbol{\theta}_{\mathrm{ML}}=\arg \max _{\boldsymbol{\theta}} \prod\limits_{i=1}^{m} p\left(y^{(i)} | \boldsymbol{x}^{(i)} ; \boldsymbol{\theta}\right) $$ (2) -
理想情况中,假设在给定样本集${\boldsymbol{X}}$的条件下,条件概率模型每次估计到的参数${\boldsymbol{\theta }}$相同,即用非线性[15]的神经网络估计${\boldsymbol{\theta }}$时,每次收敛到同一最优点。在实际情况中,多次训练模型时得到的参数${\boldsymbol{\theta }}$不完全一致,以参数值分布相近作为模型每次训练收敛到同一最优点,以$\varepsilon $表示波动误差。用${f_{{{\boldsymbol{\theta }}_{\rm{1}}}}}:{{\boldsymbol{x}}^{(i)}} \to {y^{(i)}}$;$({{\boldsymbol{x}}^{{\rm{(}}i{\rm{)}}}}, {y^{(i)}}) \in {{\boldsymbol{X}}_{\rm{1}}}$表示一个包含激活函数的非线性神经网络输入到输出的映射[16],记为${f_{{{\boldsymbol{\theta }}_{\rm{1}}}}}({\boldsymbol{x}})$,深度为L:
$$ {y^{{\rm{(}}i{\rm{)}}}} = {f_{{{\boldsymbol{\theta }}_{\rm{1}}}}}({{\boldsymbol{x}}^{(i)}}) $$ (3) 前向传播中各层的输出为:
$$ {{\boldsymbol{a}}^l} = \sigma ({{\boldsymbol{z}}^l});{{\boldsymbol{z}}^l} = {{\boldsymbol{w}}^l}{{\boldsymbol{a}}^{l - 1}} + {{\boldsymbol{b}}^l} $$ (4) 式中,集合${{\boldsymbol{\theta }}_{\rm{1}}}$为$\{ ({\boldsymbol{w}}_1^1, {\boldsymbol{b}}_1^1), ({\boldsymbol{w}}_1^2, {\boldsymbol{b}}_1^2), \cdots , ({\boldsymbol{w}}_1^L, {\boldsymbol{b}}_1^L)\} $。
反向传播中,只考虑输出层到输入层的各层梯度的反向传播,使用均方误差表示代价函数:
$$ \begin{array}{*{20}{c}} {C = \frac{1}{{2m}}\mathop \sum \limits_{i = 1}^m ||{y^{(i)}} - {{\boldsymbol{a}}^L}({{\boldsymbol{x}}^{(i)}})|{|^2}} \end{array} $$ (5) 计算参数${\boldsymbol{w}}, {\boldsymbol{b}}$的梯度:
$$ \begin{array}{*{20}{c}} {\frac{{\partial C}}{{\partial {\boldsymbol{w}}_{jk}^l}} = {\boldsymbol{a}}_k^{l - 1}{\boldsymbol{\delta }}_j^l} \end{array};\frac{{\partial C}}{{\partial {\boldsymbol{b}}_j^l}} = {\boldsymbol{\delta }}_j^l $$ (6) 输出层的梯度为:
$$ \begin{array}{*{20}{c}} {{\boldsymbol{\delta }}_j^L = \frac{{\partial C}}{{\partial {\boldsymbol{a}}_j^L}}\sigma '({\boldsymbol{z}}_j^L)} \end{array} $$ (7) $$ {\boldsymbol{\delta }}_j^l = \frac{{\partial C}}{{\partial {\boldsymbol{z}}_j^l}} = \mathop \sum \limits_k \frac{{\partial C}}{{\partial {\boldsymbol{z}}_k^{l + 1}}}\frac{{\partial {\boldsymbol{z}}_k^{l + 1}}}{{\partial {\boldsymbol{z}}_j^l}} = \mathop \sum \limits_k \frac{{\partial {\boldsymbol{z}}_k^{l + 1}}}{{\partial {\boldsymbol{z}}_j^l}}{\boldsymbol{\delta }}_k^{l + 1} $$ (8) 由于:
$$ \begin{array}{*{20}{c}} {{\boldsymbol{z}}_k^{l + 1} = \mathop \sum \limits_j {\boldsymbol{w}}_{kj}^{l + 1}{\boldsymbol{a}}_j^l + {\boldsymbol{b}}_k^{l + 1} = \mathop \sum \limits_j {\boldsymbol{w}}_{kj}^{l + 1}\sigma ({\boldsymbol{z}}_j^l) + {\boldsymbol{b}}_k^{l + 1}} \end{array} $$ (9) 所以:
$$ \begin{array}{*{20}{c}} {{\boldsymbol{\delta }}_j^l = \mathop \sum \limits_k {\boldsymbol{w}}_{kj}^{l + 1}{\boldsymbol{\delta }}_k^{l + 1}\sigma '({\boldsymbol{z}}_j^l)} \end{array} $$ (10) -
现给出数据集${{\boldsymbol{X}}_1}$的对称集,样本数量为m:${{\boldsymbol{X}}_2} = \{ ( - {{\boldsymbol{x}}^{(1)}}, {y^{(1)}}), ( - {{\boldsymbol{x}}^{(2)}}, {y^{(2)}}), \cdots , ( - {{\boldsymbol{x}}^{(m)}}, {y^{(m)}})\} $
记${f_{{{\boldsymbol{\theta }}_2}}}: - {x^{(i)}} \to {y^{(i)}}$,集合${{\boldsymbol{\theta }}_2}$为$\{ ({\boldsymbol{w}}_2^1, {\boldsymbol{b}}_2^1), $ $({\boldsymbol{w}}_2^2, {\boldsymbol{b}}_2^2), \cdots , ({\boldsymbol{w}}_2^L, {\boldsymbol{b}}_2^L)\} $,在假设1的前提下有:
$$ {y^{(i)}} = {f_{{{\boldsymbol{\theta }}_1}}}({{\boldsymbol{x}}^{(i)}}) = {f_{{{\boldsymbol{\theta }}_2}}}( - {{\boldsymbol{x}}^{(i)}}) $$ (11) 根据梯度反传式(6)、(7)、(10),假设:
$$ \begin{array}{l}{\left|\boldsymbol{w}_{1}^{1}-\left(-\boldsymbol{w}_{2}^{1}\right)\right|=\varepsilon_{1}} \\ {\left|\boldsymbol{w}_{1}^{(i)}-\boldsymbol{w}_{2}^{(i)}\right|=\varepsilon_{1} \quad i \in\{2, 3, \cdots, L\}}\end{array} $$ (12) 除了第一层的${\boldsymbol{w}}$参数互为相反数的近似值以外,其他层对应参数值近似相等。模型各输出层以及其他层的特征相等:
$$ {f_{{{\boldsymbol{\theta }}_1}}}({\boldsymbol{z}}_{{\rm{out}}}^l) = {f_{{{\boldsymbol{\theta }}_2}}}({\boldsymbol{z}}_{{\rm{out}}}^l){\rm{ }}l \in \{ 1, 2, \cdots , L\} $$ (13) 在假设2中,参数值${{\boldsymbol{\theta }}_1}$,${{\boldsymbol{\theta }}_2}$对模型有相同的贡献。现通过实验来证明式(12)不成立,进而否定假设2,以此来证明${{\boldsymbol{\theta }}_1}$,${{\boldsymbol{\theta }}_2}$对模型有不同贡献。通过设置实验来验证假设2成立与否。对比${{\boldsymbol{\theta }}_1}$新增:
$$ {y^{(i)}} = {f_{{\mathit{\boldsymbol{\theta }}_1}}}\left( {{\mathit{\boldsymbol{x}}^{(i)}}} \right) = {f_{{\mathit{\boldsymbol{\theta }}_3}}}\left( {{\mathit{\boldsymbol{x}}^{(i)}}} \right) $$ (14) 在实验中以平均绝对误差为评估指标,对比${f_{{{\boldsymbol{\theta }}_{\rm{1}}}}}{\rm{, }}{f_{{{\boldsymbol{\theta }}_{\rm{2}}}}}{\rm{, }}{f_{{{\boldsymbol{\theta }}_{\rm{3}}}}}$对应各层参数值。由于权重初始化和训练的随机性,同一个网络多次训练的${{\boldsymbol{\theta }}_i}$值只能近似相等,忽略偏置项$\boldsymbol{b}^{(i)}$试证明:
$$ \left|\boldsymbol{w}_{1}^{(1)}-\boldsymbol{w}_{3}^{(1)}\right|=\left|\boldsymbol{w}_{1}^{(1)}-\left(-\boldsymbol{w}_{2}^{(1)}\right)\right|=\varepsilon_{1} $$ (15) 式中,${\varepsilon _1}$为因训练的不确定性产生的波动误差。
-
使用含激活函数的全连接神经网络估计模型参数${\boldsymbol{\theta }}$。
固定值const = 42作为随机种子,$({{\boldsymbol{x}}^{{\rm{(}}i{\rm{)}}}}, {y^{(i)}}) \in {{\boldsymbol{X}}_1}$
网络深度:L = 5, 6, 7, …, 15,循环执行以下步骤:
1) 模型1:
${{\boldsymbol{a}}^1} = \sigma ({{\boldsymbol{z}}^1});{{\boldsymbol{z}}^1} = {\boldsymbol{w}}_1^1{{\boldsymbol{x}}^{(i)}} + {\boldsymbol{b}}_1^1 $
w初始化方式${\rm{N}}(0, 1)$;seed(const)
$ {{\boldsymbol{a}}^2} = \sigma ({{\boldsymbol{z}}^2});{{\boldsymbol{z}}^2} = {\boldsymbol{w}}_1^2{{\boldsymbol{a}}^1} + {\boldsymbol{b}}_1^2$
w初始化方式${\rm{N}}(0, 1)$;seed(const)
…
${{\boldsymbol{a}}^L} = \sigma ({{\boldsymbol{z}}^L});{{\boldsymbol{z}}^L} = {\boldsymbol{w}}_1^L{{\boldsymbol{a}}^{L - 1}} + {\boldsymbol{b}}_1^L $
w初始化方式${\rm{N}}(0, 1)$;seed(const)
使用SGD根据式(6)、(7)、(10)优化式(5)。
2) 模型2:
$ {{\boldsymbol{a}}^1} = \sigma ({{\boldsymbol{z}}^{\rm{1}}});{{\boldsymbol{z}}^1} = {\boldsymbol{w}}_2^1( - {{\boldsymbol{x}}^{(i)}}) + {\boldsymbol{b}}_1^1$
w初始化方式$ - {\rm{N}}(0, 1)$;seed(const)
$ {{\boldsymbol{a}}^2} = \sigma ({{\boldsymbol{z}}^2});{{\boldsymbol{z}}^2} = {\boldsymbol{w}}_1^2{{\boldsymbol{a}}^1} + {\boldsymbol{b}}_1^2$
w初始化方式${\rm{N}}(0, 1)$;seed(const)
…
$ {{\boldsymbol{a}}^L} = \sigma ({{\boldsymbol{z}}^L});{{\boldsymbol{z}}^L} = {\boldsymbol{w}}_1^L{{\boldsymbol{a}}^{L - 1}} + {\boldsymbol{b}}_1^L$
w初始化方式${\rm{N}}(0, 1)$;seed(const)
使用SGD根据式(6)、(7)、(10)优化式(5)。
3) 模型3:
除把各层参数记为${\boldsymbol{w}}_3^{{\rm{(}}i{\rm{)}}}, {\boldsymbol{b}}_3^{{\rm{(}}i{\rm{)}}}$外,与模型1完全相同,使用SGD根据式(6)、(7)、(10)优化式(5)。
注:${\rm{N}}(0, 1)$表示初始化参数值服从均值为0,方差为1的高斯分布。
重复多次实验有:
$$ \begin{array}{c}{\left|\boldsymbol{w}_{1}^{(i)}-\boldsymbol{w}_{2}^{(i)}\right|=\left|\boldsymbol{w}_{1}^{(i)}-\boldsymbol{w}_{3}^{(i)}\right|=\varepsilon_{1} \neq\left|\boldsymbol{w}_{1}^{(1)}-\left(-\boldsymbol{w}_{2}^{(1)}\right)\right|} \\ {i \in\{1, 2, \cdots, L\}}\end{array} $$ (16) 实验中根据式(12)初始化参数,发现经过反传误差后的结果与假设2(即式(16)和式(15))相矛盾,证明假设2不成立,${{\boldsymbol{\theta }}_1}$,${{\boldsymbol{\theta }}_2}$对模型的贡献不同。${f_{{{\boldsymbol{\theta }}_1}}}({{\boldsymbol{x}}^{(i)}}), {f_{{{\boldsymbol{\theta }}_2}}}( - {{\boldsymbol{x}}^{(i)}})$通过不同的参数分布寻找数据特征。结论推断:分别训练${f_{{{\boldsymbol{\theta }}_1}}}({{\boldsymbol{x}}^{(i)}}), {f_{{{\boldsymbol{\theta }}_2}}}( - {{\boldsymbol{x}}^{(i)}})$,将两个模型的输出融合:
$$ {f_{{{\boldsymbol{\theta }}_{{\rm{integ}}}}}} = {f_{{{\boldsymbol{\theta }}_1}}}({{\boldsymbol{x}}^{(i)}}) + {f_{{{\boldsymbol{\theta }}_2}}}( - {{\boldsymbol{x}}^{(i)}}) $$ (17) 模型输出融合方式为各类别输出概率相加。
数据标准化公式和反转标准化公式为:
$$ \boldsymbol{x}_{\text {normal }}^{\mathrm{pos}}=\frac{\boldsymbol{x}-E(\boldsymbol{x})}{\sqrt{D(\boldsymbol{x})}} $$ (18) $$ \begin{gathered} {\boldsymbol{x}}_{{\rm{normal}}}^{{\rm{neg}}} = \frac{{(255 - {\boldsymbol{x}}) - E(255 - {\boldsymbol{x}})}}{{\sqrt {D(255 - {\boldsymbol{x}})} }} = \\ \frac{{ - {\boldsymbol{x}} + E{\rm{(}}{\boldsymbol{x}})}}{{\sqrt {D{\rm{(}}{\boldsymbol{x}})} }} = - {\boldsymbol{x}}_{{\rm{normal}}}^{{\rm{pos}}} \\ \end{gathered} $$ (19) 式中,${\boldsymbol{x}}$表示原图像,${\boldsymbol{x}}_{{\rm{normal}}}^{{\rm{pos}}}, {\boldsymbol{x}}_{{\rm{normal}}}^{{\rm{neg}}}$分别表示原图像标准化后的数据和原图像反转再标准化后的数据。式(19)表明:原图像反转后进行标准化等同于原图像标准化后取反。
通过假设和试验,证明模型中的参数对原数据集及其对称数据集比较敏感。因此,本文分别使用原数据集和对称数据集估计模型参数时,可以得到不同的参数分布,利用参数分布的差异化融合模型,提高CNNs在图像分类中的预测精度。
-
在Ubuntu操作系统下,使用Conda环境,应用Tensorflow、Keras深度学习框架,硬件配置为:Intel i7处理器、NVIDIA1080Ti显卡、16 GB内存。
模型的训练和验证采用公开数据集CIFAR-10、CIFAR-100、Fashion-MNIST[17],数据集详细信息如表 1所示:
表 1 数据集
数据集 训练集大小 验证集大小 图片尺寸 类别数 CIFAR-10 50 000 10 000 32×32×3 10 CIFAR-100 50 000 10 000 32×32×3 100 Fashion-MNIST 60 000 10 000 28×28×1 10 实验中使用的模型包括Vgg Networks、Residual Networks、Wide-Residual Networks和ResNeXt Networks。
-
为增加模型稳定性并获得更好的分类效果,本文采用标准化方法对图像灰度值的大小进行制约。将标准化后的数据作为原始数据,将原始数据取反后作为映射数据,分别用于训练CNNs,最后融合两个训练后的模型,将其作为图像分类器。实验步骤如下:
1) 对数据进行预处理,通过翻转、平移和旋转实现图像增强,将数据标准化。
2) 将Softmax作为模型输出的映射函数,使用交叉熵作为损失函数建立CNNs分类模型,应用1)中预处理后的数据训练CNNs模型,训练完成后保存
模型及其参数,记网络模型为${f_{{{\boldsymbol{\theta }}_1}}}$。
3) 对数据进行预处理,通过翻转、平移和旋转实现图像增强,将数据标准化,根据式(19),对标准化后的数据取反。分别经过步骤1)和步骤3)预处理后的图像如图 1所示。
4) 保持2)中建立的模型不变,使用步骤3)中预处理后的数据重新训练CNNs分类模型,训练完成后保存模型及其参数,记网络模型为${f_{{{\boldsymbol{\theta }}_2}}}$。
5) 根据式(17),建立一个新的模型。保持模型数据输入不变,将两个模型${f_{{{\boldsymbol{\theta }}_{\rm{1}}}}}, {f_{{{\boldsymbol{\theta }}_2}}}$输出的分类概率相加,记合并的网络模型为${f_{{{\boldsymbol{\theta }}_{{\rm{integ}}}}}}$。
6) 基于测试集对步骤5)获得的模型${f_{{{\boldsymbol{\theta }}_{{\rm{integ}}}}}}$进行验证。
模型训练过程中通过3种方法使模型跳出局部最优:一是以衰减的方式逐渐改变优化器的学习率;二是根据迭代次数自动触发改变学习率的条件[18],触发改变条件如图 2所示;三是设置验证方法保存最优的一组参数并提前结束训练。
-
基于CIFAR-10数据集、CIFAR-100数据集和Fashion-MNIST数据集的实验结果分别如表 2~表 4所示。
表 2 CIFAR-10数据集表现
模型 原始模型准确率 改进模型准确率 Vgg19 0.933 0 0.944 4 ResNet50 0.928 3 0.941 7 ResNet110 0.937 6 0.947 0 Wide-Resnet 28×10 0.958 8 0.962 8 Wide-Resnet 16×8 0.951 3 0.959 2 ResNeXt-4×64d 0.951 9 0.958 5 表 3 CIFAR-100数据集表现
模型 原始模型准确率 改进模型准确率 Vgg19 0.723 1 0.747 0 ResNet50 0.722 4 0.756 4 ResNet110 0.753 9 0.784 7 Wide-Resnet 28×10 0.772 0 0.796 5 Wide-Resnet 16×8 0.767 3 0.786 4 ResNeXt-4×64d 0.742 2 0.773 3 表 4 Fashion-MNIST数据集表现
模型 原始模型准确率 改进模型准确率 Vgg19 0.947 7 0.958 0 ResNet32 0.934 3 0.946 4 ResNet50 0.939 1 0.953 0 ResNet110 0.950 5 0. 961 4 Wide-resnet 28×10 0.951 0 0.963 3 Wide-resnet 16×8 0.947 7 0.957 8 ResNeXt-4×64d 0.948 0 0.956 3 表 2中针对CIFAR-10数据集的实验结果表明,改进的Residual-Net50模型较原始模型提升效果最好,准确率提高约1.5%,原始Residual-Net110模型的复杂度比Residual-Net50高,但在改进模型上准确率只提高了约1.0%,原始Wide-Resnet 28×10模型参数最多,在改进模型上准确率只提高了0.4%。由此可知,在模型复杂度到达一定程度后,准确率的提高会遇到瓶颈。表 3中针对CIFAR-100数据集的实验结果表明,改进的Residual-Net110模型较原始模型提升效果最好,准确率提高了约3%,其他改进的模型较原始模型提升效果相近。表 4中针对Fashion-MNIST数据集的实验结果表明,各改进模型表现一致,较原始模型提高了约1.0%的准确率。在训练模型时,可使用不同的优化器如SGD、Adam、Adagrad、RMSprop更新模型参数,对比发现不同的优化器只影响收敛速度,对最终分类精度的影响可以忽略,各优化器分类精度基本相同,与文献[19]中的结论基本一致。表 2~表 4中给出的是使用SGD优化器获得的数据,具有代表性。
Classification Method of Twice Train Fusion Based on CNNs
-
摘要: 该文基于卷积神经网络(CNNs)模型,提出一种模型融合的图像分类方法,将原图像经过图像增强和数据标准化后获得的数据作为原始数据,将原始数据取反后作为映射数据,分别使用原始数据和映射数据训练CNNs模型,通过融合训练后的两组CNNs模型获得改进的CNNs模型。通过假设、验证、理论推导步骤证明了该方法在简单模型上的有效性,进而推广到更复杂的卷积神经网络模型。实验结果表明,改进的CNNs模型与原始CNNs模型分类精度对比,在CIFAR-10和CIFAR-100数据集上分别提升了1%和3%,有效提升了模型的分类精度。Abstract: Based on the convolutional neural networks (CNNs) model, an image classification method of model fusing is proposed. The original data is composed of enhanced images and normalized data, and the mapping data is generated by negating original data. Then the CNNs models with the original data and the mapping data are trained separately. Next the two sets of CNNs models are fused to obtain the improved of CNNs model after training. The improved method is generalized to some more complex CNNs models after it is proved effective for simple cases through hypothesis, verification, and theoretical derivation steps. The experimental results show that the model after the fusion performs well. Compared with the original CNNs model, the classification accuracy the proposed model is increased by 1% and 3% based on the sets of CIFAR-10 and CIFAR-100 data, respectively.
-
表 1 数据集
数据集 训练集大小 验证集大小 图片尺寸 类别数 CIFAR-10 50 000 10 000 32×32×3 10 CIFAR-100 50 000 10 000 32×32×3 100 Fashion-MNIST 60 000 10 000 28×28×1 10 表 2 CIFAR-10数据集表现
模型 原始模型准确率 改进模型准确率 Vgg19 0.933 0 0.944 4 ResNet50 0.928 3 0.941 7 ResNet110 0.937 6 0.947 0 Wide-Resnet 28×10 0.958 8 0.962 8 Wide-Resnet 16×8 0.951 3 0.959 2 ResNeXt-4×64d 0.951 9 0.958 5 表 3 CIFAR-100数据集表现
模型 原始模型准确率 改进模型准确率 Vgg19 0.723 1 0.747 0 ResNet50 0.722 4 0.756 4 ResNet110 0.753 9 0.784 7 Wide-Resnet 28×10 0.772 0 0.796 5 Wide-Resnet 16×8 0.767 3 0.786 4 ResNeXt-4×64d 0.742 2 0.773 3 表 4 Fashion-MNIST数据集表现
模型 原始模型准确率 改进模型准确率 Vgg19 0.947 7 0.958 0 ResNet32 0.934 3 0.946 4 ResNet50 0.939 1 0.953 0 ResNet110 0.950 5 0. 961 4 Wide-resnet 28×10 0.951 0 0.963 3 Wide-resnet 16×8 0.947 7 0.957 8 ResNeXt-4×64d 0.948 0 0.956 3 -
[1] MIKOLAJCZYK A, GROCHOWSKI M. Data augmentation for improving deep learning in image classification problem[C]//IEEE 2018 International Interdisciplinary PhD Workshop. Swinoujście, Poland: IEEE, 117-122. [2] FAWZI A, SAMULOWITZ H, TURAGA D, et al. Adaptive data augmentation for image classification[C]//IEEE International Conference on Image Processing (ICIP). Phoenix, AZ, USA: IEEE, 2016: 3688-3692. https://ieeexplore.ieee.org/document/7533048 [3] PATRICE Y S, DAVID S, JOHN C P, et al. Best practices for convolutional neural networks applied to visual document analysis[C]//The 17th International Conference on Document Analysis and Recognition, 2003. Edinburgh, UK: IEEE, 2003: 958-1003. [4] KRIZHEVSKY A, SUTSKEVER I, HINTON G. ImageNet classification with deep convolutional neural networks[J]. Advances in neural information processing systems, 2012, 25(2):1106-1114. http://cn.bing.com/academic/profile?id=1dc5d01904d2c274eaec2181a93aa339&encoded=0&v=paper_preview&mkt=zh-cn [5] IKURO S, NISHIMURA N H, KENSUKE Y. APAC: Augmented pattern classification with neural networks[EB/OL].[2015-03-13]. https://arxiv.org/abs/1505.03229. [6] SHOPON M, MOHAMMED N, ABEDIN M A. Image augmentation by blocky artifact in deep convolutional neural network for handwritten digit recognition[C]//IEEE International Conference on Imaging, Vision & Pattern Recognition (icIVPR). Dhaka, Bangladesh: IEEE, 2017: 1-6. [7] VICEN-BUENO R, GARCÍA-GONZÁLEZ A, TORIJANO-GORDO E, et al. Traffic sign classification by image preprocessing and neural networks[C]//Computational and Ambient Intelligence, International Work Conference on Artificial Neural networks. Iwann, San Sebastián, Spain: Springer, 2007: 741-748. [8] ZHANG Y D, DONG Z, CHEN X, et al. Image based fruit category classification by 13-layer deep convolutional neural network and data augmentation[J]. Multimedia Tools and Applications. 2019, 78(3):3613-3632. doi: 10.1007/s11042-017-5243-3 [9] TAQI A M, AWAD A, ALAZZO F, et al. The impact of multi-optimizers and data augmentation on TensorFlow convolutional neural network performance[C]//IEEE Conference on Multimedia Information Processing and Retrieval. Miami, FL, USA: IEEE Computer Society, 2018: 140-145. [10] SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[EB/OL].[2015-04-10]. https://arxiv.org/abs/1409.1556 [11] HE Kai-ming, ZHANG Xiang-yu, REN Shao-qing, et al. Deep residual learning for image recognition[C]//IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, USA: IEEE, 2016: 770-778. [12] ZAGORUYKO S, KOMODAKIS N. Wide residual networks[EB/OL].[2017-06-14]. https://arxiv.org/abs/1605.07146. [13] XIE S, GIRSHICK R, DOLLÁR P, et al. Aggregated residual transformations for deep neural networks[C]//IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, Hawaii, USA: IEEE, 2017: 5987-5995. [14] IOFFE S, SZEGEDY C. Batch normalization: accelerating deep network training by reducing internal covariate shift[C]//ICML'15 Proceedings of the 32nd International Conference on International Conference on Machine Learning. Lille, France: JMLR.org, 2015: 448-456. https://dl.acm.org/citation.cfm?id=3045167 [15] GLOROT X, BORDES A, BENGIO Y. Deep sparse rectifier neural networks[C]//The 14th International Conference on Artificial Intelligence and Statistics. Fort Lauderdale, FL, USA: JMLR.org, 2011: 315-323. [16] RUMELHART D E, HINTON G E, WILLIAMS R J. Learning representations by back-propagating errors[C]//Cognitive Modeling. London, England: The MIT Press, 2002: 213-256. [17] HAN XIAO, RASUL K, VOLLGRAF R. Fashion-MNIST: A novel image dataset for benchmarking machine learning algorithms[EB/OL].[2017-09-15]. https://arxiv.org/abs/1708.07747. [18] YUAN Z, YAN Y, JIN R, et al. Stagewise training accelerates convergence of testing error over SGD[EB/OL].[2018-11-11]. https://arxiv.org/abs/1812.03934. [19] RUDER S. An overview of gradient descent optimization algorithms[EB/OL].[2017-06-15]. https://arxiv.org/abs/1609.04747.