书名:数据挖掘导论(Introduction to Data Mining)
做者: Pang-Ning Tan / Michael Steinbach / Vipin Kumar
出版社: 人民邮电出版社
译者: 范明 / 范宏建
出版年: 2010-12-10
ISBN: 9787115241009算法
第2章 数据
数据类型
属性与度量
相关定义
- 属性(attribute):对象的性质或特性,它因对象而异,或随时间变化。
- 测量标度(measurement scale):将数值或符号值与对象的属性相关联的规则(函数)。
注意
- 形式上,测量过程是使用测量标度将一个值与一个特定对象的特定属性相关联。
- 属性的性质没必要与用来度量它的值的性质相同。如表明ID的数字,做为一系列数字,具备平均数等性质,可是这些性质与ID这个属性无关。
用值的个数描述属性
- 离散(discrete):离散属性具备有限个值或无限可数个值。
- 连续(continuous):连续属性是取实数值的属性。
非对称的属性
更关注部分属性值。如学生选修了对应某属性的课程,该属性记为1,不然记为0.因为学生只选修全部可选课程集合中的很小一部分,因此在这种状况,经过更加关注非零值。网络
数据集类型
数据集的通常特征
- 维度(dimensionality)
数据集的维度是数据集中的对象具备的属性数目。分析高维数据有时候会陷入所谓的维度灾难(curse of dimensionality),因此,数据预处理有的时候须要减小维度,称为维度归约(dimensionality reduction)。
- 稀疏性(sparsity)
数据集中大部分数据缺失或为0。这将节省大量的计算时间和存储空间,有些数据挖掘算法仅适合处理稀疏数据。
- 分辨率(resolution)
在不一样的分辨率下数据的性质不一样。如在几米的分辨率中,地球表面崎岖,但在几十千米的分辨率中,地球表面相对平坦。
常见的数据集类型
- 记录数据
事务数据(transaction data):其中每一个记录(事务)涉及一系列的项。如顾客一次购买的商品集合。
数据矩阵(data matrix):若是一个数据集族中的全部数据对象都具备相同的数值属性集,则数据对象能够看做多维空间中的向量,其中每一个维表明对象的一个不一样属性。
- 基于图形的数据
用图形表示对象之间的关系:如社交网络等。
数据自己用图形表示:如化合物的分子结构图。
- 有序数据
时序数据(sequential data):每一个记录包含一个与之相关联的时间。
序列数据(sequence data):有序序列,考虑项的位置,如基因序列。
时间序列数据(time series data):特殊的时序数据,一段时间以来的测量序列,如股票每日价格。
空间数据:具备空间属性的数据,如全球温度。
数据质量
相关定义
- 精度(percision):(同一个量的)重复测量值之间的接近程度。
- 偏倚(bias):测量值与被测量值之间的系统变差。
- 准确率(accuracy):被测量的测量值与实际值之间的接近程度。
准确率依赖于精度和偏倚,并且是一个通常化的概念,所以没有用这两个量表达准确的具体公式。
- 噪声:测量偏差的随机部分。
- 离群点(outlier):某种意义上具备不一样于数据集中其余大部分数据对象的特征的数据对象,或是相对于该属性的典型值来讲不一样寻常的属性值。注意区别噪声和离群点,离群点也能够是合法的数据对象或值。
- 遗漏值:一个对象遗漏一个或多个属性值。
对于遗漏值,一般有三种应对措施:1. 删除数据对象或属性;2. 估计遗漏值;3. 在分析时忽略遗漏值(有些数据挖掘方法能够作到)。
关于应用
注意两个问题:app
- 数据的时效性
- 数据的相关性:数据与模型必须相关,可用的数据必须包含应用功能所须要的信息。
数据预处理
汇集(aggregation)
定义:将两个或多个对象合并成单个对象。
动机:1. 减小数据规模,可使用开销更大的数据挖掘算法。 2. 经过高层而不是低层的数据视图,起到了范围或标度转换的做用。 3. 对象或属性群的行为比单个对象或属性的行为更加稳定。
缺点:可能会丢失一些细节。函数
抽样
定义:选择数据对象子集进行分析。
要求:若是样本具备表明性,则使用样本与使用整个数据集的效果几乎同样。而样本具备表明性,要求样本近似地具备与原数据集相同的性质。
渐进抽样:须要自适应(adaptive)或渐进抽样(progressive sampling)来肯定合适的样本容量。具体来讲,从一个小样本开始,而后增长样本容量直至获得足够容量的样本。spa
维归约
定义:经过建立新属性,将一些旧属性合并在一块儿来下降数据集的维度。
好处:1. 删除不相关的属性并下降噪声; 2. 维归约使得模型更好理解,更容易让数据可视化。
维灾难:随着数据维度的增长,许多数据分析变得很是困难。
维归约的线性代数技术:主成分分析(Principal Components Analysis, PCA)。奇异值分解(Singular Value Decomposition, SVD)。orm
特征子集选择
定义:仅使用特征的子集来下降维度。
特征选择的理想方法:将全部可能的特征子集做为感兴趣的数据挖掘算法的输入,而后选取产生最好结果的子集。
特征选择的通常方法:对象
- 嵌入方法(embedded approach):数据挖掘算法自己会进行特征选择。
- 过滤方法(filter approach):使用某种独立于数据挖掘任务的方法,在数据挖掘算法运行前进行特征选择。
- 包装方法(wrapper approach):这些方法将目标数据挖掘算法做为黑盒,使用相似于前面介绍的理想算法,但一般并不枚举全部可能的子集来找出最佳属性子集。
- 特征子集选择体系
可将过滤和包装方法放到一个共同的体系结构中,特征选择的过程能够看做由四部分组成:子集评估度量、控制新的特征子集产生的搜索策略、中止搜索判断和验证过程。过滤方法和包装方法的惟一不一样是它们使用了不一样的特征子集评估方法。对于包装方法,子集评估使用目标数据挖掘算法;对于过滤算法,子集评估技术不一样于目标数据挖掘算法。流程以下图。

