基于CNN-Attention 算法的精神分裂症分类

2022-05-24 11:43姚宁张淼陈宏涛
电子设计工程 2022年10期
关键词:脑区个数静态

姚宁,张淼,陈宏涛

(太原理工大学信息与计算机学院,山西 晋中 030600)

精神分裂症(Schizophrenia,SZ)主要症状包括患者情感、思维、行为、感觉、精神活动等多方面的异常,且目前尚不明确其病因[1]。静息态功能磁共振成像(resting-state functional Magnetic Resonance Image,rs-fMRI)因其时空分辨率高且不需要被试完成复杂任务已经被广泛用于精神疾病的研究[2]。利用rsfMRI 构建脑区之间的功能连接矩阵,可以分析正常被试与SZ 患者大脑功能的差异,进而为医生诊断SZ患者提供帮助。

大部分fMRI 分类研究使用传统机器学习算法,如支持向量机(Support Vector Machine,SVM)和随机森林(Random Forest,RF)等[3]。虽然传统机器学习方法已经在fMRI 分类任务中表现出较好的性能,但其无法提取到深层特征,分类精度有待进一步提升。近年来已有学者将卷积神经网络(Convolutional Neural Network,CNN)等深度学习模型用于fMRI 分类研究中,并获得了较高的分类精度[4]。然而以上研究大都只考虑到了脑区之间的静态功能连接(static Function Connection,SFC),脑区之间的连接还表现出了动态的特性。通过构建脑区之间的动态功能连接(Dynamic Function Connection,dFC),并与静态功能连接结合使用可以更加全面地描述脑区之间的关系。

为了充分利用静态和动态功能连接,文中提出了CNN-Attention 深度学习模型。该模型将两种功能连接作为特征输入,利用CNN 网络分别提取二者的特征,然后将特征合并后传入全连接层分类。其中,CNN-Attention 模型在CNN 与全连接层之间加入了注意力机制,为提取后的特征进行加权,提高模型分类的性能。在对121 位精神分裂症患者和195 位正常被试进行分类时,所提出的深度学习模型有较高的分类精度,且用实验证明,结合使用静态和动态功能连接能有效地提高模型的分类准确率。

1 材料和方法

1.1 静态功能连接

目前构建脑网络最常用的方法是皮尔逊相关法[5](Pearson’s Correlation,PC),通过计算两个脑区时间序列间的相关系数来构建相关矩阵,即静态功能连接矩阵。

两个脑区间的皮尔逊相关系数表示为:

其中,xi、xj表示两个脑区时间序列,Pij为时间序列间的皮尔逊相关系数,分别为xi、xj的平均值。

1.2 动态功能连接

使用滑动窗相关法(Sliding Window Correlation,SWC)计算脑区之间的动态功能连接,所求得的动态功能连接矩阵为一系列随时间变化的相关系数矩阵,各个时间窗内的矩阵代表了各脑区之间的相关性随时间变化的情况[6]。用基于加权皮尔逊相关的滑动时间窗法提取脑区间的动态功能连接。加权皮尔逊相关将窗口之外的时间序列数据置为零,只保留窗口内的数据[7],任意两个脑区时间序列x和y的加权皮尔逊相关可以表示为:

wi为权重向量,通过设置不同的wi来构建不同的窗函数,该文使用锥形窗来提取脑区间的动态功能连接,锥形窗与矩形窗的不同之处在于其为靠近窗口中心的时间点施加更大的权重[8]。wi表示为:

其中,rect 为矩形窗函数,其将时间窗外的数据置为0,时间窗内的数据置为1,Gauss(σ) 为高斯窗函数,σ=mTR (1 TR 为2 s)。通过将矩形窗与高斯窗相卷积就可以得到锥形窗。

2 数据与实验

2.1 数据集和预处理

