APP下载

基于迁移学习的残差网络猴痘病识别研究

2022-04-02李昀松,段喜萍

电脑知识与技术 2022年33期
关键词:迁移学习图像识别深度学习

李昀松,段喜萍

摘要:目前,猴痘病在全球多个国家快速传播,为了能够使有相关症状的感染者有效地识别出是否为猴痘病,提出了一种改进的基于迁移学习残差网络的图像自动识别方法。该方法使用了ResNet50网络并使用该网络预训练权重进行迁移学习,在网络的全连接层后加入dropout对神经元进行随机失活。在经过数据增强的猴痘病数据集上进行了网络的训练,最终达到了97.9%的识别准确率,相比于VGG16和AlexNet网络具有更高的识别准确率。

关键词:图像识别;分类识别;深度学习;残差网络;迁移学习

中图分类号:TP391        文献标识码:A

文章编号:1009-3044(2022)33-0019-02

1 概述

2022年5月,猴痘疫情在欧洲以及北美等地迅速蔓延,其中美国、西班牙、巴西和法国等国家猴痘病例面临着巨大的挑战。猴痘病毒具有较强的感染性,其感染者的主要症状会出现全身的水疱与脓疱,该症状与天花患者的症状极其相似。因此,通过感染者的水疱与脓疱识别判断该感染者是否感染了猴痘病毒成了一项艰巨的任务。

目前,基于深度学习的方法在计算机视觉领域拥有广泛的应用[1],并在医疗诊断[2]、交通[3]和农业[4]等各个领域取得了良好的效果,LeCun等首次提出了卷积神经网络模型LeNet-5,该模型在图像识别领域的任务中超过了人类的水平。Krizhevsky等人[5]提出了AlexNet网络,网络中使用了ReLU激活函数替换tanh激活函数,并在网络的全连接层增加了dropout方法随机地将一部分神经元置为0,将该网络应用到了LSVRC-12竞赛中取得了当时最好的分类效果。Szegedy等人[6]使用了1[×]1、3[×]3和5[×]5卷积操作作为主要结构,与AlexNet相比参数量更少但准确率更高。Simonyan等人[7]讨论了网络的深度对性能的关系,通过增加3[×]3卷积进行实验,当网络层数达到16~19层时达到最佳效果,并且得到了使用多个3[×]3卷积替换7[×]7卷积可以达到相似效果的结论,并且能够减小一定的参数量与计算量。ResNet网络[8]使用了跨层连接的结构并使用了批规范化[9]的方法抑制神经网络层数加深后引起模型过拟合的退化问题,ResNet能够训练更深的网络在LSBRC-15的图像分类比赛中获得了第一名的成绩。

本文使用了在ImageNet数据集上进行预训练的ResNet50模型权重,并在网络的全连接层加入dropout方法对神经元进行随机失活,在猴痘病数据集上进行模型训练,得到的模型能够有效地通过患者症状识别出是否感染猴痘病毒。

2 算法描述

2.1残差网络

在传统的卷积神经网络研究中,在网络上串连更多的层数时在图像任务中的表现反而下降,这并不是网络出现过拟合而导致错误率上升的问题,而是在网络训练的过程中,正向与反向的信息传递不顺畅,从而导致模型没有得到充分训练的一种网络退化问题。ResNet提出了一种残差模块,如图1所示,weight_layer为网络层,relu为激活函数,通过残差结构加入的恒等映射,即使原始卷积结构信息没有传递也能够通过残差保留原始的信息,并且ResNet使用了批归一化方法降低梯度消失的问题,降低了网络在训练过程中对于权重初始化的依赖。

2.2 ResNet50

ResNet50网络由49个卷积层和一个全连接层构成,结构如图2所示,图中Conv为卷积层,Max_pooling为最大池化层,ResBlock为残差模块,AveragePool为全局平均池化层,FC为全连接层。输入图像数据的分辨率为224[×]224并由RGB三个通道组成,首先将224[×]224[×]3的图像数据输入到卷积核大小为7[×]7步长为2的卷积层中,得到112[×]112[×]64的张量后进行3[×]3的最大池化操作,然后将其输入4个阶段的残差网络基础模块当中,随着每个阶段特征信息的传递,可以获得更深层次的特征,得到的深层特征张量进行全局平均池化操作,最后将其输入到全连接层中,本实验为是否为猴痘病的二分类任务,最终节点数为2,并加入dropout层防止模型过拟合,随机失活比率设置为0.2,失活了的神经元节点不参与模型的参数训练,能够有效的提升模型的泛化能力。

2.3迁移学习

迁移学习的基本思想是利用已经解决问题的策略用以解决待解决的问题[10],在基于深度学习的任务中,需要大量的数据对神经网络的模型进行训练,得到合适的模型参数权重,并且需要大量的模型训练时间和更高性能的硬件设备,因此将源领域所学到的知识迁移到其他领域是必要的。

本文使用了在ImageNet上训练的ResNet50网络模型,ImageNet是供计算机视觉识别研究的大型可视化图像数据集,其中包含超过140万手动标注的图像数据,并包含1000个图像类别,则经过预训练的ResNet50网络的全连接层输出1000个节点,在本实验中为了适应猴痘病数据集类别数,将节点数量由1000改为2,然后将ResNet50的预训练权重在本实验的猴痘病数据集进行微调训练,该方法既能提高模型的泛化能力和鲁棒性,也能够减少训练的时间节约算力的开销。

