ARS-CNN算法在新冠肺炎识别中的研究

2021-11-12 00:47:20易三莉王天伟杨雪莲佘芙蓉
液晶与显示 2021年11期
关键词:卷积新冠肺炎

易三莉,王天伟*,杨雪莲,佘芙蓉

(1. 昆明理工大学 信息工程与自动化学院,云南 昆明 650500;2. 云南省计算机技术应用重点实验室,云南 昆明 650500)

1 引 言

新冠肺炎肆虐全球,威胁人类的生命健康安全。随着疫情的不断传播,给许多国家和地区的医疗体系都带来了巨大的负担。为了减少疫情传播和降低患者死亡率,快速、准确地识别新冠肺炎显得尤为重要。

目前,对于新冠肺炎检测主要有反转录聚合酶链反应(RT-PCR),这种方法需要从受试者体内获取呼吸标本,从而检测病毒存在,但是,对于一些医疗体系不发达的国家,由于RT-PCR试剂盒数量有限,根本不能及时对患者进行筛选,且这种方法费时昂贵。此外,计算机断层扫描(CT)成像和鼻咽拭子也能够检测新冠肺炎,对于计算机断层扫描(CT),成像后需要专业影像学医生对图像进行理解,但是,在很多地区,影像科医生很缺乏,并不能及时对日益增长患者做出相应筛查;对于鼻咽拭子的检测,需要专业检测设备,当患者数量过多时,检测者也会出现疲劳等情况,且也需要一定时间才知道检测结果。

如今,深度学习被广泛应用到图像识别中,如仪表自动识别[1]、表情识别[2]等,且取得了很好的效果,为计算机视觉领域奠定了基础。在早期,Alex Krizhevsky等[3]提出了AlexNet网络结构,该网络通过构建一系列卷积层和全连接层,成功用于图像的分类且取得了较好的效果。之后K Simonyan等[4]提出VGGNet网络结构,用3×3卷积核代替AlexNet网络中较大卷积核,在减少参数量的情况下对于图像的分类效果并未下降。但是随着网络深度的增加,网络模型会出现退化现象,因此He Kaiming[5]等人提出了残差网络结构,通过在卷积层的输入和输出间添加跳跃连接来解决这一问题。Christian Szegedy[6]等人提出inception结构,通过多分支的连接来增加网络宽度从而对图像特征进行多尺度提取,极大地提高了网络的性能。Liu[7]等人借鉴inception结构思想,并在该结构上加入空洞卷积,增大网络对图像的感受野,从而能提取更多特征信息。Chollet[8]等人提出Xception结构,使用深度可分离卷积代替inception模块中卷积操作,极大降低了网络模型参数。Huang Gao[9]等人提出密集连接网络,解决了大多数网络中特征利用率低和传递不足的问题。在新冠肺炎的识别领域,Ezzat[10]等人提出了一种基于混合卷积神经网络(CNN)体系结构的新方法来识别新冠肺炎;Ruaa Al-falluji[11]等人提出了一种使用胸部X线图像和深度迁移学习方法自动检测新冠肺炎;Chaimae Ouchicha[12]等人构建一个CVDNet深度卷积神经网络模型来对新冠肺炎进行识别。Khaled Bayoudh[13]等人开发了一种基于迁移学习的2D和3D的混合CNN结构,用来对新冠肺炎进行筛查。上述基于深度学习方法在对新冠肺炎的识别中,有效缓解了人工识别新冠肺炎费时费力问题,但它们的识别精度还不理想。

为了提高新冠肺炎识别精度,本文提出了一种改进的基于卷积神经网络的新冠肺炎识别算法。该算法通过构造跳跃连接RFB结构来获取多尺度特征信息并强化特征信息的利用。同时,为缓解因图像分辨率降低所带来的信息丢失问题,我们构建了短连接aspp[14](空洞空间金字塔池化)模块。另外,将注意力机制GC模块与sSE模块进行结合来标定图像的重要特征信息,实现特征信息间的交互并强化有用特征的传递。基于上述功能模块,本文算法能够有效提高对新冠肺炎的识别精度。