该文使用的数据集1 来自于由美国国立卫生研究院资助,由脑网络研究机构(the Mind Research Network)和新墨西哥大学收集并公开的COBRE 数据集,可通过网站(http://fcon_1000.projects.nitrc.org/indi/retro/cobre.html)访问和下载。COBRE 数据集中包含有71 位精神分裂症患者和74 位健康被试。数据集2 为由加州大学洛杉矶分校发布的UCLA 数据集(https://openfmri.org/),该数据集一共包含50 位精神分裂症患者和121 位正常被试。该文将两个数据集合并作为分类模型输入。所有被试统计学资料见表1。

表1 人口统计学信息

所有SZ 患者均由医师按美国精神疾病诊断与统计手册第四版(Diagnostic and Statistical Manual of Mental Disorders,DSM-IV)诊断标准确诊,同时排除可由DSM-IV 确诊的患有其他精神疾病的被试以及过去12 个月内有滥用药物史、有5 min 以上意识丧失的严重头部外伤史和智力低下的被试。健康被试同样也通过DSM-IV 检测,保证健康被试不患有任何精神疾病,同时保证没有滥用药物和头部创伤

原始的fMRI 图像中人脑的位置和大小不相同,且含有较多噪声。文中使用SPM12(https://www.fil.ion.ucl.ac.uk/spm)以及DPARSF(http://www.rfmri.org/dpabi)对数据集进行预处理。为保持所有被试扫描时间相同且消除刚开始扫描时梯度磁场不稳定造成的误差,COBRE 数据集去除所有被试的前10 个时间点,UCLA 数据集去除前12 个时间点,对所有被试进行时间层校正、头动校正,图像配准至蒙特利尔神经研究所标准空间,重采样体素为3 mm×3 mm×3 mm,回归干扰信号和全局信号,带通滤波(0.01~0.1 Hz),使用自动解剖标记(Automated Anatomical Labeling,AAL)图谱将脑部划分为116 个脑区。

2.2 功能连接矩阵

静态功能连接矩阵由脑区间的皮尔逊相关表示,可由公式(1)求取。动态功能连接由加权皮尔逊相关求得,其中高斯窗的方差设置为4 TR,窗口大小设置为20 TR。经实验证明,窗口宽度在15~30 TR之间时可以准确提取rs-fMRI 中的动态特性,若窗口过大会导致无法捕捉到有价值的功能连接变化,而窗口过小又会引入本不存在的动态特性[9]。窗口每次移动1 TR。提取静态和动态功能连接流程如图1 所示。

图1 提取静态和动态功能连接流程图

2.3 CNN-Attention模型

该文提出了一种结合使用静态和动态功能连接的深度学习模型CNN-Attention。对于功能连接矩阵,该文没有使用广泛应用于图像识别中的(3×3)、(5×5)卷积核,而是利用一个卷积核为(116×1)和一个卷积核为(1×116)的CNN 层来对连接矩阵做特征提取。功能连接矩阵与图像相差较大,图像中类型相近的特征往往分布在几个相邻的像素之间,而功能连接中的特征与每个提取的脑区有关。功能连接矩阵中每一行/列代表一个脑区与其他脑区之间的相关性,这显然与图像不同,故(3×3)、(5×5)卷积核不适用于功能连接矩阵。而(1×n)和(n×1)卷积核(n为脑区的数量)可以为每个脑区提取与之相关的最具鉴别力的特征,CNN 层将不同的权重赋给每个连接值,权重大的连接值代表最具区分能力的特征。

CNN-Attention 模型没有采用文献[12]提出的将两种特征矩阵组合为(116×116×2)的矩阵作为CNN网络的输入,组合两种特征会使提取到的深层特征同时带有静态和动态信息,虽然每个深层特征拥有更多的信息量,但也会导致注意力网络无法关注到那些在静态功能连接中不具鉴别力但在动态功能连接中区别较大(或相反)的深层特征。该文利用卷积层分别对静态和动态功能连接进行特征提取,之后将降维后的深层特征串联作为注意力网络的输入,使注意力网络表现出更好的效果。

CNN 网络中,第一层滤波器个数为64 个,第二层为128 个。对于动态功能连接,首先按窗口对动态功能连接矩阵求平均,将其变为(116×116×1)的矩阵,这样可以减少特征数量,提高学习速度,之后的特征提取与静态功能连接相同。为提高训练精度和防止过拟合,在每个CNN 层后都加有批量标准化(Batch Normalization,BN)层并在第二个CNN 层后加入Dropout 层(丢弃率设置为25%),激活函数使用LeakyReLU(alpha=0.01)。

近年来,注意力机制被广泛应用于深度学习模型中[10]。注意力机制可以使模型在众多无关信息中分辨出最具鉴别力的特征,进一步提高分类模型的分类精度。通过CNN网络特征提取后,模型将两个输入为(116×116×1)的矩阵降维为两个(1×1×128)的矩阵。将这两组特征串联起来作为注意力网络的输入。

注意力网络包括两层全连接层,第一个全连接层神经元的个数是输入特征数的1/4,为64 个,激活函数为LeakyReLU,第二个全连接层神经元个数与输入特征数相同为256 个。这样一方面减少了所要学习的参数个数(若输入特征直接与第二个全连接层相连,需要学习的参数个数为256×256=65 536,在不考虑偏差的情况下,加入第一个全连接层后需要学习的参数个数为256×64+64×256=32 768,是之前的1/2),同时加入LeakyReLU 激活函数增加了模型的非线性分类能力。第二层的激活函数为Sigmoid 函数,输出(0,1)之间归一化的权重,最后将所得到的权重与输入的256 个特征相乘获得加权后的特征。

将加权后的特征输入神经元个数为96,2 的全连接层,前一层激活函数为LeakyReLU,最后一层激活函数为Softmax。模型结构如图2 所示。

图2 CNN-Attention结构示意图

在本实验中,使用自适应矩估计(Adaptive moment estimation,Adam)优化器来最小化真实标签和预测标签之间的损失值,其学习率设置为0.000 1。损失函数为交叉熵损失,其公式为:

其中,n为样本数量,yi为样本真实标签,为模型预测的标签,L为损失值。

训练时,每批次选取32 个被试,一共训练150 个epoch。由于样本数据有限,该文提出的深度学习模型可能存在过拟合的问题,为了减少这一问题对分类结果产生的影响,实验采用5 折交叉验证,结果取5 折交叉验证的平均值。

2.4 评估指标

根据交叉验证的结果,该文使用灵敏度SN(Sensitivity)、特异性SP(Specificity)、分类准确率ACC(Accuracy)和受试者工作特征曲线(Receiver Operating Characteristic,ROC)作为分类结果评估指标。各个指标计算方法如下:

其中,TP为真正例,即SZ患者被正确分类个数;FN为假反例,即SZ患者未被正确分类个数;FP为假正例,即正常被试被错误分类个数;TN为真反例,即正常被试被正确分类个数;SN表示SZ 患者中预测正确的被试所占比例;SP表示健康被试中正确预测的被试所占比例;ACC为分类精度,即所有被试中预测正确的被试所占比例;FPR为假阳性率,ROC 曲线的横坐标为FPR,纵坐标为SN,曲线下面积(Area Under Curve,AUC)反映分类器性能,AUC 越大,分类器性能越好。

3 对比实验与结果

3.1 对比实验

为了证明CNN-Attention 模型拥有较好的分类性能,将其与一些经典分类模型对比,所用到的传统机器学习模型包括SVM 和RF,深度学习模型包括卷积神经网络、BrainNetCNN[11]和CCNN[12](Connectome-Convolutional Neural Network)。

SVM 模型首先利用PCA 进行特征提取,保留95%的主成分,然后将特征输入到线性SVM 中,惩罚因子设置为0.1。RF 的最大深度为13,基决策树的数量为111。

卷积神经网络使用两层核函数为(3×3)一层卷积核为(5×5)的CNN 层,每层滤波器的个数分别为32,64,128,每个CNN 层后都有BN 层、最大池化层和Dropout 层,最后用神经元个数分别为128,2 的全连接层整合特征并完成分类,模型中激活函数均为LeakyReLU(alpha=0.01)。通过对比卷积神经网络与CNN-Attention 模型,比较不同卷积核对模型分类性能的影响。

BrainNetCNN 使用原文中提到的两层E2E 层、一层E2N 层和一层N2G 层,最后将卷积层得到的特征与四层神经元个数为256,128,30,2 的全连接层相连并通过Softmax 激活函数分类。

CCNN 使用与原文中相同的结构,即两层卷积核分别为(1×116)和(116×1)的卷积层和两层神经元个数为96,2 的全连接层。

为控制无关因素的影响,所有模型中使用的损失函数和优化器与前文相同,均为交叉熵损失函数和Adam 优化器,训练150 个epoch,每批次被试个数均为32,且都进行了5 折交叉验证。

为考察静态与动态功能连接对经典网络分类性能的影响,分别将二者作为模型的输入,考察分类器的性能。对于传统机器学习,提取静态和动态功能连接矩阵的对角线上半部分并串联作为模型的输入。对于深度学习模型,将静态功能连接矩阵与动态功能连接矩阵组合为(116×116×2)的矩阵作为输入。同时将CNN-Attention 中的注意力网络去除来测试注意力网络对模型的影响,以及将静态与动态功能连接组合为(116×116×2)的矩阵作为模型输入来考察不同特征提取策略对分类结果的影响。

3.2 实验结果

表2 为使用静态功能连接、动态功能连接和二者结合的分类结果。CNN-Attention 模型在结合使用动态和静态功能连接时得出了最高的分类准确率为79.11%和最高的AUC 为0.841。且相较于单独使用两种特征,结合使用使分类准确率提升了4.14%。SVM 拥有最高的灵敏度为77.77%,随机森林有最高的特异性为93.33%。图3 为结合使用静态和动态功能连接时模型的ROC 曲线。

图3 ROC曲线

表2 不同方法的分类结果

将CNN-Attention 模型中注意力网络去除后,得到的分类准确率为76.25%,与原模型相比下降了2.86%。将CNN-Attention 模型中静态和动态功能连接组合为(116×116×2)的矩阵作为输入,得到的分类准确率为74.03%,与原模型相比下降了5.08%。

4 结果分析

4.1 模型分析

从实验结果可以看出,结合使用静态和动态功能连接可以有效地提高深度学习模型的性能,证明静态和动态功能连接互为补充,二者结合使用可以为疾病的识别提供更多有鉴别力的特征。同时也表明大脑是一个动态的系统,综合考虑大脑的静态和动态特性可以更好地描述脑区之间的关系。

相比于传统机器学习算法,深度学习模型的分类精度更高,这是因为深度学习模型可以提取到脑功能连接中有价值的深层信息,体现出深度学习方法在处理多被试、高维度脑功能连接数据时的优势。

相比于BrainNetCNN,CNN-Attention 需要学习的参数较少,准确率较高,避免了由于网络过于复杂而引起的过拟合问题。而与CCNN 相比,CNNAttention 将两种特征分开进行特征提取,并加入注意力网络来进一步对特征加权,有效提高了分类准确率。CNN 模型的准确率低于其他深度学习模型,可以证明(1×n)和(n×1)卷积核对功能连接数据提取特征要优于(3×3)、(5×5)卷积核。

4.2 最具鉴别力的脑区

以往研究表明,相比于正常被试,精神分裂症患者脑区间复杂的相互作用发生了改变。且这种连接的异常不仅存在于单个脑区,而是存在于全脑中[13]。

为了考察精神分裂症患者哪些脑区相比于正常被试发生了改变,该文对模型中权重的分布进行了分析。分别考察了静态功能连接与动态功能连接第一个卷积层的权重,二者均为(64×116)的权重矩阵。通过将矩阵中每一列权重的绝对值相加,得到两个(1×116)矩阵。这两个矩阵分别代表了dFC 与sFC 中各个脑区在分类中的重要程度。选择其中排名前十的脑区作为具有鉴别力的脑区,所选脑区如表3 和图4 所示。

表3 sFC和dFC中具有鉴别力的脑区

图4 最具鉴别力的脑区

结果表明,模型从sFC 与dFC 中提取到的重要脑区并没有明显的重合,虽然二者都与脑区之间的皮尔逊相关,但dFC 关注的是一段时间内脑区之间相关性的变化情况。相较于sFC,dFC 更加关注SZ 患者与正常被试之间小脑的差异,且有研究表明,精神分裂症患者小脑动态功能连接存在异常[14]。sFC把更多的权重分给了大脑区域,已有研究证实SZ 患者后扣带回、前扣带和旁扣带脑回以及中央后回存在异常[15-16]。

5 结论

文中基于卷积神经网络和注意力网络提出了CNN-Attention 网络模型,利用动态和静态功能连接矩阵作为输入来对精神分裂症患者进行分类。通过实验证明,相较于只使用静态或动态功能连接,结合使用二者会有效提高模型分类性能,且该文提出的模型拥有较高的分类精度。此外还找出了两种特征对分类结果影响较大的脑区,结果与以往研究一致,可以为精神分裂症的发病机制及生物学标志物的确定提供线索,为精神疾病的预防与治疗提供帮助。

猜你喜欢
脑区个数静态
最新进展!中老铁路开始静态验收
怎样数出小正方体的个数
非优势大脑半球缺血性脑卒中患者存在的急性期脑功能连接改变:基于rs-fMRI技术
静态随机存储器在轨自检算法
脑自发性神经振荡低频振幅表征脑功能网络静息态信息流
等腰三角形个数探索
怎样数出小木块的个数
再不动脑, 真的会傻
怎样数出小正方体的个数
止咳药水滥用导致大脑结构异常