熵(entropy)指的是体系的混乱的程度,它在控制论、概率论、数论、天体物理、生命科学等领域都有重要应用,在不同的学科中也有引申出的更为具体的定义,是各领域十分重要的参量。
数据预处理
数据预处理技术包括:聚集、抽样、维规约、特征子集选择、特征创建、离散化和二元化、变量变换。
属性的类型:
标称(定性的)值仅仅是不同的名字,即只提供足够的信息以区分对象,如ID,性别。
序数(定性的)值提供足够信息确定对象的序,如成绩,号码。
区间(定量的)值之间的差别有意义,即存在测量单位,如日期,温度。
比率(定量的)差和比率都是有意义的,如年龄,长度。
时序数据(时间数据)是对记录数据的扩充,其中,每个记录包含一个与之相关联的时间。
序列数据是一个数据集合,它是个体项的序列,如词或字母的系列,除没有时间戳之外,它与时序数据非常相似。
时间序列数据是一种特殊的时序数据,其中每个记录都是一个时间序列,即一段时间的测量序列。
聚集:将两个或多个对象合并成单个对象。如将表的两列并成一列(删除属性),将表的多行并成一行。将按天的记录并成按月的记录(这种聚集常用于联机分析处理OLAP)
聚焦动机:导致需要较小的内存和处理时间,通过高层而不是底层数据视图,聚集起到了辖域和标度转换的作用,对象或属性群的性质通常比单个对象或属性的性质更加稳定
缺点:丢失有趣的细节
非监督离散化:连续属性的离散化:等宽(区间)、等频或等深(每个区间的点一样多)、使用聚类后的结果来离散化
监督离散化:一种概念上的方法是以极大化区间纯度的方式确定分割点。然而,实践中这种方法可能需要任意确定区间纯度和最小化的区间大小。为了解决这一问题,一些基于统计学的方法用每个属性值来分割区间,并通过合并类似于根据统计检验的相邻区间来创建较大的区间。如果一个区间只包含一个类的值(该区间非常纯),则其熵为0,如果一个区间中的值类出现的频率相等(该区间尽可能不纯),则熵最大。
一种划分连续属性的简单方法是,开始,将初始值切分成两个部分,使得两个结果区间产生最小熵。该技术只需要把每个值看作可能的分割点,因为假定区间包含有序值得集合。然后,取一个区间,通常选取具有最大熵的区间,重复分割过程,直到区间的个数达到用户指定的个数,或满足终止条件。OLAP的分析功能集中在从多维数据数组中创建汇总表的各种方法。OLAP技术包括在不同维上或在不同的属性上聚集数据。
众数:具有最高频率的数。对于多元数据,每个属性的散布可以独立于其他属性。数据的散布更多地用协方差矩阵表示。两个属性的协方差矩阵式两个属性一起变化并依赖于变量大小的度量。协方差接近于0表明两个变量不具有(线性)关系。
用多维数组表示数据需要两个步骤:维的识别和分析所关注的属性的识别。
从表形式表示的数据集创建多维数据表示的过程:首先确定用作维的分类属性以及用作分析目标的定量属性(目标属性是定量的,因为多维数据分析的关键目标是观察聚集量,如总和和平均值),然后将表的每一行(对象)映射到多维数据的一个单元,单元的下标由被选作维的属性的值指定,而单元的值是目标属性的值,假定没有被数据定义的单元的值为0
从多维角度看待数据的主要动机就是需要以多种方式聚集数据。计算聚集总合涉及固定某些属性(维)的值,在其余属性(维)的所有可能的值上求和。
数据的多维表示,连同所有可能的总和(聚集)称作数据立方体(尽管叫立方体,每个维的大小(属性的个数)却不必相等。此外,数据立方体可能多余或少于三个维)。数据立方体是成为交叉表的统计学技术的推广。
转轴:在除两个维之外的所有维上聚集,从整个多维数组中选择一组单元。
切块:通过指定属性区间选择单元子集,这等价于由整个数组定义子数组。
上卷:如将按天的数据按月聚集
下钻:按月的数据分解为按天的
上卷和下钻与聚集有关,然后不同于其他聚集,它是在一个维内聚集单元,而不是在整个维上聚集。多维数据分析将数据看作多维数据组,并聚集数据,以便更好地分析数据的结构。
在统计分析中,主成分分析(英语:Principal components analysis,PCA)是一种分析、简化数据集的技术。主成分分析经常用减少数据集的维数,同时保持数据集的对方差贡献最大的特征。这是通过保留低阶主成分,忽略高阶主成分做到的。这样低阶成分往往能够保留住数据的最重要方面。
维规约
维规约可以删除不相关的特征并降低噪声。术语维规约通常用于这样的技术,通过创建新属性,将一些旧属性合并在一起来降低数据集的维度。通过选择旧属性的子集得到新属性称为特征子集选择或特征选择。维规约的一些常用的方法是使用线性代数的技术,将数据由高维空间投影到低维空间,特别是对于连接数据。主成分分析(PCA)是一种用于连续属性的线性代数技术,并且捕获数据的最大变差。奇异值分解是一种线性代数技术,它与PCA有关,并且也用于维规约。
特征子集选择
降低维度的另一种方法是近使用特征的子集。特征现在的理想方法是:将所有可能的特征子集作为感兴趣的数据挖掘算法的输入,然后选取产生最好结果的子集。这种方法在大部分情况下行不通,所以有三种标准的特征选择方法,嵌入、过滤和包装。
嵌入方法:特征选择作为数据挖掘算法的一部分自然地出现。特殊地,在数据挖掘算法运行期间,算法本身决定使用哪些属性和忽略哪些属性。
过滤方法:使用某种独立于数据挖掘人物的方法,在数据挖掘算法运行前进行特征选择。例如,我们可以选择属性的集合,它的属性对之间的相关度尽可能的低。
包装方法:将目标数据挖掘算法作为黑盒,使用类似于前面介绍的理想算法的方法,但通常不枚举所有可能的子集来找出最佳属性子集。
过滤方法和包装方法的唯一不同是它们使用了不同的特征子集评估方法。对于包装方法,子集评估使用目标数据挖掘算法。对于过滤方法,子集评估技术不同于目标数据挖掘算法。特征子集产生的结果将比所有特征产生的结果更好,或至少几乎一样好。
特征创建
常常可以由原来的属性创建新的属性集,更有效的捕获数据集中的重要信息。此外,新属性的数目可能比原属性少。
三种创建新属性的相关方法,特征提取、映射数据到新的空间和特征构造。
特征提取,由原始数据创建新的特征集称作特征提取。最常使用的特征提取技术都是高度依赖于特定领域的。所以,一旦数据挖掘用于一个相对较新的领域,一个关键的任务就是开发新的特征和特征提取方法。映射数据到新的空间,通过对时间序列实施傅里叶变换,将它转换为频率信息明显的表示,就能检测到这些模式。除了傅里叶变换外,对于时间序列和其他类型的数据,已经证实小波变换也是非常有用的。
特征构造:原始数据的特征具有必要的信息,但其形式不适合数据挖掘算法。在这种情况下,一个或多个由原始特征构造的新特征可能比原始特征更有用。尽管有一些努力试图通过考察已有特征的简单数字组合来自动地进行特征构造,但是最常见的方法还是使用专家意见构造特征。
维规约
删除不想管的属性(维)来减少数据量
属性子集选择
找出最小属性集合,使用数据类的概率分布尽可能地接近使用所有属性的原分布
如何选取
贪心算法
.逐步向前选择
.逐步向后删除
.向前选择和向后删除相结合
.判定树归纳
数据压缩
有损,无损
小波变换
将数据向量D转换成为数值上不同的小波系数的向量D’。
对D’进行剪裁,保留小波系数最强的部分。
主要成分分析
数值规约
回归和对数线性模型
线性回归
对数线性模型
直方图
等宽
等深
V-最优
maxDiff
聚类
多维索引树:对于给定的数据集合,索引树动态的划分多维空间。
选择
简单选择n各样本,不放回
简单选择n各样本,放回
聚类选择
分层选择
离散化和概念分层
离散化技术用来减少给定连续属性的个数
通常是递归的
大量时间花在排序上
对于给定的数值属性,概念分层定义了该属性的一个离散化的值
分箱
直方图分析
聚类分析
基于熵的离散化
通过自然划分分段3-4-5规则
如果一个区间最高有效位上包括3、6、9各不同的值,划分为3个等宽区间。7个不同值,按2-3-3划分为3个区间
最高位包含2,4,8个不同值,划分为4个等宽区间
最高位包含1,5,10个不同值,划分为5个等宽区间
最高分层一般在第5个百分位到第95个百分位上进行
分类数据的概念分层生成
分类数据是离散数据,一个分类属性可能有有限个不同的值
方法
由用户和专家在线模式级显式的说明属性的部分序
通过显式的数据分组说明分层结构的一部分
说明属性集,但不说明他们的偏序
只说明部分的属性集
数据挖掘,分类与预测
分类
预测分类标号(或离散值)
根据训练数据集和类标号属性,构建模型来分类现有数据,并用来分类新数据
预测
建立连续函数值模型,比如预测空缺值
典型应用
信誉证实
目标市场
医疗诊断
性能预测
数据分类,两步过程
第一步,建立一个模型,描述预定数据类集和概念集
假定每个元组属于一个预定义的类,由一个类标号属性确定
基本概念
训练数据库:由为建立模型而被分析的数据元组形成
训练样本:训练数据集中的单个样本(元组)
学习模型可以用分类规则、判定树或数学公式的形式提供
第二步,使用模型,对将来的或未知的对象进行分类
首先评估模型的预测准确率
对每个测试样本,将已知的类标号和该样本的学习模型类预测比较
模型在给定测试集上的准确率是正确被模型分类的测试样本的百分比
测试集要独立于训练样本集,否则会出现“过分适应数据”的情况。
准备分类和预测的数据
通过对数据进行预处理,可以提高分类和预测过程的准确性、有效性和可伸缩性。
数据清理
相关性分析
数据变换 可以将数据概化到较高层概念,或将数据进行规范化
比较分类方法
使用下列标准比较分类和预测方法
预测的准确率:模型正确预测新数据的类编号的能力
速度:产生和使用模型的计算花销
鲁棒性:给定噪声数据或有空缺值的数据,模型正确预测的能力
可伸缩性:对大量数据,有效的构建模型的能力
可解释性:学习模型提供的理解和洞察的层次
用判定树归纳分类
什么是判定树
类似于流程图的树结构
每个内部节点表示在一个属性上的测试
每个分支代表一个测试输出
每个树叶节点代表类或类分布
判定树的生成有两个阶段组成
判定树构建
.开始时,所有的训练样本都在根节点
.递归的通过选定的属性,来划分样本(必须是离散值)
树剪枝
.许多分支反映的是训练数据中的噪声和孤立点,树剪枝试图检测和剪去这种分枝。
判定树的使用:对未知样本进行分类
通过将样本的属性值与判定树相比较
判定归纳树算法(贪心算法)
自顶向下的分治式构造判定树
树以代表训练样本的单个根节点开始
使用分类属性(如果是量化属性,则需先进行离散化)
递归的通过选择相应的测试属性,来划分样本,一旦一个属性出现在一个节点上,就不在该节点的任何后代上出现。
测试属性是根据某种启发信息或统计信息来进行选择(如:信息增益)
递归划分步骤停止的条件
给定节点的所有样本属于同一类
没有剩余属性可以用来进一步划分样本——使用多数表决
没有剩余的样本
贝叶斯分类
贝叶斯分类利用统计学中的贝叶斯定理,来预测类成员的概率,即给定一个样本,计算该样本属于一个特定的类的概率
朴素贝叶斯分类
假设每个属性之间都是互相独立的,并且每个属性对非类问题产生的影响都是一样的。
向后传播分类
向后传播是一种神经网络学习算法,神经网络是一组连接的输入/输出单元,每个连接都与一个权相连。在学习阶段,通过调整神经网络的权,使得能够预测输入样本的正确标号来学习。
优点
预测精度较高
健壮性好,训练样本中包含错误时也可正常工作
输出可能是离散值、连续值或者是离散或量化属性的向量值
对目标进行分类较快
缺点
训练时间太长
蕴涵在学习的权中的符号含义很难理解
很难根专业领域知识相整合
其他分类方法
k-最临近分类
给定一个未知样本,k-最临近分类法搜索模式空间,找出最接近未知样本的k个训练样本,然后使用k个最临近者中最公共的类来预测当前样本的类标号
基于案例的推理
样本或案例使用复杂的符号表示,对于新案例,先检测是否存在同样的训练案例,如果找不到,则搜索类似的训练案例。
遗传算法
结合生物进化思想的算法
粗糙集方法
模糊集方法
允许在分类规则中定义“模糊的”临界值或边界