APP下载

改进深度极限学习机在肺癌中医证型分类中的应用研究*

2023-11-07章新友徐华康周小玲刘梦玲李秀云张亚明张春强唐琍萍

世界科学技术-中医药现代化 2023年6期
关键词:学习机证型麻雀

章新友,徐华康,周小玲,刘梦玲,李秀云,张亚明,张春强,唐琍萍

(江西中医药大学计算机学院 南昌 330004)

原发性支气管肺癌,简称肺癌,作为一种全球范围内最常见的恶性肿瘤,肺癌新发和死亡人数正在不断升高,且肺癌的发病率和死亡率为癌症之首,而我国肺癌的新发与死亡病例位居全球首位[1]。中医药在治疗肺癌上疗效显著,不仅能够减轻术后产生的不良反应,改良患者的症状,还能有效的延长患者生命周期[2-3]。但目前肺癌的中医辨证方法不一,证型分类众多,诊疗程序不规范,影响了中医药在治疗疾病上特色优势的发挥[4]。

目前,中医药智能化在证型分类,舌诊方面多有运用[5-6],但中医诊断数据大都具有非线性、高维度等特点,传统的机器学习分类算法更适合处理线性的、低维度的数据集,而神经网络能够很好的处理这类中医诊断数据[7]。此外,如果只根据症状的有无来判断证型,则无法体现出中医辨证论治中主症和兼症对不同证型的影响程度以及中医症状的程度量级。因此,为了准确的反应肺癌证型的特征,切合中医临床辨证论治的特点,本研究将针对肺癌中医症状与证型之间非线性及高维度的特点,使用特征选择和Likert分级法对其进行量化处理,较好地实现电子病历的结构化和临床数据的标准化。再构建基于麻雀搜索算法优化深度极限学习机的肺癌证型分类预测模型,为中医辨证论治的信息化发展提供有益的参考。

1 研究方法

1.1 数据来源

从江西中医药大学附属医院(江西省中医院)获取了497例肺癌病患者的病历资料,病人的就诊时间范围为2015年1月-2021年12月,每份病例主要包含了证型、四诊、辨证和处方用药等详细信息。但初始数据庞杂,需要进行初步的整理,以满足算法本身的要求。

对于分类模型来说,要求每个类别的样本数目尽量均衡来保证其训练效果[8],而497个病例中肺癌证型类别繁多且极不均衡,其中单独证型有51种、并发证型有6种,部分证型样本数目仅有数个。为了不影响分类准确率,首先排除归为并发证型的样本,再将51种独立证型进行整合处理。参考相关文献及专家意见将不同名称,但实质相同或相似的证型归为同一类证型[9]。如将脾虚痰湿、气虚痰湿、痰湿内蕴等证型统一归为脾虚痰湿;痰热壅肺、痰热阻肺等证型统一归为痰热壅肺;痰瘀互结、痰瘀内阻等证型统一归为痰瘀互结等。最终共计412例病历被纳入实验范围。

1.2 统计学分析

本研究主要参考《中医诊断学》和《中医内科学》等相关资料文献[10-12],对412例肺癌患者进行中医症状频次统计,在整合部分相同描述的基础上整理出独立症状共计82个,其频次最多的前38个症状见表1。经统计学分析看出,除去慢性病患者常见的眠差、精神软、乏力之外,肺癌患者最常见临床表现为咳痰、咳嗽、胸闷、痰粘、胸痛等。而根据中医舌质、舌苔和脉象统计表可知,舌质多为淡红、红以及暗等;舌苔多为薄白、薄黄以及少苔等;脉象多为弦、弦滑以及濡等,具体信息统计表见表2。

表1 412例肺癌病历的中医症状与体征统计表

表2 412例肺癌病历的中医舌质、舌苔和脉象统计表

1.3 证型相关因子的特征选择与量化

中医治疗疾病通常采取辨证论治的方法,即通过患者的四诊信息来判断证型,并给出治法和方药。肺癌的中医症状缺乏标准的评分方法,一种证型有多个对应症状,但它们的主次地位不同,而且同一症状在不同的证型中的重要程度也不尽相同。因此需要探索科学有效的定量方法,用权重系数来反映证型中不同症状的主次。由上述统计数据可知,412例病历总计有103个症状特征,这些特征对于每一个证型来说可分为相关特征、无关特征和冗余特征。而无关特征、冗余特征以及低重要性特征会影响分类模型的精度,故本研究应用特征选择来减少数据集的维度并筛选出对证型分类至关重要的特征,即证型因子。主要采用以下4种方法用于筛选。

1.3.1 缺失值

缺失值主要是指信息丢失和不规则性,会影响分类器的性能。在本研究中,会排除缺失值百分比大于90%的特征。