2 算法理论

本文基于卷积神经网络的算法框架对其进行改进得到新的算法。通过构建跳跃连接RFB结构模块、短连接aspp模块以及sSEGC模块等功能模块,将其用于CNN网络中,使算法对新冠肺炎具有更高的识别效率。算法的结构及各功能模块的设计如下文所述。

2.1 短连接aspp模块

图像在采样过程中因分辨率减少会造成特征的丢失,单独采用aspp虽然能够实现多尺度的获取图像特征,但仍然不能解决上述问题。本文发现,在aspp结构上引入短连接方式,不但能够解决模型退化问题,而且还使融合特征信息量更加充足并能更有效地减少因分辨率降低所造成的特征信息丢失。短连接aspp模块设计如图1所示。

图1 短连接aspp模块Fig.1 Short connection aspp module

从图1可知,短连接aspp模块包含输入、不同卷积块、Add特征融合以及输出等部分。首先输入图像经过4个分支得到4个不同的特征信息,然后用Add操作将输入信息与4个分支的输出信息进行融合得到更丰富的特征信息并输出。其中,4个分支是图中第一~第四部分,它们的扩张率分别为2、4、6、8的DepthwiseConv2D 3×3+BN+relu+Conv2D 1×1的连接结构。我们通过设置不同的扩张率来增大模块对图像的感受野使网络提取更丰富的特征信息,同时采用DepthwiseConv2D 3×3+BN+relu+Conv2D 1×1的结构。DepthwiseConv2D 3×3是深度卷积,Conv2D 1×1为普通卷积,两者用于对图像特征进行提取,BN为归一化层,relu为激活函数。

2.2 跳跃连接RFB结构模块

RFB网络将多分支连接结构与空洞卷积相结合,实现对图像特征进行多尺度提取并增大了对图像的感受野。但是该网络结构对图像特征信息的利用较低,同时一些重要的特征信息在网络传递时容易丢失。因此本文提出一种新的跳跃连接RFB功能模块,它在RFB网络基础上加入跳跃连接从而增加图像信息的利用率,同时在模块中加入sSEGC关注模块实现对图像重要特征的关注从而防止其丢失。该算法的设计如图2所示。

图2 跳跃连接RFB结构模块Fig.2 Jump connection RFB structure module

由图2可知,我们的结构主要包括3个分支以及两次concatenate连接,我们在每个分支中加入空洞卷积并在两次concatenate连接中加入了关注机制。各分支由基本卷积块组成:分支一包括一、二、三卷积块,分支二包括一、四、五卷积块,分支三包括六、七、八卷积块。其中,基本卷积块的操作为BN+relu+Conv2D 1×1,同时我们将每个分支的最后一个模块,即三、五、八卷积块中的普通卷积由空洞卷积来取代。为了获得不同的感受野特征信息,它们的扩张系数分别设为为1、3、4。用第一个concatenate连接操作融合第三、五、八块的特征信息,之后经过一个卷积层提取特征输入到注意力机制sSEGC模块来对特征信息进行筛选,最后再使用跳跃连接把筛选后特征信息与输入特征信息进行concatenate操作融合。空洞卷积[15]就是在普通卷积中加入扩张系数,以扩张系数减1对图像进行间隔采样,假设用a来表示空洞卷积的扩张系数,则加入扩张系数后的实际卷积核尺寸与原始卷积核尺寸间关系可以定义如下:

K=(a-1)×(H-1)+H,

(1)

K为加入扩张系数后实际卷积核大小,H为原卷积核大小。使用空洞卷积后,感受野增大,网络能够提取更多图像特征,且没有增加额外参数。本文的跳跃连接RFB结构增大了对图像感受野,使网络能够更有效地对图像特征信息进行提取并筛选,且有效利用了特征信息。