2.4 网络优化

2.4.1 损失函数

损失函数是将随机事件或其有关随机变量的取值映射为非负实数,表示该随机事件的风险或损失的函数,在实际任务中则通过最小化损失函数求解和评估模型。本文使用交叉熵损失表达预測值和真实值的不一致程度,交叉熵损失常用于图像识别任务中作为损失函数,能够有效地衡量同一个随机变量中的两个不同概率分布的差异程度。

2.4.2 优化算法

深度学习是以最小化损失函数为目标,其本质上是一种优化问题,目前应用于深度学习的优化算法均为由梯度下降算法发展而来,其主要思想为利用链式求导法则计算损失函数值相对于神经网络中的每一个权重参数的梯度,通过更新权重参数达到降低损失函数值的效果。本文使用SGD随机梯度下降算法作为模型的优化器,该方法具有更新速度快的优点,能够对每一个样本都进行一次梯度运算并更新模型的权重。

3 实验与结果分析

3.1 数据集与实验环境

为了区分猴痘病例与类似的非猴痘病例创建了猴痘病毒图像数据集,该数据集分为猴痘病类和包含与猴痘病毒症状相似的水痘和麻疹的其他类别,以进行二分类,其中猴痘病图像类别包含72张图片,其他类别包含110张图片,图像的像素均为224[×]224,其中的每张图片应用了旋转、平移、反射、剪切、色相、饱和度、对比度、亮度抖动、噪声和缩放等多种图像数据增强方法扩充数据集,经过扩充后的数据集猴痘病类别拥有980张图片,其他类别拥有1162张图片。本实验将全部的图像数据按照8:2的比例进行划分为训练集和测试集,图3给出了猴痘病和其他类别的各3张原始图像。

实验操作系统为Linux操作系统,在一块V100的10核32GB内存GPU的云服务器上运行程序,编程语言为Python语言,深度学习框架为PyTorch。使用SGD优化器进行训练,训练动量设为0.9,Batchsize设为80,学习率设为6e-3,进行了50个epoch的训练。

3.2 实验结果分析

本文使用ResNet50对猴痘数据集进行了评估,并与AlexNet和VGG16网络进行了对比,三种网络模型仅使用迁移学习的方法进行训练,网络对比结果如表1所示,由表1可以看出,ResNet50网络经过训练后精确度为97.9%,VGG16网络精确度为97.7%,AlexNet网络精确度为96.3%,ResNet-50网络在猴痘病识别任务中的效果最佳,并且与其他网络相比,拥有最少的参数量和合适的计算量。

4 结论

针对全球多个国家快速传播的猴痘病疫情,希望能够通过感染者的症状分辨出是否为猴痘病感染者,本文利用深度學习卷积神经网络的识别方法,使用了基于迁移学习的ResNet50网络,并且对网络的全连接层添加了dropout,对其神经元以一定的概率进行失活,本文所使用的网络模型经过猴痘数据集的训练,最终能够达到97.9%的猴痘病识别准确率,高于VGG16与AlexNet模型97.7%和96.3%的精确度,能够快速有效地对猴痘病及具有相似症状的其他病毒感染者进行识别。由于数据集的局限性,本文算法还需要收集更多猴痘病感染者以及更多种类的相似症状病毒感染者的数据进行进一步验证。

参考文献:

[1] 张荣,李伟平,莫同.深度学习研究综述[J].信息与控制,2018,47(4):385-397,410.

[2] 唐江平,周晓飞,贺鑫,等.基于深度学习的新型冠状病毒肺炎诊断研究综述[J].计算机工程,2021,47(5):1-15.

[3] 杨柳.深度学习在交通运输中应用综述[J].信息技术与信息化,2022(2):192-195.

[4] 边柯橙,杨海军,路永华.深度学习在农业病虫害检测识别中的应用综述[J].软件导刊,2021(3):26-33.

[5] Krizhevsky A,Sutskever I,Hinton G E.ImageNet classification with deep convolutional neural networks[J].Communications of the ACM,2017,60(6):84-90.

[6] Szegedy C, Liu W, Jia Y, et al. Going deeper with convolutions[C]//Proceedings of the IEEE conference on computer vision and pattern recognition, 2015: 1-9.

[7] Simonyan K,Zisserman A.Very deep convolutional networks for large-scale image recognition[EB/OL].2014:arXiv:1409.1556.https://arxiv.org/abs/1409.1556

[8] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE conference on computer vision and pattern recognition,2016:770-778.

[9] Ioffe S,Szegedy C.Batch normalization:accelerating deep network training by reducing internal covariate shift[C]//International conference on machine learning. PMLR, 2015: 448-456.

[10] 刘鑫鹏,栾悉道,谢毓湘,等.迁移学习研究和算法综述[J].长沙大学学报,2018(5):28-31,36.

【通联编辑:唐一东】

猜你喜欢

迁移学习图像识别深度学习
基于Resnet-50的猫狗图像识别
高速公路图像识别技术应用探讨
图像识别在物联网上的应用
图像识别在水质检测中的应用
奇异值分解与移移学习在电机故障诊断中的应用
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
大数据环境下基于迁移学习的人体检测性能提升方法