基于ResNet深度模型的SPECT肺灌注图像分类

2021-06-29 06:10增思涛曹永春满正行
关键词:残差卷积深度

增思涛,曹永春,林 强,满正行,邓 涛,王 茸

(1.西北民族大学 中国民族语言文字信息技术教育部重点实验室,甘肃 兰州 730030;2.西北民族大学 动态流数据计算与应用实验室,甘肃 兰州 730030;3.甘肃省人民医院 核医学科,甘肃 兰州 730020)

0 引言

肺是气体交换的主要场所,对维持人体生命健康起着至关重要的作用.受环境污染以及个人不良生活习惯的影响,肺部疾病多发、频发,主要包括肺血管病变及气道病变.作为常见的肺血管病变,在我国肺栓塞(Pulmonary Embolism,PE)的死亡率位居第三位[1-2],它是一种由内源性或外源性栓子阻塞肺动脉主干及分支引起的肺部呼吸功能障碍的疾病.因此,PE的早期诊断对及时治疗和康复起到十分重要的作用.

在临床医学中,肺部疾病的检测主要是有创检查和无创估测两种手段.作为常见的有创检查手段,肺动脉造影是PE诊断的金标准,但其操作复杂,同时存在引发并发症及致死的风险,因而不宜反复检查,不适宜作为疗效评价的常规方法.常见的无创估测方法主要包括计算机断层扫描(Computed Tomography,CT)、正电子发射断层成像术(Positron EmissionTomography,PET)、磁共振(Magnetic Resonance Imaging,MRI)及SPECT放射性核素肺灌注显像.其中,CT具有快速及分辨率高的优点,但也存在辐射影响.当前,PET在肺部疾病的临床应用主要用于恶性肿瘤的鉴别,同样存在可能的辐射影响,不仅检查费用高,而且存在致癌风险.SPECT放射性核素肺灌注显像作为一种无创性的检查方法,能够依据肺血流受损的分布特点来诊断疾病和判断病情严重程度,达到直接反映肺部整体病变的目的,具有对病灶区域敏感、易于观察等优点,而且操作简便、辐射剂量较低,在PE的临床检查中得到广泛应用[3].由于传统临床诊疗应用SPECT进行PE诊断时,需要医生人工阅片,不仅效率较低,而且易受阅片医生的临床经验、学识水平、工作状态等主观因素的影响,从而出现漏诊和误诊的情况.

利用从历史数据中提取出来的疾病特征,构建基于机器学习特别是深度学习技术的计算机辅助诊断系统(Computer Aid Diagnosis,CAD),可实现疾病的辅助诊断,在有效提升诊断效率的同时大大减少了漏诊、误诊现象的发生.深度学习技术在脑部疾病、乳腺癌和肺结核等领域的应用[4-6]已经有了广泛的研究.在脑部疾病研究中,Sarraf等[7]分别针对sMRI和fMRI使用LeNet-5模型对阿尔兹海默症样本进行训练,分别得到了98.84%和96.85%的检测准确率.在乳腺图像识别方面,Carneiro等[8]使用卷积神经网络对乳房X光进行分类研究,在检测良恶性乳腺癌方面AUC超过0.9.在肺部图像识别中,Shen等[9]使用多尺度卷积神经网络对肺结节CT图像进行训练,在检测肺结节良恶性中分类准确率达到86.8%.目前,研究人员利用深度学习技术在CT、X光和MRI图像方面取得了一定的成绩.然而,在SPECT核医学成像模态范畴下,基于深度学习的肺部疾病识别研究较少.

本文研究基于深度学习的SPECT肺灌注图像分类识别,结合SPECT肺灌注图像样本数少、分辨率低、图像数据变化范围大等不同于一般图像的特点,首先进行归一化、数据扩展等预处理,其次基于ResNet模型在图像分类领域的突出表现,在选用ResNet-50为分类模型的基础上,引入迁移学习[10]和特征融合[11]方法有效提高了深度学习模型的分类效果.

1 肺灌注医学图像数据