2.3 sSEGC模块

关注模块因其具有对图像重要特征的关注功能而使其成为神经网络中的一项关键技术,被广泛应用到现有算法模块中。其中,Yue Cao[16]等人提出的GC注意力模块通过上下文建模和转换通道间的依赖关系,以及把转换后特征信息与输入特征进行融合的方式来对图像特征进行筛选,进而实现重要特征信息的传递。Abhijit Guha Roy[17]等人提出了sSE机制模块在空间上对图像特征进行标定筛选,从而实现空间特征信息的高效利用。本文将GC机制与sSE机制相结合得到新注意力机制sSEGC模块,该模块的设计如图3所示。

图3 sSEGC模块Fig.3 sSEGC module

从图3可知,sSEGC模块分为GC块与sSE块,GC块由3个小块组成。其中,第一、二块中的Reshape层用于重塑图形维度,Lamda层中的transpose函数和expand_dims函数用于对图形维度进行转置和插入一个维度索引值。第三块中的LayerNormalization用于优化网络结构,relu和Sigmiod为激活函数层。对于GC块,第一块的输出与第二块的输出相乘完成重要特征的提取,提取后特征输入到第三块中,第三块的输出再与输入相加完成有用特征提取。对于sSE模块,其在完成特征信息的筛选后与GC块输出特征信息进行相加融合,从而更加有效地实现对新冠肺炎识别。

2.4 算法结构

根据以上叙述,本文在CNN框架的基础上,将跳跃连接RFB结构模块、sSEGC关注模块及短连接aspp模块融合起来,得到本文算法。算法结构如图4所示。

图4 改进的ARS-CNN算法结构Fig.4 Improved ARS-CNN algorithm structure

由图4可知,本算法的操作有:零填充层(ZeroPadding2D)、卷积、批归一化操作BN、激活函数层relu、平均池化层(AveragePooling2D)、短连接aspp模块(Short connection aspp module)、跳跃连接RFB结构模块(Jump connection RFB structure module)、全局平均池化层(GlobalAveragePooling2D)、全连接层(Dense)。第一部分ZeroPadding2D为零填充层,保证了输入与输出特征图大小一致。第二~第五部分中AveragePooling2D为平均池化层,用于在采样过程中减少图像分辨率,Short connection aspp module能够有效缓解因采样过程中图像分辨率降低所造成特征信息损失,Jump connection RFB structure module不但能够对图像特征进行多尺度提取,而且能够对图像特征进行筛选,保证了有用特征信息传递且最大程度实现对特征信息复用。第二~第五部分中的Jump connection RFB structure module在特征提取过程中分别使用了5、12、24、19次。第六部分中的GlobalAveragePooling 2D用于对特征做最后提取,Dense作最后分类。

本文算法基于上述功能模块能够对新冠肺炎进行高效识别,保证算法对新冠肺炎的识别性能。

3 实 验

本文使用Pycharm作为编译器,编程语言python,实验框架为 Keras和tensorflow,硬件环境为 Intel(R)CoreTM i9-10900k CPU@3.70 GHz,32.0GRAM,显卡为 NVIDIA GeForce RTX3080,64 位 Windows10 操作系统。

3.1 实验设置

本文数据集为kaggle数据集中所提供下载的一个COVID-19 Radiography Database数据集,数据集共包含2 905张图像,其中包含219张COVID-19阳性图像,1 341张正常图像和1 345张病毒性肺炎图像。本实验用 80%作为训练集,20%作为测试集,即2 324张图像作为训练集,581张作为测试集,数据集的划分情况如表1所示。图5为数据集3个类中每一类样例图像展示。数据集中原图大小为1 024×1 024,实验前,将原始图像进行归一化处理,再把图像裁剪为 224×224 大小。采用Adam 优化器更新参数,学习率为 0.001,用sparse_categorical_crossentropy作为损失函数,epochs设为50,batchsize为 10。

