文章目录
目录
前言
本文主要是介绍武汉理工大学数据挖掘与机器学习这门课程中数据挖掘部分的考试重点。
重点:属性类型、相异性度量、相似性度量、数据预处理、决策树、关联规则分析、聚类、朴素贝叶斯分类器。
一、属性类型
分类
数据类型:离散属性与连续属性
数据:定性属性与定量属性
定性属性:包括标称属性与序数属性(用于分类)
定量属性:包括区间属性与比率属性(用于比较)
性质
标称属性:具有相异性。例如:学号、眼睛颜色。
序数属性:具有相异性、有序性。例如:矿石的硬度{好、较好、很好}、成绩{优秀、良好、合格}。
区间属性:具有相异性、有序性、差值意义。例如:日历日期。
比率属性:具有相异性、有序性、差值意义、比值意义。例如:年龄、长度。
例题
给出下列数据的属性(离散/连续),(定性/定量),(标称、序数、区间、比率)。
人的年龄:离散、定量、比率。
由测量仪测出的亮度值:连续、定量、比率。
由人眼判断的亮度值:离散、定性、序数。
二、相异性度量与相似性度量
相似度:两个对象越相似,相似度越高。
相异度:两个对象越相似,相异度越低。
描述数据间的相异度:距离
欧几里得距离:
闵可夫斯基距离:
距离的性质:非负性、对称性、三角不等式。
描述对象之间的相似度
相似度的性质:1)当且仅当x=y时,s(x,y)=1;2)对称性s(x,y) = s(y,x)
二元数据相似性度量:
对于下面公式不理解的可以看后续例题来理解
x,y是两个对象,都有n个二元属性元素组成
:x=1,y=1的频数;
:x=0,y=1的频数
简单匹配系数(SMC):
Jaccard系数:(与SMC相比删去了f00)
多元数据相似性度量:
余弦相似度(多元取值):
x,y不仅限于只能取01.
其中
改写形式 为
广义Jaccard系数(Tanimoto系数):
相关性:
相关性用来测量两组被观测到的值之间的线性关系。
皮尔森相关系数:
例题
SMC与Jaccard例题
余弦相似度例题
皮尔森相关系数例题
Corr(x,y) = -1 ;Xk = -3Yk Corr(x,y) = 1; Xk = 3Yk
三、数据预处理
存在“噪声”、“数据缺失”、“数据不一致”,“数据重复”等问题需要进行数据预处理
数据预处理方法:
聚集、采样、降维、特征子集选取、特征创建、属性变换。
数据预处理目的:
聚集和采样 : 减少数据数量
降维,特征子集选取 : 减少数据属性(降低维度)
特征创建,属性变换 : 创建/改变数据属性
聚集:将两个或多个对象合并为单对象。
优点:减少数据数量、数据更加稳定。
缺点:丢失部分有用信息。
采样:选择数据对象的子集。
简单随机采样技术:无放回采样与有放回采样。
分层采样:将数据分类,接着从各类中抽取部分数据。
选择合适的样本容量,不能太多也不能太少。
自适应采样:从一个小样本开始,逐渐增加样本容量直到得到足够容量的样本。
降维:
目的:避免维度灾难、减少用于数据挖掘的时间和内存需要、使数据更容易可视化
PCA:线性代数方法,将高维数据投影到低维实现降维。
特征子集选取:选取所有特征中最佳的特征子集
条件:数据中存在冗余特征或不相关特征。
特征创建:根据原属性创建新属性,更有效的捕捉数据集信息。
特征提取
属性创造
将数据映射到新空间:通过傅里叶变换
属性变换:运用函数将某个属性的整个集映射到新的替换子集,运用新值标识旧值。
简单函数变换:XK、log(x)、ex、|X|等等。
归一化:将数据利用算法限制在一定的区间内。常用归一化公式:X’ = (X-Xmin)/( Xmax- Xmin)
四、决策树
决策树最优特征的选取
选取最优的特征(属性)作为划分结点
通过度量结点的不纯度来确定最优特征。不纯度越低,属性越优
不纯度度量:Gini指数 , 熵 , 分类误差
基尼指数:
熵:
分类误差:
确定最佳属性测试条件:比较父节点划分前的不纯度与划分后的不纯度比较,差异越大越好。
即比较不同的划分方式的子节点不纯度越小越好。
父节点的不纯度 = 子节点的不纯度的加权平均和
例如:基尼指数
决策树结点分支的选择
标称属性:利用属性的不同值产生多路分支;将不同值划分为两个子集产生两路分支。
序数属性:根据属性的类型值产生多路分支;将属性有序划分两个子集产生两路分支。
连续属性:考虑连续值取值范围产生多路分支;A<=v 与A>v 产生两路分支。
合适的V的选择:排序,根据中点确定多个V,计算每个V的不纯度,确定最优V。
由于计算量大,因此利用贪心法选择局部最优解即可。
模型过拟合
原因:1)噪声干扰。2)训练集不充分。3)模型过于复杂
奥卡姆剃刀原则:如果给定两种模型,他们具有相似错误率,应该选择简单的模型。
分类模型估计泛化误差的方法:悲观错误估计、最小描述长度原则
悲观错误估计
最小描述长度原则
Cost(model ,data) = cost(data |model) + cost(model)
cost(data |model):对错误分类的示例进行编码所需的位数。
cost(model):对模型编码所需的位数。
训练集中有n个属性,m个错误,决策树中属性个数为x,k个叶子
则cost(data |model) = mlogn , cost(model) = xlogn+klogk
五、关联规则分析
支持度(S):一个项集出现在集合数据中的比率有多大。
S(X -> Y) = (XUY)计数/样本数
如果一个项集的支持度大于最低标准,则是频繁项集
置信度(C):包含X项集数据中Y的频率有多大
C(X -> Y)= (XUY)计数/X计数
关联规则:X并Y为空
d个元素可以产生的项集数为:
关联规则挖掘算法两个子任务:1)确定频繁项集。2)规则的产生
确定频繁项集
方法:减少候选项集的数目、减少比较的次数
使用先验(Apriori)原理进行剪枝:如果一个项集是频繁的,则它的所有子集一定也是频繁的。
反单调性(支持度性质)剪枝:如果一个项集是非频繁项集,那么他的超集也是非频繁项集。
因此可以从频繁一项集开始逐渐计算剪枝到频繁n项集。教材P211
支持度计数 P215
FP增长算法 P228
规则的产生
一个项集有k个元素,则有个候选规则
六、聚类分析
目标:组内的相似越大,不同组的差异大,聚类越好
簇的不同类型:明显分离的簇、基于原型(中心)的簇、基于邻近的簇、基于密度的簇与基于性质的簇。
层次聚类、划分聚类
K-means算法 P310
关键:K值的选择、K个点的位置的选择
算法复杂度 = O(N*K*I*d)
N=样本数;K=簇的数量;I=迭代次数;d=数据属性个数
解决中心选取导致簇分类不同问题:
1.多次运行,比较每次结果,选择最优解。
2.采取采样、聚类分层的方法。
3.选取更大的K,然后筛选。
七、朴素贝叶斯分类器
(X1,X2 …… Xd) 表示每个数据的d个属性。
Y表示类别标签。
P(X1 ,X2 …… Xd | Y)表示类条件概率;
P(Y)表示Y的先验概率;
P(Y|X1,X2……Xd)表示Y的后验概率;
目标:找到最大化后验概率的Y。
运用贝叶斯公式计算:
即:寻找一个Y使得P(X1 ,X2 …… Xd | Y)P(Y)最大
在朴素贝叶斯分类器中假定:各个属性都是相互独立的。
则:P(X1 ,X2 …… Xd | Y) = P(X1|Y) P(X2|Y)…P(Xd |Y)
其中
P(Xi |Y) = num(Xi) /num(Y=y) ,Xi为离散属性
Xi为连续属性。均值与方差要在与类标签相同的数据中计算。
为了避免离散数据的类条件概率为0,使用改进方法
Laplace:
m-estimate:
c:number of classer,p:prior probalility,m:parameter
局限:属性必须严格独立