掌桥专利:专业的专利平台
掌桥专利
首页

一种图像分类残差神经网络训练实现方法

文献发布时间:2024-04-18 19:52:40


一种图像分类残差神经网络训练实现方法

技术领域

本发明提出的是一种图像分类残差神经网络训练实现方法,属于图像分类及神经网络技术领域。

背景技术

随着人工智能的发展与进步,深度神经网络算法获得了广泛的应用,在各种领域取得显著的成果,并且被广泛应用于人工智能、自动控制、机器人、统计学等各个领域的信息处理中;以图像分类为例,如VGG网络、ResNet网络、ResNext网络等经典图像分类网络,对特定的图像分类任务使用特定的数据集对图像分类网络进行训练,在普通的训练方式下,分类精度的高低,取决于图像分类网络自身结构。

为追求更好地分类性能,通过增加网络深度可以较好提高网络性能;虽然深层网络比浅层网络性能更优,但当网络深度过度增加时,会引发神经网络退化以及梯度消失等问题;2015年,由Kaiming He等人提出的ResNet网络,通过堆叠残差结构,加深网络深度的同时,梯度消失的难题也得到了缓解,进一步提升了神经网络在图像分类任务上的表现;目前,已有更大的残差神经网络(ResNet1000)被提出,提高的性能极其有限,通常以海量的计算和存储为代价;对于实时性要求较高且资源受限的移动端设备或嵌入式设备,想实现大型神经网络的应用异常困难;因此,如何能够在不增加网络深度条件下,提升ResNet网络精度就显得非常重要。

发明内容

本发明提出的是一种图像分类残差神经网络训练实现方法,其目的旨在不增加网络深度条件下提升ResNet网络的整体准确率。

本发明的技术解决方案:一种图像分类残差神经网络训练实现方法,该方法包括:

1、在ResNet网络内部引入若干个分类器;所述ResNet网络包括第一卷积层、最大池化层、第一模块、第二模块、第三模块、第四模块、第一自适应平均池化层、第四全连接层、第四概率转换函数;

2、使用图像数据集对若干个分类器进行联合训练;

3、通过真实标签(label)对ResNet网络和若干个分类器进行监督以及通过ResNet网络预测结果对ResNet网络进行监督,得到联合训练的总损失;

4、在总损失作用下,更新ResNet网络权重。

进一步地,所述在ResNet网络内部引入若干个分类器,具体包括:在第一模块的基础上依次增加第一浅层模块、第一全连接层、第一概率转换函数作为第一分类器;在第二模块的基础上依次增加第二浅层模块、第二全连接层、第二概率转换函数作为第二分类器;在第三模块的基础上依次增加第三浅层模块、第三全连接层、第三概率转换函数作为第三分类器。

进一步地,所述使用图像数据集对若干个分类器进行联合训练,具体包括:

2-1、将图像数据集的训练集均分为A部分训练集和B部分训练集;

2-2、B部分训练集中的图像首先经过第一卷积层、最大池化层、第一模块获得第一模块的输出特征图;

2-3、将第一模块的输出特征图作为第二模块的输入特征图和第一浅层模块的输入特征图;

2-4、第一浅层模块的输入特征图依次经过第一浅层模块、第一全连接层、第一概率转换函数后获得第一分类器的输出结果,第一分类器的输出结果即为第一分类结果;

2-5、第二模块的输入特征图经过第二模块后获得第二模块的输出特征图;

2-6、将第二模块的输出特征图作为第三模块的输入特征图和第二浅层模块的输入特征图;

2-7、第二浅层模块的输入特征图依次经过第二浅层模块、第二全连接层、第二概率转换函数后获得第二分类器的输出结果,第二分类器的输出结果即为第二分类结果;

2-8、第三模块的输入特征图经过第三模块后获得第三模块的输出特征图;

2-9、将第三模块的输出特征图作为第四模块的输入特征图和第三浅层模块的输入特征图;

