文晓媚, 黄丹平*, 胡珊珊, 宁波
(1.四川轻化工大学机械工程学院, 宜宾 644000; 2.四川省人民医院, 成都 610000; 3.重庆医科大学附属第二医院, 重庆 400000)
人体胰腺是一个具有外分泌功能的腺体,它的生理作用和病理变化与人体生命息息相关。胰腺癌作为恶性程度最高的肿瘤之一,在医学界被称为“癌症之王”。其手术治愈率主要取决于胰腺癌分期,早期癌变可以采取手术治疗切除,但正由于其病变早期缺乏特异性的临床症状,导致早期诊断极为困难,绝大多数患者在确诊时已属晚期,错过最佳治疗机会,病死率较高[1]。故合理利用相关影像学手段和智能方法研发一个能在患者患癌早期就给出准确诊断的检测平台,对医师、患者,对医学领域胰腺癌的发现和诊治都是一种福音。
影像学检查是临床诊断胰腺癌的最重要依据,其在胰腺癌术前分期和可切除性评估、新辅助治疗及治疗后监测等方面具有重要价值[2]。目前常用的影像学检查方法一般包括计算机断层扫描(computed tomography, CT)、磁共振成像(magnetic resonance imaging, MRI)和超声内镜(endoscopic ultrasonography, EUS)等。CT和MRI对于早期胰腺癌诊断虽有一定效果,但其敏感性太低,在病变症状不明显的情况下诊断不够精确。而超声内镜结合了超声与内窥镜,可将探头深入消化道,紧贴胰腺表面进行检查,在对胰腺癌分期诊断以及对肠系膜上静脉和门静脉是否受累以及浸润范围的判断上优于CT、MRI[3]。同时CT、MRI价格昂贵,受放射性、造影剂的过敏性等因素影响,对于体内有金属异物者、肾功能不全者使用受限。而超声内镜检查凭借其费用较低、无放射性、可重复性等优点,成为胰腺局部性病变的常用检查手段。但由于技术要求高、设备普及率低等多因素的影响,现实中绝大部分医院对于胰腺癌诊断是由医师针对超声内镜检查结果来人为判定,而EUS的高难度操作性和返回超声图像的难读性,就高度要求了操作者的操作技能以及识图能力。此外,由于确诊结果受操作者主观性与经验的影响,也导致判断结果的准确性和可靠性不能得到保证。
随着科学技术的发展,“机器学习”逐渐被引入应用在医疗领域,在疾病的诊治中显现出重要地位,众多基于“机器学习”的智能医学诊断方法相继提出。针对胰腺癌的智能诊断方法,此前已有学者进行研究,并获得了一些结论性成果。如陈钰莹等[4]综述了影像组学在胰腺癌检测的应用,表明影像组学在胰腺癌的诊断、疗效评估、预后预测等方面具有巨大的潜在价值;蔡哲元等[5]使用类间距作为依据筛选出较优特征,并组合特征训练分类器,获得了可用于判别胰腺是否病变且准确率(96.11%)较高的模型;Zhu等[6]对胰腺癌和慢性胰腺炎患者的EUS图像进行分析,选择出16个特征并利用支持向量机(support vector machine, SVM) 模型对胰腺癌进行识别,其敏感度、特异度、准确度可达91.6%、95.0%、94.2%;Ozkan等[7]提出将基于年龄分类的多层感知器(multilayered perceptron, MLP)模型用于对胰腺EUS图像进行癌变检测,结果表明其敏感度、特异度、准确度为83.3%、93.3%、87.5%,优于普通MLP检测;唐思源等[8]采用一种多尺度特征融合的卷积神经网络,对输入CT图像是否患胰腺癌实现了检测,其准确率可达96.8%;Marya等[9]为实现区分自身免疫性胰腺炎(autoimmune pancreatitis, AIP)与胰管腺癌(pancreatic ductal adenocarcinoma, PDAC)、慢性胰腺炎和正常胰腺,创建了一种基于内镜超声图像的卷积神经网络模型,结果表明所建立模型能够较准确地鉴别AIP与PDAC及胰腺良性病变,提供更早、更准确的诊断能力;Liu等[10]利用基于ImageNet预训练的VGG16作为主干特征提取网络,使用胰腺癌患者的CT图像训练基于区域的卷积网络FasterRcnn,结果显示其鉴别胰腺癌的曲线下面积(area under the curve, AUC)为0.963 2,检测时间仅需0.2 s,大大少于专家诊断所需时间;Si等[11]通过研究胰腺癌患者的增强CT影像特征,建立了完全端对端式的深度学习检测模型,用于诊断是否患胰腺癌,其检测准确率可达87.6%;杨树建等[12]基于快速区域卷积神经网络的胰腺癌增强CT自动识别系统,利用自主整理的数据集进行实验,测得其模型准确性、特异度、灵敏度分别可达90.2%、91.3%、80.1%,具有一定的临床应用价值;Gao等[13]评估了生成对抗网络(generative adversarial networks, GAN)辅助深度学习在MRI图像上鉴别胰腺疾病的能力,结果显示,通过GAN合成图像增强训练得到的模型,其内外部验证集的平均准确率和平均AUC分别为82%和0.895 0,表明GAN辅助深度学习对胰腺疾病检测有一定帮助;Chung等[14]提出了一种将探针电喷雾电离质谱与机器学习相结合的诊断系统。其通过机器学习算法分析5 μL的血清样本以检测识别PDAC,灵敏度和特异度分别为90.8%和91.7%。
现有针对胰腺癌变检测的研究虽实现了智能检测胰腺癌变,但近年来,大多已有方法均是以图像特征更为显著的CT扫描返回图像作为研究对象,而超声内镜图像由于质量差,特征模糊,难读懂,而少有学者研究报道。此外,上述网络模型方法虽对胰腺癌变检测都表现出具有较好性能,但对于准确检出癌变,消除误诊漏诊,仍存在提升空间,且模型功能较单一,具有较大的实用局限性。
通过分析发现,实现基于超声内镜影像特征的智能胰腺癌诊断主要存在以下需要重点解决的难点:①研究使用的数据集收集困难,且样本不均衡。数据集好坏将直接影响算法模型的训练效果和检测性能;②检测传回图像目标轮廓不清晰、噪声大、不稳定。成像问题对学者研究图像影像学特点、模型提取图像中目标特征造成了很大阻碍;③网络模型选择。针对不同数据集,采用网络模型类型不同,得到的检测结果与模型表现性能不同;④超声内镜检查时,由于胰腺肿瘤的异质性和影像征象的重叠性特征,可能使得返回图像送入模型得到的检测结果存在假阴性,诊断效果不佳[15]。
针对上述难点,现提出一种基于机器学习分支即深度学习[16]的智能胰腺癌变检测网络,使用引入SE注意力机制后的改进AlexNet分类网络,即SE-AlexNet,对经数字图像预处理的原始超声内镜返回图像进行癌变检测,并判别正常胰腺图像其确切所属部位,为医师准确辨别癌变位置提供辅助性帮助。相较于传统目标检测网络和语义分割网络,本文研究采用的网络模型类别为分类网络,其检测时不易受图像局部区域影响,而从全局特征进行综合判定,具有更高的准确性。
SE-AlexNet对超声内镜传回图像实现智能癌变检测包含网络训练和网络预测两大分支,其整体流程图如图1所示。网络训练包括收集整理超声内镜返回图像并进行数据增广形成数据集、训练模型。网络预测则是利用已训练模型对超声传回图像进行智能检测,结果将显示在用户界面(user interface, UI)。
图1 胰腺癌智能检测流程图Fig.1 Flow chart of intelligent detection of pancreatic cancer
本文算法使用的原始数据集来源于四川省人民医院消化内科2021年部分病患的超声内镜检查返回图像,图2为超声内镜检查现场图。医院所使用的超声仪品牌及型号为FUJIFILM 富士su-9000,超声探头型号及频率为EG-580UT和7.5 M,数据集总包含190张图像,包括正常胰腺组织图155张(含胰头、胰颈、胰体尾部位各35、70、50张),胰腺癌变图像35张,如图3所示。比例尺数据表示图上区域与实际组织的大小比例关系。为保证后续网络模型正常训练,所有图片已由专业医师做好分类处理,图片扩展名为.png,原始大小均为1 280×1 024。
图2 超声内镜检查现场Fig.2 Endoscopic ultrasonography scene
图3 数据集图像Fig.3 Dataset images
从数据集中样本分布情况可知,正常图像与病变图像数量相差较大,若直接对网络进行判别输入图像是否产生病变的二分类训练,模型的分类效果将受到显著影响[17]。通过对数据集中各类图像影像特征的研究发现:胰腺癌变在超声返回图像中表现为大块蟹足状低回声区域掩盖原胰腺组织部分,与正常胰腺图像差异明显;正常胰头、胰颈、胰体尾图像表现各有特点,特征差异也较为明显。故在本文研究中,将对正负样本的二分类问题改进为检测癌变图像、正常胰头、正常胰颈、正常胰体尾图像的四分类问题,使得各类别图像数据量趋于均衡,有效缓解了样本分布不均带来的影响。
由于超声图像成像原理和过程较为特殊,导致其图像自身具有高噪声、低对比度及不均匀性等问题[18],这对网络有效提取图像特征乃至后续分类检测造成了较大阻碍。此外,胰腺癌变在超声图像上的显示特征也将对网络正确识别造成干扰,故在将图片数据送入模型进行训练和预测前,对其进行一定预处理十分有必要。
预处理的目标包含以下几点:去除原始图像上的无用信息,使得处理后图像仅包含对诊断识别有效的感兴趣区域(regions of interest, ROI);胰腺组织、肾、脾脏及血管等其他有助于胰腺区域辅助定位的目标与背景对比度差异更显著;胰腺及其他器官区域的纹理得到增强,不同组织间的纹理区别更加明显。处理过程主要包括阈值分割、图像降噪和图像增强[19]。通过阈值分割,去除原图中冗余黑色背景,裁剪获得固定大小(512像素×512像素)的ROI区域,提高图像质量。本文研究中该过程借助HALCON(20.11)图像处理软件完成;图像降噪主要消除图像中存在的斑点噪声,其无法像热噪声可通过硬件方式或用户操作避免[20],极大地影响了图像的质量和病灶的识别[21]。常使用的降噪算法有双边滤波、高斯滤波法等。本文研究分别采用了上述两种滤波法进行试验,结果显示高斯滤波相对于双边滤波更易吞噬图像纹理信息,模糊效果更强,故最终选用双边滤波法对数据集图像降噪;对经过降噪后的图像进行增强,可凸显图像特征,提升图像质量。增强的方法包括对比度增强、动态范围压缩、锐化、边缘增强等。本文研究试验了6种增强算法(直方图均衡化、Clahe、Retinex-SSR、Laplace变换、对数变换和伽马变换[22]),并对其处理效果进行了对照比较,实验效果如图4所示,Clahe算法的图像增强效果最好。
针对数据集中样本数量少的问题,在考虑各类别图像显示特点后,采用水平翻转方法对预处理后的数据进行扩充,让有限的数据产生更多的数据,增加训练样本的数量以及多样性,从而提升网络模型鲁棒性。由预处理增强过程的结果显示可知,除Clahe算法外,Gamma变换和Laplace变换对图像增强的效果也较好,为进一步增加数据量及其多样性,故也考虑将其作为数据扩充的方式之一。预处理后各类别图像效果如图5所示。经数据扩充后,最终送入网络进行训练和预测的各类别图像数量如表1所示。
本文提出在AlexNet网络融入SE注意力机制的SE-AlexNet网络实现对胰腺癌变的在线诊断,该SE-AlexNet网络模型总体结构和相关参数如图6所示。模型由两部分组成,包括提取图像特征和分类预测的深度学习分类网络AlexNet和提升网络预测性能的注意力模块SE。
图5 预处理后各类别图像展示Fig.5 Pre-processed images for each category
表1 数据增广前后数据量对比
图6 SE-AlexNet网络结构图Fig.6 SE-AlexNet network structure diagram
本文研究中使用数据集样本量小。在选择网络模型时,深层卷积网络参数量多,可能导致模型复杂度高,容易过拟合,故首先考虑浅层神经网络进行试验。AlexNet是卷积神经网络在图像分类方向上的经典模型,由Krizhevsky等[23]提出。相对于简单卷积神经网络LeNet,AlexNet加深了网络结构,使用层叠的卷积层提取图像特征。此外,AlexNet采用Relu作为激活函数,相较Sigmoid加快了训练速度[24],运用了Dropout机制,可以防止由于数据集样本量小带来的网络训练过拟合。但AlexNet有限的卷积次数也限制了其提取深层特征的能力。相较下,深层网络提取到的特征更加高层,不同通道的侧重点更加明显,为了弥补这一不足,引入注意力机制加强AlexNet对于特征的感知,从而优化网络模型性能。
注意力机制的核心思想是通过一定手段获取到每张特征图重要性的差异,而将神经网络的计算资源更多地投入更重要的任务当中,并利用任务结果反向指导特征图的权重更新,从而高效快速地完成相应任务[25]。在AlexNet中,特征可从两个维度进行关注:一个是图像尺寸,一个是图像通道。故注意力机制也根据其关注维度可分为空间注意力机制和通道注意力机制。空间注意力机制主要通过图像上下文信息突出目标特征的空间位置信息,进而对空间上的分布权重进行增强或抑制。而超声图像由于其成像特点,目标特征与背景差异并不明显,不大适合使用空间注意力机制。而通道注意力机制通过分析特征各通道包含的特定响应,能够调整各通道的权重以强调网络应关注的特征,这对于准确识别胰腺癌变能够提供一定帮助,故选用通道注意力机制以提升模型分类性能。
通道注意力模块SE(squeeze and excitation)主要关注特征图(feature map)通道间的关系,通过学习获取到特征图各通道的重要性,使模型可以根据重要性自动调整权值分配,有效提升网络识别性能[26]。SE模块主要包括挤压(squeeze)和激励(excitation)两个操作:尺寸为h×w×c的输入特征图xc首先通过一个全局平均池化,各通道特征被压缩为一个实数,此时得到尺寸大小为1×1×c的中间张量uc;uc再通过呈瓶颈结构的两次全连接拟合通道间相关性和一次sigmoid激活函数进行归一化,输出张量vc。vc的尺寸大小与uc一致,但各通道数值已变更为表示各通道重要性的权重信息;最后,将获取到的张量vc尺度变换至与xc相同后与xc上原始特征相乘,得到引入注意力后的特征图yc。上述操作过程可用式(1)~式(3)及图7表示。
(1)
vc=Fex(uc,W1,W2)=σ[W2δ(W1uc)]
(2)
yc=Fscale(vc)xc
(3)
图7 SE模块挤压与激励过程图Fig.7 SE module extrusion and excitation process diagram
式中:Fsq()和Fex()分别为SE的挤压和激励过程;Fscale()为尺度变换过程;(i,j)为特征图上数据坐标值;σ为Sigmoid激活函数;δ为Relu激活函数;W1和W2为两次全连接操作;r为降维系数,通过对r的调整,可控制模块容量、节省参数开销,本实验中该值设为16。
SE模块具有很高的灵活性,可以直接应用于现有的网络结构中,但其插入位置不同,对网络模型性能的影响也不尽相同。在本文研究中,SE模块被安置于AlexNet主干特征提取部分与全连接层之间,特征层通过SE前后的特征差异如图8所示。通过多次迭代训练后,网络达到收敛状态[27],此时将图像输入SE-AlexNet,输出结果即为该图像为各类别的概率值,通过比较,概率值最大的对应类则为预测的输入图像类别。
本文算法在Windows10 64位系统下操作,开发基于python语言,GPU型号为NVIDIA GeForce RTX 3070。算法运行环境为PyCharm(community 2020.1.3),相关配置为:pytorch1.7.1+python3.7,算法使用GPU运算。网络训练相关参数设置为:学习率Lr=0.01、训练迭代次数Epoch=100、批大小Batchsize=10。
图8 SE前后特征层比较Fig.8 Comparison of feature maps before and after SE
采取随机抽样方式,将数据集划分为训练集、验证集及测试集,各占比例为80%、10%、10%。数据集划分后各集所含类别图像数量分布如表2所示。
为表现所提算法的优胜性,做了以下对比实验进行验证:①在未引入注意力机制的情况下,使用本模型所用基础分类网络Alexnet与其他常见分类
表2 数据集划分后各数据集信息
检测网络(如vgg系列、resnet系列、inception)针对本研究数据集同时进行训练,横向比较各网络的模型表现;②在选定Alexnet作为分类网络基础上引入不同注意力机制,根据注意力机制类型与插入位置的不同组合训练不同网络,比较各组合网络对未引入注意力机制的原始网络的影响,评价最优组合模型。
为准确评估实验中各网络模型的表现性能,本研究采用了测试集精确率(Precisionmacro)、召回率(Recallmacro)、F1-scoremacro三个评估参数。在二分类问题中,精确率是指在所有预测为正类的样本中,实际正类所占的比例;召回率是指在所有正类样本中,被预测为正类的比例;F1-score即精确率和召回率的调和平均,用于衡量分类器的综合性能。在解决本文的多分类问题时,通常把多分类问题分解成多个二分类问题,每次以其中一个类为正类,其余类统一为负类,计算每类的二分类指标后再平均计算。本文研究中使用macro(宏)平均计算方式,其可增加小类别检测效果在模型评估中的重要性,有助于综合评价模型对于检出病变图像的性能表现。上述评价指标的计算方法如式(4)~式(8)所示。
(4)
(5)
(6)
(7)
(8)
式中:TP为正样本被正确预测为正样本情况数量;FP为负样本被错误预测为正样本情况数量;FN为正样本被错误预测为负样本情况数量;i∈{1, 2, 3, 4},分别为正常胰头、正常胰颈、正常胰体尾、癌变类别;L为类别总数。
将输入图像调整大小到各网络要求分辨率尺寸后送入网络进行训练,为使网络模型性能评估更为准确,结果中各网络数据均用多次训练的评估参数均值表示。未引入注意力机制时,AlexNet网络与其他几种分类网络的模型性能比较结果如表3所示。
由表3可以看到,未进行任何改进的各分类网络对本文研究数据集已产生了较好的检测效果,F1-score 均能达93%以上,Precision和Recall也各自能达92%、93%。进一步分析各网络中评估参数表现可知,针对本文测试集中图片检测,综合性能表现最优的网络为Alexnet,其F1-score高达97.53%,以将近1%的优势高于第二名的Inception网络,同时其精确率和召回率也在所有网络中保持最高,证明了其具有更优的模型性能。
此外,实验引入SE、CBAM两种不同的注意力机制,并尝试研究注意力机制处于不同位置对训练模型的影响。注意力机制的插入位置设有两处:①输入图像通过第一个卷积层后位置,此处处于主干特征提取网络的浅层,Feature map为输入图像较原始的特征;②特征提取结束后,进行全连接操作前的位置,此时网络已获取到输入图像更深层抽象特征,可接全连接层进行特征映射。不同组合的分类模型效果如表4所示。
表3 基础分类网络性能比较
由表4中数据可知,注意力机制的引入的确对网络模型性能产生了一定影响,且引入同一注意力机制但插入不同位置,将对网络产生不同影响。引入SE和CBAM注意力机制且插入在位置②时,训练得到的网络较原始网络各评估参数值都得到了提高,但插入注意力机制为SE时优化效果最好,其网络F1-Score相较原始Alexnet提高了1.59%,同时精确率和召回率也各自提高了2.29%和0.9%,说明引入仅关注通道的注意力机制效果最好,再引入空间注意力机制反而会降低模型的检测性能;引入SE和CBAM注意力机制且插入在位置①时,模型的总体性能都有了一定提高,但提升效果明显低于同一注意力机制插入在另一位置时,此外,训练所得模型测试召回率相对原始模型甚至有所降低。综合上述数据和分析可知,本文所采用的注意力机制与插入位置的选择为最优组合。
为进一步验证本文所提网络对于提升网络检测性能的优胜性,表5展示了引入注意力机制后的各改进网络对于胰腺图像4个类别各自检测性能的影响。由表5可知,注意力机制的引入对于正常胰头和胰体尾的检测基本未产生影响,而改进后网络总体增强了对正常胰颈和癌变图像的检测性能,特别是SE_last和CBAM_last,其对于癌变的检测精准率和召回率都稳定保持在100%,消除了癌变诊断的误判和漏判可能,极大提升了模型应用的现实意义。此外,从显示数据可以看出,SE_last对于正常胰颈检测性能的提升效果也为4个网络最优,其综合性能仍排第一位。
表4 引入注意力机制后各网络性能比较
表5 网络单类别检测性能比较
由以上分析可知,注意力机制的引用对模型性能的影响与其选用模块类型与插入位置有关,而本文所提出的网络模型—引入SE注意力机制并插入在AlexNet网络特征提取结束后—对模型的提升效果最明显。实验模型对部分类别图像检测效果比较如图9所示。
图9 部分类别图像检测效果比较Fig.9 Comparison of detection effects of partial category images
利用SE-AlexNet网络模型搭建出可实现胰腺癌智能检测的可视化UI界面。界面可对患者信息、输入影像图片及检测结果进行显示,具体效果如图10所示。图10(a)和图10(b)分别为检测结果为癌变与正常的UI显示界面,疑似产生癌变图像将用红色背景显示结果,同时怀疑区域被框选突出,而正常图像结果则用绿色背景显示。
提出了专用于超声内镜返回胰腺图像癌变检测的智能算法,填补了医学领域在此方面的空白,为专业医务人员精准检查胰腺癌提供了参考。根据实验所得结果,可得到以下结论。
(1)本文算法使用Alexnet和SE注意力机制的组合模型,在现有数据集上取得了很好的分类检测效果,模型F1-score可达99.12%,模型准确率和召回率分别为99.56%和98.69%,为所有实验模型最优。
(2)SE-AlexNet在本文数据集上,对于癌变图像可达到稳定的准确检测,误检率和漏检率保持为零,可实现超声胰腺图像智能癌变检测。
(3)SE-AlexNet相对于其他学者所提网络而言,模型结构更简单,模型性能更优异,功能更全面,具有更好的现实适用性。
本文算法虽获得了一些成果,但仍存在以下改进之处。
(1)由于超声内镜操作的复杂性,采集图像质量容易受人员操作、设备参数等方面干扰,致使模型检测效果容易受到影响,后期应持续扩展数据集,增加样本多样性,训练网络以提升模型鲁棒性。
(2)本文算法仅对模型性能进行了内部实验评估,若想应用于实际操作环境中,后期应引入更具信服力的外部验证,确保模型检测结果的可靠性。
此外,后续研究可考虑扩充算法实现在检出病变的同时,模型能够有效分割出病变产生区域,并对病变程度进行评估,增强网络的实用功能,使得整个网络结构更加系统化。
图10 UI显示界面Fig.10 UI display interface