system: [SYSTEM]

user: 3. MRI与SNP的多模态集成模型 本文提出一种基于MRI和SNP数据的改进的概率分类器加权集成框架，总体结构如图2所示。首先在数据预处理方面，获得的图像数据集后用SPM12软件进行预处理，接着进行二维上的切片，获得的SNP数据使用PLINK软件进行GWAS分析进行全基因组关联分析得到SNP位点数据，预处理好的图像数据和SNP数据分别构造分类器模型，最后进行两种模态分类器的集成。 图2. 本文提出的融合MRI与SNP的识别模型总体结构 3.1. MRI基分类器 3.2.1. MRI数据预处理 本文利用SPM12软件的CAT12工具包(http://dbm.neuro.uni-jena.de/cat/)进行图像预处理操作。预处理操作主要包括去头骨、配准到MNI标准空间、图像平滑，其处理流程中所用到的参数均使用CAT12工具包中的默认参数。经过SPM12软件处理后，得到的所有图像大小均为121 * 145 * 121，空间分辨率为1.5 mm。随后对每个MRI图像进行灰度归一化，使每个受试者的图像体素值在0~1之间。本文MRI基分类器的训练数据要求是二维图像，所以需要对三维的MRI图像进行切片处理，预处理过后的MRI图像大小为121 × 145 × 121。预处理总流程图如图3所示。 图3. MRI预处理流程 3.2.2. MRI分类器 本文使用的MRI分类模型总体结构如图4所示，预处理完的MRI图像每一个位置切片构建一个基分类器进行训练，训练完的基分类器根据验证集数据测试性能，根据结果进行排序，挑选出三个优质分类器。 其中所使用的基分类器本质上是一个典型的CNN模型，在Wang等 [ 23 ] 提到的8层CNN结构基础上结合残差网络模型组成，它由4个卷积层(Convolution Layer， Conv)，2个残差模块(Resnet block)以及2个全连接层(Fully Connected Layer， FC)组成，除第1层卷积层外，后三层卷积层以及残差模块都进行池化(pool)操作，采用softmax函数将最后一层全连接层的两个神经元输出映射到0~1之间实现二分类，其结构如图5所示。 图4. MRI分类模型总体结构图 图5. MRI基分类器结构 3.2. SNP基分类器 3.2.1. SNP数据预处理 SNP原始基因数据以PLINK [ 20 ] 软件的标准数据格式将受试者信息和基因信息存储在后缀名为.bim、.fam、.bed的三个文件中，本文使用GWAS对SNP原始基因数据进行预处理降低SNP数据的维度，大大降低了计算的复杂程度，减少了冗余信息所造成的识别误差，提高了识别的精度，得到的SNP位点数据进行编码成0，1，2 (AA-0，Aa-1，aa-2)得到SNP数据集。预处理流程如图6所示，其过程具体如下： 1) 根据杂合率筛选 在基因型数据中，每两个字符表示一个SNP的基因型，如GG、GC，其中GG属于纯合型，GC属于杂合型。根据遗传学规律，在自然群体中，不同样本的杂合基因频率是相近的，可以根据此规律剔除不符合该规律的异常被试数据。 2) 根据位点缺失率筛选 位点缺失率是反映样本基因型数据质量的一个重要指标，如果一个样本的位点缺失率太高，则表明该样本数据质量差，需要剔除以免影响后续分析。 3) 根据位点信息缺失率筛选 位点信息缺失率是指在所有的被试中，某个SNP的信息缺失率。如果某个SNP的信息缺失率太高，则说明该SNP的数据质量差，不适于用于后续分析，需删除该SNP信息。 4) 根据Hardy-Weinberg平衡筛选 Hardy-Weinberg平衡定律也称遗传平衡定律，是群体遗传中的重要法则。一个群体在理想情况(不受特定的干扰因素影响，如非随机交配、天择、族群迁移、突变或群体大小有限)，经过多个世代，基因频率与基因型频率会保持恒定并处于稳定的平衡状态。 5) 根据连锁不平衡性筛选 连锁不平衡是指分属两个或两个以上基因座或等位基因上存在非随机的组合。如果某两个基因在遗传过程中不是完全独立遗传的，那它们之间就存在连锁不平衡现象。实际中，常用r2表示SNP的连锁不平衡强度，r2越大，连锁不平衡现象越强，相关SNP的独立性越弱。在进行GWAS分析时希望最终找出的SNP是独立性较强的SNP，因此通过连锁不平衡删除连锁现象较强的SNP(每组连锁的SNP中会留下一个SNP作为代表)。 6) 根据个体独立性筛选 需要尽量保持数据的独立性，样本间如果具有较近的亲缘关系或数据采集时同一个样本的数据被采用了多次，将会导致SNP的分布并非自然状态，使分析结果产生偏差。亲缘系数又称血缘系数，将群体中个体之间基因组成的相似程度用数值来表示即为血缘系数，它可以反映两个个体间的遗传相关程度。 7) 关联分析 在GWAS中，表型的选择有两种方式，第一种是线性的表型，如果身高、体重、智力等；第二种是二元的表型，比如患病和未患病，患病为0，未患病为1。当待分析的表型是二元性状时，通常使用逻辑回归模型进行分析；当待分析的表型是线性性状，通常使用普通线性回归模型。本文使用逻辑回归模型进行分析得到每个SNP与表型的相关显著性p值，根据p值挑选出相关性高的SNP进行编码成0，1，2构成数据集。 图6. MRI预处理流程 3.2.2. SNP分类器 SNP分类器中的分类模型可以使用各种分类器，如随机森林(Random Forest， RF)、支持向量机(Support Vector Machine， SVM)、K最近邻(K-Nearest Neighbor， KNN)等分类算法。本文中的SNP分类器采用基于决策树的集成模型进行分类，所使用的集成模型算法为梯度提升决策树(Gradient Boosting Decision Tree， GBDT)、引导聚集算法(Bootstrap aggregating， Bagging)、自适应提升算法(Adaptive Boosting， Adaboost) (简称为GBA)。 梯度提升决策树算法是一种迭代多颗决策树来共同决策的算法，该算法将损失函数的负梯度在当前模型的值作为残差的近似值，然后用残差近似值拟合出一个回归树，最后将所有树得到的结果进行累加进而得到最终的结果。 引导聚集算法是一种并行集成学习方法，通过自助采样法即均匀、有放回地随机产生多个训练子集，然后基于每个训练出多个个体学习器，最后将这些个体学习器进行结合构成最终分类器。 自适应提升算法是一种迭代算法，通过同一个训练集训练不同的弱分类器，然后将这些弱分类器集合起来，构成一个更强的最终分类器。 总体结构如图7所示。 图7. SNP分类模型总体结构图 3.3. 基于概率分类器加权的集成学习 MRI分类器与SNP分类器的集成，因为分类器的结果相差过大，传统的投票法的集成方式并不适用，本文所使用的集成学习策略基于文献 [ 21 ] 所提出的概率分类器加权集成方案，设集合 C = { M 1 ， M 2 ， ⋯ ， M n } 表示有n个基分类器，共有k个类别标签即   C i ∈ { A i | i = 1 ， 2 ， ⋯ ， k } ，则 { p 1 ， p 2 ， ⋯ ， p k } = { 0 ， ⋯ ， 0 } ，其中 p i 表示所属第i个类别的概率，起始值为0。 设输入测试数据样本为x，对于样本x，第i个类别概率为： p i = ∑ j = 1 n sigmoid ( w j ) ⋅ p ( y = A i | M j ， x ) (1) sigmoid ( w ) = 1 1 + e − w (2) 其中w j 表示基分类器M j 的权重，该值为基分类器的性能指标，在训练阶段结束后由验证集数据对分类器的性能评估表示，该性能评估使用基分类器的准确率， p ( y = A i | M j ， x ) 表示输入数据样本x后基分类器M j 类别标签为A i 时的概率，由于SNP分类器与MRI分类器结果相差过大，使用sigmoid函数对其权重进行平滑处理。 设输出结果为样本类别标签y，则y的值计算为： c = arg max i = 1 ， ⋯ ， k p i (3) y = A c (4) 其中c表示类别概率为最大值的是第c个类别标签。