核素肺灌注显像通过静脉注射放射性药物,利用SPECT设备在病变组织与正常组织中探测到的放射量不同,从而使得图像呈现差异性[12].本文所使用的数据均为2018年1月至12月在甘肃省人民医院使用西门子SPECT-ECAM设备从SPECT肺灌注显像中诊断各种生理疾病收集的数据,采集矩阵为128×128,数据保存格式遵循医学数字成像和通信协议(Digital Image and Communications in Medical,DICOM).

1.1 数据收集及标记

SPECT肺灌注数据由DICOM文件和对应的诊断报告组成.原始数据集共包含340个DICOM文件,其中阴性150例,阳性190例.诊断报告是两位核医学科医生在共同阅片的基础下给出的诊断性建议结果.图1为DICOM文件转换后的阴性与阳性图像.

图1 肺灌注图像

由图1可以看出,在正常的(a)图中,双肺轮廓完整,双肺肺尖及周边稍显减淡,其余部分分布均匀;在病变的(b)图中,左肺中叶上段、左顶背段见楔形缺损,右肺中叶部分外侧段、右肺中叶部分内侧段、右肺下叶部分前基底段见小楔形放射性缺损.

基于肺灌注图像所呈现特征,本文结合诊断报告对原始图像进行标注,阴性数据标签为0,阳性数据标签为1,并由三位核医学专家对标记结果进行审核.

1.2 数据预处理

1.2.1 归一化

SPECT肺灌注显像数据最初存储在DICOM文件中,文件中的每个分量值都是对预先注入患者体内的放射性核素或同位素放射量(16位无符号整数)的数字记录,而不是像素值.SPECT肺灌注检查产生的DICOM文件放射值不仅变化范围大,而且存在明显的个体差异.因此,需要在模型分类之前对放射值进行变换处理.本文采用Min-Max标准化对DICOM文件做如下线性变换:

(1)

其中,xi表示图像像素点值,max(x)和min(x)分别表示图像像素的最大值与最小值.

1.2.2 数据扩展

深度网络模型对训练数据的量有较高的要求.因此,首先需要对已有数据做适度扩充.考虑到原始数据集中可能存在的样本不平衡,在数据扩展时引入类间不等量扩展.本文采用平移和旋转两种处理实现SPECT肺灌注数据的扩展.此外,为了提升分类模型的可扩展能力,数据扩展阶段相关参数的选择以随机方式确定.

平移:假如把(xI,yI)设置为输入图像内的某个像素点,赋予其适当的平移距离Δx、Δy,经过上述操作后得到像素点的坐标(xO,yO),得到平移计算公式(2):

(2)

旋转:假定(xI,yI)为输入图像中的像素点,给定旋转角度θ∈[θ1,θ2],其中θ1和θ2分别代表旋转角度的下限和上限,其取值通过实验方式确定.图像旋转的计算公式(3):

(3)

如图2(a)为肺灌注原图,图2(b)为平移后的效果图,图2(c)为旋转后的效果图.

图2 平移旋转效果图

采用上述处理方法本文对原始数据集进行了处理,最终获得13 600张肺灌注图像组成的扩展数据集,其中阴性5 680张,阳性7 920张.在分类实验中本文以8∶2的比例来划分训练集和测试集,具体划分情况见表1.

表1 扩展后数据情况

2 基于SPECT肺灌注图像的分类模型

基于深度神经网络的图像分类性能与网络的深度存在重要的关系.随着深度神经网络层数的不断提升,会产生梯度消失和网络性能退化现象[13],为了解决这一问题,HE等[14]提出了残差网络(Residual Networks,ResNet).

ResNet网络主要有ResNet-18、ResNet-34、ResNet-50、ResNet-101和ResNet-152等不同深度的ResNet模型,其主要差别表现在卷积层数的不同.ResNet模型采用多个小卷积核进行特征提取,在图像分类领域取得了很好的效果.本文选用ResNet-50为SPECT肺灌注图像分类器,并通过迁移学习和特征融合方法来提高图像分类效果.

2.1 ResNet-50结构

ResNet-50将深层网络模型构建为浅层网络模型和自身映射的增加层,把训练好的浅层结构与自身映射的増加层通过残差单元连接在一起,通过shortcut将输入跨层传递,然后与经过卷积后的输出相加,达到充分训练底层网络的效果,残差单元结构如图3所示.