1.3.2 互信息

对于冗余特征,本研究通过计算特征两两之间的互信息进行排除[13]。互信息是一个特征中包含的关于另一个特征的信息量,用于表示特征之间的关系,也是两个特征统计相关性的测度。这些相似性较大的特征对中医证型的分类没有帮助,反而也会影响分类模型的性能。因此,在训练时排除了部分冗余特征。

1.3.3 零重要性

零重要性指的是无关特征,本研究使用了极限梯度提升树算法(XGBoost)[14]构建分类模型。通过创建该模型中的提升决策树,便可以得出每个特征相对的重要性得分。当一个特征被多次用来在模型中构建提升决策树,它的重要性就相对高于其他特征[15]。重要性得分是通过对一个特征在所有提升树中的结果进行加权求和后平均所计算得出的,得分为零的特征被定义为重要性为零,意味着它们对训练分类模型没有任何贡献,故也需要进行排除。

1.3.4 低重要性

在相关特征中,也有部分特征的重要性较低,需要选取特征数量较少且尽可能不影响分类准确率的特征子集。本研究使用SelectFromModel类并根据阈值来确定特征子集。该类采用已经训练好的模型,并将数据集转换为具有选定特征的子集,便使用该类在基于极限梯度提升树算法的分类模型上来选择训练数据集上的特征,并从选定的特征子集中训练模型,最终在测试集上评估模型,测试结果如图1所示。

图1 不同特征个数下的XGBoost分类模型准确率

根据图1以及实验结果可以得出,当重要性评分阈值为0.006,特征个数为47-53时,模型准确率有极大值;当特征个数大于53时,准确率反而降低。故选取重要性评分在0.006以上,共53个特征作为特征子集。

在获得特征子集及其重要性排序后,本研究根据最新发布的“十四五”规划教材中李灿东和方朝义主编的《中医诊断学》[11]与吴勉华和石岩主编的《中医内科学》[12]等作为参考,并在相应的专家指导下,从该特征子集中确定5种肺癌证型的证型相关因子,并对其特征重要性归一化处理,见表3。

表3 肺癌证型因子归一化权重表

对所有证型对应的证型因子进行归一化权重处理后,以权重大于等于0.1分为主要症状,权重小于0.1为次要症状,得出气阴两虚证的主要症状有:咳痰、口干、舌红或淡红、少苔、脉细弱。次要症状有:大便秘结、气短、痰少、痰稀、自汗。其他证型也以此划分。再采用Likert分级法[16-17],将症状按照轻度、中度和重度进行分级,对于同一个证型中的主要症状的3个等级,分别赋值为3、6、9;次要症状的3个等级分别赋值为1、2、3;而病历中出现的属于53个特征中的症状,但不属于证型因子的症状,则不管严重程度如何均赋值为1。

得到合理且贴近临床实际的中医证型因子的量化数据后,再分别将量化前后的数据生成对应编码文件,为麻雀搜索算法优化深度极限学习机模型做好数据准备。

2 模型建立

2.1 深度极限学习机模型

极限学习机(ELM)是一种典型的前馈神经网络,可用于分类任务[18],但不像BP神经网络需要不断反向传播从而调整权值和阈值,它随机输入权重和隐含层偏置,通过解方程组来得到输出层权重β,从而运算量减少,学习速率快[19]。但因为ELM是单隐含层结构,当遇到数据维度过高等情况,便会出现易陷入局部最小值的情况。

而基于深度学习的极限学习机是指利用极限学习机与自动编码器相结合,形成极限学习机-自动编码器(ELM-AE),然后将ELM-AE作为无监督学习的基础单元对输入数据进行逐层贪婪的训练方法,并保存ELM-AE由最小二乘法获得的输出权值矩阵,然后用这些输出层权重来初始化多层极限学习机(MLELM),也称深度极限学习机(Deep extreme leaning machine,DELM)[20],二者结构如图2和图3所示。而这种通过层层叠加ELM-AE构建的神经网络模型,不仅有深度学习的表征学习能力还有较快的学习速度。

图2 ELM-AE网络结构图

图3 DELM模型

与传统的深度学习相比,深度极限学习机不需要对网络进行微调,ELM-AE层与最后的ELM分类层通过一步反向计算就可以解析出输出值,因此其特点是学习速度较快。但由于ELM-AE随机生成输入层权值与偏置,且不会进行反向调整,因此最后的ELM分类层的精度会受到ELM-AE输入权值的影响[21]。其次DELM是多隐含层结构,隐含层神经元个数对分类精度影响显著。所以本研究结合麻雀搜索算法,优化DELM网络参数输入权值与偏置,确定隐含层节点数,以达到降低或消除DELM算法输出不稳定的缺点。