2-10、第三浅层模块的输入特征图依次经过第三浅层模块、第三全连接层、第三概率转换函数后获得第三分类器的输出结果,第三分类器的输出结果即为第三分类结果;

2-11、第四模块的输入特征图经过第四模块后获得第四模块的输出特征图;

2-12、第四模块的输出特征图再依次经过第一自适应平均池化层、第四全连接层、第四概率转换函数后获得ResNet网络的输出结果,ResNet网络的输出结果即为第四分类结果。

进一步地,所述使用图像数据集对若干个分类器进行联合训练,具体还包括:

2-13、A部分训练集中的图像依次经过第一卷积层、最大池化层、第一模块、第二模块、第三模块、第四模块、第一自适应平均池化层、第四全连接层、第四概率转换函数获得ResNet网络的预测结果;ResNet网络的预测结果即ResNet网络预测的分类结果。

进一步地,所述图像数据集包括训练集和测试集。

进一步地,所述第一模块、第二模块、第三模块、第四模块各自均包括若干卷积层(conv);第一模块、第二模块、第三模块、第四模块中每个模块的输入特征图进入相应模块后均通过相应模块内部的卷积层进行处理获得相应模块的输出特征图。

进一步地,所述第一浅层模块、第二浅层模块、第三浅层模块各自均包括若干卷积层和一个自适应平均池化层;所述第一浅层模块、第二浅层模块、第三浅层模块中每个浅层模块通过各自内部的卷积层和自适应平均池化层对经过的图像进行处理。

进一步地,所述第一概率转换函数、第二概率转换函数、第三概率转换函数均为Softmax函数;所述第四概率转换函数在Softmax函数中额外引入参数temp,如式(1)所示:

式(1)中,z

进一步地,所述通过真实标签对ResNet网络和若干个分类器进行监督以及通过ResNet网络预测结果对ResNet网络进行监督,得到联合训练的总损失,具体包括:

3-1、将第一分类结果与真实标签进行比较得到第一误差损失值,将第二分类结果与真实标签进行比较得到第二误差损失值,将第三分类结果与真实标签进行比较得到第三误差损失值,将第四分类结果与真实标签进行比较得到第四误差损失值;

3-2、将第四分类结果与ResNet网络的预测结果进行比较得到第五误差损失值;

3-3、利用公式(2)得到联合训练的总损失;所述公式(2)具体如下:

公式(2)中Loss为总损失,loss1为第一误差损失值,loss2为第二误差损失值,loss3为第三误差损失值,loss4为第四误差损失值,lossN为第五误差损失值;q

进一步地,所述在总损失作用下,更新ResNet网络权重,具体包括:

4-1、利用图像数据集对ResNet网络进行若干批次训练;每个批次训练均包括M轮训练,每个批次训练中具体训练的轮数M=训练集中图像的个数/每轮训练中处理的图像个数,每轮都会训练Batchsize张图像,Batchsize表示每轮训练中处理的图像个数;

4-2、每个批次训练中每轮训练时都利用总损失更新一次ResNet网络权重,每个批次训练结束之后都会用图像数据集中的测试集进行测试,得到每个批次相应的测试准确率,直到若干批次训练结束,取所有批次中最高的测试准确率作为ResNet网络最后的准确率。

本发明的有益效果:

1)本发明通过在ResNet网络框架内部额外引入模块结构,构建多个分类器联合训练,相较于原训练方式,能够辅助提高ResNet网络的整体准确率;

2)本发明通过仿真表明,在CIFAR100数据集上,整体准确率得到一定的提升;ResNet18网络的准确率由77.6%提高到79.0%,提升幅度为1.4%;ResNet50网络的准确率由77.1%提高到79.5%,提升幅度为2.4%;

3)本发明具有普适性,可广泛应用于基于ResNet网络的图像分类、图像去噪、图像分割及图像超分辨率等任务。

附图说明

附图1为以ResNet网络为基础网络的框架。

附图2为以ResNet18网络为基础网络的框架。

附图3为以ResNet18网络为基础网络的浅层模块。

