《数据挖掘概念与技术》书记 3
数据预处理
欢迎来到现实世界!
数据预处理技术:
- 数据清理:用来清除数据中的噪声,纠正不一致。
- 数据集成:将数据由多个数据源合并成一个一致的数据存储,如数据仓库。
- 数据规约:通过如聚集、删除冗余特征或聚类来降低数据的规模。
- 数据变换:可以用来把数据压缩到较小的区间。
这些技术不是互相排斥的,可以一起使用。数据清理可能涉及纠正错误数据的变换。
数据质量
数据质量包括准确性、完整性、一致性、时效性、可信性和可解释性。
现实是你希望使用数据挖掘技术分析的数据时不完整的(缺少属性值或某些感兴趣的属性,或仅包含聚集数据)、不正确的或含噪声的(包含错误或存在偏离期望的值),并且是不一致的(用于商品分类的部分编码存在差异)。
Welcome to True world!
接下来分析一下原因,从而找到解决方法:
数据特性 | 原因 | 描述 |
---|---|---|
非准确性 | 收集数据的设备出故障;当用户不想提交个人信息时,可能故意向强制输入字段输入不正确的值(生日1月1日);由于命名约定或输入字段格式不一致; | 具有不正确的属性值 |
非完整性 | 输入时被忽略;相关数据没有记录,可能是设备故障;历史或修改的数据可能被忽略; | 存在缺失值 |
非一致性 | 属性定义不同;例如市场评估标准不同;同一数值属性名不同; | 存在冗余 |
非时效性 | 数据未能及时更新;月底数据未能及时更新影响评估效果; | 不能及时更新 |
非可信性 | 数据被人为更改,导致结果; | 反映有多少数据是用户信赖的 |
非可解释性 | 部门之间的数据具有个性;例如,数据使用了会计编码,但销售部门无法理解; | 反映数据是否容易理解 |
数据预处理的主要任务
数据清理
通过填写缺失值,光滑噪声数据,识别或删除离群点,并解决不一致性来“清理”数据。致力于避免被建模的函数过分拟合数据。
数据集成
代表同一概念的属性在不同的数据库中可能具有不同的名字,导致不一致性和冗余。通常,在为数据仓库准备数据时,数据清理和集成作为预处理步骤进行。还可以再次进行数据清理,检测和删去可能由集成导致的冗余。
数据规约
面对数据量巨大的数据,如果降低数据集的规模,而又不损害数据挖掘的结果呢?
- 维规约。使用小波变换、PCA、属性子集选择和属性构造
- 数值规约。使用回归和对数线性模型或直方图、聚类、抽样或数据聚集,用较小的表示取代数据。
数据变换
- 离散化与概念分层
- 规范化
总之,现实世界的数据一般是脏的、不完整的和不一致的。数据预处理技术可以改进数据的质量,从而有助于提高其后的挖掘过程的准确率和效率。由于高质量的决策必然依赖于高质量的数据,因此数据预处理是知识发现过程的重要步骤。检测数据异常,尽早地调整数据,并规约待分析的数据,将为决策带来高回报。
数据清理
缺失值
- 忽略元组
- 人工填写缺失值
- 使用一个全局常亮填充缺失值:Unknown
- 使用属性的中心度量(均值或中位数)填充缺失值:是否倾斜
- 使用与给定元组属同一类的所有样本的属性均值或中位数
- 使用最有可能的值填充:使用回归、贝叶斯、决策树预测。(最科学)
噪声数据
噪声:被测量的变量的随机误差或方差。
数据集成
实体识别问题
当一个数据库的属性与另一个数据库的属性匹配时,必须特别注意数据的结构。旨在确保源系统中的函数依赖和参照约束与目标系统中的匹配。
在一个系统中,discount可能用于订单,但在另外一个系统中,它用于订单中的商品。
冗余和相关分析
冗余:一个属性如果能由另一个或另一组属性“导出”,则该属性冗余。
相关分析:
- 标称数据的卡方检验
-
数值数据的相关系数
-
数值数据的协方差