白 茹,余 慧,安建成,曹 锐
太原理工大学 软件学院,太原 030600
乳腺癌是全世界女性发病率和死亡率较高的癌症,堪称“女性杀手”。根据2018年世界卫生组织统计,每四位女性癌症新发病例中就有一位是乳腺肿瘤患者[1]。预计2020年底,美国有4.2万人死于乳腺癌,而中国高达6.6万人[2]。更紧迫的是,中国的乳腺肿瘤发病率和死亡率均呈现出逐年上升的趋势[3]。目前在一期诊断出乳腺癌的概率不到20%,一旦查出,多数已经转移或扩散[4]。由此可见,早期准确的诊断和治疗是影响乳腺癌疗效的关键性因素,可将乳腺癌患者的生存率从30%提高到50%[5]。乳腺X线摄影技术因简便易行、分辨率高、射线剂量低、不会危害女性健康等特点,是目前普查早期发现和诊断乳腺肿瘤的首选方法[6]。乳腺影像上的异常主要有2种类型:肿块和钙化,本文的研究内容为肿块分类。在临床实践中,放射科医师可将肿块组织分为良性或恶性。由于肿块与周围组织的对比度低且医生的专业知识水平不一,导致相当一部分病例可能被误诊。而计算机辅助诊断(computer aided diagnosis,CAD)系统可以避免人为主观因素为医生提供第二意见,进一步提高诊断水平和速度,降低错误率[7]。与传统机器学习方法相比,卷积神经网络(convolutional neural network,CNN)具有优秀的特征自动提取能力,而且层数越多,所提取特征就越丰富,越具有语义信息。因此,本文主要对基于CNN的乳腺肿块分类展开研究,提高分类准确度。
近年来,深度学习技术在图像处理领域[8-10]取得了显著成果,而且在图像领域应用最为成功的是CNN,CNN在乳腺癌分类方面的表现几乎与人类专家相当,甚至更好。Levy等[11]为网络提供两种乳腺肿块上下文信息:一是包含肿块周围50像素固定填充的区域,二是使用比例填充提取肿块边界框大小两倍的区域。使用AlexNet网络对两种不同方法提取的乳腺肿块在DDSM数据集上进行训练和测试,分别达到了64%和71%的准确率。孙利雷等[12]分别使用大尺度卷积核和小尺度卷积核提取乳腺影像特征图,在DDSM数据集上进行训练,准确率达到71.29%,表明了多尺度卷积提取到的特征更丰富。侯霄雄等[13]使用通过迁移学习再训练后的AlexNet模型在MIAS数据集上对比不同分类器对乳腺肿块分类效果的影响,结果表明深度学习模型的结构越深,其特征提取效果越好,且深度相同时Softmax分类效果更好,准确率达到85%。沿着加深CNN网络层数和使用多尺度卷积核来提高分类精度的思想,Vang等[14]提出了基于InceptionV3模型的乳腺病理图像分类方法,通过包含多数投票、梯度提升机和逻辑回归的集成融合框架来预测,准确率达到87.5%。Abdel等[15]提出了使用跳跃连接的CNN模型ResNet50来分类预分割的乳腺肿块,有效克服了梯度消失等问题,在DDSM数据集上进行测试,准确率为85.7%。Ertosun等[16]在网络输入上进行改进,将整个乳房X光检查图像作为输入,不进行图像分割等预处理步骤,使用Alexnet、VGG16、GooleNet在DDSM数据集上获得了84%、82%、85%的准确率。Huang等[17]首次引入密集连接卷积网络DenseNet,它的每一层都直接连接到它前面的每一层,该网络加强了特征传播,鼓励特征重用,大大减少了参数的数量。Li等[18]对DenseNet神经网络模型改进,用Inception替代了DenseNet神经网络模型的第一卷积层,提高了模型计算速度和效率。Das等[19]引入了一个新的池化层,帮助图像聚合更多的信息特征,而不需要patch之间的重叠或覆盖,有助于学习局部特征的同时,学习全局的分类边界。
从上述的研究发现,基于深度学习的乳腺肿块良恶性研究已能对空间上和特征维度上的信息进行聚合,但是没有考虑从特征通道层面着手。同时模型越深,CNN重用特征减少,参数数量越多,而且在有标注的乳腺图像有限的情况下,复杂的网络模型在训练时难以优化。因此,基于CNN的乳腺图像自动分类仍然是一个非常具有挑战性的问题。
为此,本文在深入研究不同CNN的基础上,借鉴DenseNet和SENet的设计思想,提出了一种融合两者优势的CNN模型DSAMNet。DSAMNet不仅可以增强特征重用,融合高中低层特征信息,而且能实现特征提取过程中的重标定。此外,对于空间信息的聚合,本文改进了SE模块,设计了一种新的AM池化函数来整合特征图的空间信息,增强特征表达能力。
DenseNet是一种密集连接的卷积神经网络,如图1所示。该网络使用级联方式,每一层特征接受来自前几层的输入,并将自己的特征映射传递到后续的所有层,来实现特征重用,这可以充分结合图像上下文信息,易于复杂的图像分类,提升模型效率。因此,将这种网络模型应用于乳腺图像分类具有良好的前景。DenseNet具有如下优点:缓解梯度消失问题;加强特征传播;旁路加强特征重用。但也存在缺点:它的核心计算是卷积算子,是对一个局部区域进行特征融合,没有考虑特征通道之间的关系。
图1 DenseNet结构图Fig.1 Structure of DenseNet
SENet[20]是由Momenta研发工程师Hu等提出的CNN结构。它的核心思想在于通过学习的方式来自动获取每个特征通道的重要程度,然后依照这个重要程度去提升有用的特征并抑制对当前任务用处不大的特征。SENet由一系列SE模块组成,一个SE模块的步骤包括压缩(Squeeze)、激励(Excitation)和重标定(Reweight),如图2所示。压缩是顺着空间维度将每个二维的特征通道变成一个实数,这个实数某种程度上具有全局感受野。激励是通过对每个通道进行自选学习来控制其重要性。重标定对通道的重要性大小进行归一化,并通过乘法逐通道加权到先前的特征上。研究发现SE模块可以在不引入新的空间维度情况下显式地建模特征通道之间的相互依赖关系,嵌入到其他深层模型中提升网络性能。
图2 SE模块结构图Fig.2 Structure of SE block
本文提出的DSAMNet网络结构是在DenseNet的基础上嵌入SE模块,并对SE模块进行了改进,不仅加强了深层信息传递,而且实现特征通道的重标定,旨在对乳腺肿块的良恶性进行分类。融合后的模型如图3所示,该模型主要由三个密集块(SE-D block)、两个过渡层(SE-T layer)组成。
图3 DSAMNet模型结构Fig.3 Architecture of DSAMNet
密集块由SE模块和n(n=1,6,12,18)个复合函数密集连接组成,其中每个复合函数是四个连续操作:批处理归一化(BN)[21]、修正线性单元(ReLU)[22]、3×3卷积层(Conv)和dropout,如图4所示。每个密集块都包含相同数量的卷积层,每个密集块的卷积个数为(n-4)/3。
图4 SE-D模块结构图Fig.4 Structure of SE-D block
过渡层设置在两个密集块之间,是由BN、ReLU、1×1 Conv、(Pool)、dropout和SE模块组成,如图5所示。
图5 SE-T层结构图Fig.5 Structure of SE-T layer
密集块和过渡层内SE模块由Pool、全连接层(FC)、ReLU、Sigmoid和Scale组成。SE模块通过自动学习的方式来为特征通道的重要程度进行划分,然后依照这个重要程度有选择地增强乳腺肿块部分的特征通道,并抑制对乳腺肿块分类无用的特征通道,从而让提取的特征指向性更强。
DenseNet、SE-DenseNet和DSAMNet网络结构配置如表1所示。由表1可以看出融合后的SE-DenseNet模型是在DenseNet的基础上嵌入SE模块,并且删除第一个卷积层后最大池化层,避免了低级特征丢失;去掉第一个过渡层中的平均池化操作,只保留1×1卷积,以保留全局信息。
表1 DenseNet、SE-DenseNet和DSAMNet模型结构Table 1 Architecture of DenseNet,SE-DenseNet and DSAMNet model
本文提出的DSAMNet模型在SE-DenseNet模型基础上用3个3×3的卷积替换第一个7×7的卷积层,增加了卷积过程中的非线性能力同时降低了参数量。对SE模块进行了改进,如图6所示,用AM池化替代了原来的全局平均池化,以提取更复杂的肿块特征。最后一层是二分类器,将提取的特征映射到对应乳腺肿块类别的概率值,其配置如表1所示。
图6 改进后的SE模块结构图Fig.6 Structure of improved SE block
SE模块包括三个步骤,即压缩操作、激励操作和重标定操作,作用是可以自动学习到不同通道特征的重要程度,更加关注乳腺肿块的通道特征,而抑制那些不重要的通道特征。压缩操作是为了利用全局信息建立通道之间的依赖关系,解决较低层次上卷积层感受野比较小,在局部空间内进行操作的问题,但是还存在只能提取背景信息的问题。而全局平均池化可以提取乳腺肿块图像的背景信息,全局最大池化可以提取乳腺肿块图像的纹理信息。因此,本文对原SE模块的压缩操作步骤进行改进,如图6所示,设计了AM池化函数,采用全局平均池化和全局最大池化的加权操作对U(C个H×W特征图)中每个特征图进行压缩使C个特征图最后变成1×1×C的实数数列Z,使其具有全局的感受野,而且网络低层也能利用全局信息。因此改进后的SE模块不仅可以提取乳腺肿块图像的背景信息,而且还提取了乳腺肿块图像的纹理信息。这样可以提取更复杂的乳腺特征,从而更准确定位乳腺肿块部分。
AM池化函数如公式(1)所示:
式中,Z c为Z的第c个特征通道,u c∈R(H×W)为第c个通道的特征图,F sq(·)是对输出卷积做压缩操作。
激励操作(FC-ReLU-FC-Sigmoid)通过参数来为每个特征通道生成权重,其中参数被学习用来显式地建模特征通道之间的依赖性,即利用AM池化聚集的信息Z c学习C中每个通道的特征权值。第一个FC是把C个通道压缩成C/r个通道来减少模型所需的参数和计算时间。第二个FC恢复回C个通道,使模型更加非线性,更好地适应通道之间的复杂关系,r是指压缩的比例,本文中r=16。ReLU降低了梯度消失的概率,Sigmoid使C中每个通道的特征权值在0~1之间。激励操作如公式(2)所示:
其中,Fex(·)是激励过程,σ(·)表示Sigmoid激活函数,δ(·)表示ReLU激活函数。分别是两个全连接层的权值矩阵。
重标定操作是将上步sigmoid输出值乘到U的C通道上,作为下一级的输入数据,完成在通道维度上的对原始特征的重标定。具体如公式(3)所示:
其中,是͂中第c个特征通道的特征图,s c是第c个通道特征权值向量中的一个标量值,Fscale(·)是重标定过程。
本文根据SE模块嵌入DenseNet的不同位置建立了6种不同的网络模型:SE-DenseNet-A、SE-DenseNet-B、SE-DenseNet-C、DSAMNet-A、DSAMNet-B、DSAMNet-C,如图7所示。其中,SE-DenseNet-A和DSAMNet-A是SE模块嵌入到密集块内、SE-DenseNet-B和DSAMNet-B是SE模块嵌入到过渡层内、SE-DenseNet-C和DSAMNet-C是SE模块嵌入到密集块和过渡层内。DSAMNet-A、DSAMNet-B、DSAMNet-C嵌入的是改进的SE模块。
图7 SE-DenseNet和DSAMNet模型结构图Fig.7 Architecture of SE-DenseNet and DSAMNet
3.1.1 数据集
DDSM[23](digital database for screening mammography)是乳腺疾病分类公开获取且研究广泛的乳腺数据集,本文使用该数据集的精简数据集CBIS-DDSM[24](curated breast imaging subset of DDSM)。DDSM是由美国南佛罗里达州大学与几家合作单位联合创建的,包含2 620个乳腺图像病例,每个病例的左右乳腺各两个不同角度拍摄,即头足位和斜侧位图像,如图8所示。
图8 CBIS-DDSM数据集中乳腺图像Fig.8 Mammography CBIS-DDSM dataset
其中选用乳腺肿块病例1 696个用于本实验,每幅乳腺图像都标记出了乳腺肿块的位置以及肿块的良性恶性类型信息,该数据集已经划分好训练集和测试集,训练集1 318张,测试集378张,其中良性乳腺图像分别为681张和231张。
3.1.2 预处理
本文在CBIS-DDSM数据库基础上进行了数据预处理,包括归一化和数据增强,增加网络学习的特征多样性,提升模型分类准确度。数据预处理如下:
(1)首先在提供的掩码图像中找出乳腺肿块的位置,然后在完整乳腺图像的对应位置找出原图像的感兴趣区域(region of interest,ROI),最后剪裁出大小为299×299的ROI区域,如图9所示。
图9 CBIS-DDSM数据集乳腺图像Fig.9 Mammography CBIS-DDSM dataset
(2)对ROI图像归一化,主要目的是减少光不均匀对乳腺图像的干扰,加快收敛速度,本文将乳腺图像归一化于0~1之间。
(3)对ROI图像进行一系列随机变换,即旋转(90°、180°、270°)、翻转、平移、剪切、缩放。数据增强后既增加了样本数量,也避免了过拟合问题。增强后的训练集、验证集、测试集的图像数量如表2所示。
表2 实验数据集分布情况Table 2 Distribution of experimental dataset
采用最常用的评价指标对医学图像分类模型性能评估,包括:准确度(Acc)、F1-score、ROC(receiver operating characteristic,ROC)和AUC(area under the curve,AUC),定义如下:
其中,T P是真阳性,TN是真阴性,FP是假阳性,FN是假阴性。F1-score是分类模型精确率和召回率的一种调和平均。ROC是以TPR(true positive rate,TPR)为纵坐标,FPR(false positive rate,FPR)为横坐标绘制二维平面上的图形来评估分类性能,AUC值是指ROC曲线在[0,1]区间和X轴上所围合的面积。计算机辅助诊断系统的整体性能与AUC值成正比,即AUC值越大,其性能越好。
本研究使用基于CentOs 7.8系统的工作站,运行在Intel®Xeon®Silver 4210 CPU 2.20 GHz上,拥有125 GB内存和NVidia GeForce RTX 2080Ti 10GiB GPU,使用TensorFlow和Keras等框架构建文中所用的网络模型。在模型的训练过程中,采用交叉熵损失函数作为训练的损失函数,批大小设置为8,模型初始学习率设为0.001,当损失不再持续减少时,将学习率乘以一个因子,将因子设为0.1,以避免错过最佳点,尽可能得到更好的模型。除此之外,dropout设置为0.2来避免过拟合,优化器采用SGD优化器。
为了分析融合后模型的性能,本文将DSAMNet、SE-DenseNet与DenseNet模型在复合函数n=6时(深度为22)进行比较评估,测试结果如表3所示。可以看出,SE-DenseNet变种的三个模型的分类性能都优于DenseNet模型,比DenseNet模型准确率提升了0.037~0.101,其中SE-DenseNet-B模型准确率最高,达到0.847,测试时间增加了4 s,参数量增加了0.40%。这证实了SE模块嵌入DenseNet能够提高参数效率,对分类性能的提升是有优势的,但代价是训练时间和内存的增加。这些代价相对较小,可以忽略不记。而且从表3可知,SE-DenseNet-A的准确率0.783和SE-DenseNet-C的准确率0.796都低于SE-DenseNet-B的准确率0.847。究其原因,密集块内嵌入SE块在提取新特征的过程中造成过拟合。而在过渡层内嵌入SE块在提取新特征后可以增强有用的特征,削弱非本质特征,这使得SE-DenseNet-B的分类性能比SE-DenseNet-A和SEDenseNet-C的优越,而SE-DenseNet-C也在过渡层嵌入SE块,一定程度上减少了过拟合,因此,SE-DenseNet-C准确率比SE-DenseNet-A的略高。由以上分析可得,融合后的模型对乳腺肿块的分类效果更好。同样,由表3可知,DSAMNet变种的三个模型的准确率都高于对应的SE-DenseNet变种的三个模型,准确率增加了0.5%~0.8%,参数量增加了5.5%~5.66%,测试时间的增加可以忽略不记,验证了改进SE块中AM池化函数是有效的,它可以提取到更多的乳腺图像特征,提高了参数利用率,从而提高分类准确率。其中,DSAMNet-B的Acc、F1-score、AUC三个分类指标最高,分别为0.854、0.872、0.899。
本文还将DSAMNet变种的三个模型与第一个卷积层替换为3个3×3卷积层的模型在深度为22时进行比较,验证将第一个7×7卷积层替换为3个3×3卷积层后模型的性能,结果如图10所示。
图10 DSAMNet模型分类性能对比Fig.10 Classification performance comparison of DSAMNet model
由图10可知DSAMNet(3×3×3)变种的三个模型的分类性能都高于对应的DSAMNet(7×7)变种的三个模型,模型准确率提高了0.4%~0.7%,证实具有小滤波器的模型优于具有较大滤波器的模型。究其原因,用3个3×3的卷积替换7×7的卷积,增加了卷积过程中的非线性,减少了过拟合,因此DSAMNet(3×3×3)模型的分类性能更优。
本文还对比不同深度下DSAMNet模型的分类效果,通过改变复合函数(n=1,6,12,18)的数量来改变网络的深度(7,22,40,58),实验结果如图11所示。
图11 不同深度DSAMNet模型准确率对比图Fig.11 Comparison of accuracy of DSAMNet model with different depths
研究发现,DSAMNet模型在深度为7和58时准确率略差。当模型深度为7时,相当于传统的卷积神经网络,没有进行密集连接,特征重用率低,导致模型的分类性能不高,说明了密集连接起到了加强特征重用,提升梯度的反向传播的作用。当模型深度为58时,由于模型的深度增大,训练参数增多,导致了过拟合,使得模型的分类效果略差。而当模型深度为22和40时,总体分类性能呈上升趋势。说明随着深度的增加,网络提取到深层的语义信息越丰富,分类结果越好。其中,模型深度为40时取得的分类效果最好,使用ROC和AUC度量在此深度下模型的性能,DSAMNet-A、DSAMNet-B、DSAMNet-C模型的ROC曲线如图12所示。从曲线下的面积来看,模型DSAMNet-B的面积最大为0.929,取得了最先进的结果,说明模型DSAMNet-B的稳定性和分类性能最好。
图12 DSAMNet模型ROC曲线对比图Fig.12 Accuracy classification performance comparison of model with different layers
为了验证本文所提出算法得收敛性质,本文对比了DSAMNet-B、SE-DenseNet-B和DenseNet模型训练过程,如图13所示。可以看出,DSAMNet-B、SE-DenseNet-B和DenseNet模型在迭代过程中准确率呈现上升趋势,在30代前DSAMNet-B和SE-DenseNet-B模型比DenseNet模型收敛的更快,在55代时学习率变小,准确率变大,从60代开始趋于稳定值,说明所有模型都能够收敛。并且由图13和相关数据可算出DenseNet、DSAMNet-B和SE-DenseNet-B模型的收敛精度为0.61%、0.52%和0.26%(85代之后),说明所提出模型的收敛精度更高。
图13 DSAMNet-B、SE-DenseNet-B、DenseNet的准确率Fig.13 Accuracy of DSAMNet-B、SE-DenseNet-B and DenseNet model
将本文提出的模型与当前乳腺肿块影像分类的模型进行比较,在DDSM数据集上训练和测试,对准确率进行了比较,对比结果如表4所示。
表4 模型在DDSM数据集上结果对比Table 4 Comparison of model results on DDSM dataset
在本文中,为了解决乳腺图像良恶性分类问题,本文提出了一种新的混合神经网络DSAMNet。首先,针对数据集样本不足的问题,通过数据增强方法,有效地避免了深度学习中由于样本不足而导致的过拟合问题。其次,将SENet模块嵌入DenseNet,采用特征重校准策略,通过学习自动获取每个特征通道的重要性,实现特征通道的动态学习,当模型SE-DenseNet-B的深度为22时准确率比模型DenseNet提高了10.8%,证明SE层有助于提高模型性能。最后,对混合神经网络模型进行了改进,用3个3×3的卷积替换了第一个卷积层7×7的卷积,AM池化函数替代了SE模块中的全局平均池化函数,模型DSAMNet-C的准确率比模型SE-DenseNet-C提高了0.8%,证实了改进后的模型效果更好。通过在CBIS-DDSM数据集上进行训练与测试,实验结果表明,本文提出的DSAMNet在分类性能上优于DenseNet,不仅提高了乳房X线摄影图像的良恶性分类性能,也帮助放射科医师提供客观、准确的诊断结果,减少错误率,具有重要的临床应用价值和研究意义。