用于宫颈细胞分类的轻量级网络ICA-Res2Net

2024-03-03 11:21杨海麟
计算机工程与应用 2024年3期
关键词:池化宫颈准确率

张 鹏,谢 莉,杨海麟

1.江南大学 物联网工程学院,江苏 无锡 214122

2.江南大学 生物工程学院,江苏 无锡 214122

宫颈癌是引发女性非正常死亡的重要原因之一,对女性的身体健康造成严重威胁。据世界卫生组织和国际癌症研究机构估计,2020年全球宫颈癌新发病例数为604 000,死亡342 000例,是导致女性患癌死亡的第四大原因[1]。如果病情在宫颈癌癌前病变阶段或者更早的时候被诊断出来,就能够得到更及时的预防和控制,因此宫颈细胞的检测在宫颈癌的癌前筛查中发挥着关键的作用[2]。

早期的细胞筛查主要凭借医师的经验对宫颈细胞切片进行判断,但这种方法通常比较耗时、效率低。近些年,人工智能发展迅速,大量学者研究和提出基于显微图像进行宫颈细胞分类的有关方法,包括传统的机器学习方法和深度学习方法。

董娜等[3]从宫颈细胞图像的颜色特征、纹理特征和形态特征等三大类特征中提取均值、方差及对比度等20种特征,进一步通过回归树算法选出9 种特征,使用基于粒子群寻优的支持向量机(support vector machine,SVM)实现宫颈细胞图像的分类。赵理莉等[4]使用Gap-search MRF 对宫颈细胞图像进行分割,并结合原始图像提取154维特征;使用SVM作为基础分类器,并融合层次法和主成分分析特征变换,有效提高宫颈细胞四个类别的识别率。Mariarputham等[5]提出基于纹理的宫颈细胞分类方法,该方法首先从细胞图像中提取指定的24 种纹理特征,随后使用线性核SVM 进行分类,取得优于径向基SVM以及单隐层神经网络等多个不同类型分类器的效果。上述分类方法大多需要人工选取细胞图像特征,特征的选取会受到主观影响,且难以直接应用于另一类细胞图像的分类,所以传统的机器学习方法泛化性能较差,分类准确率也比较低。

随着深度学习的兴起,卷积神经网络(convolutional neural network,CNN)逐渐成为解决多分类任务的热门模型。CNN模型具有权值共享和局部连接两种显著特征,在提取特征和分类方面的性能优于传统神经网络,且具有适用性强的特点,能够在一定程度上解决传统人工识别图像时的低效率问题,在医学图像分类[6]和细胞图像分类[7]等方面具有大量成功应用的案例。

在卷积神经网络技术的发展过程中,研究者们提出多种性能优异的深度卷积神经网络模型,并应用于细胞图像的分类。赵越等[8]利用计算机视觉数据集ImageNet实现深度学习网络模型Alex Net的预训练,将训练好的部分参数迁移至宫颈细胞分类网络,使用Herlev数据集中的宫颈细胞图像作为网络输入,对网络参数进行微调,从而实现宫颈细胞的分类。Plissiti 等[9]将深度卷积神经网络VGG-19应用于SIPaKMeD数据集中五种宫颈细胞的分类。Ghoneim等[10]利用极限学习机作为分类器,结合卷积神经网络框架VGG-16 Net 或CaffeNet,将宫颈细胞分成七类,总体分类准确率达到97.2%。Shi等[11]将图卷积网络应用于宫颈细胞的分类,挖掘图像内部关系,并通过实验对方法的有效性进行了验证。上述基于深度学习方法虽然能够提高宫颈细胞的分类准确率,但由于这些网络含有的参数较多,训练及测试时间相对较长。

综上所述,如何设计既准确又快速的深度学习网络以实现更高效的细胞图像分类仍然是该领域的关键问题。本文构造轻量级网络ICA-Res2Net 对SIPaKMeD数据集中的宫颈细胞进行分类,主要创新点包括:

(1)通过残差结构Res2Net 提取更细粒度的特征,进一步结合空间金字塔池化(spatial pyramid pooling,SPP)层提取不同区域的局部信息,整合全局信息,并利用跳跃连接,缓解深度神经网络的梯度消失,解决网络的退化问题。

