多类不平衡基因组学数据迭代集成特征选择方法及系统技术领域
本发明涉及特征选择和识别领域,尤其涉及多类不平衡基因组学数据
迭代集成特征选择方法及系统。
背景技术
基因组微阵列技术已在癌症诊断中得到广泛的应用,识别和确定与癌
症相关的基因仍然是一大挑战。基因组微阵列数据通常具有成千上万个基
因,在这些基因中发现与癌症相关的潜在标志物或基因集合是非常重要的
任务。如果从机器学习角度分析这类基因选择问题,其可以看成是特征选
择问题。特征选择的目标是把与类标高度相关的特征识别出来。
根据是否使用学习方法评估特征子集,可以将特征选择方法分为主要
的三类:(1)过滤式方法(FilterMethods);(2)封装式方法(WrapperMethod);
(3)嵌入式方法(EmbeddedMethod)。过滤式方法根据数据特征的统计分布特
性对特征的优劣性进行评估。由于过滤式方法没有考虑学习方法,它选取
的特征子集往往不能满足学习方法的要求。封装式方法正好相反,封装式
方法使用学习方法对候选特征子集进行测试,可以找到更加匹配学习方法
的特征子集。嵌入式方法把特征选择过程嵌入到分类学习训练过程中,此
类方法只适用于某些特定类型的分类学习过程。
基于特征选择的多类标的癌症预测已经引起业界广泛的兴趣。对于多
类标数据问题的解决,通常有三种框架:(1)将已有两分类分类器改为多类
标分类器。(2)将多类数据的分类问题改为若干个一对多分类问题,并将这
些分类结果集成为最终的分类结果。(3)将多类数据的分类问题看成若干个
子类之间的分类把问题,并将这若干个子类分类结果集成为最终的分类结
果。
由于大量基因组学存在多类标和以及类标之间样本量不平衡的特点,
而现有的特征选择方法往往忽略了基因组学数据不平衡的样本分布特点,
导致这些方法常包含以下缺陷:
第一,由于没有充分考虑基因组学数据多类不平衡分布的影响,基于
这些特征搜索算法搜索出来的特征而训练的分类器对于预测小类样本的分
类准确率较低。
第二,由于基因组学数据多类不平衡分布的特点,已有的特征搜索算
法所搜索出的特征通常都与大类样本高度相关,却忽略了与小类类标高度
相关的特征。
因此,现有技术还有待于改进和发展。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供多类不平衡基因组
学数据迭代集成特征选择方法及系统,旨在解决现有的特征选择方法对于
预测小类样本的分类准确率较低、忽略了与小类类标高度相关的特征等问
题。
本发明的技术方案如下:
一种多类不平衡基因组学数据迭代集成特征选择方法,其中,包括步
骤:
A、将多类不平衡基因组学数据分为K份具有两类样本的子数据集;
B、对于每份子数据集,使用过采样和欠采样的方法将两类样本的数量
通过迭代的过程达到平衡,并在每一次迭代过程中进行特征选择,特征选
择的数量随迭代过程逐渐减少到指定数量;
C、将特征选择过程中不需要的特征删除掉,得到特征选择后的平衡子
数据;
D、将每个特征选择后的平衡子数据作为分类器的训练数据训练对应的
分类器;
E、根据训练好的K个分类器,将每个分类器投票集成为最后的强分类
器。
所述的多类不平衡基因组学数据迭代集成特征选择方法,其中,所述
步骤B中,过采样的方法为SMOTE过采样方法,欠采样的方法为随机欠
采样。
所述的多类不平衡基因组学数据迭代集成特征选择方法,其中,所述
步骤B中,特征选择采用过滤方式实现。
所述的多类不平衡基因组学数据迭代集成特征选择方法,其中,所述步
骤B中,过采样过程中,将小类样本的数量增加Mi个,欠采样过程中,将
大类样本的数量减少Mi个,Mi的取值定义如下:
M i = S M - S m T ]]>
SM为子数据集中大类样本的数量,Sm为子数据集中小类样本的数量,T
为迭代次数。
所述的多类不平衡基因组学数据迭代集成特征选择方法,其中,在每一
次迭代中的特征选择过程中,每一次所减少的特征个数Ni为:
N i = N M - N n T ]]>
NM为子数据集的特征个数,Nn为最终选择特征个数。
所述的多类不平衡基因组学数据迭代集成特征选择方法,其中,所述步
骤D中的分类器为SVM分类器或kNN分类器。
所述的多类不平衡基因组学数据迭代集成特征选择方法,其中,所述步
骤E之后还包括:
当一个新的测试数据集进入到强分类器分类时,根据所述强分类器预测
新的测试数据集中的数据分类。
一种多类不平衡基因组学数据迭代集成特征选择系统,其中,包括:
分组模块,用于将多类不平衡基因组学数据分为K份具有两类样本的
子数据集;
迭代模块,用于对于每份子数据集,使用过采样和欠采样的方法将两
类样本的数量通过迭代的过程达到平衡,并在每一次迭代过程中进行特征
选择,特征选择的数量随迭代过程逐渐减少到指定数量;
剔除模块,用于将特征选择过程中不需要的特征删除掉,得到特征选
择后的平衡子数据;
训练模块,用于将每个特征选择后的平衡子数据作为分类器的训练数
据训练对应的分类器;
投票模块,用于根据训练好的K个分类器,将每个分类器投票集成为
最后的强分类器。
所述的多类不平衡基因组学数据迭代集成特征选择系统,其中,还包
括:
分类模块,用于当一个新的测试数据集进入到强分类器分类时,根据
所述强分类器预测新的测试数据集中的数据分类。
所述的多类不平衡基因组学数据迭代集成特征选择系统,其中,所述
迭代模块中,过采样的方法为SMOTE过采样方法,欠采样的方法为随机欠
采样。
有益效果:本发明针对多类标基因组学数据存在数据分布不平衡的特
点,提出了一种迭代式的特征选择方法,在一对多集成分类器的基础上,
将欠采样或过采样和特征选择迭代运行,使子数据集的样本随着特征数量
的递减,逐渐达到平衡状态。采用此过程集成后的分类器可以明显提高对
小类样本的分类识别能力。由于采用集成学习技术,集成基于子平衡数据
训练的弱分类器为强分类器,可以明显提高分类准确率。
附图说明
图1为本发明多类不平衡基因组学数据迭代集成特征选择方法的流程
图。
具体实施方式
本发明提供多类不平衡基因组学数据迭代集成特征选择方法及系统,
为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一
步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,
并不用于限定本发明。
请参阅图1,图1为本发明所提供的一种多类不平衡基因组学数据迭代
集成特征选择方法的流程图,其包括步骤:
S1、将多类不平衡基因组学数据分为K份具有两类样本的子数据集;
S2、对于每份子数据集,使用过采样和欠采样的方法将两类样本的数
量通过迭代的过程达到平衡,并在每一次迭代过程中进行特征选择,特征
选择的数量随迭代过程逐渐减少到指定数量;
S3、将特征选择过程中不需要的特征删除掉,得到特征选择后的平衡
子数据;
S4、将每个特征选择后的平衡子数据作为分类器的训练数据训练对应
的分类器;
S5、根据训练好的K个分类器,将每个分类器投票集成为最后的强分
类器。
在所述步骤S1中,首先假设多类不平衡基因组学数据具有K(K≥3)类,
将其分为K份具有两类的子数据集(S1,…,SK),例如,某一个数据集有A、
B、C三类,将属于A类的样本作为一类,将属于B、C两类的样本作为一
类,组成一个具有两类的子数据集。
所述步骤S2中,对每份子数据集,两类样本的数量通常是不平衡的,
即其中属于某一类的样本数量远大于属于另一类的样本数量,在第二步中,
需要使用过采样和欠采样的方法将两类样本的数量通过迭代的过程逐渐达
到平衡。除了对不平衡的样本做欠采样/过采样平衡之外,在每一次迭代过
程中,还要做特征选择,特征选择的数量随迭代过程逐渐减少到指定数量。
其中,过采样是指将某一类数量较小的样本,通过如插值等方法生成
新的样本,本发明采用的过采样方法是SMOTE(SyntheticMinority
Over-samplingTechnique)过采用方法。欠采样是指将某一类数量较大的样
本,通过随机剔除等方法删掉一些样本,本发明采用的欠采样方法是随机
欠采样法。
特征选择是模式识别和机器学习领域常见的数据预处理方法,由于某
些数据维度较高,使用某种高效的特征选择方法,将某些冗余或多余的特
征剔除掉,剩下的特征将有利于提高分类器预测性能。具体地,特征选择
是指依据某种特征评估方法作为判断特征优劣的标准,通过某种特征搜索
算法将那些优秀的特征搜索出来的过程。根据特征评估方法不同,现有的
特征选择方法可以划分为Filter(过滤)和Wrapper(封装)两大类。对于
Filter方法,其特征评估方法主要依据特征与类标或特征之间的数理统计量,
这些统计量有互信息量、皮尔逊相关系数等,搜索算法依据这些统计量,
搜索出那些更为优秀的特征。对于Wrapper方法,其些特征评估方法基于
有利于分类模型预测的特征作为优秀的特征。由于Wrapper方法在搜索过
程中要完成训练分类器的过程,而Filter方法只是计算统计量,Wrapper方
法比Filter方法慢很多。因此,本发明优选采用Filter方法,例如Rank、
mRMR(minimumredundancymaximumrelevance)或FCBF(fast
correlation-basedfilter)特征选择方法。
过采样过程中,将小类样本的数量增加Mi个,欠采样过程中,将大类
样本的数量减少Mi个,Mi的取值定义如下:
M i = S M - S m T ]]>
SM为子数据集中大类样本的数量,Sm为子数据集中小类样本的数量,T
为迭代次数。
在每一次迭代中的特征选择过程中,每一次所减少的特征个数Ni为:
N i = N M - N n T ]]>
NM为子数据集的特征个数,Nn为最终选择特征个数。
在所述步骤S4中,将每个特征选择后的平衡子数据作为分类器(子分
类器,也称弱分类器,下同)的训练数据训练分类器(C1,…,CK)。本发明采
用的分类器可以是SVM(SupportVectorMachine)分类器或kNN(k-Nearest
Neighbor)分类器。训练SVM分类器是基于训练数据修正分类超平面的参
数,使超平面更好的区分线性不可分数据。训练kNN分类器是当一个新数
据进入分类器的时候,就开始跟训练数据里的每个点求距离,然后挑离这
个训练数据最近的k个点看看这几个点属于什么类型,然后用少数服从多
数的原则,给新数据归类。
在步骤S5中,根据步骤S4训练好的K个分类器,将每个分类器投票
集成为最后的强分类器。投票的过程是,当一个新的测试数据进入强分类
器分类的时候,先由每个子分类器预测,根据少数服从多数原则,大多数
子分类器判定这个数据属于某一类,则最终预测其为该类。
即在所述步骤S5之后还包括:
当一个新的测试数据集进入到强分类器分类时,根据所述强分类器预
测新的测试数据集中的数据分类。
基于上述方法,本发明还提供一种多类不平衡基因组学数据迭代集成
特征选择系统,其包括:
分组模块,用于将多类不平衡基因组学数据分为K份具有两类样本的
子数据集;
迭代模块,用于对于每份子数据集,使用过采样和欠采样的方法将两
类样本的数量通过迭代的过程达到平衡,并在每一次迭代过程中进行特征
选择,特征选择的数量随迭代过程逐渐减少到指定数量;
剔除模块,用于将特征选择过程中不需要的特征删除掉,得到特征选
择后的平衡子数据;
训练模块,用于将每个特征选择后的平衡子数据作为分类器的训练数
据训练对应的分类器;
投票模块,用于根据训练好的K个分类器,将每个分类器投票集成为
最后的强分类器。
进一步,系统还包括:
分类模块,用于当一个新的测试数据集进入到强分类器分类时,根据
所述强分类器预测新的测试数据集中的数据分类。
进一步,所述迭代模块中,过采样的方法为SMOTE过采样方法,欠采
样的方法为随机欠采样。
本发明针对多类标基因组学数据存在数据分布不平衡的特点,提出了
一种迭代式的特征选择方法,在一对多集成分类器的基础上,将欠采样或
过采样和特征选择迭代运行,使子数据集的样本随着特征数量的递减,逐
渐达到平衡状态。采用此过程集成后的分类器可以明显提高对小类样本的
分类识别能力。由于采用集成学习技术,集成基于子平衡数据训练的弱分
类器为强分类器,可以明显提高分类准确率。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术
人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应
属于本发明所附权利要求的保护范围。