基于改进GA?SVM的智能推荐诊断挂号算法
   来源:现代电子技术     2021年02月02日 00:59

谷歌人工智能算法可自动诊断眼病,这一次革的是眼科医生的命

陈俊梅+周晋阳+张慧英

摘 要: 为提高患者就医效率设计了一套智能推荐诊断挂号算法,对大量的历史病案文本进行训练和机器学习,以患者特征为依据进行分类并推荐相应的科室。使用遗传算法与支持向量机结合进行特征值提取和参数优化,以核函数参数和文本特征值作为遗传算法的染色体执行选择、交叉和变异操作,为提高遗传算法效率并避免陷入局部最优值,在遗传算法初始化群体阶段使用加权深度优先搜索和轮盘赌结合的机制以保证种群多样性,并对交叉概率和变异概率进行自适应优化,在保留有用遗传信息的同时实现全局搜索。实验结果表明,该算法在有效降低特征值数目的同时提高了分类精度。

关键词: 改进遗传算法; 支持向量机; 智能医疗系统; 智能推荐诊断挂号算法

中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2017)11?0115?04

Intelligent?recommendation diagnosis registration algorithm based on improved GA?SVM

CHEN Junmei1, ZHOU Jinyang1, ZHANG Huiying2

(1. Department of Biomedical Engineering, Changzhi Medical College, Changzhi 046000, China;

2. Department of Basic Medicine, Changzhi Medical College, Changzhi 046000, China)

Abstract: An intelligent?recommendation diagnosis registration algorithm was designed to improve the efficiency of medical treatment. The intelligent medical system performs training and machine learning for a large number of historical medical record texts, and classifies and recommends the appropriate medical departments for patients according to the patient characteristics. The genetic algorithm (GA) is combined with support vector machine to extract the characteristic value and optimize the parameter. The kernel function parameters and text characteristic values are taken as the chromosomes of the genetic algorithm to execute the selection, crossover and mutation operations. To improve the efficiency of GA, and avoid trapping in local optimum, the mechanism combining weighted depth?first search with roulette is used in the group initialization stage with GA to guarantee the population diversity, and performs with adaptive optimization to the crossover probability and mutation probability, which can realize the global search while reserving the useful genetic information. The experiment results show that the algorithm can improve the classification accuracy while reducing the quantity of characteristic values.

Keywords: improved genetic algorithm; support vector machine; intelligent medical system; intelligent?recommendation diagnosis registration system

0 引 言

现代医学分工精细化为门诊患者自助挂号带来了一定的困扰,患者及其家人因缺乏专业基础知识而且选择主观性大,易出现挂号时因科室较多难于选择而费时低效,甚至存在挂错科室的现象,给患者和医院都带来了不便,这是医疗办提高自助挂号准确率的主要原因。如今电子病案普及应用日益加大,大量病案文本的存在为智能医疗系统进行文本特征分析提供了便利,通过特征分析和识别结果,患者及其家人可进行初判进行准确挂号,给患者带来便利的同时可较大地提高医疗效率[1]。但大量的电子病案文本特征及海量的冗余信息为相关应用的特征值选择带来了较大的困扰[2],目前常用的文本特征选择包括粒子群优化算法、遗传算法、序列选择算法、关联规则选择算法等[3],此外神经网络、朴素贝叶斯分类、KNN文本分类、支持向量机(Support Vector Machine,SVM)等分类方法也被应用于这一领域[4],其中SVM是一种较优的选择,该方法基于结构风险最小化原则和学习统计理论,与传统的学习方法相比,SVM可较好地克服局部极小点、过拟合、维数灾难和小样本等问题,利用构设的最优分类可实现对未知样本的最小分类误差。因此得到较多的关注和研究,但是SVM仍有许多需要完善之处,主要表现为没有统一标准进行参数选取,传统参数选取方法依据经验进行拼凑[5],之前利用粒子群算法对SVM进行优化取得了一定效果,但易陷入局部极小值[6]。本文选择遗传算法(Genetic Algorithm,GA)和SVM结合进行病案文本特征选取,并针对遗传算法的不足,进行交叉概率、变异概率自适应优化和加权深度优先搜索机制优化初始化群体以提高算法性能,实现智能推荐诊断挂号算法。

1 电子病案文本分类原理

如同其他SVM算法应用,电子病案文本样本将分为训练样本和测试样本。首先需对电子病案文本进行预处理[7],主要是提取关键词以描述处理过程,包括去停用词、中文分词等,从而将文本转换成SVM处理所需的形式。设文本集合为,特征词集合为,文本集合中的一个文档可表示为,其中各个元素对应特征词集合中的特征值,其计算方法如下:

(1)

式中:表示特征词在第个文档中出现的频率;为出现特征词的文本总数;表示文本总数。

