数据挖掘一百天(6)
昨天写在word里,竟然忘更新了········...
数据集成
数据挖掘需要的数据往往分布在不同的数据源中,数据集成就是将多个数据源和并存放在一个一致的数据存储(如数据仓库)中的过程。
在数据集成时,来自多个数据源的现实世界实体的表达形式是不一样的,有可能不匹配要考虑实体识别问题和属性冗余问题,从而将源数据在最低层上加以转换,提炼和集成。
实体识别
实体识别是指从不同数据源识别出现实世界的实体,他的任务是同意不同源数据的矛盾之处,常见形式如下:
1同名异义
数据源A中的属性ID和数据源B中的属性ID分别描述的是菜品编号和订单编号,即描述的是不同的实体。
2异名同义
数据源A中的sale_dt和数据源B中的sale_date都是描述日期的
3单位不统一
描述同一个实体分别用的是国际单位和中国传统计量单位,如kg和斤
检测和解决这些冲突就是实体识别的任务。
冗余属性识别
数据集成往往导致人、数据冗余,例如:
1同一属性多次出现;
2同一属性命名不一致导致重复
仔细整合不同源数据能减少甚至能避免数据冗余与不一致,从而提高数据挖掘的速度和质量。对于冗余属性要先分析,检测到后再将其删除。
有些冗余属性可以用相关分析检测。给定两个数值型的的属性A和B,根据其属性值,用相关系数度量一个属性在多大程度上蕴含另一个属性。
1简单函数变换
简单函数变换是对原始数据进行某些数学函数变换,常用的包括平方、开方、取对数、差分运算等,即:
简单的函数变换常用来将不具有正态分布的数据变换成具有正态分布的数据。在时间序列分析中,有时简单的对数变换或者差分运算就可以将非平稳序列转换成平稳序列。在数据挖掘中,简单的函数变换可能更有必要,比如个人年收入的取值范围从10000元到10亿元。这是个很大的区间。使用对数变换对其进行压缩是一种常用的变换处理方法。
规范化
数据规范化(归一化)处理数据是数据挖掘的一项基础工作。不同评价指标往往具有不同的量纲,数值间的差别可能很大,不进行处理可能会影响到数据分析的结果。为了消除指标之间的量纲和取值范围差异的影响,需要进行标准化处理,将数据按照比例进行缩放,是指落入一个特定的区域,便于进行综合分析。如将工资收入属性映射到[-1,1]或者[0,1]内。
数据规范化对于基于距离的挖掘算法尤为重要。
1)最小-最大范化
最小最大范化也称为离差标准化,是对原始数据的线性变化,将数值值映射到[0,1]之间。
转换公式如下:
其中,max为样本数据的最大值,min为样本数据的最小值。max-min为极差。离差标准化保留了原来数据中存在的关系,是消除量纲和数据取值范围影响的最简单的方法。这种处理方法的缺点是若数值集中且某个数值很大,则规范化后各值会接近于0,并且将会相差不大。若将来遇到超过目前属性[min,max]取值范围的时候,会引起系统出错,需要重新确定min和max。
零-均值规范化
零-均值规范化也称标准差标准化,经过处理的数据均值为0,标准差为1。转化公式为:
其中x为原始数据均值,tao为原始数据的标准差,是当前用的最多的数据标准化方法。
3小数定标规范化
通过移动属性值的小数位数,将属性值映射到[-1,1]之间,移动的小数位数取决于属性值绝对值的最大值。
转化公式为:
关注 应心学习
微信扫一扫关注公众号