- 特征加权
特征越重要,所赋予的权值越大;对不过重要的特征,赋予较小的权值。
特征建立
定义:由原来的属性建立新的属性集,更有效地捕捉数据集中的重要信息。
方法:特征建立的方法主要有如下三种:事务
- 特征提取(feature extraction)
最经常使用的特征提取技术都是高度针对具体领域的,对于特定领域,会开发新的特征和特征提取方法。
- 映射数据到新的空间
使用一种彻底不一样的视角挖掘数据可能揭示出重要和有趣的特征,如使用傅里叶变换(Fourier transform)、小波变换(wavelet transform)。
- 特征构造
由原特征构造新特征。如用质量和体积来构造密度。
离散化和二元化
定义:
离散化(discretization):将连续属性变换成分类属性。
二元化(binarization):连续和离散属性变换成一个或多个二元属性。ip
定义:用于变量值的变换,对于每一个对象,变换都做用于该对象的变量值。
两种重要的变量变换类型:ci
- 简单函数变换
一个简单的数学函数(如平方根、倒数、对数)分别做用于每个值。
- 规范化
使整个值的集合具备特定的性质。
类似性和相异性的度量
定义
两个对象的类似度(similarity)的非正式定义是这两个对象类似程度的数值度量。
两个对象的相异度(dissimilarity)的非正式定义是这两个对象差别程度的数值度量。
简单属性的类似度与类似度
x,y是两个对象,这两个对象都只有一个属性,d是两个对象之间的相异度,s是两个对象之间的类似度。
- 对于标称属性:
若是x=y, d=0, s=1;若是x!=y,d=1, s=0
- 对于序数属性:
d = |x-y|/(n-1) (值映射到整数0到n-1,其中n是值的个数)
s = 1-d
- 对于区间或比率属性:
d = |x-y|
s = -d, s = 1/(1+d), s = e^(-d), s = 1 - (d-min_d)/(max_d-min_d)
数据对象之间的相异度
- 闵可夫斯基距离(Minkowski distance)
\[d(x,y) = \sqrt[r]{\sum_{k=1}^{n} \left | x_{k}-y_{k} \right |^{r}} \tag{2-1}\]
其中,r是参数,常见有如下三种例子。
- r=1,城市街区(也称曼哈顿、出租车、\(L_1\)范数)距离,常见的是海明距离(Hamming distance)。
- r=2,欧几里得距离(\(L_2\)范数)。
- r=\(\infty\),上确界(\(L_{max}\)或\(L_\infty\)范数)。
邻近性度量
- 二元数据的类似性度量
简单匹配系数(Simple Matching Coefficient, SMC)
\[SMC=(f_{11}+f_{00})/(f_{11}+f_{00}+f_{10}+f_{01}) \tag{2-2}\]
其中,
\(f_{11}\)是x取1而且y取1的属性个数
\(f_{00}\)是x取0而且y取0的属性个数
\(f_{10}\)是x取1而且y取0的属性个数
\(f_{01}\)是x取0而且y取1的属性个数
Jaccard系数(Jaccard Coefficient)
\[SMC=f_{11}/(f_{11}+f_{10}+f_{01}) \tag{2-3}\]
有些状况下,x取0,y取0的属性较多,但并不能说明这两个对象具备类似性。
- 余弦类似度(cosine similarity)
\[cos(x,y)=(x·y)/(\left \\| x \right \\| \left \\| y \right \\|)\]
选择正确的邻近性度量
对于许多稠密的、连续的数据,一般使用距离度量,连续属性之间的邻近度一般用属性值的差来表示。 对于稀疏数据,余弦、Jaccard和广义Jaccard度量对于这类数据是合适的。 若是时间序列的量值是重要的,可使用欧几里得距离。