当前位置:首页 > 数据挖掘中文版
据清理之外,必须采取步骤,避免数据集成时的冗余。通常,在为数据仓库准备数据时,数据清理和集成将作为预处理步骤进行。还可以再次进行数据清理,检测和移去可能由集成导致的冗余。
回到你的数据,如果你决定要使用诸如神经网络、最临近分类或聚类 这样的基于距离的挖掘算法进行你的分析。如果要分析的数据已规格化,即按比例映射到一个特定的区间[0.0,1.0],这种方法能得到较好的结果。例如,你的顾客数据包含年龄和年薪属性。年薪属性的取值范围可能比年龄更大。这样,如果属性未规格化,在年薪上距离度量所取的权重一般要超过在年龄度量上所取的权重。此外,对于你的分析,得到每个地区的销售额这样的聚集信息可能有用的。这种信息不在你的数据仓库的任何预计算的数据方中。你很快意识到,数据变换操作,如规格化和聚集,是导向挖掘过程成功的预处理过程。数据集成和数据变换将在3.3 节讨论。
随着你进一步考虑数据,你想知道“我所选择用于数据分析的数据集太大了——它肯定降低挖掘过程的速度。有没有办法使我能够‘压缩’我的数据集,而又不损害数据挖掘的结果?”数据归约得到数据集的压缩表示,它小得多,但能够产生同样的(或几乎同样的)分析结果。有许多数据归约策略,包括数据聚集(例如,建立数据方)、维归约(例如,通过相关分析,去掉不相关的属性)、数据压缩(例如,使用诸如最短编码或小波等编码方案)和数字归约(例如,使用聚类或参数模型等较短的表示“替换”数据)。泛化也可以“归约”数据。泛化用较高层的概念替换较低层的概念;例如,用地区或省/
州替换城市。概念分层将概念组织在不同的抽象层。数据归约是3.4 节的主题。由于概念分层对于多抽象层上的数据挖掘是非常有用的,我们另用一节来讨论这种重要数
据结构的产生。3.5 节讨论概念分层的产生,通过数据离散化进行数据归约。
图3.1 总结了这里讨论的数据预处理步骤。注意,上面的分类不是互斥的。例如,冗余数据的删除既是数据清理,也是数据归约。
图3.1 数据预处理的形式
概言之,现实世界的数据一般是脏的、不完整的和不一致的。数据预处理技术可以改进数据的质量,从而有助于提高其后的挖掘过程的精度和性能。由于高质量的决策必然依赖于高质量的数据,因此数据预处理是知识发现过程的重要步骤。检测数据异常、尽早地调整数据,并归约待分析的数据,将在决策制定时得到高回报。
7 神经网络和最临近分类在第7 章介绍,而聚类在第 8 章讨论。
3.2 数据清理
现实世界的数据一般是脏的、不完整的和不一致的。数据清理例程试图填充遗漏的值,识别局外者、消除噪音,并纠正数据中的不一致。本节,我们将研究数据清理的基本方法。
3.2.1 遗漏值
想象你要分析AllElectronics 的销售和顾客数据。你注意到许多
元组的一些属性,如顾客的收入,没有记录值。你怎样才能为该属性填上遗漏的值?让我们看看下面的方法,
1. 忽略元组:当类标号缺少时通常这样做(假定挖掘任务涉及分类或描述)。除非元组有多个属性缺少值,否则该方法不是很有效。当每个属性缺少值的百分比很高时,它的性能非常差。
2. 人工填写遗漏值:一般地说,该方法很费时,并且当数据集很大,缺少很多值时,该方法可能行不通。
3. 使用一个全局常量填充遗漏值:将遗漏的属性值用同一个常数(如“Unknown”或 –∞)替换。如果遗漏值都用“Unknown”替换,挖掘程序可能误以为它们形成了一个有趣的概念,因为它们都具有相同的值——“Unknown”。因此,尽管该方法简单,我们并不推荐它。
4. 使用属性的平均值填充遗漏值:例如,假定AllElectronics 顾客的平均收入为$28,000,则使用该值替换 income 中的遗漏值。
5. 使用与给定元组属同一类的所有样本的平均值:例如,如果将顾客按 credit_risk 分类,则用具有相同信用度的顾客的平均收入替换 income 中的遗漏值。
6. 使用最可能的值填充遗漏值:可以用回归、使用贝叶斯形式化方法或判定树归纳等基于推导的工具确定。例如,利用你的数据集中其他顾客的属性,你可以构造一棵判定树,来预测 income 的遗漏值。判定树将在第7 章详细讨论。
方法 3 到6 使数据倾斜,填入的值可能不正确。然而,方法 6 是
最常用的方法。与其它方法相比,它使用现存数据的最多信息来推测遗漏值。在估计 income 的遗漏值时,通过考虑其它属性的值,
有更大的机会保持 income 和其它属性之间的联系。
3.2.2 噪音数据
“什么是噪音?”噪音是测量变量的随机错误或偏差。给定一个数值属性,例如price ,我们怎样才能平滑数据,去掉噪音?让我们看看下面的数据平滑技术。
1.分箱:分箱方法通过考察“邻居”(即,周围的值)来平滑存储数据的值。存储的值被分布到一些“桶”或箱中。由于分箱方法导致值相邻,因此它进行局部平滑。图3.2 图示了一些分箱技术。在该例中,price 数据首先被划分并存入等深的箱中(深度 3)。对于按平均值平滑,箱中每一个值被箱中的平均值替换。例如,箱 1 中的值4,8 和 15 的平均值是9;这样,该箱中的每一个值被替换为9。类似地,可以使用按中值平滑。此时,箱中的每一个值被箱中的中值替换。对于按边界平滑,箱中的最大和最小值同样被视为边界。箱中的每一个值被最近的边界值替换一般来说,宽度越大,平滑效果越大。箱也可以是等宽的,每个箱值的区间范围是个常量。分
箱也可以作为一种离散化技术使用,将在 3.5 节和第 6 章进一步讨论。price 的排序后数据(元):4, 8, 15, 21, 21, 24, 25, 28, 34划分为(等深的)箱:箱 1:4, 8, 15箱2:21, 21, 24箱3:25, 28, 34
用平均值平滑:箱 1:9, 9, 9箱2:22, 22, 22箱3:29, 29, 29
共分享92篇相关文档