附图4为以ResNet50网络为基础网络的框架。

附图5为以ResNet50网络为基础网络的浅层模块。

具体实施方式

一种图像分类残差神经网络训练实现方法,该方法包括以下步骤:

1、在ResNet网络内部引入若干个分类器;所述ResNet网络包括第一卷积层(conv)、最大池化层(maxpool)、第一模块(ResNBlock1)、第二模块(ResNBlock2)、第三模块(ResNBlock3)、第四模块(ResNBlock4)、第一自适应平均池化层(AdaptiveAvgPool)、第四全连接层(FC4-100)、第四概率转换函数(Softmax4函数);

2、使用图像数据集对若干个分类器进行联合训练;

3、通过真实标签(label)对ResNet网络和若干个分类器进行监督以及通过ResNet网络预测结果对ResNet网络进行监督,得到联合训练的总损失;

4、在总损失作用下,更新ResNet网络权重。

所述ResNet网络优选ResNet18网络或ResNet50网络;当所述ResNet网络为ResNet18时,所述第一模块为Res18Block1,所述第二模块为Res18Block2,所述第三模块为Res18Block3,所述第四模块为Res18Block4;当所述ResNet网络为ResNet50时,所述第一模块为Res50Block1,所述第二模块为Res50Block2,所述第三模块为Res50Block3,所述第四模块为Res50Block4。

所述在ResNet网络内部引入若干个分类器,优选为在ResNet网络内部引入三个分类器。

所述在ResNet网络内部引入若干个分类器,具体包括:在第一模块的基础上依次增加第一浅层模块、第一全连接层(FC1-100)、第一概率转换函数(Softmax1函数)作为第一分类器;在第二模块的基础上依次增加第二浅层模块、第二全连接层(FC2-100)、第二概率转换函数(Softmax2函数)作为第二分类器;在第三模块的基础上依次增加第三浅层模块、第三全连接层(FC3-100)、第三概率转换函数(Softmax3函数)作为第三分类器。

所述使用图像数据集对若干个分类器进行联合训练,具体包括以下步骤:

2-1、将图像数据集的训练集均分为A部分训练集和B部分训练集;

2-2、B部分训练集中的图像(Picture)首先经过第一卷积层、最大池化层、第一模块获得第一模块的输出特征图;

2-3、将第一模块的输出特征图作为第二模块的输入特征图和第一浅层模块的输入特征图;

2-4、第一浅层模块的输入特征图依次经过第一浅层模块、第一全连接层、第一概率转换函数后获得第一分类器的输出结果,第一分类器的输出结果即为第一分类结果;

2-5、第二模块的输入特征图经过第二模块后获得第二模块的输出特征图;

2-6、将第二模块的输出特征图作为第三模块的输入特征图和第二浅层模块的输入特征图;

2-7、第二浅层模块的输入特征图依次经过第二浅层模块、第二全连接层、第二概率转换函数后获得第二分类器的输出结果,第二分类器的输出结果即为第二分类结果;

2-8、第三模块的输入特征图经过第三模块后获得第三模块的输出特征图;

2-9、将第三模块的输出特征图作为第四模块的输入特征图和第三浅层模块的输入特征图;

2-10、第三浅层模块的输入特征图依次经过第三浅层模块、第三全连接层、第三概率转换函数后获得第三分类器的输出结果,第三分类器的输出结果即为第三分类结果;

2-11、第四模块的输入特征图经过第四模块后获得第四模块的输出特征图;

2-12、第四模块的输出特征图再依次经过第一自适应平均池化层、第四全连接层、第四概率转换函数后获得ResNet网络的输出结果,ResNet网络的输出结果即为第四分类结果;

2-13、A部分训练集中的图像(Picture)依次经过第一卷积层、最大池化层、第一模块、第二模块、第三模块、第四模块、第一自适应平均池化层、第四全连接层、第四概率转换函数获得ResNet网络的预测结果;ResNet网络的预测结果即ResNet网络预测的分类结果。