图3 残差单元结构示意图

假定神经网络最初的输入值是m,有一函数为H(m),该函数代表的意义是网络堆叠层的最下一层的映射,针对普通的线性网络结构,学习目标所设立的函数F(m)是与上述底层映射的函数H(m)相同的,而面对残差网络结构,则有所不同,因为这种结构是把m不直接输送到底层,最终形成一个输出结果,所以这里的F(m)就与H(m)有所区别,其具体等式为F(m)=H(m)-m,这种方式能够使底层直接参与到学习残差中,这种连接变更了一般的直连神经网络模型,特别是其中后一层的情况只能通过前一层的输出,非间接地运行恒等映射,最终很好地处理了网络层数过多而导致的梯度消失、性能退化等棘手的难题,残差单元定义如公式(4):

xl+1=f[xl+F(xl,wl)]

(4)

式中xl和xl+1分别为第l个残差单元的输入和输出F(xl,wl)为待学习的残差映射,w为卷积核,f为激活函数,采用线性整流函数(Rectified Linear Unit,ReLU),其公式(5)为:

Relu(x)=max(0,x)

(5)

ResNet-50模型结构如图4所示,包含了49个卷积层和1个全连接层,有2个基本的Block,一个是ID Block,输入和输出的维度是一样的,所以可以串联多个;另外一个基本Block是CONV Block,输入和输出的维度是不一样的,所以不能连续串联,它的作用本是为了改变特征向量的维度.其中第2~5阶段中ID Blcok×2代表两个不改变维度的残差块,CONV Block代表的是添加维度的残差块,每个残差块包含3个卷积层.图中CONV表示卷积操作,Batch Normal是批正则化处理,ReLu为激活函数,MAX Pool和AVG Pool分别表示最大池化和平均池化,第2~5阶段表示残差块.

图4 ResNet-50模型

2.2 基于ResNet-50分类模型的构建

2.2.1 迁移学习(TL)

迁移学习是将在已有领域中学习到的知识,应用到新的相关领域中,从而提高在新领域中的表现效果[15].Yosinski等[16]通过大量实验对比发现基于特征迁移的卷积神经网络表现效果比随机初始化权重的网络效果好,可以大幅度提升网络的泛化能力.

针对SPECT肺灌注数据量少和数据不平衡导致的过拟合问题,采用迁移学习方法来改善,处理过程如图5所示.首先,将自然图像数据集上学习到的特征作为先验知识迁移到ResNet-50网络模型上.其次,由于SPECT肺灌注图像与自然图像数据有一定的差异,因此需要将预训练网络在SPECT肺灌注图像上进行二次训练,使网络针对SPECT肺灌注图像自适应调整参数.最后,网络模型的最后一层与具体数据集密切相关,每一个输出节点都对应一个特定的类别.因此,基于本文数据集实现网络层迁移后重新构建分类层,实现SPECT肺灌注图像的分类识别.

图5 基于迁移学习的ResNet-50模型

2.2.2 特征融合(FF)

图像识别研究中,为了充分利用图像信息,常常采用特征融合方法.而在医学图像领域,浅层、深层特征同样能够实现病灶识别,因此,本文基于ResNet-50采用特征融合方法进行肺灌注图像识别.

在深度学习网络中,将网络中的隐藏层进行特征融合,从而达到网络模型最优的效果.对于空间特征融合算法,可以融合卷积层的输出特征图,将得到的结果传送到下一层,融合函数公式(6):

(6)

ResNet-50模型是一个50层的深层神经网络,在特征提取过程中,随着卷积层数的增加,网络会更加注重深层的总体特征信息,忽略细节特征信息,从而对模型识别精度产生影响.为了更好的实现对肺灌注图像的识别,采取特征融合方法对ResNet-50进行改进.ResNet-50模型第2阶段输出特征图经过10层卷积,第3阶段输出特征图经过22层卷积,分别将第2阶段的输出特征图、第3阶段的输出特征图与第5阶段的输出特征图进行融合,然后送入全连接层.经过实验发现,第3阶段输出特征图和第5阶段的输出特征图融合,对肺灌注图像识别的准确率明显高于第2阶段输出特征图和第5阶段输出特征图的融合.因此,本文将第3阶段和第5阶段输出特征图融合方式对肺灌注图像识别.ResNet-50模型的输入尺寸为224×224,第3阶段的输出特征图尺寸为28×28,第5阶段的输出特征图为7×7,通过双线性插值对第3阶段输出特征图进行池化操作,与第5阶段的输出特征图进行融合,经过扁平层Flatten,最后使用2个全连接层和SoftMax激活函数,模型结构如图6所示.