2.2 麻雀搜索算法

麻雀搜索算法(SSA)是薛建凯在2020年提出的[22],作为一种新型的群智能算法,其主要模拟了麻雀群觅食的过程。麻雀群觅食过程可分为发现者和跟随者,一般使麻雀种群中找到优质食物的个体作为发现者,其他个体作为跟随者,并且每个个体都会监视群体中其它个体的行为,比如跟随者会监视发现者与之争抢食物或在其周围觅食,同时种群中也选取一定比例的个体作为预警者,如果发现危险就要调整自身位置,种群中心的麻雀也会判断危险情况进行移动。

每只麻雀只有一个位置属性,通过位置可以计算它获得食物的程度。每只麻雀都有3种可能的行为。首先作为发现者,负责搜索食物并为种群提供觅食的方向。其次作为跟随者,会跟随并监视一个发现者。最后是警戒者,处于种群外围的个体负责警戒,并调整自身位置。

假设该麻雀种群中有P只麻雀,每次迭代会选取种群中当前位置最好的N只麻雀作为发现者,剩余的P-N只麻雀作为跟随者。每一代发现者的位置更新公式为式(1)。

其跟随者的位置更新公式及描述为式(2)。

其中xw为当前种群中麻雀的最差位置,xb则为种群中麻雀的最优位置。

在麻雀觅食的迭代过程中会随机产生预警者,当其意识到危险时,便会迅速改变自身位置。其位置更新公式为式(3)。

2.3 SSA-DELM模型

如上文所述DELM中ELM-AE层的初始值和阈值是随机的,会很大程度上影响训练效果,因此将ELMAE输入权值Wi和偏置bi,作为SSA算法的算子,即麻雀,解决由权值、阈值随机初始化导致的陷入局部最优解的问题。

SSA-DELM算法步骤如下所示:

①数据预处理。首先将量化后的数据集进行归一化处理,范围为[-1,1],从而消除奇异样本数据导致的不良影响。

②初始化SSA参数。定义SSA的最大迭代次数M及麻雀种群数量Pop,设置发现者P_percent所占的种群比例,以及设置预警值R2。

③设计适应度函数并计算适应度值。种群中的每个麻雀代表ELM-AE中的初始权值和阈值。利用初始化生成的权值和阈值对网络进行训练,用1减去预测正确样本的占总样本比重即准确率的值作为适应度函数,适应度值越小表示误差越小。每一轮迭代都会找到每个麻雀当前最佳位置P_best的最小适应度函数值。

④更新麻雀位置。每一轮迭代过程中,首先会将适应度较好的麻雀作为发现者,发现者会为整个种群提供觅食方向。然后根据预警值R2,按照式1更新发现者位置。剩下的个体部分处于十分饥饿的状态即适应度值很差,需要到其它地方觅食,而一部分追随者是围绕最好的发现者周围进行觅食,其间也有可能发生食物的争夺,使其自己变成发现者,对此使用式2更新位置。之后预警者会按照其所占比例在种群中随机产生,根据当前麻雀个体的适应度值,与当前最优解的比较结果,使用式3更新预警者位置。

⑤每一轮迭代都会产生当前最优解,并与上一轮所产生的最优解进行比较更新,直至达到最大迭代次数。

⑥将所得的最优解作为神经网络的权值和阈值,确定DELM网络结构,训练并进行预测。

3 实验结果与分析

3.1 模型评价指标

本研究主要采取3种模型评价指标,分别为分类精确率(Precision)、召回率(Recall)和F1值(F1-measure)。在分类问题中,一般分为2类正类和负类,其中TP表示样本为正类而预测也为正类的样本数目,TN 表示样本为负类同时预测也是负类的样本数目,FP表示样本为负类但预测却是正类的样本数目,FN表示样本为正类但预测却是负类的样本数目。各评价指标计算公式为式(4)、式(5)、式(6):

3.1.1 准确率

准确率指被正确预测的正例样本数占总样本数的比重:

3.1.2 召回率

召回率指在所有样本里的正类中也被预测为正类的比例。

3.1.3 F1值

F1值指精确率和召回率的调和平均数,用来衡量分类器的综合性能

3.2 SSA-DELM模型参数设置

SSA-DELM模型以量化后的肺癌中医症状、脉诊和舌诊信息作为输入,One-hot编码后的5种肺癌证型作为输出。麻雀种群数量为20,最大迭代次数为100,预警值r2为0.8,预警者占种群比例为20%,寻优范围为[-1,1],寻优维度为12850。神经网络激活函数为Sigmoid函数,并加入L2正则化,参数设置为10,目的是防止产生过拟合现象。隐含层神经元个数按照式(7)计算,且通过逐步增加或减少神经元个数以得到最佳数量。

