用于数据挖掘的具有冗余剔除能力的混合特征选择方法

文档序号:6619238阅读:342来源:国知局
专利名称:用于数据挖掘的具有冗余剔除能力的混合特征选择方法
技术领域
本发明涉及一种用于数据挖掘的具有冗余剔除能力的混合特征选择方法,属于数据挖掘技术领域。
背景技术
数据挖掘致力在海量的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识。目前已经有不少基于计算机的数据挖掘(或知识发现)系统应用到电力、金融、商业、军事、医药、生命等领域。一个典型的基于计算机的数据挖掘过程由准备数据和预处理、数据挖掘、结果分析与知识应用等步骤组成。在实际应用中,数据表中每一列称为一个属性。特征选择是数据挖掘重要的预处理步骤,从高维属性空间中选取少量主要属性,作为数据挖掘的输入属性,可以有效提高数据挖掘的精度和效率。(data mining)或知识发现(knowledge discovery in database)中的特征选择(featureselection)。
本申请人曾于2005年8月26日申请的、申请号为200510092983.7、发明名称为“数据挖掘中一种混合互信息的特征选择方法”,考虑属性能够提供的新信息量,还兼顾属性与类别标号属性的相关度,但它具有大多数特征选择方法共有的缺点不具备很好的剔除冗余属性的能力,在选择过程中添加了冗余量,造成数据挖掘精度和简易度的降低,尤其当第一个被选择属性不够好时,将导致特征选择过程的失败。

