3.1.3 数据归约
数据集一般都会含有大量的属性,并且实例也非常庞大。如果在海量数据上进行复制的数据分析和挖掘将需要很长时间,使得这种分析不现实或不可行。数据归约技术可以得到数据集的规约表示,它比原数据集小得多,但仍接近于保持原数据的完整性。这样,在归约后的数据集上挖掘将更有效,并产生相同(或几乎相同)的分析结果。
数据归约的内容主要包括元组的归约和属性的归约。元组(Tuples或Records)和属性(Attributes或Fields)是关系数据库中的概念。关系数据库是表的集合,每个表包含一组属性,并存放大量的元组。属性是表中的列或字段,元组是表中的行或记录。关系数据库中的元组代表一个唯一的关键字所标识的对象,并被一组属性值描述。
(1)元组的归约 元组的归约是指通过离散化数值型属性以及泛化字符型属性值来归约数据库中的元组。连续属性离散化和概念分层是元组归约的两种主要方法。
连续属性离散化是指将数值属性的值域划分为若干子区间,每个区间对应于一个离散值。离散化算法要求能自动地发现从数值属性值域到离散属性值域的对应关系。由于大多数机器学习算法、分类算法及粗糙集理论只能处理离散化属性,因此,连续属性的离散化就显得尤为重要。概念分层,也可以称为数据泛化,是从低层概念的集合到它们所对应的更高一层的映射,并且可以在不同的概念层次上进行。概念分层可以是面向属性的归纳,也可以基于粗糙集等理论进行。通过概念分层,不同的元组可能被泛化为相同的元组,合并这些相同的广义元组,并累计它们对应的计数值,从而达到归约元组的目的。
(2)属性的归约 在海量数据库包含的成百上千的属性中,并不是所有的属性对于深层次的数据分析都有用。因此,在挖掘技术使用之前,需要对这些属性进行分析,删除与分析任务不相关或不重要的属性,这就是属性的归约。属性的归约方法大体可以分为两类:属性的排序,属性的提取和属性子集的选择。
1)属性的排序是指根据特有的评估测度标准计算出属性的顺序。测度的标准可以基于数据的精度、一致性、信息量的多少、样本之间的距离或属性之间的统计相关性等。属性的排序结果不仅可以作为属性归约的依据,也可以作为属性离散化或属性子集选择的依据。
2)属性的提取和属性子集的选择的基本任务是从众多属性中找出那些最有效的属性。属性的提取是指通过寻找原始属性空间与低维度空间的一个映射或变换,使用新属性代替原始属性;属性子集的选择是指从一组属性中挑选出一些最有代表性的属性。属性子集选择的目标是找出最小的属性子集,使得数据类的概率分布尽可能地接近使用所有属性的原分布,从而达到减少属性项的目的。