式(1)是一种权值计算方法,采用的是TF/IDF计算法,其中IDF表征特征词出现在整个文本集中的频率,TF表征特征词在对应单一文本中出现的概率。

之后构造SVM分类算法的分类器,其本质是利用非线性映射将输入向量映射到某个高维特征空间并在该空间构设最优分类超平面,最优分类的标准是将两类正确分开的同时保证分类间隔最大[8],其示意图如图1所示。

图1 卷积神经网络结构

SVM分类器的输入是各个病案文本,输出是多个病种中的一个,而多分类问题是一个求解约束条件下的凸二次规划问题,即:

(2)

式中为惩罚因子,主要用于调整分类器的误分类率和泛化能力的折衷。引入拉格朗日因子法解决优化问题,拉格朗日函数为:

(3)

式中:和均为Lagrange函数的乘子向量。

其对偶问题为:

(4)

式中为核函数,可得最终的判决函数为:

(5)

目前常用的核函数包括线性核函数、多项式核函数、径向基核函数等[9],其中径向基核函数对高维非线性数据有较强的分析能力,而且参数仅有惩罚因子和标准化参数因此将其作为病案文本分类SVM的核函数,其表达式为:

(6)

在此基础上判决函数最小化问题可转化为的设置问题。研究表明,惩罚因子用于分类器的误分类率和泛化能力的折衷,其值越小表示惩罚越小,学习机器复杂度低但经验风险值大,其值越大表示惩罚越大,对错分样本的惩罚也越大;标准化参数影响高维特征空间样本数据分布的复杂程度,其值变化会改变特征空间维数,从而影响结构风险范围。因此需要寻找全局范围内最优的,本文使用遗传算法优化SVM以获取全局最优结果。

2 基于改进的GA?SVM的分类算法

2.1 GA?SVM原理

遗传算法建立在达尔文进化论基础上,用于在计算机上模拟生命进化机制以搜索最优解,主要以优胜劣汰、适者生存等原则进行搜索求解,其主要优点是不需要复杂运算和建模,只需遗传算法的三种算子即可获取最优解[10]。常规遗传算法主要包括染色体编码、种群规模、适应度函数和遗传算子。

种群个体可用长度为的二进制串表示,其值为1则选择该特征,其值为0则不选择该特征,从而建立种群个体及对应特征。由于病案文本的特殊性,种群个体的染色體主要包含两部分,分别是SVM的参数及病案特征值。

种群规模大小直接影响遗传算法的性能,目前常用取值区间为以综合算法复杂度与种群多样性的平衡。

适应度函数是遗传算法指引搜索的惟一信息,用于评价各码串对问题的适应程度,需遵循的原则包括:选用的特征子集尽可能少;应可实现通用;有利于提高分类准确性。

综合考虑各种因素,可得适应度函数为:

(7)

式中:为病种分类准确度;为选择特征值的数目;为调节权重参数,用于调节病种分类准确率及特征值数目,其值越大病种分类准确率越高,但特征值选择的数目越多。

遗传算子主要包括选择算子、交叉算子和变异算子,选择算子将父代中适应度值高的染色体复制到子代中,同时淘汰适应度值低的个体,一般使用轮盘赌法进行选择运算,该方法可有效避免算法陷入局部最优解;交叉算子是随机选择种群中的一对个体,互相交换染色体部分数字串形成新的个体,本文使用单点交叉法,染色体间随机选择4个数字串进行交叉,交叉概率为;变异算子是以很小概率即变异概率改变遗传基因,即将染色体中数字串的值取反,从而提高种群多样性并防止搜索停滞。的计算方法如下所示:

(8)

(9)

式中:为变异个体对应的适应度值;为两个交叉个体的适应度值;分别为进化代中适应度值的最大值、平均值;为交叉子代适应度值分别大于、等于平均值时的交叉概率;为变异子代适应度值分别大于、等于平均值时的交叉概率。

2.2 加权深度优先搜索机制优化

由于传统的遗传算法随机产生初始种群,有一定概率在算法开始时陷入局部最优[11],为避免这种情况出现,结合使用轮盘赌和加权深度优先搜索方法产生遗传算法的初始种群,以自适应、启发式的初始化方法保证群体分布的均匀性、搜索速度,从而保证种群多样性。

设初始种群数目为为种群中各个体赋予对应的权值,对各节点进行深度优先搜索时,根据对应的大小使用轮盘赌机制选定节点,找到符合要求的路径后生成初始种群的染色体并对路径上所有个体权值减1,重复上述步骤直至生成满足群体规模要求的染色体数目。

2.3 交叉概率与变异概率修正

