一种基于svm-rfe和重叠度的特征选择方法
【技术领域】
[0001] 本发明属于数据挖掘、生物信息学技术的交叉领域,用于从生物信息中筛选出具 有区分能力特征的方法。
【背景技术】
[0002] 在数据挖掘领域,特征选择是一种主要的数据分析方法。近年来,数据呈现出数据 量大,数据类型更加多样,数据所含信息价值低等特点,所以如何从数据中挖掘出有用的特 征信息成为越来越受关注的研究领域。
[0003] 本发明是一种基于支持向量迭代特征删除算法(Support Vector Machine-Recursive Feature Elimination , SVM-RFE) 和样本重叠度的特征选择方法。 SVM-RFE 在迭 代过程中采用SVM度量特征的重要性,是一种高性能特征选择方法,广泛应用于基因、蛋白、 代谢等生物信息处理。但随着生物分析技术的发展,基因、蛋白等生物数据维数巨增,如何 从中提取富含信息的变量对疾病的诊断、药物治疗以及营养等研究具有重要意义。SVM-RFE 在迭代删除特征过程中,会删除那些权重偏低的特征,这里的权重代表特征的重要性,特征 权重越大说明特征蕴含的信息越重要。如何确定迭代过程中的哪一次产生的特征子集作为 最优子集,在有的研究中采用迭代删除到预先确定的特征个数作为最优子集,有的研究中 采用准确率作为评价指标来选择最优子集。在SVM-RFE的后向迭代特征选择过程中,利用准 确率作为评价指标来选择最优特征子集,准确率的高低反应特征集的区分能力的好坏,但 准确率也只是从一个角度来反应特征子集的区分能力好坏。对于特征子集F,训练样本的重 叠度反应了不同类样本的分布,同样可以反应特征子集F的区分能力。
[0004] 在用SVM构建模型时,如果某个特征子集具有良好的区分能力,那么基于该特征子 集的支持向量构建的超平面应更易于区分不同类样本,并且不同类样本间的重叠区域应该 较小。
[0005] 样本集的重叠区域反应了不同类样本的混合程度,样本的重叠区域越小,那么不 同类样本间的分割界限应更加清楚简明,不同类样本应更容易区分。反之重叠区域越大,不 同类的样本混合程度越大,分类界限更模糊,不同类样本的分类错误率更大。
【发明内容】
[0006] 为了更加准确的评价特征子集,本发明在后向迭代特征选择过程中,采用了基于 训练样本上的准确率和重叠度的综合评价指标,用来评价特征的区分能力。一个具有较好 区分能力的特征子集,应该有着较高的准确率和较低的重叠度。此外,在SVM-RFE的特征选 择过程中,SVM基于当前的特征集和训练样本建模时,对于特征权值的计算,只有SVM所建模 型的超平面上的样本会被考虑,而超平面是基于当前训练样本和特征空间所构建,如果当 前特征空间下,样本重叠度很高,模型的过拟合问题会发生,故在SVM-RFE每次迭代删除特 征的过程中,暂时屏蔽那些重叠度较高的训练样本,有助于减小模型的过拟合问题。
[0007] -种基于SVM-RFE和重叠度的特征选择方法,具体步骤如下:
[0008] (1)当前训练样本集合X,迭代删除特征比为t,当前特征集合为F;初始时,F包含所 有特征,FS为空,交叉验证倍数为d,初始准确率c_acc = 0.0,初始重叠度c_oa = 0.0;
[0009] (2)如果当前特征集合F不为空,对于每一类样本集Xj = {x |x£X,Label(x) = j}统 计该类样本的个数9j,对每个于xieXj,计算Nr(xi),Nr(xi)的计算方式按公式(2):
[0010]所述的每个样本的重叠度Nr(Xi),其计算方式如下:
[0011] a.在当前特征空间F上,对当前训练样本中的每个样本Xi,0/?(^)=
'Label (Xi)为样本Xi所属的类 标;
[0012] b.在当前特征空间F上,计算r(xi):
[0014] Difflabel(xi) = {x | xEKNN(Xi)and Label (X)关 Label (Xi)}
[0015] Samelabel(xi) = {x | xEKNN(Xi)and Label (x) =Label (Xi)};
[0016] 在训练样本集中,每个样本Xi采用欧几里得距离,求其最近的K个样本,Difflabel (Xi)代表样本Xi的K近邻中与Xi不同类标的样本数目,Same labe 1 (Xi)代表样本Xi的K近邻中 与xi同类标的样本数目;
[0017] c.再对r(xi)标准化得出Nr(xi):
[0019]将Nr(xi)按降序排列,对每类样本,暂时屏蔽Nr(xi)>0的样本,并且最多屏蔽每类 样本数目1/3的样本;对每一类样本做上述处理后,剩余样本集为Xt;
[0020] (3)基于当前特征集合F和训练集合Xt,构建SVM分类模型,得出d折交叉验证的分 类准确率T_c_acc;
[0021] (4)计算出在当前特征集合F上训练样本Xt中的每个样本xi的重叠度Nr (xi),按公 式(2)计算,再求训练样本集合Xt的平均重叠度T_c_oa;
[0022] (5)如果1'_(3_8(^-1'_(3_〇&> = (3_&(^-(3_〇&,则(3_&(^ = 1'_(3_&(^,(3_〇& = 1'_(3_〇&,卩3 = F;
[0023] (6)根据F构建的SVM分类模型,计算每个特征fiEF的权重|Wi |,对特征集合F中的 每个特征根据权重I w |值降序排序;
[0024] (7)删除当前特征集合F中权重最低的t%特征;
[0025] (8)重复步骤(2)-(7)直到F为空,返回最优特征子集FS。
[0026] 本发明提供了一种新的特征选择方法,以样本重叠度和准确率作为综合评价指标 来评价特征,而且通过屏蔽高重叠度的样本来降低模型的过拟合问题,以建造更准确的模 型,来帮助发现具有区分能力的生物标志信息。
【具体实施方式】
[0027] 以2类(〇 = 2)问题上8个训练样本父={10,11,12,13,14,15,16 47}为例,说明样本重 叠度Nr(Xl)的计算方法,以及简要说明特征选择方法M-SVM-RFE-OA的执行过程。该两类训 练样本共含有8个样本,当前特征集为F,第一类样本集X〇 = {xo,X1,X2,X3},第二类样本集X: ={X4,X5,X6,X7},每个样本求其最近的K的邻居时,这里取K = 3,初始准确率c_acc = 0.0,初 始重叠度(3_〇3 = 0.0。首先计算在当前特征子集F下,每个样本的初始样本分布OR(xi),由于 两类样本数目一样,故对于所有样本〇R(xi) = l,再求每个样本的重叠度Nr(xi),结果如表1 所示。
[0029]表1样本的重叠度Nr(x)计算
[0030]对于第一类样本集乂0={1〇4142 43},按处(1)的值按降序排列,屏蔽那些他(1)>0 的样本,并且最多屏蔽该类样本数目的1/3的样本,综上条件,只有样本X2需要屏蔽。对于第 二类样本集Χι= {X4,X5,X6,X7},按Nr(x)的值按降序排列,屏蔽那些Nr(x)>0的样本,并且最 多屏蔽该类样本数目的1/3的样本,综上条件,则只有样本 X5要屏蔽。暂时屏蔽样本X2,X5后, 剩余样本集为Xt= {χο,XI,X3,X4, X6,X7},基于特征空间F和Xt构建SVM模型,得出d折交叉验证 的分类准确率为T_c_acc = 0.80,在训练集Xt上,重新计算每个样本的重叠度Nr(x),Nr(x〇) =-〇 · 5,Nr(xi) = -1 · 0,Nr(X3) = -〇 · 5,Nr(X4) = -〇 · 5,Nr(X6) = -1 ·0,Nr(X7) = -〇 · 5 训练集 Xt 上的平均重叠度 T_c_oa = - (0 · 5+1 · 0+0 · 5+0 · 5+1 · 0+0 · 5) /6 = -0 · 667,则 T_c_acc-T_c_oa = 1 · 467,故T_c_acc-T_c_oa>c_acc_c_oa,所以c_acc = T_c_acc = 0 · 80,c_oa = T_c_oa = _ 0.557,FS = F。根据F和Xt构建的SVM分类模型,计算每个特征fiEF的权重I Wi I,对特征集合F 中的每个特征根据权重|W|值降序排序,删除当前特征集合F中权重最低的t%特征。这是M-SVM-RFE-0A特征选择的一次执行过程,循环终止的条件是F为空,最终返回最优特征子集 FS〇
【主权项】
1. 一种基于SVM-RFE和重叠度的特征选择方法,其特征在于w下步骤: (1) 当前训练样本集合X,迭代删除特征比为t,当前特征集合为F;初始时,F包含所有特 征JS为空,交叉验证倍数为d,初始准确率c_acc = 0.0,初始重叠度c_oa = 0.0; (2) 如果当前特征集合F不为空,对于每一类样本集、=^^£乂,1^3661^) = ^统计该 类样本的个数目j,对每个于xiEXj,计算化(Xi),化(xi)的计算方式按公式(2): 所述的每个样本的重叠度化(XI),其计算方式如下: a. 在当前特征空间F上,对当前训练样本中的每个样本Xi,OR(Xi) = {x|xeX,LabeKx) 辛1^日661(又〇}/川又£乂,1^日661(又)=1^日661(化)};1^日661佔)为样本又1所属的类标; b. 在当前特征空间F上,计算r(xi):(1) Diff label (Xi) = {x I xEKNN(Xi)and Label(X)辛Label(Xi)} Samelabel(xi) = (x I xEKNN(Xi)and Label(x) = Label(Xi)}; 在训练样本集中,每个样本xi采用欧几里得距离,求其最近的K个样本,Diff label(xi) 代表样本Xi的Κ近邻中与Xi不同类标的样本数目,Samelabel(xi)代表样本Xi的Κ近邻中与Xi 同类标的样本数目; C.再对rUi)标准化得出NrUi):将化(XI)按降序排列,对每类样本,暂时屏蔽化(xi)〉〇的样本,并且最多屏蔽每类样本 数目1/^3的样本;对每一类样本做上述处理后,剩余样本集为沿; (3) 基于当前特征集合F和训练集合Xt,构建SVM分类模型,得出d折交叉验证的分类准确 率T_c_acc; (4) 计算出在当前特征集合F上训练样本Xt中的每个样本XI的重叠度化(XI),按公式(2) 计算,再求训练样本集合Xt的平均重叠度T_c_oa; (5) 女日果 T_c_acc - T_c_oa〉= c_acc - c_oa,贝 ljc_acc = T_c_acc, c_oa = T_c_oa, FS = F; (6) 根据F构建的SVM分类模型,计算每个特征fiEF的权重I Wi I,对特征集合F中的每个 特征根据权重I W|值降序排序; (7) 删除当前特征集合F中权重最低的t%特征; (8) 重复步骤(2)-(7)直到F为空,返回最优特征子集FS。
【专利摘要】本发明属于数据挖掘、生物信息学技术的交叉领域,涉及一种基于SVM-RFE和重叠度的特征选择方法。首先基于训练样本X和当前特征集合F,屏蔽那些Nr(xi)>0的样本,并且最多屏蔽每类样本数的1/3,则剩余样本为Xt。然后基于当前特征集合F和训练集合Xt,构建SVM分类模型,得出d折交叉验证的分类准确率,然后计算出在当前特征集合F上训练样本Xt中的每个样本xi的重叠度Nr(xi),再求训练样本集合Xt的平均重叠度,选取对应分类准确率和平均准确率差最大的特征集FS作为最优特征集。本发明的方法用于特征选择,并且通过屏蔽高重叠度的样本来降低模型的过拟合问题,以帮助发现具有区分能力的生物标志信息。
【IPC分类】G06K9/62, G06F19/24
【公开号】CN105574363
【申请号】CN201510932825
【发明人】范蒙, 林晓惠, 王家天, 郝志强, 王珏
【申请人】大连理工大学
【公开日】2016年5月11日
【申请日】2015年12月14日