关于SVM方法在《伤寒论》方小样本分类识别中的应用

论文价格:0元/篇 论文用途:仅供参考 编辑:论文网 点击次数:0
论文字数:**** 论文编号:lw2023112747 日期:2025-08-20 来源:论文网

     作者:孙燕,臧传新,任廷革,刘晓峰,张帆

【关键词】 支持向量机;《伤寒论》;分类识别

支持向量机(Support Vector Machine,SVM)方法是V.N.Vapnik等人20世纪60年代提出的基于统计学习理论的新型学习方法,到90年代中期,这一理论才开始受到越来越广泛的重视,并且这一新的理论方法在解决模式识别中小样本、非线性及高维识别问题中表现出独特的优势和良好的应用前景[1]。对于SVM方法用于分类研究的高效性和准确率,国外有人已经将其与16种已有的分类方法进行了比较,得出SVM方法最优的结论[2]。目前该方法已在很多领域得到了广泛应用,如人脸检测[3]、文本自动分类[4]、生物信息学[5]、医疗诊断[6]等等。笔者针对《伤寒论》类方小样本分类识别问题,对该方法进行了初步实验,结果表明该方法具有较好的识别性能。

  1 构造SVM 建模因子

  本实验中的样本资料来自经典的《伤寒论》。建模的主要构造因子为:药物名称、药物剂量、处方的综和性味归经、功效强度、主治证候、处方针对的临床表现等1 360多个。为避免人为判断因素的干扰,每个因子尽量以数字化形式来描述,各建模因子的数值直接由中医处方智能分析系统[7]通过基于模型计算的方式直接输出。为了避免各个因子之间的量级差异,对其进行了归一化处理,使每一因子的数据落入区间[0,1],对样本中不存在的因子直接赋值为零。

  实验采用的CMSVM[8]机器学习系统是由陈永义教授为主的CMSVM开发小组研制开发的。该系统采用的是Thorsten Joachims的快速SVM算法,在保留了SVMLight(http://www. kernel-machines.org)内核的基础上扩展、开发了一个参数优化、仿真及数据分析的辅助软件,可以按设定的区间和步长自动运行训练,并把有用的运行结果单独生成数据文件,方便进一步对结果进行分析。这样,通过减少人为参与,实现了计算机自动选择最优模型的功能,提高了选择最优模型的效率。

  将SVM方法应用于《伤寒论》方分类识别的原理是根据历史对已知处方的分类情况进行训练建模产生学习机,用此学习机来识别未知的样本数据。具体做法是将《伤寒论》中的所有方证样本资料进行整理,并将其分为两部分:验证文件、检验文件。验证文件包含用于训练建模的训练集样本和实验集样本。建立检验文件是为了将最终确立的SVM预报模型对其做预报,以检验SVM模型的预测效果(推广能力),检验集的数据不参与训练学习及参数筛选等建模过程。

  2 SVM方法对《伤寒论》方按八法训练建模分类实验

  2.1 训练样本不变,选取不同参数对建立SVM模型的影响

  随机选取《伤寒论》方中传统上按照八法分类法归为汗法的方证26首确定为正样本,其余主要归为下法的处方23个,共49个样本数据作为验证文件的训练建模样本。训练样本的因子都是处方的药物、性味归经、功效、适应证,然后从剩余未参与训练建模的处方中选取一部分数据作为预测文件来检验所建模型的泛化能力。见表1、表2。表1 选取不同参数建立的SVM最优模型(略)表2 最优模型的泛化能力比较(略)

  从上面的分析结果可以看出,在样本数比较小的情况下,参数改变对训练建模时间和叠代次数有一定的影响,所建最优模型的结果有较大差异,TS评分值及泛化能力也不一样。试验一模型的正确率和TS评分值比较低,其预测能力就比较低,把与下法相近的十枣汤识别为汗法了,而模型二就预测对了。说明参数的优化对于所建模型的质量好坏具有重要意义。

  2.2 训练样本的变化对建立SVM模型的影响

  试验一随机选取《伤寒论》方中传统上按照八法分类法归为汗法的方证19首确定为正样本,其余主要归为清法的处方26个,共45个样本数据作为训练建模样本的验证文件。试验二从试验一的训练样本中去除了一部分样本,样本总数变为38,正样本数16。选取的训练样本的因子为药物、性味归经、功效。然后从剩余未参与训练建模的处方中选取一部分数据作为预测文件来检验所建模型的泛化能力。见表3、表4。表3 对不同的训练样本选取相同参数建立的SVM最优模型(略)表4 最优模型的泛化能力检测结果(略)


  
  通过上面的分析结果可以看出,因为样本数比较少,即使样本因子不同,其训练建模时间相差也不大,而最优模型中的参数g发生了很大变化,最优模型交叉验证的正确率、TS平分值、预报概括率、支持向量以及模型的泛化能力均发生了变化,但差异并不大。分析其原因,主要是试验一中的训练样本数虽多,但是样本的质量较差,其中混有一些不是很准确的归类因子;试验二中去除了象麻杏石甘汤、麻黄连翘赤小豆汤、乌梅丸、茵陈蒿汤等样本数据后,所建最优模型的交叉验证的正确率、TS评分值达到了100%,模型的泛化能力明显提高。试验一中预测不准的原因在于黄连汤样本因子中有桂枝、炙甘草、大枣,性味也主要是辛温,与正类样本相似,但是贴近度只有0.31,说明与正样本之间虽然相似,但贴近度比较低。小青龙汤虽然错分的贴近度只有0.07,但还是被错分为负类,充分表明试验一所建模型的泛化能力不如试验二。这说明参与训练建模的样本质量对于所建模型的质量具有直接的影响。

  2.3 训练样本因子的变化对建立SVM模型的影响

  为了比较分类识别对象与因子之间的线性相关是否对建立的SVM预测模型泛化能力的影响,随机选取《伤寒论》方中归为汗法的方证20首确定为正样本,其余主要归为清法的处方16个,共36个样本数据作为训练建模样本。试验一中选取的训练样本因子为药物的相对药量、性味归经,试验二中选取的训练样本因子为药物的相对药量、性味归经、处方功效。然后从剩余未参与训练建模的处方中选取一部样本数据作为预测文件来检验所建模型的泛化能力。见表5、表6。表5 选取相同的核建立的SVM最优模型(略)表6 最优模型的泛化能力比较(略)

  通过表5可以看到,在参与训练建模的样本数相同、样本因子不同的情况下,由于样本数量较少,样本因子相差不是很悬殊,故训练建模时间几乎不受影响;试验一中样本因子虽然比较少,但是能够较好的反映样本的实质,离散度小,故所建最优模型的TS评分值和预报概况率均高于试验二,说明对应的模型具有较好的泛化能力。充分说明参与训练建模的样本的因子与样本之间的相关程度对于所建模型的质量有一定的影响。

  3 结论

  通过对《伤寒论》方以八法为主题的SVM训练建模应用表明:SVM分类方法是通过寻求支持向量集来刻化因子与对象之间的非线性依赖关系,通过有限的支持向量就可以描述海量信息的分布特征。从上面的试验结果可以看出,一个好的最优模型其支持向量的数量明显少于参与训练建模的样本数量,而且通过少量的支持向量就可以描述分类样本的特征。系统通过学习作为支持向量的样本就可以识别与之相似或相同的预测样本。SVM是通过对支持向量样本“加权”构造最优推理模型,而不是对样本中每一个因子进行加权,因而对因子的数量没有明显的限制,因此,通过选取与预测对象有明确意义的各种因子,就可以充分地表述预报对象与预报因子之间的关系。一般来说,一张处方的信息只有药物、药量和医嘱,单纯用药物和药量这两个因子来描述处方特性相对来说过于简单。由于SVM对样本因子的数量没有限制,支持高维数据的分类识别,因此本试验通过中医处方智能分析系统对处方背后的信息如综合性味归经、功效、适应证候等因子进行深入挖掘,让尽可能多的因子来表述样本对象的特征,这样所建模型的推广能力比较强。但是,通过试验可以看出,SVM虽然对样本因子的数量没有要求,但对样本因子与样本对象之间的关联程度是有要求的,样本因子离散程度越小越好。我们对SVM的参数优化问题进行了试验,结果表明在样本数量比较少的情况下,判错惩罚系数c越大,建立最优模型时训练样本集中被错分的样本越少,同时所建模型越复杂,对训练建模样本的质量要求比较高。参数g则相应的小一些比较好,但并不是越小越好,需要进行多次循环实验,试验结果显示一般在0.001时比较好。

参考文献


 [1] Burges CJC. A tutorial on support vector machines for pattern recognition[J]. Data Mining and Knowledge Discovering,1998,2(2):121-167.

  [2] 陈永义.处理非线性问题分类和回归问题的一种新方法(Ⅰ)——支持向量机方法简介[J].应用气象学报,2004,(2):345-354.

  [3] 溏述敏,方景龙.基于支持向量机的人脸识别[J].计算机与数字工程, 2005,33(7):75-78.

  [4] 杨晓懿,刘嘉勇,陈淑敏.SVM在文本自动分类中的应用[J].成都信息工程学院学,2005,20(2):121-124.

  [5] 张晓龙,杨艳霞.机器学习在生物信息学中的应用[J].武汉科技大学学报(自然科学版),2005,28(2):201-204.

  [6] 阎威武,邵惠鹤.支持向量机分类器在医疗诊断中的应用[J].计算机仿真,2003,20(3):69-73.

  [7] 任廷革,刘晓峰,高全泉,等.中医方剂功效定性和定量研究初探[J].中国中医药信息杂志,2007,14(6):100-102.

  [8] 陈永义.计算机学习的SVM方法与应用软件平台CMSVM[J].上海大学学报(自然科学版),2004,10(1):243.

如果您有论文相关需求,可以通过下面的方式联系我们
客服微信:371975100
QQ 909091757 微信 371975100