(2)基于卷积块注意力模块的设计思想,在协调注意力(coordinate attention,CA)模块的通道编码处加入行与列的最大池化,提出改进的协调注意力(improved coordinate attention,ICA)模块,提升编码后通道描述符与输入特征的相关性,强化特征层中各特征值的注意力权重,从而改善分类结果。

(3)结合Softmax 损失函数和中心损失函数对网络参数进行训练,有效调节类内以及类间距离,提高分类准确率。

1 轻量级网络ICA-Res2Net

1.1 网络主模块结构

为了使分类准确率和预测速度都能够得到提升,本文采用Res2Net 模块、SPP 模块以及ICA 模块,提出融合注意力机制的新型多尺度特征提取轻量级网络ICA-Res2Net,其主模块结构如图1所示,其中x表示模块输入,F(x)代表非恒等映射输出,G(x)=F(x)+x表示模块输出。

图1 ICA-Res2Net模块Fig.1 ICA-Res2Net module

首先,通过Res2Net 模块中输入特征子块与输出特征子块间的交叉卷积,从多个不同尺度的感受野中获取更细粒度的信息,改善模型的多尺度特征表示能力;其次为充分利用获取的细粒度信息,使用SPP层进行局部特征提取,进一步获取局部细粒度特征信息;同时,为保证通道间的相关性,以及重点突出感兴趣区域,使用改进的基于注意力机制的CA模块,对特征层上各个像素点的特征值进行加权,使得局部特征更加显著,弱化相对无用区域的特征,达到提高分类准确率的目的。此外,考虑到残差映射更易于优化,能够解决网络退化问题[12],在模块中使用跳跃连接将整体设计成残差单元,即在过程中对残差F(x)=G(x)-x进行最小化。

1.1.1 多尺度特征提取残差模块

Res2Net[13]模块由经典的残差结构改造而成,增加不同特征通道子块之间的卷积运算,本文中采用虚线所包围的结构。如图2所示,Res2Net模块包含两个1×1卷积模块和三个3×3卷积模块,每个卷积模块由一个卷积操作、一个批标准化处理和一个非线性激活函数(Leaky ReLU)组成。

图2 Res2Net模块结构图Fig.2 Diagram of Res2Net module

令Xj与Yj分别表示操作前和操作后的特征子块,它们之间的计算公式如下:

其中,H(⋅)表示一次3×3 卷积模块的所有操作,b表示上层输出切割成的通道子块个数,本文参考文献[13]设置为经验值4。此模块通过特征图的通道划分、串联拼接以及卷积操作,从第三块输出子块开始,感受野的范围便发生改变。因此,输出的特征图中包含不同大小及数量的感受野,能够提取更细粒度表示的多尺度信息,提升网络的特征表示能力。

1.1.2 空间金字塔池化层

空间金字塔池化(SPP)模块[14]通过对上一特征层进行不同尺度池化,改变特征提取时的感受野大小,最后合并成为4倍于输入层网络通道的特征层,从同一特征图中获取不同感受野的最大值特征信息。池化及合并过程如图3 所示,在保持网络中其他参数不变的条件下,通过调节池化窗口大小,显著改变输出特征层中的感受野。值得注意的是,由于最大池化是对周围固定步长内的特征层数值取最大值,不会额外增加类似于卷积核权值等训练参数。因此,SPP层不仅能够增加感受野以提取重要上下文信息,且几乎不会降低网络运行速度,从而提升分类效果。本文通过交叉验证的方法,选择3×3、5×5和7×7的最大池化,网络中设置的SPP层结构如图4所示。

图3 池化过程示意图Fig.3 Diagram of pooling process

图4 空间金字塔池化层Fig.4 Spatial pyramid pooling layer

令X表示输入特征层,P(⋅)表示对X进行最大池化操作后的特征层,则输出特征层Y可表示为:

其中,[⋅,⋅]表示串联拼接,即按通道所在维度串联,组成含有大量特征信息的堆叠特征层。

1.1.3 改进的协调注意力模块

为了减少噪声干扰,提升网络对感兴趣目标的关注效果,从而改善分类能力,本文在SPP 层之后加入一种改进的基于注意力机制的模块。