所述图像数据集包括训练集和测试集;所述图像数据集优选为CIFAR100数据集。

所述第一模块、第二模块、第三模块、第四模块各自均包括若干卷积层(conv);第一模块、第二模块、第三模块、第四模块中每个模块的输入特征图进入相应模块后均通过相应模块内部的卷积层(conv)进行处理获得相应模块的输出特征图。

本发明中各个卷积层的工作过程均包括:将一个H*W*N的特征图(特征图的高度height,H;特征图的宽度width,W;卷积核的深度channel,N,N等于上一个卷积层的输出特征图的通道数)经过大小为3、个数为m的卷积核(m等于输出特征图的通道数),卷积成为H`*W`*M的特征图。

所述第一浅层模块、第二浅层模块、第三浅层模块各自均包括若干卷积层(conv)和一个自适应平均池化层(AdaptiveAvgPool);所述第一浅层模块、第二浅层模块、第三浅层模块中每个浅层模块通过各自内部的卷积层和自适应平均池化层对经过的图像进行处理;每个浅层模块中均通过堆叠若干卷积层(conv)来实现,具体如何堆叠需要根据不同ResNet网络(ResNet18、ResNet50)选择不同的堆叠方式(如附图3、附图5);所述第一自适应平均池化层和每个浅层模块中的自适应平均池化层均能将输入相应自适应平均池化层的特征图高度和宽度变为1。

所述第一概率转换函数、第二概率转换函数、第三概率转换函数均优选为普通的Softmax函数;所述第四概率转换函数在普通Softmax函数中额外引入参数temp,如式(1)所示:

式(1)中,z

所述通过真实标签(label)对ResNet网络和若干个分类器进行监督以及通过ResNet网络预测结果对ResNet网络进行监督,得到联合训练的总损失,具体包括以下步骤:

3-1、将第一分类结果与真实标签进行比较得到第一误差损失值(loss1),将第二分类结果与真实标签进行比较得到第二误差损失值(loss2),将第三分类结果与真实标签进行比较得到第三误差损失值(loss3),将第四分类结果与真实标签进行比较得到第四误差损失值(loss4);所述真实标签为图像本身所自带的正确的类别,也就是图像数据集中每个图像所对应的类别,如猫的图像,正确的类别是cat,真实标签就是猫的图像附带的正确的cat类别;

3-2、将第四分类结果与ResNet网络的预测结果进行比较得到第五误差损失值(lossN);

3-3、利用公式(2)得到联合训练的总损失;所述公式(2)具体如下:

公式(2)中Loss为总损失,loss1为第一误差损失值,loss2为第二误差损失值,loss3为第三误差损失值,loss4为第四误差损失值,lossN为第五误差损失值;q

所述在总损失作用下,更新ResNet网络权重,具体包括以下步骤:

4-1、利用图像数据集对ResNet网络进行若干批次训练,优选利用图像数据集对ResNet网络进行若干批次训练;每个批次训练均包括M轮训练,每个批次训练中具体训练的轮数M=训练集中图像的个数/每轮训练中处理的图像个数,每轮都会训练Batchsize张图像,Batchsize表示每轮训练中处理的图像个数;

4-2、每个批次训练中每轮训练时都利用总损失更新一次ResNet网络权重,每个批次训练结束之后都会用图像数据集中的测试集进行测试,得到每个批次相应的测试准确率,直到若干批次训练结束,取所有批次中最高的测试准确率作为ResNet网络最后的准确率;所述若干批次优选为200批次。

ResNet网络属于神经网络,神经网络里面有各个节点和参数,用来模拟人的神经元;神经网络包括信号的向前传播和误差的反向传播两个过程,即计算误差输出时按从输入到输出的方向进行,而调整权值则从输出到输入的方向进行,向前传播得到输出值,将输出值和所期望的输出值进行对比,即预测结果与真实标签计算交叉熵损失,可以得到误差值,通过计算每个节点的偏导数,获得每个节点的误差梯度,这样就得到的每个误差损失值,反向运用到每一个节点的误差梯度上,就可以进行误差的反向传播;在实际应用中往往不可能一次性将所有数据载入内存(算力也不够),所以只能分轮训练,每轮求解损失梯度指向当前轮最优方向(局部最优),使用SGD优化器使其收敛,指向全局最优方向,loss就是误差损失值,指向局部最优和全局最优就是不断降低损失。

