分类模型中的属性选择算法研究
1
引言
20
世纪六、七十年代以来,计算机科学技术的飞速发展使得存储或获得海量数据成为
可能,
数据存储成本的不断降低则加速了这一过程的发展。
因为数据生成和积聚的量超过了
分析人员所能分析的数量,
建立一套方法来从数据库中自动分析数据和进行知识发现将是一
种必然性选择。
对这一问题,
人们进行了有益的探索,
其结果是导致了处理大型或海量数据
的数据挖掘技术的产生和发展。
数据挖掘从机器学习、
统计学、
数据库等多学科领域汲取营养,
发展了一套适合自身特
点的数据挖掘方法和数据处理手段,
用于知识学习、
信息提取和结果可视化展现。
数据挖掘
任务建模过程中,在考虑模型拟合效果、任务系统运行时间和数据存储空间限制的前提下,
对某些数据集而言,包含所有或更多的属性
/
变量的模型并不一定是最适合、最满意的
(
或最
优的
)
模型。这是因为数据集中存在和学习任务不相关的属性
/
变量,或者是高度相关而冗余
属性
/
变量,它们会导致无效的归纳和降低学习的效率。最近的研究表明
【
1
】
,简单最近邻算
法
(KNN)
对不相关属性非常敏感——它的样本复杂度
(
达到给定精度所需最低样本量
)
与冗余
属性呈指数性增长。决策树算法,如
C4.5
,有时可能过度拟合数据,从而获得较大的树,
在许多情形下,去掉不相关或冗余的信息可使得
C4.5
产生更小的树。朴素贝叶斯分类算法
由于其给定类的属性独立性假设,冗余属性的存在也可能影响其分类表现。
大量的实证研究结果表明,属性选择在提高学习任务的效率、任务预测的精度和增强、
获得规则的可理解性等方面是较有成效的。
由此,
可知在数据挖掘任务建模过程中,
通过一
定的方式和方法去掉不相关或冗余属性,
进行属性变量选择往往可以获得更令人满意的知识
学习模型。这也就引发并促进了有关属性选择问题的研究和讨论。
2
属性选择概述
2.1
属性选择的定义
在过去的十多年,
属性选择己经在机器学习、
模式识别中关于数据的预处理部分变得非
常重要,特别是对于一些高维的数据,如基因数据、代谢数据、质谱数据等。从理论上讲,
属性数目越多,越有利于目标的分类,但实际情况并非如此。在样本数目有限的情况下,利
用很多属性进行分类器设计,
无论是从计算的复杂程度考虑,
还是分类器性能都是不适宜的。
同时样本的属性通常可分为
4
种类型,即有效属性,噪音属性,问题无关属性和冗余属性。
其中有效属性是指对学习算法有积极效果的属性,
噪音属性会对学习算法造成不良影响,
问
题无关属性指与学习算法无关的属性,
而冗余属性指包含分类有关的信息,
但在己有的属性
集中添加或删除该属性并不会影响学习算法性能的属性。
对于特定的任务来说,
噪音属性的存在容易使分类算法得出错误的结果,
导致错误分类
;
冗余和问题无关属性的存在会降低算法的性能。
人们通常通过属性选择或提取来去掉冗余和
噪音属性,
这是降低复杂度和提高分类精度的有效途径。
属性选择在减少冗余不相关属性的
同时,往往也可以:
(1)
减少获取数据的成本;
(2)
获得更易理解和解释的模型;
(3)
提高数据
挖掘归纳学习的速度和效率;
(4)
提高分类的精度;
(5)
降低或避免维度灾难;
(6)
更好地形成
结构化知识。