表1 数据集的划分情况Tab.1 Division of the data set

图5 每一个类样例展示Fig.5 Sample display of each class

3.2 评价指标

本文采用准确率(Accuracy)、F1分数、精准率(Precision)、召回率又叫敏感度(Sensitivity)、特异性(Specificity)来对肺部疾病识别结果进行评估,计算公式如下:

(2)

(3)

(4)

(5)

(6)

其中:TP(True Positive)表示正样本被模型预测为正,TN(True Negative)表示负样本被模型预测为负,FP(False Positive)表示负样本被模型预测为正,FN(False Negative)表示正样本被模型预测为负。由于本实验为三分类的实验且样本不均衡,因此需要对准确率、召回率、特异性、精准率、FI分数作加权平均。加权平均后5个指标的计算公式如下:

(7)

(8)

(9)

(10)

(11)

3.3 实验结果

为了验证算法性能,将本文算法与VGG16、ResNet50、InceptionResNetV2[18]、PDCOVIDNet[19]、DWSDenseNet[20]等分类算法进行比较,不同分类算法对肺部疾病识别结果如表2所示。

表2 不同算法对肺部疾病识别对比Tab.2 Comparison of different algorithms in the recognition of lung diseases

图6 不同算法混淆矩阵图Fig.6 Confusion matrix diagram of different algorithms

表2中,本文所提出的ARS-CNN算法在Acc、Sen、Spe、F1、Pre上的评估结果分别为98.22%、97.95%、98.33%、97.92%、97.91%,均高于其他对比的算法,说明本文算法在对肺部疾病识别上,相较于其他算法具有更好的识别效果。

混淆矩阵能够用来反映分类模型对某一个类别分类的好坏。在混淆矩阵中,每一列表示模型预测的类别,每一行表示数据真实的类别,主对角线表示被分类模型正确分类的个数,值越大,说明分类模型的性能越好,所以我们使用它来衡量各算法对于肺部疾病的识别性能,各算法混淆矩阵如图6所示。

图6中,第一行为VGG16、ResNet50算法,第二行为InceptionResNetV2、本文算法(ARS-CNN)。从不同算法的混淆矩阵图可知,在测试的581张图片中,本文算法对于新冠肺炎、正常、病毒性肺炎类图像的识别为569张,高于VGG16、ResNet50、InceptionResNetV2的558、565、567张,在对肺部疾病识别上均优于所对比算法,更近一步说明了本文算法的性能。

4 结 论

新冠肺炎的自动准确识别在辅助医生进行相关疾病诊断中具有重要作用。为了高效识别新冠肺炎,本文提出了一种ARS-CNN算法。该算法通过构建短连接aspp网络结构来防止在采样过程中因图像分辨率减小所造成的特征信息丢失,同时缓解因网络模型退化所导致特征信息无法更新问题。使用跳跃连接RFB网络结构模块从多方向对图像特征进行提取,解决特征信息得不到充分复用问题。结合注意力机制sSEGC模块对特征信息进行标定,抑制无用特征信息同时增强有用特征信息的传递。通过实验分析对比,结果表明,本文算法均优于所对比算法,能够对肺部疾病进行精准识别。

猜你喜欢
卷积新冠肺炎
新型冠状病毒肺炎(四)
新冠疫苗怎么打?
今日农业(2021年2期)2021-11-27 19:19:53
基于3D-Winograd的快速卷积算法设计及FPGA实现
新型冠状病毒肺炎防护小知识
您想知道的新冠疫苗那些事
今日农业(2021年1期)2021-03-19 08:35:38
宁愿死于新冠,也要自由?
认识肺炎
珍爱生命,远离“新冠”
《新型冠状病毒感染的肺炎防治知识问答》
从滤波器理解卷积
电子制作(2019年11期)2019-07-04 00:34:38