本发明通过额外引入模块结构构建若干个分类器联合训练,辅助提升ResNet网络的精度,从而解决现有训练方式下ResNet网络(残差神经网络)精度受网络结构限制的问题;本发明可广泛应用于基于ResNet网络的图像分类、图像去噪、图像分割及图像超分辨率等领域。

下面结合具体的实施例,详细描述本发明分别在基于ResNet18、ResNet50两种分类网络中进行图像分类残差神经网络训练的实现方法,在不增加网络深度条件下,通过额外引入模块结构到ResNet网络中,构建多个分类器共同训练,进而提升ResNet网络精度。

实施例1

基于ResNet18网络搭建联合训练框架,如图2所示;图2中,Conv3×3表示卷积核大小为3的卷积层,64、128、256、512表示相应卷积层输出特征图的通道数;maxpool表示最大池化层;AdaptiveAvgPool表示自适应平均池化层;FC1-100、FC2-100、FC3-100、FC4-100均表示包含100个节点的全连接层;Softmax1、Softmax2、Softmax3、Softmax4均表示Softmax函数,label表示图像的真实标签;ResNet18网络依次由一个卷积层、一个maxpool最大池化层、Res18Block1模块、Res18Block2模块、Res18Block3模块、Res18Block4模块、一个AdaptiveAvgPool自适应平均池化层、FC4-100全连接层和Softmax4函数构成;通过在Res18Block1模块上依次添加第一浅层模块、FC1-100全连接层、Softmax1函数构建分类器1;通过在Res18Block2模块上依次添加第二浅层模块、FC2-100全连接层、Softmax2函数构建分类器2;通过在Res18Block3模块上依次添加第三浅层模块、FC3-100全连接层、Softmax3函数构建分类器3;其中,第一浅层模块、第二浅层模块、第三浅层模块的结构如图3所示;图3中,Conv3×3表示卷积核大小为3的卷积层,64、128、256、512表示相应卷积层输出特征图的通道数;AdaptiveAvgPool表示自适应平均池化层;第一浅层模块由6个卷积层和一个AdaptiveAvgPool自适应平均池化层构成;第二浅层模块由4个卷积层和一个AdaptiveAvgPool自适应平均池化层构成;第三浅层模块由2个卷积层和一个AdaptiveAvgPool自适应平均池化层构成。

本实施例所述的基于ResNet18网络联合训练过程,图像(Picture)首先经过一个卷积层和maxpool最大池化层,然后经过Res18Block1模块,获得Res18Block1模块的输出特征图;Res18Block1模块的输出特征图作为Res18Block2模块和第一浅层模块的输入特征图;第一浅层模块的输入特征图依次经过第一浅层模块、FC1-100全连接层、Softmax1函数之后获得分类器1的输出结果;Res18Block2模块的输入特征图经过Res18Block2模块后获得Res18Block2模块的输出特征图;Res18Block2模块的输出特征图作为Res18Block3模块和第二浅层模块的输入特征图;第二浅层模块的输入特征图依次经过第二浅层模块、FC2-100全连接层、Softmax2函数之后获得分类器2的输出结果;Res18Block3模块的输入特征图经过Res18Block3模块后获得Res18Block3模块的输出特征图;Res18Block3模块的输出特征图作为Res18Block4模块和第三浅层模块的输入特征图;第三浅层模块的输入特征图依次经过第三浅层模块、FC3-100全连接层、Softmax3函数之后获得分类器3的输出结果;Res18Block4模块的输入特征图经过Res18Block4模块后获得Res18Block4模块的输出特征图;Res18Block4模块的输出特征图再经过AdaptiveAvgPool自适应平均池化层、FC4-100全连接层、Softmax4函数之后获得ResNet18网络的输出结果;Softmaxi(i=1,2,3)为普通的Softmax函数,Softmax4在普通Softmax函数中额外引入参数temp,如式(1)所示;式(1)中,z

