3.4数据预处理(三) - 数据规约(Data Reduction)

简介

在数据集成与清洗后,我们能够得到整合了多数据源同时数据质量完好的数据集。但是,集成与清洗无法改变数据集的规模。我们依然需通过技术手段降低数据规模,这就是数据规约(Data Reduction)。数据规约采用编码方案,能够通过小波变换或主成分分析有效的压缩原始数据,或者通过特征提取技术进行属性子集的选择或重造。

一句话解释版本:

数据规约就是缩小数据挖掘所需的数据集规模,具体方式有维度规约与数量规约。

 

数据分析与挖掘体系位置

数据规约是有数据预处理中的一个过程。所以其在数据分析与数据挖掘中的位置如下图所示。

3.4数据预处理(三) - 数据规约(Data Reduction)

 

数据规约方法

数据规约方法类似数据集的压缩,它通过维度的减少或者数据量的减少,来达到降低数据规模的目的,数据压缩(Data Compression)有无损与有损压缩。方法主要是下面两种:

  • 维度规约(Dimensionality Reduction):减少所需自变量的个数。代表方法为WT、PCA与FSS。
  • 数量规约(Numerosity Reducton):用较小的数据表示形式替换原始数据。代表方法为对数线性回归、聚类、抽样等。

 

维度规约(Dimensionality Reduction)

小波变换(Wavelet Transform,WT)

小波变换是由傅里叶变换(FFT)发展而来的。

首先,傅里叶变换是一种针对信号频率的分解转换方法。它通过把信号分解成正余弦函数,把时域信号转为频率信号。但是FFT方法存在缺陷,就是经过拆分之后的信号只能显示其包含哪些成分,但是包含的各个成分出现的时间无法体现出来。

因此,就出现了短时傅里叶变换(STFT),它再FFT的基础上加入的时域的概念。STFT通过设置窗格,并假设窗格内信号是平稳的,对每个窗格内的信号分段进行FFT变换。其引入了时域信息,但是窗格的正确划分确很难判定。

最后,就产生了小波变换(WT),在方法上,WT将FFT的基由无限长的三角函数基换成了有限长会衰减的小波基。能在获取频率的同时定位时间。

在数据规约中,对数据进行小波转换后截断数据,保存最强的小波系数,从而保留近似的压缩数据。

主成分分析(Principal Component Analysis,PCA)

主成分分析通过寻找原自变量的正交向量,将原有的n个自变量重新组合为不相关的新自变量。

当数据中存在的自变量个数过多,或者自变量之间存在相关性时,可以考虑使用PCA的方法重构自变量。

具体主成分分析的理解与算法请见4.3.2无监督学习(二) - 主成分分析(PCA)

与小波变换相比,PCA能更好的处理离散数据,而WT更适合高维度数据。

特征集选择(Feature Subset Selection,FSS)

特征选择时通过删除不相关或冗余的属性来减少维度与数据量。其目的是:定位最小属性集,使得数据的概率分布尽可能接近使用所有属性得到的原分布,简单说,就是从全部属性中选取一个特征属性子集,使构造出来的模型更好。

特征集选择的步骤一般是:建立子集集合、构造评价函数、构建停止准则、验证有效性。

选择特征集的方式一般有:序列向前、序列向后、序列前后组合、决策树方式这4中。

 

数量规约(Numerosity Reduction)

参数化数据规约

参数化数据规约可以用回归模型与对数线性模型来实现。

首先,对数值型的数据,可以用回归的方法,对数据建模,使之拟合成直线或平面。在简单线性回归中,随机变量y可以表示为另一个随机变量x的线性函数。通过最小二乘法可以定义线性函数方程。在多元线性回归中,随机变量y可以用多个随机变量表示。

其次,如果我们想分析多个分类变量间的关系,对多个分类变量间的关系给出系统而综合的评价,就可以采用对数线性模型。常见的逻辑回归就是对数线性模型的一种。对数线性模型中的Logit过程如果用来分析自变量与因变量的交互项的话,其实是逻辑回归模型的结果。只不过对数线性模型显示的是属性之间的相互关系,并不需区分Y与X。

非参数化数据规约

非参数化数据规约包括直方图、聚类、抽样、数据立方体聚集等方法。

第一,直方图方法就是分箱,之前在数据清理一章提到过,噪声光滑的一种方法就是分箱,即将数据划分为不相交的子集,并给予每个子集相同的值。而用直方图规约数据,就是将图中的bin个数由观测值的数量n减少到k个。从而使数据变成一块一块的呈现。bin的划分可以是等宽的,也可以是等频的。

第二,聚类算法是将数据进行分群,用每个数据簇中的代表来替换实际数据,以达到数据规约的效果。

第三,抽样。通过选取随机样本(子集),实现用小数据代表大数据的过程。抽样的方法包括:简单随机抽样、簇抽样、分层抽样等。

第四,数据立方体聚集。数据立方体聚集帮助我们从低粒度的数据分析聚合成汇总粒度的数据分析。我们认为表中最细的粒度是一个最小的立方体,在此上每个高层次的抽象都能形成一个更大的立方体。数据立方体聚集就是将细粒度的属性聚集到粗粒度的属性。