式(8),式(9)所示的传统遗传算法代表的搜索进程仍存在一定缺陷,主要风险是易陷入早熟导致无法搜索到全局最优值[12],分析遗传算法过程可发现遗传算法的初期由于不同个体间差异大,较小的变异概率和较大的交叉概率可实现有用遗传信息的保存,而随着遗传算法进程的不断深入,子代个体间适应度值逐渐趋向一致,较大的变异概率和较小的交叉概率可有效增加种群个体的多样性,更有利于进行全局搜索。基于这一理念,本文对交叉概率和变异概率进行优化,进行自适应生成,其计算方法如下所示:

(10)

(11)

式中:为个体对应遗传代数;为最大遗传代数;分别为第代个体的交叉概率和变异概率;分别为交叉概率修正常数、变异概率修正常数。通过这种逐代交叉概率和变异概率修正,实现其值在不同进化代数的自适应调整,在保留有用遗传信息的同时实现全局搜索。

2.4 改进的GA?SVM算法

改进的GA?SVM算法应用于智能推荐诊断挂号的流程如图2所示。对电子病案文本特征值进行预处理,主要包括去除冗余信息和数据降维,然后从已有的个特征中按选取原则选择个特征,从而实现最优化指标,最后对输出结果进行译码可获得径向基核函数参数与病案特征的最优值。

3 实验验证

为验证算法性能,数据来源于山西长治某儿科医院的皮肤粘膜淋巴结综合征、猩红热、风疹三种疾病共1 000例病案,三类疾病均在一定程度上存在发热、头痛、食欲减退、咽喉痛、皮疹等症状,选取其中900例为训练样本,其余100例为测试样本,测试算法根据病症特征进行分类的准确性。为测试改进算法的效果,将本文算法(IGA?SVM)与

从表1可以看出,通过本文算法对特征值选择的优化,其数目由198个降至132个,去除了冗余特征值,提高了系统运算效率,而且算法的分类精度优于GA?SVM和PSO?SVM两种算法分类精度,这是由于本文算法在种群初始化过程中使用轮盘赌和加权深度优先搜索方法保证了种群的多样性,同时对交叉概率和变异概率进行自适应优化,在保留有用遗传信息的同时实现全局搜索,提高了算法的性能。本文算法的分类历史曲线如图3所示,显示了算法在优化参数过程中不断选择最优进化结果,在28次迭代后曲线较为平缓,说明算法在多次跳出局部最优之后最终达到全局最优,优化了算法的分类结果。

4 结 语

本文将遗传算法和支持向量机结合应用于智能医疗系统,目的是为患者提供挂号科室推荐,正确、高效的推荐结果是系统的必然要求。为提高算法分类精度,针对遗传算法的不足进行了分析,对其种群初始化过程和进化过程进行了优化。实验结果表明,优化后算法的性能优于常规的遗传算法及PSO?SVM,分类精度得到了一定程度的提升,在智能医疗领域具有一定的应用前景。

参考文献

[1] HEIKKINEN V, KORPELA I, TOKOLA T, et al. An SVM classification of tree species radiometric signatures based on the Leica ADS40 sensor [J]. IEEE transactions on geoscience and remote sensing, 2011, 49(11): 4539?4551.

[2] 宋淑彩,龐慧,丁学钧.GA?SVM算法在文本分类中的应用研究[J].计算机仿真,2011,28(1):222?225.

[3] 杨梅,卿晓霞,王波.基于改进遗传算法的神经网络优化方法[J].计算机仿真,2009,26(5):198?201.

[4] 朱文静,白静.一种混沌人工鱼群算法对SVM参数的优化及应用[J].微电子学与计算机,2016,33(3):90?94.

[5] BIN G F, GAO J J, LI X J, et al. Early fault diagnosis of rotating machinery based on wavelet packets?empirical decomposition feature extraction and neural network [J]. Mechanical systems and signal processing, 2012, 27(1): 696?711.

[6] 胡天骐,单剑锋,宋晓涛.基于改进PSO?LSSVM的模拟电路故障诊断方法[J].计算机技术与发展,2015,25(6):193?196.

[7] FU A M, SUN G Q, GUO Z F, et al. Forest cover classification with MODIS images in northeastern Asia [J]. IEEE journal of selected topics in applied earth observations remote sensing, 2010, 3(2): 178?189.

[8] 刘东平,单甘霖,张岐龙,等.基于改进遗传算法的支持向量机参数优化[J].微计算机应用,2010,31(5):11?15.

[9] 马元良,裴生雷.基于改进遗传算法的SVM参数优化研究[J].计算机仿真,2010,27(8):150?153.

[10] 巨志斌.遗传算法在车牌特征选择的应用研究[J].计算机仿真,2010,27(12):331?335.

[11] 徐胜舟,裴承丹.基于遗传算法和支持向量机的乳腺肿块识别[J].计算机仿真,2015,32(2):432?435.

[12] 王福林,王吉权,吴昌友,等.实数遗传算法的改进研究[J].生物数学学报,2006,21(1):153?158.

修正 算法 格朗