3 实验设计与结果分析

本实验的实验环境为Windows10操作系统,所用GPU型号为GTX1080Ti,内存为32G,选择Pytorch深度学习框架进行模型训练和测试,编程语言为Python3.7.基于扩展后的SPECT肺灌注图像数据进行分类实验,模型训练设置损失函数为交叉熵,优化器为随机梯度下降,激活函数为ReLu,学习率为0.001,最大迭代次数为40 000次.

3.1 实验过程及评价指标

在实验中,为了适应ResNet-50模型输入要求,对训练数据进行resize操作,将图像拉伸至224×224,并利用Convert(RGB)函数将单通道图像转换为三通道,然后以8∶2的比例随机分配训练集和测试集.

为比较本文提出的改进方法在SPECT肺灌注图像分类中的有效性,我们进行了4组对比实验.1)基于原始ResNet-50模型的SPECT肺灌注图像分类;2)将迁移学习方法引入原始ResNet-50模型进行SPECT肺灌注图像分类(TL_ResNet-50);3)将ResNet-50模型中第3阶段输出特征与第5阶段输出特征进行融合的SPECT肺灌注图像分类(FF_ResNet-50);4)将迁移学习方法引入到FF_ResNet-50模型进行SPECT肺灌注图像分类(TL_FF_ResNet-50).通过比较分析以上四组实验的分类效果,进一步验证本文在ResNet-50模型中引入迁移学习和特征融合方法的分类效果.

对上述四组实验的分类效果本文以分类准确率(Accuracy)、ROC曲线下的面积(Area Under Curve,AUC)、灵敏度(Sensitivity)和特异度(Specificity)作为评价指标进行评价并比较.

准确率是评估分类模型全局准确程度的常用指标,其值表示分类准确的样本数占总样本数的比例,一般准确率越接近1则表示分类效果越好.计算公式(7):

(7)

其中,TP为阴性样本的正确识别数;FP为阴性样本的错误识别数;FN为阳性样本的错误识别数;TN为阳性样本的正确识别数.

为了更全面评估网络的分类性能,本文绘制了受试者工作特征曲线(Receiver Operating Characteristics,ROC)并计算AUC值.ROC曲线的横坐标为假正例率(False Positive Rate,FPR),纵坐标为真正例率(True Positive Rate,TPR),AUC值越接近1,网络的诊断性能越好.

临床辅助诊断中,仅靠分类准确率难以准确反映分类模型性能的强弱.为了客观、准确、全面地评估网络的诊断性能以及考虑到对患者漏诊、误诊后果的严重性,还需要灵敏度、特异度评判指标.

灵敏度又称为真阳性率(TPR),即实际阳性样本被正确判断为阳性的比例,反映模型发现阳性的能力,灵敏度越高,则越不容易漏诊,其计算公式(8)为:

(8)

特异度又称真阴性率(1-FPR),即实际阴性被正确判断为阴性的比例,反映模型发现阴性的能力,特异度越高,则越不容易误诊,其计算公式(9)为:

(9)

3.2 实验结果与分析

以上四组实验的训练过程中随着训练批次的变化损失曲线如图7所示,横坐标为网络迭代次数,纵坐标为损失值.从图7中看出,随着迭代次数的增加,ResNet-50和FF_ResNet-50模型在迭代次数达到390 000次左右时趋于平稳状态,在迭代次数达到25 000次时,ResNet-50模型loss曲线仍有较高幅度的波动,而FF_ResNet-50模型在引入特征融合方法后,使得模型充分学习浅层信息和深层信息,可以明显看到模型的波动趋于平稳,说明特征融合使得网络模型更快趋于稳定.为了解决因数据量较少引起的模型易过拟合问题,TL_FF_ResNet-50模型和TL_ResNet-50模型引入迁移学习算法明显加快了模型的收敛速度,TL_FF_ResNet-50模型在迭代次数达到14 000次时已经趋于平稳状态,TL_ResNet-50模型在迭代次数达到19 000次时趋于平稳状态,相比原始ResNet-50模型的收敛速度提高了将近1倍.

