数据挖掘复习上
数据挖掘任务两大类:预测任务,描述任务。
本次复习包含以下四种数据挖掘任务:
1.预测模型:分类(用于预测离散的目的变量)和回归(用于预测连续的目的变量)
2.关联分析
3.聚类分析
4.异常分析
一、数据
大数据指的是大小超出常规的数据库工具获取、存储、管理和分析能力的数据集。
大数据特点:数据体量巨大(Volume),数据类型繁多(Variety),价值密度低(Value),处理速度快(Velocity),复杂性(Complexity)。
数据是对象(objects)及其属性(attributes)的集合。
属性(attribute)是对象的性质或者特征;例: 人的眼睛的颜色
数据对象(object)用一组刻画对象基本性质的属性描述;
分析对象的特性,我们为它们赋予的数字或符号,称为属性值(Attribute values)
不同类型的属性:
标称 Nominal
例:身份证号码、眼睛颜色、邮政编码
序数 Ordinal
例:排名,等级,身高{高,中,矮}
区间 Interval
例:日历日期、摄氏温度或华氏温度。
比率 Ratio
例:温度(开尔文)、长度、计数
离散属性:只有有限或可数值组成的集合
连续属性:以实数作为属性值,例如:温度、身高或体重。
数据集的类型:
记录 Record:由一组记录组成的数据,每个记录都由一组固定的属性组成
数据矩阵 Data Matrix
文本数据 Document Data
交易数据 Transaction Data
图 Graph:
万维网 World Wide Web
分子结构 Molecular Structures
序列Ordered:
空间数据 Spatial Data
时间序列 Temporal Data
顺序数据 Sequential Data
遗传序列数据 Genetic Sequence Data
相似度和相异度:
相关计算:
二、数据预处理
2.1数据预处理:概述
进行数据预处理原因:
数据不完整;有噪声(包含错误或者孤立点);数据不一致;冗余;
数据质量的多维度量:
准确性:如是否正确,精确与否等
完整性:如是否有数据遗漏或无法取得
一致性:如一些数据被修改了而另一些则没有
时效性:如数据是否被及时更新
可信性:描述数据的正确性的可信程度
可解释性:描述数据有多么易于理解
数据质量问题的例子:
噪声和异常值,错误的数据,假数据,缺少值,重复数据
主要任务:
(1)数据清理
处理缺失的值,光滑噪声数据,识别、删除离群点,解决不一致性
(2)数据集成,抽样
集成多个数据库、数据立方体或文件,抽样
(3)数据变换和离散化
规范化,概念分层生成
(4)维数约减
维规约,数量规约,数据压缩
2.2数据清洗
2.2.1处理缺失值
(1)忽略元组。
当类标号缺少时通常这么做(假定挖掘任务设计分类或描述),当每个属性缺少值的百分比变化很大时,它的效果非常差。
(2)人工填写缺失值。
重新填写数据;
工作量大;
可行性低;
(3)自动填写缺失值。
使用一个全局变量:比如unknown或-∞;
使用属性平均值;
使用与给定元组属同一类的所有样本的均值或中位数;
使用最可能的值填充空缺值:使用像Bayesian公式或决策树这样的基于推理的方法;
2.2.2光滑噪声数据
处理噪声数据:
分箱(binning): 首先排序数据,并将他们分到等深的箱中;
然后可以按箱的平均值平滑、按箱中值平滑、按箱的边界平滑等 ;
回归:通过让数据适应回归函数来平滑数据;
聚类:通过聚类来检测并删除离群点;
2.3数据变化
2.3.1类型转换
2.3.2聚集
将两个或多个属性(或对象)组合成单个属性(或对象)。
目的:
数据缩减:减少属性或对象的数量。
规模变化:城市聚集成地区、州、国家等。
更 “稳定的”数据:聚合数据的可变性较小 。
2.3.3抽样
允许用数据的较小随机样本s(子集)表示较大的数据集N;
使用了采样技术,降低时间复杂度;
降低成本;
抽样也可以用来调整类分布 ;
欠采样:只想用少量数据代表大量的原始数据。比如k-means里用mean代表一簇数据。Random forest也可以认为是对数据点和特征做down-sample。
过采样:生成新数据或重复采样。比如SMOTE,bootstrap。
2.4离散化
离散化是将连续属性转换为有序属性的过程。
可能会有无限多个值映射到少量的类别中;
离散化可用于无监督和有监督的设置;
非监督离散化:在数据值中查找间断点。如等宽离散化,等频率离散化,K-means
监督离散化: 使用类标签查找间断点。Iris例子
2.5标准化
2.6数据描述的统计量
2.7维数约减
维数灾难:当维数增加时,数据在它所占据的空间中变得越来越稀疏。
维数约减目的:
避免维数灾难;
减少数据挖掘中的时间和存储空间需求;
使得可视化更轻松;
帮助去除不相关特征和减弱噪声;
维数约减技术:
主成分分析 Principal Components Analysis (PCA);
奇异值分解 Singular Value Decomposition (SVD);
监督和非线性技术 (如特征选择);
PCA 例子:
PCA目标是找到一个能捕捉到最大数量的数据变化的投影。
线性判别分析(Linear Discriminant Analysis)例子:
LDA的目标是在保持尽可能多的类歧视信息的同时进行降维。
例如:给定一组d-d向量x1,x2,…,xn,其中N1属于ω1,N2属于ω2。在所有可能的投影线y=wTx中,找到使可分离性最大的一条。
同一数据集 ,PCA和LDA的计算与结果:
三、分类(具有标签是一种监督学习)
3.1定义
给定一系列记录 (训练样本 )
每条记录用元组 (x,y ) 来表示, 其中 x 是属性的集合,而 y 是一个特殊的属性。
x: 属性, 特征,输入样本
y: 类别, 响应, 输出样本
目标:通过学习得到一个目标函数,把每个属性集x 映射到一个预先定义的类标号 y。
一种监督学习:
从数据中推导函数的技术
<输入数据, 输出数据>
输入数据: 特征组成的向量
输出:布尔值(二进制分类)或整数(多类)
“监督的” 意味着:每个数据样本都需要教师或先知来标记 。
一种监督学习
例子:
分类问题建模一般方法:
基本分类器:
决策树 Decision Tree;
基于规则的方法 Rule-based Methods;
最近邻 Nearest-neighbor;
神经网络 Neural Networks, Deep Neural Nets;
朴素贝叶斯 Naïve Bayes;
支持向量机 Support Vector Machines;
集成分类器:
Boosting,;
随机森林 Random Forests;
3.2决策树
其核心是一个贪心算法,它采用自顶向下的递归方法构建决策树。
相关算法:
Hunt’s Algorithm (one of the earliest);
CART;
ID3, C4.5;
SLIQ,SPRINT;
3.2.1Hunt’s Algorithm (one of the earliest)
算法的递归定义:
设 Dt 是与结点 t 相关连的训练记录集。
(1)如果 Dt 中所有记录都属于同一个类 yt, 则 t 是叶结点,用 yt 标记。
(2)如果 Dt 中包含属于多个类的记录,则选择一个属性测试条件,将记录划分成较小的子集。
例子:
3.2.2 ID3算法
ID3算法使用的数据特征函数(标准)为信息增益。熵表示的是不确定度,熵越大,不确定度就越大。
假设在数据S中有k 个类别,其中第i 个类别数据在总数据中占有率为pi ,则熵的计算公式为:
假定根据属性A划分的数据S的总数为m个,Sj表示m中第j个数据。
分类前后熵减小的差值就是信息增益:
实例:
数据集:
ID3 框架
ID3(Examples, Target_attribute, Attributes)。
创建树的根节点Root。
如果样本属同一类C,返回该根结点,创建单节点树,并以C作为类。
如果Attributes为空,那么返回根节点,其类标号 为样本集中的多数类。
A <-Attributes中分类样本能力最好的属性(最大信息增益)。
以A作为节点分类属性。
对于A的每个可能值 vi :
在节点下加一个新的分支对应测试 A= vi.。
令样本vi为样本集中中满足A属性值为vi的子集.。
如果 Examples (vi) 为空:
在这个新分支下加一个叶子节点,节点的标号为样本中的多数类.。
否则在新分支下加一个子树:
ID3(Examples(vi), Target_attribute, Attributes-{A})。
返回根节点 Root。
ID3的优点:理论清晰,方法简单,学习能力较强。
ID3的缺点:
(1) 信息增益的计算比较依赖于特征数目比较多的特征
(2) ID3为非递增算法
(3) ID3为单变量决策树
(4) 抗糙性差
3.2.3决策树的剪枝:REP/PEP/CCP算法
决策树的过拟合问题:
定义:
给定一个假设空间 H, 如果 h ∈ H 是过拟合的,如果存在某种替代假设 h' ∈ H, 使得 h 比 h' 具有较小的误差在训练样本集上, 但是 h' 比 h 具有较小的误差在整个实际数据集上。
解决方法:
1.早一些停止树生长。
2.允许树过度拟合数据,然后对树进行后期修剪。
错误率降低剪枝法(Reduced-Error Pruning)简称REP方法:
REP方法是通过一个新的验证集来纠正树的过拟合问题。对于决策树中的每一个非叶子节点的子树,我们将它替换成一个叶子节点,
该叶子节点的类别用大多数原则来确定,这样就产生了一个新的相对简化决策树,然后比较这个决策树在验证集中的表现。
如果新的决策树在验证集中的正确率较高,那么该子树就可以替换成叶子节点,从而达到决策树剪枝的目的
该算法是从下往上依次遍历所有的子树,直至没有任何子树可以替换使得在验证集上的表现得以改进时,算法就可以终止。
3.3 K-最近邻法算法
基本思想:类比学习。
3.4Bayes 定理与朴素贝叶斯分类器 (Naïve Bayes)
Bayes 定理:
射击命中例子:
朴素贝叶斯分类器 (Naïve Bayes):
实例:
3.5支持向量机(Support Vector Machines)
附上大佬的链接有兴趣的可以去看看:支持向量机通俗导论(理解SVM的三层境界)
3.6神经网络 (Neural Networks)