本实施例所述的基于ResNet18网络联合训练,采用CIFAR100数据集训练200个epoch,通过SGD优化器对神经网络进行优化,初始的学习率为0.1,当训练到66、133和190个epoch的时候,学习率除以10,权值衰减weight_decay=5e-4,每次更新的变化量momentum=0.9;Batchsize为128,所有实验均在GPU设备上,pytorch1.9.1环境下进行,训练之前对CIFAR100数据集的训练集进行了如下处理:(1)对图片进行随机裁剪,裁剪后尺寸(size)为32,填充边界的值(padding)设置为4,填充值(fill)设置为128;(2)对图片进行随机水平翻转;(3)将图片格式转换为tensor格式;将图片的每一个数值归一化到[0,1];(4)将图片的每一个数值进行标准化处理,标准化处理的均值为(0.4914,0.4822,0.4465),方差为(0.2023,0.1994,0.2010);对CIFAR100数据集的测试集进行如下处理:(1)将图片格式转换为tensor格式;将图片的每一个数值归一化到[0,1];(2)将图片的每一个数值进行标准化处理,标准化处理的均值为(0.4914,0.4822,0.4465),标准差为(0.2023,0.1994,0.2010)。

CIFAR100数据集的训练集被均分为A、B两部分,仅选B部分来训练整个网络框架,生成各预测结果为(1,2,3,4),并更新网络框架权重;A部分用于生成ResNet18的预测结果T18;区别于仅有ResNet18网络接受真实标签label监督的普通训练方式,联合训练框架下,ResNet18网络与三个分类器均需接受真实标签label的监督,且ResNet18网络需额外受到预测结果T18的监督;基于此,ResNet18联合训练时总的损失函数Loss有五个部分(loss1、loss2、loss3、loss4、loss18)构成,如式(3)所示;式(3)中Cr表示交叉熵损失函数,KL表示KL散度;q

经过实验测试,在CIFAR100数据集上,本实施例中ResNet18网络的准确率由77.6%提高到了79.0%,提升幅度为1.4%。

实施例2

本实施例所述基于ResNet50网络搭建联合训练框架,如图4所示,Conv3×3表示卷积核大小为3的卷积层,64、128、256、512、1024、2048表示相应卷积层输出特征图的通道数;maxpool表示最大池化层;AdaptiveAvgPool表示自适应平均池化层;FC5-100、FC6-100、FC7-100、FC8-100均表示包含100个节点的全连接层;Softmax5、Softmax6、Softmax7、Softmax8均表示Softmax函数,label表示图像的真实标签;ResNet50网络依次由一个卷积层、一个maxpool最大池化层、Res50Block1模块、Res50Block2模块、Res50Block3模块、Res50Block4模块、一个AdaptiveAvgPool自适应平均池化层、FC8-100全连接层和Softmax8函数构成;通过在Res50Block1模块上依次添加第一浅层模块、FC5-100全连接层、Softmax5函数构建分类器5;通过在Res50Block2模块上依次添加第二浅层模块、FC6-100全连接层、Softmax6函数构建分类器6;通过在Res50Block3模块上依次添加第三浅层模块、FC7-100全连接层、Softmax7函数构建分类器7;其中,第一浅层模块、第二浅层模块、第三浅层模块的结构如图5所示;图5中,Conv3×3表示卷积核大小为3的卷积层,512、2048表示相应卷积层输出特征图的通道数;AdaptiveAvgPool表示自适应平均池化层;第一浅层模块由3个卷积层和一个AdaptiveAvgPool自适应平均池化层构成;第二浅层模块由3个卷积层和一个AdaptiveAvgPool自适应平均池化层构成;第三浅层模块由3个卷积层和一个AdaptiveAvgPool自适应平均池化层构成。

