贾洪飞,刘 茜,王 瑜,肖洪兵,邢素霞
(北京工商大学人工智能学院,北京 100048)
阿尔茨海默症(Alzheimer’s Disease,AD)是一种最常见的脑部神经疾病,严重危害病人的生活和身体健康。截止到2019 年,国内AD 患者人数超过1 000 万,是目前全球患有AD 人数最多的国家[1]。AD 最先攻击处理学习和记忆的海马区[2],在病情初期,症状只是健忘、糊涂。随着病情的加重,病人的视觉空间下降,对待事物无法辨别也无法独自处理,记忆力严重下降,给患者和社会造成沉重负担,因此AD的早期诊断和及时治疗意义重大。近几年,随着计算机和神经影像技术的飞速发展,利用计算机与医学影像辅助医生进行前期AD 诊断与分析已成为主流趋势,目前的技术难点主要包括:医学影像中有效分类特征的提取,以及鲁棒性好、结构简单的分类模型的设计与构建。
功能磁共振成像(functional Magnetic Resonance Imaging,fMRI)[3-4]是一种无创的研究方法,通过测量大脑脑区中血氧水平依赖(Blood Oxygen Level Dependent,BOLD)信号,可以准确地知道被试者在某一时刻大脑氧活动量的大小,被广泛应用于AD 诊断研究中[5-8]。周文等[9]对fMRI 数据进行预处理和双样本T 检验,分析得到病灶区的位置,然后利用核主成分分析(Kernel Principal Component Analysis,KPCA)进行特征提取,结合Adaboost 算法对AD 进行分类。李长胜等[10]根据现有的自动解剖标记模板,把每个被试的大脑fMRI 图像分为116 个脑区,通过提取每个脑区的时间序列,构建全脑功能连接矩阵,然后使用KPCA 进行特征提取,最后用Adaboost 算法实现AD 分类。上述两种方法都使用KPCA 提取图像特征,虽然KPCA 能够提取图像的非线性特征,但无法提取图像的深层特征。本文对传统三维主成分分析网络(Three-Dimensional Principal Component Analysis Network,3DPCANet)进行了改进,在卷积层后添加最大池化层和激活函数层,增加网络深度,同时提取图像的深层特征和非线性特征,提高对AD 患者分类准确度。
卷积神经网络(Convolutional Neural Network,CNN)是一种包含卷积计算且具有深度结构的前馈神经网络,是深度学习算法之一,主要应用于图像特征的提取和分类。越来越多的研究人员将CNN 与医学影像相结合,辅助医生诊断疾病[11-14]。Jain 等[15]采用了一种基于迁移学习卷积神经网络的PFSECTL数学模型,在该模型中使用ImageNet 数据集预训练VGG-16,然后对AD、正常对照组(Normal Control,NC)和轻度认知障碍(Mild Cognitive Impairment,MCI)患者进行分类。Zhang 等[16]自定义了一种卷积神经网络,利用正电子发射型计算机断层显像(Positron Emission Computed Tomography,PET)和磁共振成像(Magnetic Resonance Imaging,MRI)双模态作为输入,得到的特征与简易精神状态量表(Mini-Mental State Examination,MMSE)和临床 痴呆量 表(Clinical Dementia Rating,CDR)获得的特征进行融合,将特征输入到CNN 中,实现对AD、NC 和MCI 分类。上述论文的研究内容,大多数都是对AD、NC 和MCI 进行分类,这种分类方式无法准确诊断出患者处在AD 的哪个发展阶段。因为在NC 与MCI 之间存在主观记忆衰退(Subjective Memory Decline,SMD)阶段,并且MCI 患者又分为早期轻度认知障碍(Early MCI,EMCI)和晚期轻度认知障碍(Late MCI,LMCI),由于相邻发展阶段的AD 患者大脑结构变化小,很难提取有效的分类特征,因此分类困难,而本文提出的模型可以对AD 患者进行更加细致的分类,能够更好地辅助医疗人员对患者疾病进行诊断。PCANet 是一种简单的CNN,由Chan 等[17]提出,该模型以传统的主成分分析(Principal Component Analysis,PCA)为基础,用非监督式特征提取的方法学习样本数据的深层次特征。李书通等[18]使用3DPCANet 完成MRI 图像特征提取,并通过提取的特征信息结合支持向量机(Support Vector Machines,SVM)分类器,实现对MRI 图像的自动分类诊断。3DPCANet 虽然能够提取图像的深度特征,但存在特征冗余现象,影响图像分类。针对这一问题,本文对传统3DPCANet 进行了改进:在每层卷积层后增加最大池化层,减少冗余特征;增加激活函数层,即线性整流函数(Rectified Linear Unit,ReLU),使模型能够学习非线性特征,并且总体加深模型深度,使其能够提取图像更深层次的特征。
虽然CNN 结合医学影像在AD 辅助诊断中表现了优异的性能,但CNN 大多数只能处理二维图像,对高维数据涉及较少,尤其是对于四维fMRI 数据。因此,本文将四维fMRI 数据预处理成三维数据,改进传统3DPCANet 模型,引入最大池化层和非线性激活函数,提取fMRI 数据特征,并利用SVM进行分类,实验结果验证了所提方法的有效性。
fMRI 数据是四维数据,目前,针对高维数据进行特征提取的CNN 较少,大多数适用于二维或三维图像。Ju 等[19]对fMRI 数据进行空间标准化、滤波,计算大脑(90 脑区)功能连接矩阵,将四维fMRI 数据转换为二维数据。Peraza 等[20]在研究路易体和阿尔茨海默病的区域功能同步性这一课题中,将fMRI 数据进行旋转、标准化和局部一致性(Regional Homogeneity,ReHo)[21]变换,将四维fMRI 数据转换为三维数据。本文将fMRI 数据转换为低频波动幅度(Amplitude of Low-Frequency Fluctuation,ALFF)[22]图像,然后进行后续操作。
本文实验中使用的fMRI 数据来自阿尔茨海默氏症神经成像组 织(Alzheimer’s Disease Neuroimaging Initiative,ADNI)。实验数据共有202 名被试者的fMRI 图像数据,其中包含AD 患者34 例,EMCI 患者57 例,LMCI 患者35 例,NC 对照组50 名,SMD 患者26 例。实验数据中每个被试者的基本信息如表1 所示。
表1 被试者信息统计分析Tab.1 Statistical analysis of subject information
fMRI 数据预处理使用基于Matlab 的DPABI(Data Processing&Analysis for Brain Imaging)[23]软件包实现。fMRI图像处理流程如下:剔除前10 个时间点,时间层校正,头动校正,空间标准化,去线性飘移等处理。fMRI 预处理后样本数据如图1 所示。
图1 fMRI预处理后的样本图像Fig.1 Sample images after fMRI preprocessing
本文将fMRI 数据转换成ALFF 图像,该图像是三维图像,方便使用CNN 进行特征提取。ALFF 图像值是计算低频段(0.01 Hz~0.08 Hz)下BOLD 信号功率谱的均方根,利用低频信号能量来表示大脑中不同脑区神经元的活动强弱,其中:频率在0.010 Hz~0.027 Hz 时,可以反映大脑皮层神经元的活动;频率在0.027 Hz~0.073 Hz 时,可以反映基底神经节的活动。这些区域都会受到AD 影响,所以本文选择ALFF进行图像转换。
ALFF 计算过程如下所示:
1)将每个体素去除线性漂移后的时间序列先经过0.01 Hz~0.08 Hz 带通滤波器;
2)将滤波结果进行快速傅里叶变化后得到功率谱;
3)将功率谱开方;
4)计算0.01 Hz~0.08 Hz 内的功率谱开方后的平均值,即为ALFF。
将ALFF 除以全脑所有体素的平均ALFF,可以得到均值低频波动振幅(mean ALFF,mALFF)。如果AD 患者大脑脑区结构发生改变,则认为各脑区中的神经元活动强弱与正常对照组相比也会发生改变。对预处理后的fMRI 数据进一步计算mALFF 值后的数据图像如图2 所示。
图2 mALFF样本图像Fig.2 mALFF sample images
图3 为本文方法全局流程图,PCANet 是利用PCA 学习通道卷积核,二进制哈希和分块直方图用于索引和池化的深度学习网络。李书通等[18]将PCANet 模型三维化,辅助诊断AD,本文对3DPCANet 进行改进,在模型卷积层后,引入最大池化层和激活函数层改进网络。假设有N幅大小为L×H×W的神经影像输入,改进的3DPCANet 卷积神经网络结构如图4 所示。
图3 本文方法全局流程Fig.3 Overall flowchart of the proposed method
图4 改进3DPCANet卷积神经网络结构Fig.4 Structure of improved 3DPCANet convolutional neural network
算法具体步骤如下。
1)第一步。
利用所有N幅原始训练图像和PCA 方法生成T1个滤波器,然后利用滤波器与原始训练图像分别进行卷积,则原始训练图像中的每一幅图像生成T1幅图像,即共生成N×T1幅图像。
模型输入大小为L×H×W的N幅mALFF 图像,在第j幅图像上的每个像素周围都截取k1×k2×k3大小的体素块,每幅图像截取体素块总数为B1,将取出来的体素块重新进行排序,变成一列,并进行标准化处理,使其均值为0,标准差为1,得 到其 中表 示第j幅训练图像中的第i块的列向量。按顺序将取出的块列向量排列成新的矩阵,如式(1)所示:
对所有N幅原始图像进行上述处理,处理好的N幅图像按顺序排列成新的矩阵X,得到如下矩阵。
对得到的矩阵X,利用PCA 方法进行降维处理,PCA 在一组标准正交滤波器中最小化重构误差为:
其中:符号“*”表示卷积,利用滤波器对所有N幅原始图像进行卷积,生成T1×N幅图像。
然后再对式(5)生成的图像进行最大池化层和非线性激活函数ReLU 处理,使用式(6)表示:
其中:符号“×”表示最大池化操作,P1表示第一步最大池化层,表示进行最大池化层和激活函数处理后的图像,对所有N幅图像进行式(6)操作。
2)第二步。
与第一步处理方法相似,N幅原始图像经过第一步生成T1×N幅图像,以其中第l幅图像的每个体素为中心,取k4×k5×k6大小的图像块,每幅图像截取体素块总数为B2,将取出来的体素块重新进行排序,变成一列,并进行标准化处理,使其均值为 0,标准差为 1,得到,其中表示原始图像中第j幅图像与第l个滤波器新生成的第l幅图像中的第b块的列向量。
将所有N×T1幅图像进行上述处理,处理好的N×T1幅图像按顺序排列成新的矩阵Y,得到如下矩阵:
对所得矩阵Y,进行PCA 降维处理,该等式的解为YYT的特征向量。PCA 滤波器的表达式为:
其中:qh(YYT)表示YYT的第h个特征向量为第二步生成的第h个滤波器。
将所得到的PCA 滤波器,第一步中式(7)生成的图像进行卷积,如式(10)表示:
其中:符号“*”表示卷积,利用第一步生成的N×T1中的每一幅图像,通过式(10)生成T2幅图像。
再对卷积后图像进行最大池化层和激活函数ReLU 处理,如式(11)所示:
其中:符号“×”表示最大池化操作,P2表示第二步中最大池化层,为最大池化层处理生成的图像,并利用式(11)对所有N×T1×T2幅图像进行最大池化层和激活函数操作。
3)第三步。
第一步生成的N×T1图像,对其中每一幅图像经过第二步生成的T2幅图像进行二进制哈希,如式(12)所示,合并成一幅图像,每幅图像中每个像素都是整数值,范围在[0,-1],即共生成N×T1幅图像。
其中:H(·)的功能是将图像中大于0 的元素变成1,小于等于0 的元素变成0。将T2幅图像中相同位置处的每一个二进制数值组成二进制编码向量,并将二进制位向量转变为十进制数值。这样将T2幅图像转换为十进制的一幅整数值图像。
对哈希处理后的所有N×T1幅图像进行取块处理,每幅图像截取体素块总数为B3,每个块像素大小为k7×k8×k9,并统计每个块的直方图,并将同一幅图像中取出块的直方图进行串联,式(13)表示原始N幅图像中的第j幅图像产生的第l幅图像,经过取块、直方图统计和串联处理后的一维特征向量fj,l。
Bhist(Oj,l)是 对Oj,l进行取 块、直方图 统计和 串联的 功能,将所有原始N幅图像中的第j幅图像产生的T1幅图像中的每一幅图像通过式(13)处理,并进行串联,得到一维特征向量Fj,如式(14)所示:
利用式(13)和式(14)对N幅原始图像中的每一幅图像对应产生的T1幅图像分别进行取块、直方图统计和串联操作,N幅原始图像中的每一幅图像均可得到一个一维的特征向量,用所得到的特征向量代表该原始图像,即最后生成N个特征向量,使用SVM 分类器进行分类。
实验中对数据集进行二分类,分为正类(positive)和负类(negative),实验中使用的分类评价指标有准确率(ACCuracy,ACC)、敏感度(SENsitivity,SEN)和特异 性(SPEcificity,SPE),计算式如式(15):
其中:TP表示真正类被试者数量,TN表示真负类被试者数量,FP表示假正类被试者数量,FN假负类被试者数量,实验中正类标签为1,负类标签为0。为了对所提模型进行综合评估,还使用了F1 值和受试者工作特征(Receiver Operating Characteristic,ROC)曲线下与坐标轴围成的面积(Area Under Curve,AUC)作为评测指标,其中F1 值是由精确度(Precision)和敏感度计算得到,如式(16)所示:
为了探讨ALFF 图像对AD 分类有效性以及本文改进3DPCANet 方法的鲁棒性,本文设计了一系列实验,并且使用5 折交叉验证,减少实验结果的偶然性。为了验证ALFF 图像转换的有效性,将本文方法与文献[18]方法进行对比;为了验证改进PCANet 的有效性,将本文方法与文献[24]方法进行了对比,实验结果如表2 所示。此外,本文对不同阶段的AD 患者也进行了分类实验,实验结果如表3 所示。
表2 不同方法实验结果对比 单位:%Tab.2 Comparison of experimental results of different methods unit:%
表3 AD不同阶段患者分类 单位:%Tab.3 Classification of patients with different stages of AD unit:%
从表2 的实验结果可以得出如下结论:
第一,本文所提的3DPCANet+SVM+ALFF 方法与文献[18]方法相比,NC vs.AD 准确率提高了3.83 个百分点。此外,MCI vs.NC、MCI vs.AD 的准确率和AUC 面积均有所提升,主要是因为ALFF 图像能够有效反映被试者各个脑区神经元活动强弱,是一种很好的特征表达方法。与文献[18]方法相比,本文使用较少的数据集,取得了更好的分类结果,可以证明ALFF 在AD 分类中的积极作用。
第二,对3DPCANet 模型进行改进后,AD 的分类性能显著提高,例如NC vs.EMCI,LMCI vs.AD 分类,准确率、F1 值、特异性等评测指标均有所提升,其中前者特异性提升12 个百分点,AUC 提升11.66 个百分点。
第三,文献[24]仅对AD 与NC 患者进行了分类,而本文对AD 其他阶段包括SMD、EMCI 和LMCI 也进行了分类,能够辅助医疗人员更加准确地诊断患者所处AD 的不同发展阶段,更具有实际意义。
第四,SMD 与LMCI,LMCI 与AD 的分类性能也有所改善,证明了本文算法对病变差异微弱的SMD 和MCI 患者分类也具有有效性,主要原因在于,由于在卷积层后加入最大池化层,可以有效减少特征图中冗余信息,防止过拟合,增加激活函数,使模型能够提取出非线性特征,以便易于区分不同发展阶段患者的病变差异,从而具有更好的分类性能。
由表3 中的数据可以看出,因为SMD 是AD 疾病的初始阶段,与AD 患者脑部结构具有很大差异,因此SMD 与AD,以及EMCI 与AD 的分类效果更好,准确率分别为92.42%和88.42%。NC vs.SMD、SMD vs.EMCI 都是相邻AD 发展阶段之间的分类,之间大脑结构差异小,不易区别,实验结果准确率分别 为89.50% 和88.43%,F1 值分别 为90.10% 和91.65%。EMCI 和LMCI 同属于MCI 阶段,医疗人员很难区分这一阶段患者,本文在EMCI 与LMCI 分类实验中也取得了良好的分类结果,F1 值为87.44%,AUC 为80.95%,准确率为84.21%。实验结果证明,改进后的3DPCANet 模型更适用于AD 分类。
本文提出了一种基于深度学习的阿尔茨海默症辅助诊断方法,使用预处理的fMRI 数据,利用mALFF 获得平均低频波动幅度图像,作为深度学习网络的输入。此外,对传统3DPCANet卷积层后增加最大池化层和激活函数层进行改进,使特征图中的冗余信息减少,防止过拟合,增加网络深度,最后使用线性SVM 分类器进行分类。在不同阶段AD vs.NC 对照组数据集中的实验结果显示,与传统的3DPCANet 模型相比,分类结果均有所提升,其中SMD vs.LMCI 准确率最高,达到91.80%,LMCI vs.AD 分类结果达到89.33%。可见,本文提出的方法能够有效分类阿尔茨海默症不同阶段患者,为阿尔茨海默症的辅助诊断与治疗提供理论依据和指导性建议。3DPCANet 模型特征提取任务与分类任务独立,无法联合优化,在未来的工作中,会对3DPCANet 模型进一步探索,将特征任务和分类任务融合在同一个模型中。