其中是NS训练集样本个数,Ni和No分别为输入层和输出层神经元个数,α为常数,取值为10,得出隐含层神经元最佳数量为50。

3.3 模型分类结果与分析

在确定SSA-DELM分类预测模型的参数后,按照7:3的比例将数据集划分为训练集和测试集,对模型进行训练和预测。画出SSA算法的适应度曲线并得出每个证型所预测出来准确率、召回率和F1值的测试结果,然后与其他分类算法进行对比分析,3种评价指标对比见表4和表5,适应度曲线和准确率折线图如图4和图5所示。

图4 SSA-DELM与其他分类算法准确率对比折线图

图5 SSA适应值曲线变化图

表4 SSA-DELM与其他分类算法准确率对比分析表

表5 SSA-DELM与其他分类算法召回率和F1值对比分析表

分析表4、表5和图4不难看出,优化后的深度极限学习机模型相较于支持向量机和贝叶斯网络模型在整体准确率上具有一定的优势,尤其是预测痰瘀互结证和痰湿蕴肺证的准确率达到90%以上,达到了临床诊疗的标准。而神经网络结构在处理多分类非线性化中医数据的问题上要比支持向量机和贝叶斯网络好。原因是进行多分类任务的支持向量机是通过组合多个二分类器来实现多分类器,对于5个证型来说,就要构建n(n-1)/2个,即10个二分类器。故随着需要判别的证型数目的增加,模型的整体复杂度随之增加,也影响了模型的精确率。而贝叶斯网络也是如此,它以证型类别作为根节点,其他特征作为子节点构建分类器,但随着特征数目增多,整个网络结构的复杂程度也在增加,影响了时间复杂度及准确率。

而SSA-DELM对于未处理的0-1量化病例数据训练及预测效果较差,说明如果只是根据症状的有无对病例进行量化,则分类模型很难学习到不同证型的特征。而本研究通过利用特征选择并结合Likert分级法切合了中医病例数据高维非线性的特点,并对其进行科学合理的量化,故SSA-DELM对于量化后的数据预测效果较好。从图5可以发现麻雀搜索算法在完成第56迭代后收敛,体现了其寻优效果好,收敛速度较快的优点。

4 讨论与展望

传统的中医证型分类模型会遇到多种困难,首先,中医证型分类问题存在高维度、非线性的难点,使用传统模型则会出现训练时间长、寻优能力差、分类精度低等问题。其次,在中医的辨证论治中,不同的证型存在主症和兼症,对证型诊断的影响程度不同,且同一症状在不同的证型中的重要程度也不尽相同。最后中医电子病历数据不能简单的使用0-1来量化,因为中医症状也分程度,需要某种方法对症状程度进行合理量化。

本研究针对上述问题进行展开,首先通过对高维中医病例数据进行特征选择来确定不同证型的证型因子,并结合Likert分级法对数据进行合理量化,确定5种证型的证型因子。再使用麻雀搜索算法优化DELM模型的输入权重和隐含层偏置,减少随机初始化参数造成的分类结果不稳定、准确率较低等影响。最后使用量化后的数据对SSA-DELM模型进行训练和测试。实验表明,本研究采用的SSA-DELM新模型在各个证型上的准确率处于85%-92%,平均准确率为88%,且对于中医病例数据来说,SSA-DELM新模型优于支持向量机和贝叶斯网络等传统模型。同时,经过量化后的数据所训练的模型精度要远优于未量化的数据,也进一步说明结合特征选择与Likert分级法处理中医病历数据的合理性。

构建的中医证型分类新模型,融合了特征选择、Likert分级法与启发式算法优化神经网络模型3种方法,有效地处理了中医证型分类过程中存在的高维度、非线性问题,体现了中医病历数据中症状与症状、症状与证型之间繁杂的关系,不仅为肺癌的辨证研究提供了行之有效的思路,也为中医辨证论治的信息化、智能化发展提供了有益的借鉴。如何优化SSADELM的网络结构,提高其泛化性能,以及如何增加麻雀搜索算法的搜索性能和范围,加快其收敛速度,均值得进一步研究。

猜你喜欢

学习机证型麻雀
基于因子分析及聚类分析的241例感染后咳嗽中医证素证型研究
治咽炎要分清证型
不同证型糖尿病的调理
基于自适应矩估计的BP神经网络对中医痛经证型分类的研究
拯救受伤的小麻雀
1958年的麻雀
极限学习机综述
麻雀
基于极限学习机参数迁移的域适应算法
分层极限学习机在滚动轴承故障诊断中的应用