基于ResNet的sMCI与pMCI的三维图像识别
2021-04-29丘致榕
丘致榕
(福建师范大学,福建 福州 350001)
1 3D-ResNet网络建模
本文的基准网络为ResNet-34,卷积层基本都采用了3x3x3的过滤器并遵循了两个设计原则:(1)如果输出的特征图大小相同,那么每层的过滤器数目也相同。(2)如果特征图的大小减半,那么过滤器的数量翻倍,保持每层的时间复杂度不变。在网络的最后,经过全局池化层和全连接的softmax层。在基准网络的基础上,我们加入快捷连接就得到了对应的残差版本。快捷连接仍然采用恒等映射,对于维度增加的用零补齐。这种方法不会增加额外的参数,并采用1x1卷积来匹配尺寸。
ResNet-34是由若干残差块组成的网络,每个残差块的输入先经过卷积层,再通过与之匹配的归一化层,随后经过一个激活层,再经过一个同样的结构[1]。
2 网络优化
本文获取了pMCI 159例和sMCI 121例样本的核磁共振成像,每一例样本经过前联合—后联合校正(AC-PC)、强度非均匀校正(N3)、去头骨、配准到标准模板和重采样的预处理后得到去头骨图像、灰质图像、白质图像三个模态的图像数据。随机选取179例作为训练集样本,45例作为验证集样本,56例作为测试集样本[2]。对模型采取五折交叉验证的方式选取分类器的最优参数。以0.01步长作为阈值绘制模型的ROC曲线以评价模型效果,并分析模型的ACC(准确率),SEN(敏感度),SPE(特异性),AUC(ROC曲线下方面积)四个指标。
针对模型的过拟合问题,我们加入了L2正则化,优化前后模型的Loss变化趋势如图1所示。
图1 L2正则化加入前后的损失变化趋势
其中实线为加入L2正则化手段前的Loss趋势,而虚线为加入L2正则化手段后的Loss趋势,可以发现加入L2正则化后模型的Loss下降趋缓,可以迫使模型尽可能少地学习到与问题无关的特征信息,一定程度上缓解模型过拟合的问题。
基于不同的FNr阈值,我们针对单模态和多模态的数据集描绘了模型的ROC曲线(图2),实验结果发现,对于单模态的模型而言,虽然真阳率较低的时候模型的假阳率较多模态模型有一定的优势,但是在真阳率高于0.1时,多模态的模型假阳率明显低于单模态模型的假阳率[3]。多模态模型ROC曲线整体趋势更偏左上方,表明多模态的数据集对于降低模型误判起到了非常明显的作用。
在激活函数方面,我们分析了Sigmoid、Tanh、ReLU、LeakyReLU、ELU、GELU几个激活函数,并比较了其在本文模型上的实验结果(图3)。除Sigmoid激活函数发生梯度消失现象无法训练外,其余激活函数均取得了一定的效果。其中LeakyReLU激活函数可以取得最高的准确度(0.732)、最高的特异性(0.844)和最高的AUC值(0.717)。
LeakyReLU与原始的ReLU激活函数相比,虽然模型的敏感度略有下降(3个百分点),但模型的ACC、SPE、AUC指标继续上升,其中模型准确度上升了4个百分点左右,特异性上升了10个百分点,AUC指数上升了3个百分点。说明LeakyReLU激活函数在保留额外信息的同时,一定程度上带来了噪声因素,导致模型区分正常类别的能力略有下降,但是这些额外信息中更大程度上包含的是有利于模型区分异常样本的部分,并且较为明显地提高了模型区分异常样本的检测能力,相较而言是利大于弊的。
图2 单模态与多模态比较
图3 不同激活函数的比较
我们还比较了其他同类问题研究算法模型的效果。ROI方法将全脑sMRI数据划分为多个区域,提取区域尺度特征,使用SVM进行分类。VBM方法将所有sMRI数据空间归一化到Colin27模板,以体素方式提取局部灰质密度。然后,基于t检验进行统计学组比较,对高维体素级特征表示进行降维。最后,构造线性SVM分类器进行疾病诊断。在LBM方法中,首先从以每个预定义解剖标志为中心的局部图像斑块中提取形态学特征。这些斑块级特征表示进一步通过z-score归一化处理进行连接和处理,实现基于SVM的线性分类[4]。以上三种方法皆是对三维图像做了大量处理后再加以识别,而本文仅进行了简单的优化,可以发现本文的模型在ACC(准确率)、SEN(敏感度)、SPE(特异性)、AUC(ROC曲线下方面积)四个评价维度上均取得了最佳效果。
表1 同类型问题的模型比较
3 结论
本文采用三维ResNet作为主干网络,并对其原有结构做了修改与优化。模型准确度为0.905,验证集准确度为0.711,测试集准确度为0.732。实验结果表明:多模态的核磁共振图像对于阿尔茨海默病pMCI与sMCI分类任务较单模态数据有较大提升;同时,LeakyReLU的特殊函数设计以固定衰减率保留了负值区间的部分信息,较ReLU等其余激活函数更适合阿尔茨海默病核磁共振图像的分类任务;此外,L2正则惩罚项的引入对于模型训练起到了缓解过拟合的作用。最终训练模型准确度为0.732,基本满足医学辅助诊断任务需求。