基于最大信息系数和基尼指标的特征选择方法技术

技术编号:21893276 阅读:49 留言:0更新日期:2019-08-17 15:02
本发明专利技术公开了一种基于最大信息系数和基尼指标的特征选择方法,其中,所述方法包括:S101:用于特征选择的非平衡数据集;S102:利用RM‑SMOTE算法对非平衡数据集进行处理;S103:利用最大信息系数法对处理过的数据进行相关性特征筛选,得出筛选后的特征集;S104:通过随机森林模型(random forest,RF)中的Gini指数计算筛选后的每个特征对RF模型的特征重要度并对其进行排序,去除重要度较低的特征,得到最终特征数据集;S105:将得到的特征数据集输入到SVM模型中,得到数据集优化后的SVM模型;S106:利用测试集对新的模型进行测试,使用AUC值作为评判模型的标准。

Feature Selection Method Based on Maximum Information Coefficient and Gini Index

【技术实现步骤摘要】
基于最大信息系数和基尼指标的特征选择方法
本专利技术公开了一种特征选择方法,涉及了数据处理

技术介绍
随着互联网应用和技术的不断进步,数据规模呈现出爆发式增长的状态,这也带来了“维度灾难”等问题,如何有效的降低数据集中的特征维度,成为实际数据挖掘工作需要解决的问题。特征选择方法通过选取优质特征,删除无关和冗余特征,实现降低数据集特征维度,提高分类效率和准确率的功能,且有去噪、防止过拟合的作用。非平衡数据集在日常生活和产生过程中是很常见的,即多数类和少数类之间的比例严重失衡,如医疗诊断、风险控制、交易欺诈等。支持向量机算法模型(supportvectormachine,SVM)在解决非线性、小样本、高维模式分类识别中展现了诸多优势,其在生物医学、模式识别等领域受到广泛关注,为了提高SVM的分类精度和泛化能力,相关学者提出通过特征工程来提高该模型分类精度的方法。胡峰等人提出了基于特征聚类的封装式特征选择方法,王凯等人提出了改进特征选择RF算法,吴辰文等人提出了基于RF模型Gini指标特征加权的支持向量机方法(RFG-SVM)。
技术实现思路
本专利技术的目的在于提供一种基于最大信息系数和基尼指标的特征选择方法,能够提高对非平衡数据集分类的精度。为实现上述目的,本专利技术提供一种基于最大信息系数和基尼指标的特征选择方法,所述方法包括:S101:选取UCI数据库中冠状动脉疾病数据集数据;S102:对冠状动脉疾病数据集的数据进行数据预处理,所述预处理包括数据离散化、归一化以及数据平衡化处理;S103:利用最大信息系数法对处理后的数据进行相关性特征选择,得到筛选后的特征数据集;S104:通过随机森林模型中的Gini指数计算筛选后的每个特征对RF模型的特征重要度并对其进行排序,去除重要度较低的特征,得到最终特征数据集;S105:将得到的特征数据集输入到SVM模型中,得到数据集优化后的SVM模型;S106:利用测试集对新的模型进行测试,使用AUC值作为评判模型的标准;根据所述的方法,其特征在于,所述方法还包括:S1021:本专利技术采用RM-SMOTE算法进行数据平衡化。本专利技术采用一种球形插值思想(roundmeans,RM)来改进SMOTE算法的插值公式,从而构建一种改进的采样算法为RM-SMOTE算法。该算法是对数据集中的少数类进行聚类操作,形成若干个聚类簇,然后根据欧几里得距离计算少数类样本各聚类簇的聚类中心和聚类簇中其他少数类样本到聚类中心的距离,然后以最远的聚类样本到聚类中心的距离为半径建立球形空间,最后在这个空间内进行插值。具体步骤如下:将预处理后的少数类样本数据随机选择K个初始聚类中心对少数类样本进行聚类,得到K个聚类簇。根据欧几里得距离计算各个簇类少数类样本到聚类中心的距离,然后以最远的聚类样本到聚类中心的距离为半径建立球形空间。按照如下公式计算欧几里得距离:d(xi,xj)=||xi-xj||2其中,d(xi,xj)表示样本xi与其余样本xj之间的欧氏距离,i=1,2,...,n,j=1,2,...,m,||*||2表示二范数运算。S1025:在球形空间内进行插值,插值公式如下:Pj=uij+rand(0,1)×(bj-aj),1≤j≤E其中uij(i=1,2,...,k,j=1,2,...,E)为簇心ui的第j个属性,E为少数类样本集样本的属性个数,pj(j=1,2,...,E)为新合成的“人造”样本P的第j个属性的属性值,rand(0,1)为(0,1)之间的一个随机数,而(bj-aj)满足如下公式的条件。aj=uij-|Xmaxj-uij|,bj=uij+|Xmaxj-uij|,1≤j≤E其中|Xmaxj-uij|表示取得最大欧式距离的数据Xmax与簇心ui两者之间第j个属性的属性差的绝对值。这样构造产生的人造样本不再是传统的SMOTE算法在少数类样本连线或者延长线之间的插值了,而是在一个设定半径所构成的球形空间内进行插值,这种插值方式控制了插入的范围,对于正负类样本边界模糊的问题具有更好的效果。根据所述的S103最大信息系数法对处理后的数据进行相关性特征选择,其特征在于,所述方法还包括:S1031:Reshef等提出的最大信息系数理论和求解方法,重点描述了变量间度量关系,通过这种度量关系进一步得到它们间的非函数依赖关系。最大信息系数主要利用互信息和网格划分方法进行计算,互信息是用来衡量变量之间的相关程度,对于给定变量A={ai,i=1,2,...,n}和B={bi,i=1,2,...,n},其中n为样本的数量,则其互信息定义为:其中P(a,b)是a和b的联合概率密度函数,而P(a)和P(b)分别是a和b的边缘概率密度函数,使用直方图估计对上述的概率密度进行估算。假设D={(ai,bi),i=1,2,...,n}为一个有限的有序对的集合,定义划分G将变量A的值域分成x段,将B的值域分成y段,G即为x×y的网格。在得到的每一种网格划分内部计算互信息MI(A,B)最大值作为划分G的互信息值,定义划分G下D的最大互信息公式为:MI*(D,x,y)=maxI(D|G)其中(D|G)表示数据D在使用D进行划分,虽然最大信息系数是利用互信息来表示网格的好坏,但是其并不是简单地估计互信息,而是将不同划分下得到的最大归一化MI值组成特征矩阵,特征矩阵定义为M(D)x,y,计算公式如下所示:则最大信息系数可以定义为:MIC(D)=maxxy<B(n){M(D)x,y}其中,B(n)为网格划分x×y的上限值,一般地,B(n)=n0.6时效果最好,因此本专利技术也采用该值。本文使用最大信息系数来定义特征与类别、特征与特征间的相关性,给定一个n条样本的特征集F={f1,f2,...,fm,c},其特征数为m,类别为c。对任意特征fi和类别c间的相关性定义为MIC(fi,c),取值范围在[0,1]。MIC(fi,c)值越大表明fi和类别c之间的相关性越强,那么fi则被认为是强相关特征,倾向于保留此特征,MIC(fi,c)值越小表明fi和类别c之间的相关性越弱,那么fi则被认为是弱相关特征,倾向于删除此特征;如果MIC(fi,c)的值为0,说明fi是无关冗余的特征,需要删除。任意两个特征fi和fj之间的冗余性也是一种相关性,我们定义其为MIC(fi,fj),该值越大则表示这两个特征之间的相似度越高,冗余度也就越高。如果该值为0,说明这两个特征相互独立。根据所述的S104Gini指数筛选重要特征,其特征在于,所述方法还包括:S1041:决策树是数据挖掘领域一种比较典型的单分类器,可以把它看作一个树形结构的模型,通过典型的节点展现树的特征,分别为:根节点、中间节点、叶子节点。决策树从根节点出发,再经过许多个中间节点,最后到达叶子节点,整个过程路径要符合某些规则,且输出单一值,即每棵决策树到达唯一的叶子节点,实现了数据集的分类。为了解决决策树分类规则复杂、易得到局部最优解、过度拟合等问题,集成单个分类器,这就是随机森林的思想。随机森林在特征随机选取后,需要通过节点分裂算法进行最优属性的选取,且采用程序递归的方式,将根节点分为两颗子树,又从选中的子树继续生成左右子树,如此递归,直到生成最终的叶子节点。节点分裂算法有很多种,包括ID本文档来自技高网...

