最小二乘支持向量机在医疗数据分析中的应用(计算机与数字工程)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

最小二乘支持向量机在医疗数据分析中的应用钟萍,岑涌,席斌(厦门大学模式识别与智能系统研究所福建厦门361005)摘要:以医疗数据为应用对象,应用网格搜索和交叉验证的方法选择参数,建立了最小二乘支持向量机分类器,进行实际验证,并与使用K近邻分类器(K-NN)和C4.5决策树两种方法的结果进行了比较。结果表明,LS-SVM分类器取得了较高的准确率,表明最小二乘支持向量机在医疗诊断研究中具有很大的应用潜力。关键词:最小二乘支持向量机;分类器;医疗诊断;网格搜索;交叉验证中图法分类号:TP181ApplicationofLeastSquaresSupportVectorMachinestoMedicalDiagnosticsZHONGPing,CENYong,XIBin(InstituteofPatternRecognitionandIntelligenceSystem,XiamenUniversity,Xiamen361005,China)Abstract:Asthemedicaldiagnosedadaanapplicationobject,LS-SVMclassificationhyper-parametersareoptimizedwithgrid-searchandcross-validationmethod,carrythroughtovalidatetheclassificationperformance.ThenitiscomparedtoothertypicalclassificationssuchasK-NNandC4.5decisiontreeonthedatasets.ComputationalresultsindicatethatLS-SVMhasgoodperformanceontheclassificationrecognize,LS-SVMhaspotentialapplicationinmedicaldiagnosticsresearch.Keywords:leastsquaressupportvectormachines(LS-SVM);classification;medicaldiagnostics;grid-search;cross-validation1引言统计学习理论是由Vapnik建立的一种专门研究小样本情况下机器学习规律的理论,支持向量机(SupportVectorMachine,SVM)是在这一理论基础上发展而来的一种新的通用学习方法。支持向量机通过结构风险最小化原理来提高泛化能力,它较好地解决了小样本、非线性、高维数、局部极小点等实际问题,已在模式识别、信用评估和入侵检测等领域得到了应用[1,2,3]。最小二乘支持向量机(LS-SVM)是支持向量机的一种扩展,是由Suykens[4]在Vapnik的统计学习理论基础上提出的一种新型支持向量机方法,它适用于解决分类和函数估计问题,收敛速度快,分类精度高,已经在图像和字体识别领域获得应用,并取得了不错的效果[5][6]。2SVM与LS-SVM的基本原理2.1支持向量机原理支持向量机是统计学习理论的一种通用学习方法,主要是基于以下思想:通过事先选择的非线性映射将输入向量映射到高维特征空间,并在这个空间中构造最优决策函数;在构造最优决策函数时,利用了结构风险最小化原则,并巧妙利用原空间的核函数取代高维特征空间的点积运算,使复杂计算得到简化。定义样本为n维向量,某区域的N个样本及其值表示为:{(,)}nxyRR,即{11(,)xy,22(,)xy,,(,)NNxy}。首先用一非线性映射(),把样本从原空间nR映射到特征空间12()((),(),,())Nxxxx。在这个高维特征空间中构造最优决策函数()()yxxb,其中为权值向量;b为阈值。这样就把非线性估计函数转化为高维特征空间线性估计函数。2.2最小二乘支持向量机原理基金项目:厦门大学985“海量数据挖掘方法及应用”作者简介:钟萍(1982-)、女、硕士研究生、主研方向:智能计算、数据挖掘和机器学习;岑涌、男、硕士研究生、主研方向:智能计算、数据挖掘和机器学习;席斌、男、副教授、硕导、主研方向:智能计算、数据挖掘和机器学习。E-mail:apple.zhong@yahoo.com.cnSuykens[4][7]提出的最小二乘支持向量机与Vapnik提出的支持向量机在利用结构风险原则上,选择了不同允许错分的松驰变量,SVM选择了,而LS-SVM选择为的二范数。对于Vapnik提出的支持向量机的优化问题为:Min211(,)2NkiJC..st[(())]1Tkkkyxb(1)对于Suykens提出的最小二乘支持向量机,优化问题变为:Min2211(,)2NkiJC..st()Tkkkyxb(2)(1)、(2)式中,0k,1,2,,kN,C为惩罚因子。用拉格朗日法求解优化问题(2),即22111(,,,)[(())]2NNTkkkkkiiLbCxby(3)式中,k(1,2,,kN)为拉格朗日乘子。根据优化条件,对,b,,求偏导数,并令其为零,可得:1()Nkkkx10Nkk,kkC(4)()0Tkkkxby定义核函数(,)()()ijijkxxxx,(,)ijkxx为满足Mercer条件的对称函数。根据式(4),优化问题转化为求解线性方程,即1111111101101(,)1/(,)1(,)(,)1/NNNNbkxxCkxxYkxxkxxCY(5)最后得到非线性模型为:1()(,)Nkkkfxkxxb(6)由于将优化问题(2)转化为求解式(5)的线性方程问题,该线性方程可由最小二乘方法求解,最小二乘支持向量机由此而得名,最小二乘支持向量机比标准支持向量机具有更快的训练速度,且求解所需的计算资源较少。2.3最小二乘支持向量机多元分类模型构建多元分类的最小二乘支持向量机方法,方法实质和一般支持向量机多元模型一样,是将多元分类器看成若干二元分类器的集成。考虑多类的训练样本形式(),1,1{,}ikNimkkkixy,其中N为训练样本数;m为内置二元分类器个数;()iky是指第k个样本属于第i个类别。构建多元分类的最小二乘支持向量机描述为:,,,iikibMin2()2,,11111(,,)22mNmmiikikiikiJbC(7)约束条件为:(1)111,1(2)222,2(),[()]1[()]1[()]1TkkkTkkkmTkmmkmkmyxbyxbyxb(8)根据式(8)定义拉格朗日函数为:()()(),,,,,,(,,,)(,,){[()]1}mmiTiikikiiikikikikikikiLbJbdyxb(9)对式(9)优化,分别对变量i,ib,,ki,,ki求偏导并令其等于零。消除i和,ki,转换为求解分块矩阵,求出1[,,]Mmbbb,1,1,11,,[,,,,,,]MNmNm。求得多元分类最小二乘支持向量机的决策函数为:(),1()sgn[(,)]Nikikiklikyxykxxb(10)3算例结果与分析3.1数据源实验中采用了四种不同种类疾病的医疗诊断数据,分别是从UCI机器学习问题库得到[8]:PimaIndiansDiabetes(糖尿病),HeartDisease(心脏病),LiverDisorders(肝病)和WisconsinBreastCancer(乳腺癌)。这些医疗诊断数据中属性都是根据相应的各种病理检测、组织样本检验、血样以及各生理器官功能检测等情况中具有代表性的属性值组成,可以清楚表示4种病理的特性和状况(详细说明略)。数据集的简单情况如表1所示:表1.四个数据集基本情况3.2模型参数的选择关于核函数的选取,本文将采用径向基核函数:数据集(Dataset)实例数类别数属性数HeartDisease(心脏病)270213LiverDisorders(肝病)34526PimaIndiansDiabetes(糖尿病)76828WisconsinBreastCancer(乳腺癌)56923022(,)exp2iixxKxx其中2为径向基函数核的宽度。选择径向基核函数是考虑到径向基核非线性的样本映射到高维空间中时,不同于线性核,而是能够处理分类和属性之间非线性的情形。而且线性核可以认为是径向基核一种特殊情形——线性核随惩罚参数C变化能和径向基核在某些参数组合2(,)C下有同样的分类表现效果。另外,从模型选择上考虑到影响复杂度的超平面参数个数,多项式核比径向基核多很多超平面参数。应用最小二乘法进行系统辨识时,规则化参数C和核参数的选择是一个重要问题。本文用网格搜索法先选择参数对(,C),然后用交叉验证法对目标函数——均方误差(MSE)最小进行寻优,直至找到最佳的参数对,使交叉验证的精度最高。主要过程为:(1)首先要找到合适的正则化参数集和核参数集。按照指数增长方式生成两种参数集,比如531152,2,2,,2,,2C,8612,2,,2。网格搜索简单直接,因为每一个参数对(,C)是独立的,可以并行地进行网格搜索。(2)应用网格搜索法选择一个参数对(,C),用该参数对进行交叉验证。方法就是将样本集随机分成K个集合(假定每个集合的数据分布近似或相同),一个集合留作独立的测试集,其余1K个集合合并后作为训练集。通过选择不同的验证集,可重复K次。(3)循环选择参数对进行交叉验证,计算每个参数对的均方误差直到网格搜索停止,使得均方误差最小的参数对(,C)是最佳的,应用交叉验证方法选择参数能够避免过拟合问题。3.3实验结果为了分析训练样本数对整体分类效果的影响,对每个病症类数据进行取不同比例的样本作为训练样本,剩余的作为测试集。在实验分析时分别从总样本中选择30%、50%、70%和90%的样本作为训练集,表2给出了在4种医疗诊断数据集上的训练和测试的结果。表2.四个数据集在不同训练样本比例下的训练与测试的准确率数据集训练比例和结果HeartDiseaseLiverDisordersIndiansDiabetesBreastCancer30%训练集(train)90.12%83.65%76.09%98.54%测试集(test)81.48%61.53%77.88%82.64%50%训练集(train)87.41%82.66%77.86%96.49%测试集(test)84.44%69.77%80.73%98.24%70%训练集(train)84.66%80.08%77.88%96.44%测试集(test)85.19%68.27%77.39%98.05%90%训练集(train)85.19%75.52%77.42%97.07%测试集(test)81.48%77.14%79.22%98.53%针对几种不同疾病分类诊断研究问题,将目前一些典型的分类器诸如K近邻分类器(K-NN,本文中K=3)、C4.5决策树分类器与本文中LS-SVM分类器所得结果进行了对比,见表3。从表3可知,在保持对样本准确识别的基础上,LS-SVM分类器取得了较好的准确率。(本文中,对于K近邻分类器和C4.5决策树分类器方法也是建立在与LS-SVM分类器同样的训练和测试集合的基础上获得的各个数据集的最佳结果)。表3.LS-SVM、K-NN和C4.5三种分类器的不同应用结果数据集不同分类器HeartDiseaseLiverDisordersIndiansDiabetesBreastCancerK-NN(K=3)78.19%6

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功