发明内容
本发明的目的是提出一种用于数据挖掘的具有冗余剔除能力的混合特征选择方法,针对已有技术的缺陷,采用一种基于Parzen窗的统一型互信息估计方法(以下简称PG法)估计互信息,用前进后退(以下简称FB)法搜索最优特征集合,既可以处理目标属性为离散属性的分类问题,也可以直接处理目标属性为连续属性的回归问题。
本发明提出的用于数据挖掘的具有冗余剔除能力的混合特征选择方法,包括(1)建立一个由待处理数据的N个输入属性组成的集合F,所述的待处理数据含有N个输入属性和一个目标属性C,所述的输入属性为连续属性或离散属性,建立一个空集合S0,用以存放从集合F中选择的属性;(2)对上述集合F中的每个输入属性fi,用基于帕森窗的统一型互信息估计法计算第一互信息值I(C;S0∪{fi}),其中S0∪{fi}为向上述空集合S0中增加fi后的集合,并从计算的互信息值中得到为待处理数据分类贡献最大的输入属性fj,即,使I(C;S0∪{fi})值为最大的属性fj;(3)计算上述输入属性fj的信息增益比α′,α′=I(C;S0∪{fi})-I(C;S0)H(C),]]>当满足α′>α+,或满足I(C;S0)/H(C)<ε时,则在上述空集合S0中添加属性fj,并将S0记为Sa1,并在集合F中删除fj,其中α+和ε为设定的信息增益值,H(C)为目标属性C的熵;(4)对上述集合Sa1中的每个属性si,用基于帕森窗的统一型互信息估计方法计算第二互信息值I(C;Sa1\{si}),其中Sa1\{si}表示在集合Sa1中删除属性si后的集合,并计算信息减少值α″,α′′=I(C;Sa1)-I(C;Sa1\{si})H(C),]]>将α″与α-的大小进行判断,若满足α″<α-,则从集合Sa1中删除si,在集合F中添加si,若不满足,则不操作,新建一个与判断后的Sa1相同的集合,记为Sb1,其中α-为设定的信息减少值;(5)重复上述步骤(2)(3)(4),每次重复时,步骤(2)中,使Sbi替换S0,步骤(3)中,使Sa(i+1)替换Sai,步骤(4)的集合记为Sb(i+1),直到步骤(3)中不再有属性fj添加到Sai中,停止循环,记最后得到的Sbi为Slast;(6)对于每一次重复得到的集合Sbi,用基于帕森窗的统一型互信息估计方法计算第三互信息值I(C;Si)和信噪比SNRatio(C,Si)=I(C;Si)H(Si)-I(C;Si),]]>其中H(Si)为集合Si的熵,若步骤(1)集合F中的N个属性为离散属性,则选择使I(C;Si)≥I(C;Slast)且信噪比最大的集合Si作为选择的特征属性集合;若第(1)步中F中的N个属性不全是离散属性,则选择使I(C;Si)≥I(C;Slast)且H(Si)最小的集合Si作为选择的特征属性集合。
本发明提出的用于数据挖掘的具有冗余剔除能力的混合特征选择方法,统称为PGFB法,其优点是能够直接处理目标属性为连续属性的回归问题;能够直接处理输入属性为离散、连续属性混合的情况;能够动态剔除冗余属性。采用本方法从数据表大量候选属性中选出少量特征属性作为数据挖掘的输入属性,不但可提高数据挖掘的速度,还可提高数据挖掘的精度。很好地克服了PG-HMI剔除冗余等方面的缺陷。
具体实施例方式
本发明提出的用于数据挖掘的具有冗余剔除能力的混合特征选择方法,包括(1)建立一个由待处理数据的N个输入属性组成的集合F,所述的待处理数据含有N个输入属性和一个目标属性C,所述的输入属性为连续属性或离散属性,建立一个空集合S0,用以存放从集合F中选择的属性;(2)对上述集合F中的每个输入属性fi,用基于帕森窗(Parzen Window).的统一型互信息估计法计算第一互信息值I(C;S0∪{fi}),其中S0∪{fi}为向上述空集合S0中增加fi后的集合,并从计算的互信息值中得到为待处理数据分类贡献最大的输入属性fj,即,使I(C;S0∪{fi})值为最大的属性fj;(3)计算上述输入属性fj的信息增益比α′,α′=I(C;S0∪{fi})-I(C;S0)H(C),]]>当满足α′>α+,或满足I(C;S0)/H(C)<ε时,则在上述空集合S0中添加属性fj,并将S0记为Sa1,并在集合F中删除fj,其中α+和ε为设定的信息增益值,H(C)为目标属性C的熵;(4)对上述集合Sa1中的每个属性si,用基于帕森窗(Parzen Window)的统一型互信息估计方法计算第二互信息值I(C;Sa1\{si}),其中Sa1\{si}表示在集合Sa1中删除属性si后的集合,并计算信息减少值α″,α′′=I(C;Sa1)-I(C;Sa1\{si})H(C),]]>将α″与α-的大小进行判断,若满足α″<α-,则从集合Sa1中删除si,在集合F中添加si,若不满足,则不操作,新建一个与判断后的Sa1相同的集合,记为Sb1,其中α-为设定的信息减少值;本发明方法中,将上述步骤(3)和(4)称为前进后退(以下简称FB)搜索法,以下将详细介绍。
(5)重复上述步骤(2)(3)(4),每次重复时,步骤(2)中,使Sbi替换S0,步骤(3)中,使Sa(i+1)替换Sai,步骤(4)的集合记为Sb(i+1),直到步骤(3)中不再有属性fj添加到Sai中,停止循环,记最后得到的Sbi为Slast;(6)对于每一次重复得到的集合Sbi,用基于帕森窗(Parzen Window)的统一型互信息估计方法计算第三互信息值I(C;Si)和信噪比SNRatio(C,Si)=I(C;Si)H(Si)-I(C;Si),]]>其中H(Si)为集合Si的熵,若步骤(1)集合F中的N个属性为离散属性,则选择使I(C;Si)≥I(C;Slast)且信噪比最大的集合Si作为选择的特征属性集合;若第(1)步中F中的N个属性不全是离散属性,则选择使I(C;Si)≥I(C;Slast)且H(Si)最小的集合Si作为选择的特征属性集合。
以下进一步详细说明本发明方法的各个步骤。
一个数据库中每一条数据可以用一个向量来表示M(c;v1,v2,……,vN),其中vi为该数据输入属性Vi的值,Vi既可以是离散属性也可以是连续属性,它们共同确立目标属性C的状况,c为该数据分类属性C的值,当C为离散属性时,数据挖掘处理的是分类问题,C为连续属性时,数据挖掘处理的是回归问题。特征选择的目的为从N个输入属性中选择出对目标属性C影响最大的若干个属性。
本发明方法中,关于熵和互信息的基本概念为根据香农的信息理论,熵(entropy)是随机变量不确定性的度量。一个离散随机变量X,其可能取值集合记为Sx,对应于x∈Sx其概率密度函数为p(x),则X的熵定义为H(X)=-Σx∈sxp(x)logp(x)...(1)]]>当变量Y已知,变量X中剩余的不确定性用条件熵(conditional entropy)来度量H(X|Y)=-Σx∈SxΣy∈Syp(x,y)logp(x|y)...(2)]]>条件熵与熵有如下关系H(X|Y)=H(XY)-H(Y) (3)两个随机变量X和Y的统计依存关系用互信息(mutual information)来度量
I(X;Y)=Σx∈SxΣy∈Syp(x,y)logp(x,y)p(x)p(y)...(4)]]>如果两个随机变量的互信息较大,则这两个随机变量相关性较大。互信息和熵有如下关系I(X;Y)=H(X)-H(X|Y)=H(Y)-H(Y|X) (5)=H(X)+H(Y)-H(XY)在Z已知的条件下,X和Y的统计依存度可以用条件互信息来表示I(X;Y|Z)=Σx∈SxΣy∈SyΣz∈Szp(x,y,z)logp(x,y|z)p(x|z)p(y|z)...(6)]]>条件互信息与熵有如下关系I(X;Y|Z)=H(XZ)+H(YZ)-H(Z)-H(XYZ)(7)互信息的单调性I(X;Y)≤I(X;YZ)(8)对于连续随机变量,微分熵、互信息、条件互信息分别定义如下H(X)=-∫xp(x)logp(x)dx...(9)]]>I(X;Y)=∫∫x,yp(x,y)logp(x,y)p(x)p(y)dxdy...(10)]]>I(X;Y|Z)=∫∫∫x,y,zp(x,y,z)logp(x,y|z)p(x|z)p(y|z)dxdydz...(11)]]>式(1)~(11)给出了随机变量X、Y、Z的熵、互信息、条件互信息的计算公式及关系,对于随机矢量X、Y、Z,公式形式保持一致。
本发明提出了一种PG互信息计算方法,可以处理离散连续属性混合时互信息的计算问题。下面以计算I(X;Y)为例统一说明PG法计算互信息的步骤。在计算I(X;Y)时,只要先计算出H(X),H(Y)以及H(XY)便可利用下式得到互信息I(X;Y)。
I(X;Y)=H(X)+H(Y)-H(XY) (12)因此只讨论统一型互信息的计算就足够了。不失一般性,假设矢量Z的前K个属性为离散属性,后D-K个属性为连续属性Z=UX=U1...UK,X1,...XD-K,H(Z)可以分成H(U)和H(X|U)两项,参见式(3)。下面分别讨论这两项的计算方法。
H(Z)=H(UX)=H(U)+H(X|U) (13)
H(U)的估计是简单而直接的,可以按照互信息的定义式直接计算如下H(U)=-Σu∈Sup(u)logp(u)=-Σu∈Sununlognun]]>=logn-1nΣu∈Sunulognu]]>(14)其中nu为样本空间中U值取u的样本数,n为样本总数。
H(X|U)可按定义写成式(15)的形式。计算H(X|U)需要解决两个问题1、如何获得p(x|u);2、如何计算积分。
H(X|U)=-Σu∈Su∫xp(u,x)logp(x|u)dx]]>=-Σu∈Sup(u)∫xp(x|u)logp(x|u)dx]]>=Σu∈Sup(u)H(X|u)]]>(15)其中H(X|u)=-∫xp(x|u)logp(x|u)dx;]]>Su为u所有可能取值的集合;p(x|u)可以用Parzen窗函数估计,如用高斯窗函数,则p(x|u)的估计式 可以写成式(16)的形式,其中Iu是U值取u的样本的编号集合;∑为协方差矩阵,概率密度估计时通常只考虑对角项(非对角项误差较大)。若连续属性进行了标准化处理(方差为1),则本法中的∑为单位矩阵。
p^(x|u)=1nuΣi∈Iuφ(x-xi,h)=1nu(2π)D/2hD|Σ|Σi∈Iuexp(-(x-xi)TΣ-1(x-xi)2h2)...(16)]]>上述积分运算是很困难的,本方法将积分运算简化为代数和。 值大的区域表示该区域样本出现概率高、分布较为密集,因而在积分转化为代数和的时候每个样本所代表的区域相应地较小。在积分转化为代数和的转换中,本方法假设每个样本所能代表的区域与该样本所在点的概率密度成反比,即Δxj∝1p^(xj|u),]]>从而得到p^(xj|u)Δxj=const.]]>因为 是概率密度函数的估计式,积分转化为代数和的过程中,理论上应满足概率密度函数的归一性,即1=∫xp(x|u)dx=Σj∈1up^(xj|u)Δxj,]]>又因为j∈Iu的样本共有nu个,从而得到p^(xj|u)Δxj=1/nu.]]>按以上方式简化后,H(X|u)的估计值 可用式(17)得H^(X|u)]]>=-∫xp^(x|u)logp^(x|u)dx]]>到=-Σj∈Iup^(xj|u)logp^(xj|u)Δxj]]>=-1nuΣj∈Iulogp^(xj|u)]]>(17)将式(16)代入式(17),则得到H(X|U)的估计式如(18)。表1给出了H(X|U)的计算步骤。
H^(X|U)]]>=Σu∈Sup(u)H^(X|u)]]>=-1nΣu∈SuΣj∈Iulogp^(xj|u)]]>=-1nΣu∈SuΣj∈Iulog1nu(2π)D/2hD|Σ|Σi∈Iuexp(-(xj-xi)TΣ-1(xj-xi)2h2)]]>(18)表1H(X|U)的计算步骤 本发明方法中在特征集合搜索方式上,提出了FB搜索方法。FB搜索方法是根据顺序动态前进法(以下简称SFFS法)的思想,针对特征选择需要而进行的改进。在介绍搜索方法之前,首先给出有效、冗余属性的定义。在搜索过程中,已选属性集合S中一般是有效、冗余属性并存的,即S=Si∪Sr,其中Si是有效属性集合,Sr是冗余属性集合。定义有效属性集合Si是S中能够有效提供信息的属性组成的集合,满足以下两个条件I.I(C;S)-I(C;Si)H(C)<α-...(19)]]>II.f∈Si、TSr,有I(C;T∪Si)-I(C;T∪(Si\{f}))H(C)≥α-...(20)]]>其中α-为一较小的正常数。定义冗余属性集合Sr为S中除Si集合外的元素组成的集合。由于TSr,由互信息单调性(8)知,I(C;T∪Si)≤I(C;Sr∪Si)=I(C;S),故I(C;T∪Si)-I(C;Si)H(C)<α-...(21)]]>即Sr集合的任一子集T均不能在Si的基础上有效提供互信息。符合该定义的有效/冗余属性是在已知S条件下的局部有效/冗余的属性,并不一定是全局有效/冗余属性。但这种定义是在当前已有信息基础上的合理猜测,工程实际中这些属性为有效/冗余属性的可能性较大。本方法这样认定有效/冗余属性是为了缩小搜索空间,简化计算。另外,如果在搜索过程中删除了当前认为冗余的属性,后续的搜索还有可能将其重新选入;当前认为有效的属性,后来也可以剔除。
已有的SFFS搜索方法几乎与分枝定界(branch-and-bound)方法效果一样好,然而计算量较少。本方法提出的FB搜索借鉴了SFFS的思想,并根据“有效”、“冗余”属性的定义对SFFS法进行了调整。FB法“前进”、“后退”交替进行。“前进”过程中逐个选入能够有效提供互信息的属性,直至F中没有属性满足(22)为止。“前进”过程阈值α+阻止了冗余属性进入S。
I(C;S∪{f})-I(C;S)H(C)>α+...(22)]]>“后退”过程中去除已选属性集合中的冗余属性,直至S中没有属性满足式(23)为止。
“后退”阈值α-使得有效属性不会被剔除。
I(C;S)-I(C;S\{f})H(C)<α-...(23)]]>
α+和α-均为非负常数(例如可以设置为0.01)。FB法搜索步骤参见(表2)。当α-≤α+时,步骤3中的终止条件可以简化为若前进步骤中没有添加属性,则算法终止。
表2SFFS搜索方法的步骤

