基于轻量级神经网络的皮肤癌图像识别方法研究
2023-08-11杨昌正
杨昌正
(南开大学 统计与数据科学学院,天津 300071)
0 引言
近年来,皮肤恶性肿瘤愈发常见,患皮肤癌的人越来越多。据统计,美国每年皮肤癌导致的死亡人数超过10 000人,对人们的生命健康造成了巨大的威胁[1],如果能够在早期发现并及时治疗将令患者获得较高的存活率。早期的皮肤恶性肿瘤诊断基本依赖于医师的视觉侦察,即主观判断,但部分皮肤恶性肿瘤分型的临床表现非常接近,且观察者的主观判断存在差异,即使是经验丰富的专家也会存在误诊的可能性,而深度学习在一定程度上解决了这个问题。其利用计算机视觉辅助技术,搭配医学诊断任务,将皮肤癌图像与该技术相结合。目前,人工智能手段辅助诊断皮肤癌已取得了阶段性的成果。但用于皮肤癌图像识别的网络模型过于庞大,其时间与空间成本往往无法满足快捷高效的诊断要求及远程医疗要求。本研究提出了一种基于轻量级神经网络的皮肤癌图像识别方法,将皮肤癌病理图像分为AKIEC、BCC、BKL、DF、MEL、NV、VASC七类。该方法在提高训练效率、降低模型大小的同时保持了较高的精度,使其能够应用于多种移动设备及嵌入式设备,可满足临床诊断及远程医疗的需要。
近几年,随着深度学习的发展,卷积神经网络(CNN)在计算机视觉领域取得了重大成果,多种卷积神经网络模型相继出现(如Alex Net、Dense Net、Google Net、Res Net、Mobile Net 及Efficient Net等)。在皮肤癌图像识别中,CNN取得了突破性成果。Ganster[2]等将卷积神经网络应用于皮肤癌MEL分类中,利用卷积神经网络提取特征并进行MEL识别。Kawahara[3]等提出了基于AlexNet的完全卷积神经网络来提取MEL代表性特征。Li Y[4]等利用ResNet,将皮肤癌三分类问题化为两个二分类问题来处理,在ISIC2017比赛中得到了很好的效果,但该模型无法处理多分类问题。皮肤癌图像分类研究存在着以下问题:传统神经网络过于复杂,参数量与计算量较大,训练往往需要耗费大量的时间与空间,部分情境下难以满足实际需求,有时训练样本较少,这些参数多模型复杂的神经网络很容易出现过拟合现象,故将皮肤癌图像识别方法应用于便携的嵌入式设备中或用于手机等移动设备,实现远程医疗,使医生在临床诊断中方便地做出判断,这已成为人们的研究热点。
1 方法
1.1 数据集
采用的数据集来自于kaggle的ISIC2018数据集,即国际皮肤成像协会在2018年发布的经过皮肤科专家标注的10 015张彩色皮肤镜图像[5],包括七类皮肤癌分型,其图片分辨率大小为600×450。图像类别及数量分布如表1所示。
表1 ISIC2018数据集病变分类及数量
数据集中7种病变图像数量分布十分不均衡,模型在学习过程中往往会给含有多数图像的类别更多的权重,这导致分类训练过程中分类器会将少数类分类给多数类,令实验结果不佳,故需对图像进行适当的预处理,以减轻数据不平衡造成的影响。针对上述问题,需进行预处理:通过数据增强方法,对小样本数据(DF、VASC、AKIEC)采取随机切割、图片翻转、旋转等图像增强手段,增加训练集数量,限制每个标签下训练样本的最大数量为500,对数据集进行归一化操作,只需将数据集除以255,即可使像素值范围被映射到0~1。
1.2 模型算法
1.2.1 卷积神经网络
卷积神经网络是深度学习的一种经典算法,是多层感知机的变种,于1998年由纽约大学的Yann Lecun提出。其采用局部连接及权值共享方式,降低权值数量,使网络容易被优化,降低了模型过拟合风险,在二维图像处理中具有很大的优势。目前,卷积神经网络已被广泛用于各种医学图像识别、切割及自然图像处理等任务中,取得了很好的成果。一个基本的卷积神经网络结构主要由卷积层、池化层、全连接层等部分组成。
卷积层。在卷积神经网络中,卷积层的作用是提取图像特征,一般用长宽相等的卷积核,遍历需要提取特征图像的每一个像素点。遍历过程中,卷积层覆盖图像的每一个像素值都会与该卷积核对应位置的权值相乘,求和并加上偏置值得到最后的输出。卷积输出的通道数即为卷积核的个数,一般情况下,卷积核的通道数等于输入的通道数。
池化层。池化层的作用是实现尺寸的缩减,在保持特征不变性的同时降低参数量,在一定程度上防止过拟合。池化层基于局部相关性思想,对局部信息进行采样或信息聚合,分为不同种类。一般情况下,卷积神经网络会采用最大池化层或平均池化层。
全连接层。在卷积神经网络中,全连接层将学到的分布式特征表示映射到样本标记空间,起到分类器作用,即通过特征提取实现分类。全连接层最后一层的神经元个数通常等于待分类类别的数量。
1.2.2 EfficientNet
EfficientNet神经网络是2019年由Mingxing Tan[6]等提出的针对改变深度网络模型的轻量级神经网络。EfficientNet神经网络配置如图1所示,共分为9个stage,表中卷积层后默认都跟有BN及Swish激活函数。stage 1是一个3×3的卷积层,stage2~stage8是在重复堆叠MBConv。stage9由3部分组成,即1个1×1的卷积、平均池化、1个全连接层。
图1 EfficientNet结构图
MBConv模块结构如图2所示[7],对于主分支而言,其是1个1×1卷积用于升维,输出特征矩阵通道是输入channel的n倍,通过1个DW卷积及1个SE模块,使用注意力机制调整特征矩阵,再通过1×1卷积进行降维。
图2 MBConv结构图
相比于传统的卷积神经网络,EfficientNet具有以下优势:作为一种轻量级卷积神经网络,体积及参数量更小,运行速度更快,可以在优化训练速度的同时提高分类任务的准确度。
1.2.3 改进的EfficientNet模型构建
将模型中的平均池化层修改为最大池化层,以便模型可以在训练过程中关注到图像数据中最关键、最重要的特征部分,在全连接层后添加 Dropout 层,以减少模型的过拟合程度。将EfficientNetB1在ImageNet数据集上训练好的权重参数迁移到改进好的模型中,完成模型搭建,经过预处理的图像被送入EfficientB1分类模型网络中进行训练,皮肤癌图像依次穿过EfficientB1网络中不同层的MBConv模块及过渡层进行特征提取,进入最大池化层降维,经过一层batch_normalization层进入全连接层进行特征分布表示,通过损失函数及真实图像特征计算并进行反向传播,直到准确率趋近拟合。
1.3 实验环境配置
实验环境为基于谷歌开发的开源深度学习框架tensorflow,编程语言为python,硬件设备为RTX A4000。实验训练超参数如表2所示。
表2 训练超参数
2 实验结果与分析
2.1 评估指标
选择构建混淆矩阵来对预测结果进行评估,横坐标表示真实值,纵坐标表示预测值,样例如表3所示。
表3 混淆矩阵
采用分类准确率(Accuracy)作为评估指标,分类准确率高则可以在一定程度上代表该模型好。分类准确率公式如下所示:
(1)
2.2 实验结果
将self-EfficientNet模型在经过预处理后的ISIC2018数据集上进行训练,输入模型的图片大小为224×224,通道数为3,每次训练样本数为32,学习率为0.001,训练次数采取早停策略,以便模型在发生过拟合前保存下来,设置为连续3次损失值不下降时停止训练。训练结果如表4所示。
表4 训练结果对比
由三者的准确率可知,3个网络模型均未发生梯度消失现象,MobileNetV2与ResNet50均具有残差结构,能够有效防止梯度消失现象,而self-EfficientNet能通过自适应的正则调整机制来修正网络。综合来看,MobileNetV2的参数量最小,而ResNet50的参数量则远远大于二者。但是,self-EfficientNet的准确度与损失值更优,准确值相较MobileNetV2高出5.6%,说明self-EfficientNet参数量较小且分类性能最好。
图3 Self-EfficientNet训练曲线
图4 MobileNetV2训练曲线
图5 ResNet50训练曲线
从三者的训练曲线对比可知,Self-EfficientNet的收敛速度最快,训练效率最高,仅用26次就完成收敛,训练效率远远超过其他两种模型,证明该模型在该数据集上具有可行性及优越性。
2.3 结果分析
基于ISIC2018数据集,选择了self-EfficientNet、MobileNetV2及ResNet50进行分类对比实验,分别基于迁移学习训练了26、70、59次完成收敛。训练收敛后,比对了测试集上各个网络的分类结果及其参数量。从以上结果可看出,self-EfficientNet与MobileNetV2的loss远远小于ResNet50,但ResNet50模型中训练集loss与测试集loss相差不多,故推测原因并非是过拟合现象。从ResNet50训练过程中loss与准确度变化较小推测,可能是由于皮肤癌图像的特征信息相对较少,而ResNet50模型较为复杂,导致该数据集并不能很好地训练模型,难以拟合函数,故而轻量级卷积神经网络更占优势。self-EfficientNet与MobileNetV2相比,self-EfficientNet具有更高的分类准确度、更快的训练效率及较小的参数量,性能更优越。
3 结论
为了满足皮肤癌图像的识别需求,从深度学习角度出发,利用卷积神经网络在图像识别中的优势,提出了一种基于轻量化卷积神经网络模型的方法,即self-EfficientNet。该模型通过更改池化层,引入Dropout与迁移学习对EfficientNetB1进行改进,在ISIC2018数据集上与ResNet50、MobileNetV2进行实验对比。结果表明,self- EfficientNet具有准确率高、收敛速度快等优势,准确率达到了82.8%,比MobileNetV2模型与ResNet50模型的准确度高出了5.6%,而参数量不到ResNet50的1/3,能够满足皮肤癌图像识别模型应用于各种移动设备及嵌入式设备的要求。但该模型也存在着一些不足,如使用的公共数据集因数据不平衡限制了训练数量,未来将尝试利用对抗性网络生成小样本数据来解决数据不平衡等问题,并继续优化模型性能。