本实施例所述的基于ResNet50网络联合训练过程,图像(Picture)首先经过一个卷积层和maxpool最大池化层,然后经过Res50Block1模块获得Res50Block1模块的输出特征图;Res50Block1模块的输出特征图作为Res50Block2模块和第一浅层模块的输入特征图;第一浅层模块的输入特征图依次经过第一浅层模块、FC5-100全连接层、Softmax5函数之后获得分类器5的输出结果;Res50Block2模块的输入特征图在经过Res50Block2模块后获得Res50Block2模块的输出特征图;Res50Block2模块的输出特征图作为Res50Block3模块和第二浅层模块的输入特征图;第二浅层模块的输入特征图依次经过第二浅层模块、FC6-100全连接层、Softmax6函数之后获得分类器6的输出结果;Res50Block3模块的输入特征图经过Res50Block3模块后获得Res50Block3模块的输出特征图;Res50Block3模块的输出特征图作为Res50Block4模块和第三浅层模块的输入特征图;第三浅层模块的输入特征图依次经过第三浅层模块、FC7-100全连接层、Softmax7函数之后获得分类器7的输出结果;Res50Block4模块的输入特征图经过Res50Block4模块后获得Res50Block4模块的输出特征图;Res50Block4模块的输出特征图再经过AdaptiveAvgPool自适应平均池化层、FC8-100全连接层、Softmax8函数之后获得ResNet50网络的输出结果;Softmaxi(i=5,6,7)为普通的Softmax函数,Softmax8在普通Softmax函数中额外引入参数temp,如式(4)所示;式(4)中,z

本实施例所述的基于ResNet50网络联合训练,采用CIFAR100数据集训练200个epoch,通过SGD优化器对神经网络进行优化,初始的学习率为0.1,当训练到66、133和190个epoch的时候,学习率除以10,权值衰减weight_decay=5e-4,每次更新的变化量momentum=0.9;Batchsize为128,所有实验均在GPU设备上,pytorch1.9.1环境下进行;训练之前对CIFAR100数据集的训练集进行了如下处理:(1)对图片进行随机裁剪,裁剪后尺寸(size)为32,填充边界的值(padding)设置为4,填充值(fill)设置为128;(2)对图片进行随机水平翻转;(3)将图片格式转换为tensor格式;将图片的每一个数值归一化到[0,1];(4)将图片的每一个数值进行标准化处理,标准化处理的均值为(0.4914,0.4822,0.4465),方差为(0.2023,0.1994,0.2010);对CIFAR100数据集的测试集进行如下处理:(1)将图片格式转换为tensor格式;将图片的每一个数值归一化到[0,1];(2)将图片的每一个数值进行标准化处理,标准化处理的均值为(0.4914,0.4822,0.4465),标准差为(0.2023,0.1994,0.2010)。

CIFAR100数据集的训练集被均分为A、B两部分,仅选B部分来训练整个网络框架,生成各预测结果为(5,6,7,8),并更新网络框架权重。A部分用于生成ResNet50的预测结果T50;区别于仅有ResNet50网络接受真实标签label监督的普通训练方式,联合训练框架下,ResNet50网络与三个分类器都要接受真实标签label的监督,且ResNet50网络需额外受到预测结果T50的监督;基于此,ResNet50联合训练时总的损失函数Loss有五个部分(loss5、loss6、loss7、loss8、loss50)构成,如式(5)所示;式(5)中Cr表示交叉熵损失函数,KL表示KL散度;q

经过实验测试,在CIFAR100数据集上,本实施例中ResNet50网络的准确率由77.1%提高到了79.5%,提升幅度为2.4%。

综上所述,本发明通过额外引入模块结构构建多个分类器联合训练,设计一种残差神经网络训练方法,通过实验数据显示,该方法能够辅助提高网络精度。

技术分类

06120116335628