图7 训练集损失曲线

四种分类模型对应ROC曲线如图8所示,横轴为FPR,纵轴为TPR,图中虚线表示预测分界线,预测结果位于分界线之上,说明分类器性能高于随机预测;预测结果位于分界线之下,说明分类器性能较差.ResNet-50、TL_ResNet-50、FF_ResNet-50和TL_FF_ResNet-50网络模型对应的ROC曲线分别为图8的(a)(b)(c)和(d).由图8可见,四种模型的曲线都在预测分界线之上,AUC值都达到了0.85以上,说明均有一定的分类效果,其中,TL_FF_ResNet-50模型的AUC值达到了0.986,说明引入了迁移学习和特征融合后的ResNet-50模型在SPECT肺灌注图像上的分类性能最好.

图8 四种网络模型对应ROC曲线

四组实验在测试集上的四项分类指标评价结果如表2所示.由表2可见,在SPECT肺灌注图像的诊断中,原始ResNet-50模型在测试集上的准确率、灵敏度和特异度均表现最差,相比ResNet-50,TL_ResNet-50模型由于引入迁移学习而改善了数据量不足所带来的过拟合情况,在测试数据集上的分类准确率、灵敏度和特异度分别提高了7.9%、8.4%和9.3%.相比ResNet-50模型,FF_ResNet-50模型由于融合了网络浅层特征和深层特征分类准确率、灵敏度和特异度也有较明显的提升.灵敏度和特异度在临床诊断中意义重大,灵敏度的提升意味着漏诊率的下降,特异度的提升意味着误诊率的下降,低漏诊率和低误诊率为病人的及时确诊及后续治疗争取了宝贵时间.上述两种网络虽然取得了不错的效果,但还不能满足临床应用的要求.TL_FF_ResNet-50模型在特征融合的基础上同时引入迁移学习,不仅有效提高了深度学习模型的分类准确率,同时改善了数据量不足导致的过拟合现象,分类准确率达到了95.5%,灵敏度和特异度分别达到了94.7%和96.7%,具有较低的漏诊率和误诊率,取得了较为理想的结果,可以为临床医生提供更为精确的辅助诊断信息.

表2 实验结果

4 总结与展望

本文研究了基于ResNet深度模型的SPECT肺灌注功能成像分类方法.针对SPECT核医学成像自身特征及医学图像数据量少、数据不平衡等问题所带来的深度学习模型分类效果不理想及过拟合现象,通过数据归一化、数据扩展和迁移学习[10]方法进行改善.为有效提高SPECT肺灌注图像的分类效果,在ResNet-50深度模型中引入特征融合[11]方法实现对SPECT图像浅层信息和深度信息的充分利用从而达到肺部疾病的识别.通过在一组真实SPECT肺灌注图像上的比较实验,验证了本文模型在SPECT肺灌注图像分类方面的适用性和有效性.

为提高深度模型的泛化能力本文对肺灌注图像数据做了一定的扩展,但是扩展后的数据相关性较大,并且数据不够全面,在一定程度上影响识别效果.下一步研究一方面将扩大真实数据集,对模型的结构进行改进和优化,以期训练出更具泛化能力的分类模型.另一方面针对单个病例8个体位的肺灌注图像进行三维建模,并进行定量分析,在此基础上根据肺灌注缺损程度研究多分类问题,以期进一步判断肺部疾病的严重程度.

猜你喜欢
残差卷积深度
基于全卷积神经网络的猪背膘厚快速准确测定
基于残差-注意力和LSTM的心律失常心拍分类方法研究
四增四减 深度推进
深度思考之不等式
融合上下文的残差门卷积实体抽取
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
基于残差学习的自适应无人机目标跟踪算法
基于深度卷积的残差三生网络研究与应用