许美凤,国雷达,宋盼盼,迟玉婷,杜少毅,耿松梅,张勇
(1.西安交通大学第二附属医院皮肤病院,710004,西安; 2.西安交通大学软件学院,710049,西安;3.西安交通大学人工智能与机器人研究所,710049,西安;4.西安交通大学第一附属医院胸外科,710061,西安)
皮肤癌的发病率非常高,是最常被诊断的癌症类型。基底细胞癌是最常见的皮肤癌,所以尽早发现基底细胞癌对预防和治疗很关键[1]。脂溢性角化病与基底细胞癌的临床症状和皮肤病理影像具有非常高的相似性。医生一般通过观察每个切片的皮肤病理影像特征来判断所属类别,由于医生具有个体差异性,一旦医生出现判别疲劳,准确率将会下降。在医疗条件不完善的情况下,基底细胞癌和脂溢性角化病的误诊率很高,这导致许多患者无法得到及时有效的治疗。随着机器学习技术的发展,可以使用机器学习方法对它们进行自动识别,以提高医生的效率,并解决医疗条件不足时病患的确诊和治疗。
随着数据量的扩增和计算能力的提高,深度学习已广泛用于医学影像诊断中,例如:使用3D全卷积网络分割器官和血管[2];使用无监督GANet对病理图像进行识别[3];使用目标检测方法在乳房X光照片上检测并识别恶性或者良性病变[4];使用生成对抗网络生成高质量的肝脏病变感兴趣区域,用于提高肝脏病变识别准确率[5]等。卷积神经网络(CNN)是深度前馈神经网络,已成功应用于图像识别研究。自Lecun等识别手写数字[6]以来,基于CNN的图像识别、检测、分割、配准和检索已成为热门话题。虽然CNN单模型如AlexNet[7]、PCANet[8]、VGG[9]和GoogLeNet[10]已经能够获得较准确的图像识别结果,但仍有很大的改进空间。
本文为了提高模型的识别准确性,首先在基底细胞癌和脂溢性角化数据集上训练多个单模型,以获得良好的识别结果。由于单个模型的准确性有限,可以使用多个模型集合来准确识别病理切片。其次,由于投票和线性回归等传统融合方法无法很好地处理噪声,因此提出了一种基于最大相关熵准则(MCC)的多模型融合方法,用于降低噪声干扰并提高模型的准确性[11-12]。最后,对基底细胞癌和脂溢性角化病进行了识别实验,结果表明,本文提出的模型相比单个模型具有很高的准确性和抗噪性。
图1 CNN方法的结构
随着硬件设备性能的提高和数据量的急速增加,深度学习方法已成为医学图像的主要处理方法,图1为CNN方法的结构。CNN通过卷积核对原始图像进行卷积以提取图像的特征,然后使用激活函数使神经网络具有非线性特征。池化层用于在缩小图像尺度的同时保留提取到的图像相关特征。全连接层能够将前面层的特征融合在一起,并最终产生预测输出。批量归一化方法[13]对每层的输入分布进行调整,从而加速神经网络计算并改善神经网络梯度。神经网络通过反向传播来学习每个参数的权重[14]。每层卷积核所学习的特征是不同的,前面的卷积层的卷积可以学习图像的局部特征,后面的卷积层能够学习图像的全局特征,因此在识别相似的图像时,提取局部特征的网络层更为重要[15]。在医学图像处理中,标注数据的数量通常是有限的,因此许多医学图像处理需要使用迁移学习[16]。迁移学习是一种可以将在现有任务上表现良好的模型迁移到类似的任务中并取得较好效果的方法[17]。因此,可以使用在其他大型数据集上的预训练模型作为初始模型的参数,然后将其在目标任务上进行迁移学习,以便模型可以快速收敛到更好的结果。
在CNN模型中,ResNet[18]、Xception[19]和DensNet[20]为主要的图像识别网络,其原理如下。随着神经网络的深度增加,梯度消失和梯度爆炸使得网络变得难以训练。ResNet使用深度残差网络,可以有效地解决此问题。作为Inception v3的改进,Xception引入了基于Inception v3的深度可分卷积,在不增加网络复杂度的同时提高了精度。DensNet是一种新的卷积网络架构,引入了相同尺度的特征之间的密集连接。DenseNet的优点是减轻了消失梯度,增强了特征的传播,促进了特征的重用,并大大减少了参数的数量。在一系列图像识别数据集上,DenseNet以较少的计算实现了更高的性能。
虽然CNN单模型取得了很大进展,但准确性仍然有限。为了解决这个问题,通常使用多模型融合方法。传统的多模型融合方法,例如基于投票和线性回归的方法等,虽然可以提高模型的准确性[21],但是还有可以改进的空间。投票法的缺点是准确率高的模型与准确率低的模型的权重相同,使得具有最高准确率的单个模型对集合模型的贡献变小。因此,融合模型方法的核心是如何学习权重以最大化准确率。图2显示了模型融合的框架,其中包括在数据集上训练DensNet、Xception和ResNet模型,然后学习每个单模型对最终模型的权重。
图2 基于DensNet、Xception和ResNet的融合模型框架
学习不同模型权重的经典方法是线性回归,通常使用均方误差(MSE)作为线性回归损失函数[22],MSE用于度量预测值与真实值之间差异。因此,基于已训练的3个单模型,使用MSE来学习每个模型的参数。
使用f(xi)来表示集合模型中的第i个样本预测值。xi=[pi1,pi2,pi3]T表示第i个样本在3个模型中的输出概率,其中pij=[pij1,pij2]T,j=1,2,3,表示第i个样本在第j个模型中分别属于基底细胞癌的概率和脂溢性角化病的概率。使用w=[w1,w2,w3]表示融合模型的权重,wj表示第j个模型的权重。因此,f(xi)可以表示为
w1pi1+w2pi2+w3pi3+b=
[w1,w2,w3][pi1,pi2,pi3]T+b=wxi+b
(1)
式中b是常数项。现假设有m个样本,可以通过最小化MSE来测量预测值f(xi)和第i个样本真实标签yi之间的差异,即
(2)
基于MSE的多模型融合方法学习每个模型的不同权重,可以结合每个单模型的优点,以最大化每个模型对最终效果的贡献,提高模型的灵敏度和准确性。预测值与真实值越接近,则最终的损失越小;反之,预测值与真实值之间的损失呈二次方增加。这意味着噪声和异常值对整体影响很大。在正常情况下,MSE适用于遵循正态分布的数据,但如果存在许多噪声,MSE则不是最优的相似性估计器。
众所周知,MSE并不能有效克服数据中的噪声,但基底细胞癌和脂溢性角化病的数据有很多噪声,各个单模型的判别结果也不稳定,所以基于MSE的方法效果不佳。因此,本文提出了一种基于MCC的多模型融合方法来解决这个问题。
相关熵与MSE非常类似,也适用于量化两个随机变量A和B之间的相似性,变量A和B的相关熵为
Vσ(A,B)=E[∂σ(A-B)]=
(3)
式中:∂σ(·)是核函数;σ是核宽度;E(·)代表数学期望。核宽度控制评估相似性的窗口,核函数将输入空间映射到更高维度的空间,1/2σ2称为核参数。
本文将相关熵准则应用于学习多个单模型的参数并减少噪声的影响。相关熵目标函数定义为
J2(w,b)=
(4)
相关熵准则用于量化预测值和真实值之间的相似性。当预测值等于真实值时,熵准则获得最大值。随着预测值和真实值之间的差异增加,熵的极限趋近于0。这意味着当预测值和真值之间存在较大差异时,该方法对噪声和异常值具有良好的抑制效果。
优化目标是通过最大化式(4)的值来学习参数w和b。梯度上升方法可迭代地求解目标函数的最大值。梯度上升方法意味着每次迭代都在函数的当前梯度的正方向上执行。wk-1、wk分别表示第(k-1)次和第k次权重更新的矩阵,bk-1和bk分别表示第(k-1)次和第k次更新的值。可对目标函数执行梯度上升方法,即
(5)
(6)
式中λ为学习速率。通过对熵准则进行梯度上升,经过多次迭代使目标函数接近最大值,以达到学习参数w、b的目的。
参数σ影响所提方法中的回归效果和抵抗噪声的能力。从式(4)可知:如果σ较大,则所提方法具有与基于MSE的融合方法类似的性能,这意味着它不能有效克服噪声;如果σ较小,则所提方法将能抵抗噪声并产生更好的结果。另外,方法的收敛速度也受σ的影响,σ越大,则收敛速度越快。
本节通过实验评估了本文方法在基底细胞癌和脂溢性角化病的病理切片上的识别表现。实验数据来自西安交通大学第二附属医院皮肤病院,基底细胞癌病理切片有1 100例,脂溢性角化病理切片有2 000例,通过旋转与部分裁剪来获得更多的训练数据。实验中将单模型与本文方法在识别精确率、召回率和准确率共3个方面进行比较,同时也将本文方法与传统的融合模型进行比较,以证明基于MCC的多模型融合方法的有效性。
使用在ImageNet上预训练的网络模型作为初始权重,将其用于训练CNN模型。ResNet的输入图像尺寸为224×224像素,Xception与DensNet的输入图像尺寸为299×299像素。使用Adam优化方法[23],初始学习率为0.01。学习率衰减策略为在10个迭代周期中验证集损失不再下降时,设置学习率为原来学习率的1/10。模型训练的迭代周期为300次。
表1给出了本文提出的基于MCC的融合方法与单模型DensNet、Xception和ResNet在基底细胞癌与脂溢性角化数据集上的效果,可以看出:在3个单模型中,DensNet具有最高的精度,ResNet精度和灵敏度最低,基于MCC的多模型融合方法的准确性和灵敏度高于单模型。图3显示了各个单模型和基于MCC的融合方法预测结果,图中:中间横线上方是基底细胞癌图像,横线下方是脂溢性角化图像,浅色框表示样本识别错误,深色框表示样本识别正确。 从图3可以看出:在基底细胞癌和脂溢性角化病数据集中,单模型ResNet、Xception、DensNet在给出的案例图片中都有错误识别结果,而提出的融合模型可以对案例中单模型识别错误的图像进行正确地识别,说明本文方法有效。
表1 本文MCC方法与单模型方法在基底细胞癌与脂溢性角化数据集上的识别效果比较
注:表中加粗数据为最优值。
a:原始病理图像;b:ResNet识别结果;c:Xception识别结果;d:DensNet识别结果;e:基于MCC的融合方法识别结果图3 ResNet、Xception、DensNet和基于MCC的融合方法分类结果比较
将所提方法与传统的多模型融合方法进行比较。由于每个单模型的输出可以是标签或相应的概率,所以将它们分别用作多模型融合方法的输入。
实验结果分析发现,一些由切片制作过程中产生的异常数据被错误识别,对于这些含有噪声的异常数据,单模型的判别结果误差较大。基于MCC的多模型可以减少噪声数据与相同类型数据之间的差异,从而减少噪声数据对结果的影响。表2是本文MCC方法与其他融合方法在基底细胞癌与脂溢性角化数据集上的识别效果比较。图4为多种模型上基底细胞癌与脂溢性角化的识别结果。图中:中间横线上方是基底细胞癌图像,横线下方是脂溢性角化图像;浅色框表示样本识别错误,深色框表示样本识别正确。
表2 本文MCC方法与其他融合方法在基底细胞癌与脂溢性角化数据集上的识别效果比较
注:表中加粗数据为最优值。
a:原始病理图像;b:准确率最高单模型DensNet识别结果;c:基于概率的投票法识别结果;d:基于概率的MSE方法识别结果;e:基于概率的MCC方法识别结果图4 基底细胞癌与脂溢性角化图像的识别结果
比较表1和表2可知,融合模型的准确率高于单模型。由表2可知:基于标签的投票法的结果优于基于概率的投票法的结果,因此如果使用投票法,则输入最好是标签;基于MCC的多模型融合方法的灵敏度和准确度优于其他集合模型,因此本文方法可以有效地克服噪声并获得更好的结果。
若基底细胞癌与脂溢性角化图像非常相似,则单模型识别概率接近0.5,即单模型对这类图像识别效果较差。融合模型可以在此类数据上获得更好的结果。这是由于单模型学到的特征不足以区分这种小差距,多模型融合方法可以通过学习权重来扩大间隙,从而获得可靠的结果。综上可知,基于MCC的多模型融合方法比其他融合方法效果更好。
本文针对皮肤病临床特征非常相似、不易区分且带有大量噪声等问题,建立了一种基于MCC的多CNN模型融合方法,并在皮肤病识别中获得了较高的识别率。本文得出的主要结论如下。
(1)建立了多深度学习模型融合方法。使用迁移学习方法训练获得各个单模型的最佳结果,并利用投票法、回归分析法等方法分别进行多个模型的融合,在构建的皮肤病数据集中的实验证明了多模型融合方法相比于单模型具有更高的准确率。
(2)提出了基于MCC的多深度学习模型融合方法。该方法能有效克服皮肤病理切片中噪声多的问题,学习多个单模型对最终结果的贡献程度。实验结果表明,该方法能够有效地提高模型识别的灵敏度和准确度,获得更好的泛化能力。