以往的注意力模块过于关注通道间的相关性而忽略了位置信息对于获取特征层空间信息的重要性。协调注意力(CA)模块[15]是基于压缩激励模块[16]改进的轻量级注意力模块,其核心思想就是捕获通道间关系的同时,加入位置上的信息,从而帮助模型更加精准地定位和识别感兴趣的目标。但是,CA 模块只考虑使用平均池化作为编码注意力权重的因素,会缺失描述对象特征的部分细节。考虑到最大池化信息携带输入特征层的局部最大值信息,对于推断更细致的注意力有帮助[17]。因此本文结合最大池化,对特征层赋予注意力权重,从而增强网络的特征提取能力。实现的网络框架如图5所示,给出了网络训练过程的主要步骤。

对于图6 所示的特征层,其中W和H分别表示特征层宽和高的维数,C表示通道数,首先分别沿水平方向和垂直方向计算均值和最大值,得到两个尺寸分别为H×1×C和1×W×C的特征矩阵:

图6 特征层Fig.6 Feature map

因此,计算得到的特征矩阵和分别带有两个空间方向上的平均池化信息以及最大池化信息。

之后进行串联拼接以及1×1卷积操作f1:

这里δ为Leaky ReLU激活函数,其结果f∈R(H+W)×C/r将通道数降至以减少模型复杂度,其中r为压缩率,参考文献[15]设置为经验值16。随后将f分隔成f h∈RH×C/r和f ω∈RW×C/r,再分别进行1×1卷积运算Fh和Fw,将通道数增加至输入特征层通道数,再次得到两个尺寸分别为H×1×C和1×W×C的特征矩阵。最后通过点乘运算实现对输入特征层的加权,计算公式如下:

其中,σ表示Sigmoid函数,gh和gw表示对特征层进行加权的注意力权重向量,xc(p,q) 指的是此模块的输入特征层中第c个通道上的特征值。通过公式(6)与公式(7)可以发现,最终的权重向量gh和gw与输入特征层的最大池化信息和平均池化信息均产生关联,使得编码后的通道描述符与输入特征层的相关性更加紧密。在网络训练的梯度反向传播过程中,输入特征层的值会随着损失函数的值不断变化,根据其计算各通道沿水平方向和垂直方向的值,并产生相应的注意力权重,提高感兴趣区域的权值,从而自动调整输出特征层特征值的大小,改变不同区域的重要程度,直到损失函数值达到收敛,预测类别标签趋向于真实类别标签。

1.2 损失函数

现有分类技术中,提高分类效果的方法主要由两个方面组成,一方面是减小类内距离,另一方面是增大类间距离。由于SIPaKMeD数据集中均为宫颈细胞,不同类细胞间具有一定相似性,而同类细胞间的特征也具有一定差别,所以考虑采用能够有效区分类间特征的分类损失函数Softmax以及对减小类内距离有较好效果的中心损失函数(center loss,CL)[18]进行联合训练。

Softmax损失函数定义为:

其中,xi∈Rd是第i个特征向量,属于yi类,d代表特征数据的维度;m、n分别为训练批次大小和类别数,Wj∈Rd表示最后一层全连接层权值矩阵W∈Rd×n的第j列,b∈Rn为偏差向量。

如果仅利用式(9)更新模型参数,会无法兼顾类内距离的约束,使得最终学习到的特征存在类内间距过大的缺点[19]。因此,联合中心损失函数以减小同类特征数据的距离,增强网络的分类效果。

中心损失函数定义为:

其中,∈Rd代表yi类的特征数据中心。

各类别特征数据中心cj的迭代更新公式为:

其中,α∈[0,1]为迭代步长,用于控制cj的更新速度;Δ是第j类特征数据与其特征数据中心的平均差值,即:

若yi属于此类别中心所属的类别,则δ(yi=j)=1;反之,δ(yi=j)=0。

为了缩小类内特征数据的差距,增强模型的分类能力,定义联合损失函数:

其中,λ∈(0,1)用于平衡Softmax 损失函数和中心损失函数。本文通过设置多组α与λ的取值,比较模型取得的分类效果,从而完成以上两个超参数值的选取。

1.3 网络框架

由于宫颈细胞图像样本制取困难,对于有限的图像样本,如果采用过深的网络模型,容易造成训练集分类准确率过高,而测试集准确率较低的情形,即过度拟合。若网络模型的深度不够,就无法提取深层语义信息,产生训练集分类准确率低,测试集准确率也较低的情况。本文设计的网络框架如图7 所示,包含四个ICA-Res2Net模块以及一个ICA模块。四个ICA-Res2Net模块用于实现对浅层表面信息以及深层语义特征的提取;之后使用ICA 模块进一步获取加权的语义特征,通过展开成为1 维向量,连接两个全连接层,结合一个Dropout 层防止过拟合,其中丢失率设为0.5;最后一个全连接层用做分类,使用Softmax 损失函数联合中心损失函数实现梯度反向传播,完成网络的训练。