本发明方法中,α+和α-两个参数需要设定。α+设置的越小,则选入的属性越多,混入不良属性的可能性越大;α+设置的越大,则选入的属性越少,少选优良属性的可能性越大。同样地,合理设置α-值对特征选择结果也有很大的影响,应使得α-的设置能够有效去除冗余属性,而不会剔除优良属性。
权利要求
1.一种用于数据挖掘的具有冗余剔除能力的混合特征选择方法,其特征在于该方法包括以下步骤(1)建立一个由待处理数据的N个输入属性组成的集合F,所述的待处理数据含有N个输入属性和一个目标属性C,所述的输入属性为连续属性或离散属性,建立一个空集合S0,用以存放从集合F中选择的属性;(2)对上述集合F中的每个输入属性fi,用基于帕森窗的统一型互信息估计法计算第一互信息值I(C;S0∪{fi}),其中S0∪{fi}为向上述空集合S0中增加fi后的集合,并从计算的互信息值中得到为待处理数据分类贡献最大的输入属性fj,即,使I(C;S0∪{fi})值为最大的属性fj;(3)计算上述输入属性fj的信息增益比α′,α′=I(C;S0∪{fi})-I(C;S0)H(C),]]>当满足α′>α+,或满足I(C;S0)/H(C)<ε时,则在上述空集合S0中添加属性fj,并将S0记为Sa1,并在集合F中删除fj,其中α+和ε为设定的信息增益值,H(C)为目标属性C的熵;(4)对上述集合Sa1中的每个属性si,用基于帕森窗的统一型互信息估计方法计算第二互信息值I(C;Sa1\{si}),其中Sa1\{si}表示在集合Sa1中删除属性si后的集合,并计算信息减少值α″,α′′=I(C;Sa1)-I(C;Sa1\{si})H(C),]]>将α″与α_的大小进行判断,若满足α″<α_,则从集合Sa1中删除si,在集合F中添加si,若不满足,则不操作,新建一个与判断后的Sa1相同的集合,记为Sb1,其中α_为设定的信息减少值;(5)重复上述步骤(2)(3)(4),每次重复时,步骤(2)中,使Sbi替换S0,步骤(3)中,使Sa(i+1)替换Sai,步骤(4)的集合记为Sb(i+1),直到步骤(3)中不再有属性fj添加到Sai中,停止循环,记最后得到的Sbi为Slast;(6)对于每一次重复得到的集合Sbi,用基于帕森窗的统一型互信息估计方法计算第三互信息值I(C;Si)和信噪比SNRatio(C,Si)=I(C;Si)H(Si)-I(C;Si),]]>其中H(Si)为集合Si的熵,若步骤(1)集合F中的N个属性为离散属性,则选择使I(C;Si)≥I(C;Slast)且信噪比最大的集合Si作为选择的特征属性集合;若第(1)步中F中的N个属性不全是离散属性,则选择使I(C;Si)≥I(C;Slast)且H(Si)最小的集合Si作为选择的特征属性集合。
全文摘要
本发明涉及一种用于数据挖掘的具有冗余剔除能力的混合特征选择方法,属于数据挖掘技术领域。该法对输入属性集合F进行前进搜索,用基于帕森窗的统一型互信息估计方法计算信息增益比(见式1)来选择特征属性,对已选属性集合S进行后退搜索,用基于帕森窗的统一型互信息估计法计算信息减少值(见式2)来动态剔除冗余属性。本发明方法,统称为PGFB法,其优点是能够直接处理目标属性为连续属性的回归问题;能够直接处理输入属性为离散、连续属性混合的情况;能够动态剔除冗余属性,得到全局最优解。采用本方法从数据表大量候选属性中选出少量特征属性作为数据挖掘的输入属性,不但可以提高数据挖掘的速度,还可提高数据挖掘的精度。
文档编号G06F17/30GK101030219SQ20071006519
公开日2007年9月5日 申请日期2007年4月6日 优先权日2007年4月6日
发明者孙宏斌, 王皓, 张伯明, 吴文传, 王康 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1