基于F-score的特征选择算法在多分类问题中的应用
收稿日期:2021-02-11
基金项目:国家自然科学基金资助项目(11301036,11226335,12026430);吉林省教育厅科研基金资助项目(J J K H 20170540K J
)  作者简介:秦喜文(1979-)
,男,汉族,吉林梅河口人,长春工业大学教授,博士生导师,主要从事数据分析与统计建模方向研究,E -m a i l :q
i n x i w e n @c c u t .e d u .c n .*通讯作者:董小刚(1961-),男,汉族,吉林长春人,长春工业大学教授,博士生导师,主要从事数理统计方向研究,E -m a i l :d o n g x i a o g a n g
@c c u t .e d u .c n .第42卷第2期            长春工业大学学报            V o l .42N o .22021年04月        J o u r n a l o f C h a n g c h u nU n i v e r s i t y o fT e c h n o l o g y          A p
r .2021  D O I :10.15923/j
.c n k i .c n 22-1382/t .2021.2.06基于F -s c o r e 的特征选择算法在多分类问题中的应用
秦喜文1, 王 芮1, 于爱军2, 董小刚1*, 张斯琪1
(1.长春工业大学数学与统计学院,吉林长春 130012;2.北京首钢国际工程技术有限公司,北京 100043
)摘 要:将一种新的特征选择算法(F -s c o r e )与多种机器学习算法相结合用于多分类问题中㊂使用十折交叉验证对比模型的分类效果,利用分类误差验证该方法的鲁棒性㊂实验结果表明,文中使用的新的基于F -s c o r e 的特征选择方法与传统机器学习算法相结合具有很好的性能,能够使用比原始数据集更少特征并产生良好分类结果,尤其在与迭代随机森林方法相结合的情况下,能够显著提高模型分类精度㊂关键词:数据分类;特征选择;机器学习
中图分类号:T P391  文献标志码:A  文章编号:1674-1374(2021)02-0128-07
A p p l i c a t i o no f f e a t u r e s e l e c t i o na l g
o r i t h m b a s e do nF -s c o r e i nm u l t i c l a s s i f i c a t i o n p r o b l e m
Q I N X i w e n 1, WA N G R u i 1, Y U A i j u n 2, D O N G X i a o g a n g 1*, Z H A N GS i q
i 1
(1.S c h o o l o fM a t h e m a t i c s a n dS t a t i s t i c s ,C h a n g c h u nU n i v e r s i t y o fT e c h n o l o g y ,C h a n g
c h u n130012,C h i n a ;2.B e i j i n g S h o u g a n g I n t e r n a t i o n a l E n g i n e e r i n g T e c h n o l o g y C o .L t
d .,B
e i j i n g 1
00043,C h i n a )A b s t r a c t :An e wf e a t u r e s e l e c t i o na l g o r i t h m (F -s c o r e )i s c o m b i n e dw i t ha v a r i e t y o fm a c h i n e l e a r n i n g
a l g o r i t h m sf o r m u l t ic l a s s i f i c a t i o n p r o
b l e m s .T e n f o l d
c r o s s v a l i
d a t i o n w a s u s
e d t o v e r i
f y t
h e c l a s s i f i c a t i o n e f f e c t o f t h e c o m p a r i s o nm o d e l .T h e c l a s s i f i c a t i o n e r r o r i s u s e d t o v e r i f y t h e r o b u s t n e s s o f t h em e t h o d .T h ee x p e r i m e n t a l r e s u l t ss h o wt h a t t h en e wf e a t u r es e l e c t i o n m e t h o db a s e do nF -s c o r e c o m b i n e dw i t ht r a d i t i o n a lm a c h i n e l e a r n i n g a l g
o r i t h m h a s g o o d p e r f o r m a n c e .I tu s e s f e w e r f e a t u r e s t h a n t h e o r i g i n a l d a t a s e t a n d p r o d u c e s g o o d c l a s s i f i c a t i o n r e s u l t s .E s p e c i a l l y i n t h e c a s eo f c o m b i n i n g
w i t h i t e r a t i v er a n d o mf o r e s t m e t h o d ,i tc a ns i g n i f i c a n t l y i m p r o v et h ec l a s s i f i c a t i o na c c u r a c y o f t h e m o d e l .
K e y w o r d s :d a t a c l a s s i f i c a t i o n ;f e a t u r e s e l e c t i o n ;m a c h i n e l e a r n i n g .
0引言
为了提高机器学习在分类问题上的准确性和
效率,一些研究者已经开始将特征选择算法与机
器学习算法相结合㊂通过选择重要的相关特征来
降低计算成本,使得计算过程更加准确和易于理
解㊂
特征选择可以通过过滤器㊁包装器或嵌入方
法进行㊂过滤器方法为每个特征分配一个重要值
以构建一个排名,得分最高的特征是与数据类最
密切相关的㊂这种方法可以使用与算法无关的技
术,如F-s c o r e[1],以及基于信息度量的数据驱动变量选择方法,如联合互信息和正则化互信息
等[2-3]㊂包装器方法根据搜索算法确定的给定特征子集中分类器的性能来选择特征㊂选择分类器后,若干特征子集将用作分类器的输入数据,然后选择精度最高的特征子集㊂嵌入式方法将特征选择融合在模型训练的过程中,比如决策树在分枝的过程中,就是使用嵌入式特征选择方法,其内在还是根据某个度量指标对特征进行排序㊂同时,随机森林中的特征重要性排序也是嵌入式方法的一种㊂
机器学习已有近70年的发展历史,随着信息技术的不断发展完善,机器学习也被广泛应用于各个领域
㊂计算机利用机器学习算法,通过模拟人类的行为不断提高机器的工作效率㊂自1949年,H e b b开启机器学习的第一步后,机器学习经历数十年的发展不断进步㊂1984年,B r e i m a nL L[4]提出了一个著名C A R T算法,也就是通常所说的决策树(回归树)算法,该方法通过使用简单的规则可以在现实生活中到更多的应用㊂支持向量机(S VM)方法最初由V a p n i kV等[5]提出用于二值分类,其基本思想是寻两个并行支持向量之间具有最大裕度的最优分离超平面㊂2001年,B r i a n m a nL[6]提出随机森林模型,随机森林在大量应用中证明了其在理论和实验上对过拟合的抵抗性㊂2013年,A n a i s s iA等[7]提出迭代随机森林,能够识别出特征的高阶交互作用,同时能够保证迭代随机森林有很好的预测能力[8]㊂
文中利用Már c i oD i a sd eL i m a等[9]提出的新的基于F-s c o r e的特征选择方法,将其与多个机器学习算法相结合用于多分类问题中,使用分类误差为评价指标验证它的鲁棒性㊂1机器学习方法
1.1决策树算法
决策树(C A R T)算法通过简单的图像表达,就像树一样,所以被称为决策树㊂一个决策树在构建时,通过将数据划分为具有相似值的子集来构建出一个完整的树㊂决策树上每一个非叶节点都是一个特征属性的测试,经过每个特征属性的测试,会产生多个分支,而每个分支就是对于特征属性测试中某个值域的输出子集㊂决策树上每个叶子节点就是表达输出结果的连续或者离散的数据㊂
1.2支持向量机
支持向量机(S VM)方法最初由V a p n i k V 等[5]提出用于二值分类,与其他机器学习方法相比,它是一种很有前途的机器学习技术㊂S VM在统计学理论中有其基础,该方法是基于结构风险最小化原则(S R M)㊂支持向量机解决了一个二次规划问题,确保一旦得到最优解,它就是唯一(全局)解㊂
1.3随机森林
随机森林(R F)算法将大量决策树聚集在一起,并将它们一起用于预测最终结果㊂随机森林中每棵树都按照规则自由生长,并且不需要对决策树进行剪枝㊂随机森林作为B a g g i n g的改进方法,拥有极强的泛化能力㊂
1.4迭代随机森林
迭代随机森林(i R F)的基本思想是在随机森林基础上,通过对选定的特征进行 迭代重新赋权 ,得到一个带有特征权重的随机森林,然后利用泛化的随机交叉树作用于带有特征权重的随机森林上,进而识别出特征的高阶交互作用,同时保证迭代随机森林也有很好的预测能力㊂
2特征选择
2.1随机森林计算变量重要性
R软件中的i m p o r t a n c e()函数可以被用于随机森林算法中,用于度量变量的重要性㊂M e a n D e c r e a s eA c c u r a c y(平均减少度)表示在没有该对应特征的条件下分类准确度下降的程度,即数值越大,说明该特征在分类效果中起到的作用越大;反之数值越小,表示该特征在分类效果中起到的作用越小㊂
921
第2期秦喜文,等:基于F-s c o r e的特征选择算法在多分类问题中的应用
2.2 条件互信息
基于互信息的特征选择算法是通过使用互信
息寻与类高度相关而特征之间低冗余的特征㊂其中,条件互信息(C M I )测量给定第三个变量时,两个变量之间的条件依赖性
[10]
X =(x 1,x 2, ,x n )
,Y =(y 1,y 2, ,y n ),Z =(z 1,z 2, ,z n )
是三组离散随机变量㊂条件互信息(C M I )测量给定第三个变量时,两个变量之间的条件依赖性㊂
给定Z 的变量X 和Y 的C M I 定义为
I (X ;Y |Z )=              ðx ɪX ðy ɪY ðz ɪZ
p (x ,y ,z )l o g p (x ,y |z )
长春分类信息
p (x |z )p (y |z ),(1
)式中:I (X ;Y |Z )变量X 和Y 给定变量Z 共
享的信息量㊂
2.3 基于F -s c o r e 的特征选择算法
F -s c o r e 作为一种简单的方法,由C h e nY W
等[1]于2006年提出,该方法用来衡量两类数据的区别㊂给定特征向量x i ,
i =1,2, ,k ,如果正负实例的数目分别为n +
和n -
,则第i 个特征的F 分数定义为
F (i )=
x -(+)
i -x -i ()2+x --()i -x -
i ()
21n +-1ðn
+k =1x (+)k ,i -x -(+)i ()2+1n --1ðn
-k =1
x (-)k ,i -x -(-)i ()2
,
(2
)式中:x -i ,x -+()i ,x -
-()
i
分别为整个㊁正㊁负数
据集的第i 个特征的平均值;
x (+)
k ,i
第i 个特征的第k 个正实例;x (-)
k ,i
第i 个特征的第k 个负实例;
分子正负集合之间的差异;分母
两个集合㊂
F 值越大,
该特征越有可能具有区别性㊂F -s c o r e 的一个缺点是不能揭示特征之间的
相互关系㊂因此,M ár c i oD i a sd eL i m a 等[9]
在此
基础上提出了一种新的变量选择方法,分别求因变量标签的平方距离之和除以对应实例的样本方差,揭示了特征在不同标签数据集下的重要性㊂
同样给定特征向量x i ,
i =1,2, ,k ,如果正负实例的数目分别为n +和n -,则以下方程定义第i 个特征的正负样本排序,
R p o s i t i v e (
i )=x -(+)
i -x -
i ()
21n +-1ðn +
k =1
x (i )k ,i -x -(+)i ()2
,
R n e g
a t i v e (i )=x
-
(-)i
-x -
i ()
2
1n -
-1ðn -k =1
x (-)k ,i -x -(-)i ()2,
(3
)等式的分子是正负样本第i 个特征均值与总体样
本第i 个特征均值之间的平方距离,而分母分别表示正负样本的样本方差㊂特征排序(F R )
由下式获得,其中分数越高,特征越重要,
F R (i )=
R p o s i t i v e (i )+R n r g a t i v e (i )2
㊂(4
)  文中将该方法拓展应用于多分类问题中㊂给
定一个特征向量x i ,i =1,2, ,k ,因变量x j ,j ɪ
i ,j ʂ
i ,假设因变量的所有标签用m ɪR 表示,则由以下方程定义第i 个特征的标签样本排序,
R m (i )=
x -(m )i -x -
i ()
2
1n m -1ðn m
k =1
x (m )k ,i -x -(m )i ()2
,(5
)式中:x -
i
整个第i 个特征的平均值;x -(m
)
i 所有属于标签m 类样本的平均
值;
x (m )
k ,i
m 类数据中属于第i 个特征的所
有样本㊂
注意,上述式子的分子是第i 个特征中属于
m 类的均值和第i 个特征总体均值之间的平方距离,分母分别匹配因变量标签的样本方差㊂
特征总体排序由下式获得,其中分数越高,特征越重要,
F R (i )=
ðm
R
m
(i )
m
(6
)3 实证分析
3.1 数据来源
文中以U C I 数据库中的5个公开数据为例
31长春工业大学学报                第42卷
来验证方法的可行性,为提高分类精度,在进行实验之前对部分数据预处理,包括对W h i t e w i n e -q u a l i t y 数据集第3类~第5类数据划分为b a d 类,第6类数据划分为m i d 类,
第7类~第9类数据划分为b a d 类,以及对W a v e f o r m 中某些无意
义的变量进行删除,最终剩余21个变量用于实验㊂数据集的具体描述见表1㊂
表1 数据集基本信息
数据名称观测数特征数分类标签数
各类别包含观测I r i s 1504330;30;30W i n e 17813359;71;48
G l a s s 2149629;76;70;17;3;9
W h i t e w i n e -q u a l i t y
48981131640;1060;2198W a v e f o r m
5000
21
3
1657;1647;1696
3.2 交叉验证
在建模过程中,
为了避免追求高准确率而产生过拟合的情况,通常将原始数据集划分为训练集和测试集,从而使得模型在样本外的数据上预测准确率也有不错的精度㊂但是,划分出的训练集㊁测试集的不同会使得模型准确率产生明显的变化㊂因此,为了保证输出结果的可靠性,使用
k (k =10)折交叉验证来评估算法性能㊂文中为保证数据的平衡性,对每个特征的数据采取k 折随机分割,每个特征选取一个子集组成具有n 个随机特征子集的训练集㊂这样既保证了数据的平衡性,又保证了模型训练效果的准确性㊂
文中所使用的十折交叉验证数据分割方法如图1所示(每次选择的测试集数据由深部分标出)
㊂图1 交叉验证流程
通过十次交叉验证所得结果的平均值报告了
所提出变量选择方法与一些机器学习算法相结合的测试精度㊂
用于获得最佳精度的参数见表2(文中使用
的特征选择方法简写为F s
)㊂1
31第2期        秦喜文,等:基于F -s c o r e 的特征选择算法在多分类问题中的应用
表2模型参数配置及分类结果
方法
I r i s W i n e G l a s s W h i t e w i n e-q u a l i t y W a v e f o r m 特征
迭代
次数误差
特征
迭代
次数误差
特征
迭代
次数误差
特征
迭代
次数误差
特征
迭代
次数误差
C A R T4 0.073313 0.14049 0.316911 0.458621 0.2720
I m p o r t a n c e+
C A R T1 0.04677 0.14048 0.300110 0.45439 0.2592 C M I+C A R T3 0.04673 0.12798 0.387011 0.45869 0.2740 F s+C A R T2 0.06004 0.12247 0.33575 0.453913 0.2712 S VM4 0.040013 0.01749 0.300211 0.383221 0.1374
I m p o r t a n c e+
S VM1 0.04005 0.01679 0.300210 0.384820 0.1446 C M I+S VM3 0.04003 0.08868 0.306411 0.38329 0.2092 F s+S VM1 0.04679 0.01747 0.295410 0.388916 0.1324
R F4 0.053313 0.02229 0.214611 0.263021 0.1478 I m p o r t a n c e+
R F2 0.033311 0.01678 0.228010 0.264120 0.1482 C M I+R F3 0.04663 0.08378 0.223911 0.26309 0.2052 F s+R F2 0.03336 0.02788 0.275510 0.268318 0.1464 i R F440.03351310.0170920.21401130.25902110.1450
I m p o r t a n c e+
i R F220.0267810.0170920.21401130.25902110.1450 C M I+i R F320.0470320.0890850.20701130.2590920.2100 F s+i R F220.0267710.0170920.21401130.25901810.1432
注:黑体数值表示最小分类误差㊂
从测试分类误差角度来看,基于F-s c o r e的特征排序方法与其他机器学习方法相结合,在多分类问题中能够在选择较少变量的情况下达到与未进行变量选择或与其他变量选择方法相差无异,甚至更好㊂
3.3结果分析
从表2可以得到以下分析结果:
针对I r i s数据集,分类精度最好的方法为
I m p o r t a n c e+i R F和F s+i R F,分类误差为
0.0267,其次为I m p o r t a n c e+R F和F s+R F,分类误差为0.0333㊂分类最佳与次佳的误差相差0.0066㊂
针对W i n e数据集,分类精度最好的方法为I m p o r t a n c e+S VM和I m p o r t a n c e+R F,分类误差为0.0167,但相比于I m p o r t a n c e+R F方法, I m p o r t a n c e+S VM只使用了5个变量便达到了最佳分类效果㊂其次为i R F㊁I m p o r t a n c e+R F和F s+i R F,分类误差为0.0170,但相比于其他两种方法,F s+i R F只使用了7个变量以及一次迭代,分类最佳与次佳的误差相差0.0003㊂
针对G l a s s数据集,分类精度最好的方法为C M I+i R F,误差为0.2070,其次为i R F㊁
I m p o r t a n c e+i R F和F s+i R F,分类误差为
0.2140,分类最佳与次佳的误差相差0.0070㊂
针对W h i t e w i n e-q u a l i t y数据集,分类精度最好的方法为基于i R F的四种方法,误差为0.2590,其次为R F和C M I+i R F,分类误差为0.2630,分类最佳与次佳的误差相差0.0040㊂
针对W a v e f o r m数据集,分类精度最好的方法为F s+S VM,误差为0.1324,其次为S VM方法,分类误差为0.1374,然而结合F s的S VM方法只使用了16个变量,即达到了最佳效果㊂通过对比不同特征选择方法与决策树结合的分类效果可以看到,虽然基于F-s c o r e的特征排序方法在部分数据集的表现不如使用随机森林计算变量重要性的方法,但两种方法的分类误差差
231长春工业大学学报第42卷

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。