图7 整体网络框架图Fig.7 Diagram of overall network framework

2 实验结果与分析

2.1 数据集

本文采用的是SIPaKMeD 公开数据集[9],一共包含4 049 张宫颈细胞图片。根据细胞的外观和形态,该数据集中的宫颈细胞图像分为3 类,其中a 类和b 类属于不正常细胞,c 类属于良性细胞,d 类和e 类属于正常细胞,它们各自的名称和数量如表1所示,各类图像如图8所示。

表1 SIPaKMeD数据集Table 1 SIPaKMeD dataset

图8 SIPaKMeD数据集中的五种宫颈细胞图像Fig.8 Five classes of SIPaKMeD dataset

2.2 数据集处理

本文首先将每类宫颈细胞图像样本按8∶2 划分为训练集和测试集。其次,考虑到深度卷积神经网络的优异分类性能需要经过大量的数据训练才能得到体现。因此,本文采用旋转90°、180°、270°以及镜像翻转的方法对训练集样本进行数据增强,将训练集扩充到38 844张,并使用双三次插值法将数据集图像转换成224×224×3的统一尺寸。

2.3 结果及分析

实验使用Python3.6 Keras框架,在Tesla V100 GPU上运行,并使用Adam优化器辅助模型实现网络参数的优化,学习率设置为0.000 1,batch size 设为32,训练轮次epoch设为100,模型整体的训练过程如图9所示。

图9 训练过程流程图Fig.9 Flow chart of training process

为合理利用中心损失函数,针对函数中所含有的超参数λ和α,使用准确率(accuracy,Acc)作为评价指标进行优化选取:

其中,TP和TN分别表示预测正确的正负样本数,FP和FN分别表示预测错误的正负样本数。

在λ分别取0.000 5、0.005、0.05、0.5 以及1 时,对于不同的α取值,网络的预测准确率柱状图如图10所示,其中红色水平虚线表示不加入中心损失函数时的预测准确率。由图10可知,通过合理选择超参数,中心损失函数的加入能够使得分类效果明显提升。考虑到α=0.6时,所得的预测准确率波动范围较小,且在λ=0.000 5时达到了最好的测试效果。因此在之后的实验中,模型中设置λ=0.000 5 以及α=0.6。

图10 不同超参数取值下的预测准确率柱状图Fig.10 Histogram of prediction accuracy under different hyperparameter values

为验证本文方法的有效性,分别与ResNet50[20]、ResNet101[20]、DenseNet121[21]等三种图像分类性能较强的深度学习网络模型进行对比实验,并进行改进前后的对比及一组消融实验。

分别采用准确率Acc、灵敏度(Sensitivity)、特异度(Specificity)以及F-measure 作为评价指标对不同网络模型的性能进行比较,其中Acc 根据式(14)进行计算,其他各类指标的计算公式如下:

不同模型的实验对比结果如表2所示,其中VGG-19的实验结果引用自文献[9]。从表2中可以看出,本文提出方法的测试结果在准确率、灵敏度、特异度以及F-measure四个方面均高于其他方法。原因在于ResNet50、ResNet101、VGG-19 以及DenseNet121 均通过增加网络深度提取更深层抽象特征以实现分类,但未考虑并入浅层特征层或提取深层特征时的噪声干扰;而本文设计的ICA-Res2Net 网络将Res2Net 模块与SPP 模块结合,能够有效提取各类细胞的细粒度信息,且ICA模块更加关注特征层中有价值的信息,对输入特征层的各个像素点赋予代表重要程度的权值因子,抑制对当前任务不重要的特征,减少噪声干扰,进而有效区分各类细胞。另外,与CA-Res2Net 网络的测试结果相比较,以上四个指标分别有0.75、0.74、0.18 以及0.75 个百分点的提升,说明加入最大池化的网络能够更精确地区分各类宫颈细胞图像的特征,对正负样本都有较好的识别能力。

表2 SIPaKMeD测试数据集分类结果Table 2 Comparison of classification results on SIPaKMeD dataset 单位:%