【技术保护点】
1.一种基于最大信息系数和基尼指标的特征选择方法,其中,所述方法包括:S101:选取UCI数据库中冠状动脉疾病数据集数据。S102:对冠状动脉疾病数据集的数据进行数据预处理,所述预处理包括数据离散化、归一化以及数据平衡化处理。S103:利用最大信息系数法对处理后的数据进行相关性特征选择,得到筛选后的特征数据集。S104:通过随机森林模型中的Gini指数计算筛选后的每个特征对RF模型的特征重要度并对其进行排序,去除重要度较低的特征,得到最终特征数据集。S105:将得到的特征数据集输入到SVM模型中,得到数据集优化后的SVM模型。S106:利用测试集对新的模型进行测试,使用AUC值作为评判模型的标准。

【技术特征摘要】
1.一种基于最大信息系数和基尼指标的特征选择方法,其中,所述方法包括:S101:选取UCI数据库中冠状动脉疾病数据集数据。S102:对冠状动脉疾病数据集的数据进行数据预处理,所述预处理包括数据离散化、归一化以及数据平衡化处理。S103:利用最大信息系数法对处理后的数据进行相关性特征选择,得到筛选后的特征数据集。S104:通过随机森林模型中的Gini指数计算筛选后的每个特征对RF模型的特征重要度并对其进行排序,去除重要度较低的特征,得到最终特征数据集。S105:将得到的特征数据集输入到SVM模型中,得到数据集优化后的SVM模型。S106:利用测试集对新的模型进行测试,使用AUC值作为评判模型的标准。2.根据权利要求1所述的S102数据平衡化,其特征在于,所述方法还包括:S1021:本发明采用RM-SMOTE算法进行数据平衡化。S1022:本发明采用一种球形插值思想(roundmeans,RM)来改进SMOTE算法的插值公式,从而构建一种改进的采样算法为RM-SMOTE算法。该算法是对数据集中的少数类进行聚类操作,形成若干个聚类簇,然后根据欧几里得距离计算少数类样本各聚类簇的聚类中心和聚类簇中其他少数类样本到聚类中心的距离,然后以最远的聚类样本到聚类中心的距离为半径建立球形空间,最后在这个空间内进行插值。具体步骤如下:S1023:将预处理后的少数类样本数据随机选择K个初始聚类中心对少数类样本进行聚类,得到K个聚类簇。S1024:根据欧几里得距离计算各个簇类少数类样本到聚类中心的距离,然后以最远的聚类样本到聚类中心的距离为半径建立球形空间。按照如下公式计算欧几里得距离:d(xi,xj)=||xi-xj||2(1)其中,d(xi,xj)表示样本xi与其余样本xj之间的欧氏距离,i=1,2,...,n,j=1,2,...,m,||*||2表示二范数运算。S1025:在球形空间内进行插值,插值公式如下:Pj=uij+rand(0,1)×(bj-aj),1≤j≤E(2)其中uij(i=1,2,...,k,j=1,2,...,E)为簇心ui的第j个属性,E为少数类样本集样本的属性个数,pj(j=1,2,...,E)为新合成的“人造”样本P的第j个属性的属性值,rand(0,1)为(0,1)之间的一个随机数,而(bj-aj)满足如下公式的条件。aj=uij-|Xmaxj-uij|,bj=uij+|Xmaxj-uij|,1≤j≤E(3)其中|Xmaxj-uij|表示取得最大欧式距离的数据Xmax与簇心ui两者之间第j个属性的属性差的绝对值。这样构造产生的人造样本不再是传统的SMOTE算法在少数类样本连线或者延长线之间的插值了,而是在一个设定半径所构成的球形空间内进行插值,这种插值方式控制了插入的范围,对于正负类样本边界模糊的问题具有更好的效果。3.根据权利要求1所述的S103最大信息系数法对处理后的数据进行相关性特征选择,其特征在于,所述方法还包括:S1031:Reshef等提出的最大信息系数理论和求解方法,重点描述了变量间度量关系,通过这种度量关系进一步得到它们间的非函数依赖关系。最大信息系数主要利用互信息和网格划分方法进行计算,互信息是用来衡量变量之间的相关程度,对于给定变量A={ai,i=1,2,...,n}和B={bi,i=1,2,...,n},其中n为样本的数量,则其互信息定义为:其中P(a,b)是a和b的联合概率密度函数,而P(a)和P(b)分别是a和b的边缘概率密度函数,使用直方图估计对上述的概率密度进行估算。假设D={(ai,bi),i=1,2,...,n}为一个有限的有序对的集合,定义划分G将变量A的值域分成x段,将B的值域分成y段,G即为x×y的网格。在得到的每一种网格划分内部计算互信息MI(A,B)最大值作为划分G的互信息值,定义划分G下D的最大互信息公式为:MI*(D,x,y)=maxI(D|G)(5)其中(D|G)表示数据D在使用D进行划分,虽然最大信息系数是利用互信息来表示网格的好坏,但是其并不是简单地估计互信息,而是将不同划分下得到的最大归一化MI值组成特征矩阵,特征矩阵定义为M(D)x,y,计算公式如下所示:则最大信息系数可以定义为:其中,B(n)为网格划分x×y的上限值,一般地,B(n)=n0.6时效果最好,因此本发明也采用该值。本文使用最大信息系数来定义特征与类别、特征与特征间的相关性,给定一个n条...

【专利技术属性】
技术研发人员:梁雪春毕青松
申请(专利权)人:南京工业大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1