图11为基于Grad-CAM的类激活映射图,像素点处的颜色深浅代表了网络对该区域关注程度的高低,颜色越深表示关注程度越高。其中图11(a)为原始宫颈细胞图像,图11(b)为未加入SPP层时的类激活映射图,图11(c)和图11(d)分别为通过CA-Res2Net 和ICA-Res2Net获得的类激活映射图。比较图11(b)和图11(d)的图片可知,添加SPP 层可补充感受野,使得注意力模块能够根据更丰富的特征赋予感兴趣区域更大的注意力权重;同时,从图11(c)和图11(d)的对比结果可以看出,利用ICA-Res2Net 得到的特征图中,细胞所在位置的权重强度明显高于改进前,并且关注区域更加广泛且精确。从整体结果来看,加入最大池化后的特征信息以改进协调注意力模块有助于网络更加清晰的定位各类细胞的感兴趣区域,能够达到更好的分类效果。

图11 基于Grad-CAM的类激活映射图Fig.11 Grad-CAM based class activation mapping maps

表3中列出了各个网络模型的参数量、训练时间和测试时间。通过表3 可以看出,本文提出的模型比ResNet50、ResNet101 以及DenseNet121 等多种经典网络框架的参数更少,且模型的训练时间和测试数据的预测时间更短;与改进前的CA-Res2Net相比较,虽然训练时每轮迭代时间增加了9 s,测试时间增加了0.05 s,但在预测效果方面得到了有效提升。综上,本文通过引入Res2Net、SPP、中心损失函数以及改进的协调注意力模块,能够快速实现宫颈细胞图像的分类,且在分类准确率方面获得明显的改善。

表3 模型参数及用时对比Table 3 Comparison of model parameters and time

为进一步表明加入SPP 层和中心损失函数(CL)的必要性,本文进行了一组消融实验,每个实验中的超参数均作相同设置。实验结果如表4 所示,可见,未结合SPP 层和CL 时,准确率(Acc)只有97.16%;与SPP 层或CL 进行单一结合后,Acc 分别提升0.87 和1.24 个百分点;而两者同时结合时Acc 达到98.65%,且其他三个评价指标均超出未结合或单一结合时的模型测试结果。因此,引入SPP 层能够更好地利用Res2Net 模块提取的细粒度信息,获取更多的局部特征,而结合CL有利于调节类内距离以及类间距离,以上两者均能提升网络的分类性能。

表4 消融实验Table 4 Ablation experiments 单位:%

为验证轻量级网络ICA-Res2Net的稳定性,本文在随机生成初始化参数的情况下进行了5 次独立的网络训练,并分别在测试集上对网络性能进行评估,结果如表5所示。由该表可知,本文提出网络的各项性能指标均值较高,且波动幅度较小,表明其具有很高的稳定性。

表5 网络稳定性验证实验Table 5 Network stability verification experiments 单位:%

3 结束语

为了改善宫颈细胞的分类准确性及实时性,本文提出一种轻量级深度卷积神经网络ICA-Res2Net。所设计的网络不仅能提取更加细粒度的多尺度特征信息,更是通过空间金字塔池化将不同感受野大小的局部特征信息加以利用,并使用改进的协调注意力模块将各通道各个像素点处的特征值进行加权处理,自适应调整特征的重要程度,其中的跳跃连接有效解决了深度网络模型的退化问题,最后联合中心损失函数减小特征数据的类内距离。实验结果表明,本文方法在提升宫颈细胞分类准确率的同时,大幅度缩短了识别细胞类别的时间,有助于高效完成宫颈癌癌前筛查,快速反馈检查结果。

虽然本文方法在宫颈细胞分类中获得了较好的效果,但仍存在一些问题需要进一步研究。例如,可结合粒子群算法、遗传算法等优化方法,对中心损失函数的超参数进行自动寻优。此外,实际应用中样本标签的标注成本较高,无标签样本占大多数,可结合半监督思想,利用无标签样本提升分类性能。

猜你喜欢
池化宫颈准确率
面向神经网络池化层的灵活高效硬件设计
基于Sobel算子的池化算法设计
卷积神经网络中的自适应加权池化
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
怀孕后宫颈管短怎么办
这几种“宫颈糜烂”需要治疗
基于卷积神经网络和池化算法的表情识别研究
HPV感染——“宫颈的感冒”