复习一为概念性的知识,复习二为算法类的知识
第一章
Ⅰ. 数据挖掘的概念和对象。
数据挖掘的定义:
①广义技术角度的定义
数据挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息或知识的非平凡过程。
②狭义技术角度的定义
也有人把数据挖掘视为知识发现过程中的一个基本步骤。例如Fayyad过程模型主要包含以下七个阶段,知识发现过程由这些步骤的迭代序列组成:
a.知识表示
b.数据清理
c.数据集成
d.数据选择
e.数据变换
f.数据挖掘
g.模式评估
③商业角度的定义
数据挖掘是一种新的商业信息处理技术,其主要特点是对商业数据库中的大量业务数据进行抽取、转换、分析和其他模型化处理,从中提取辅助商业决策的关键性数据。
数据挖掘
从商业的角度
可以描述为:按企业既定业务目标,对大量的企业数据进行探索和分析,揭示隐藏的、未知的或验证已知的规律性,并进一步将其模型化的先进有效的方法。
数据挖掘对象:
1. 关系数据库
2. 数据仓库
3. 文本
4. 多媒体数据
5.Web数据
6. 复杂类型的数据
Ⅱ.数据挖掘常用技术和应用场景
数据挖掘中常用的十三种技术:
统计技术,关联规则,基于历史的分析,遗传算法,聚集检测,连接分析,决策树,神经网络,粗糙集,模糊集,回归分析,差别分析,概念描述等
![](https://img-blog.csdnimg.cn/direct/b1674e5bc56149aab2301330c27ec017.png)
数据挖掘的应用场景
数据挖掘应用最集中的领域包括金融、医疗、教育、零售、电商、电信和交通等,而且每个领域都有特定的应用问题和应用背景。
以软件工程数据挖掘为例:
软件工程数据(软件开发过程中积累的各种数据):可行性分析和需求分析文档、设计文档、使用说明、软件代码和注释、软件版本及其演化数据、测试用例和测试结果、软件开发者之间的通信、用户反馈等
应用领域的案例:
电商领域:借助于交易记录挖出破坏规则的“害群之马”
交通领域:为打车平台的乘客订制弹性价格
医疗领域:为乔布斯寻找最佳的医疗方案
第二章 数据预处理
Ⅰ数据预处理的形式
-
数据清理补充缺失数据、平滑噪声数据、识别或删除离群点,解决不一致
-
数据集成集成多个数据库、数据立方或文件
-
数据变换规范化、数据离散化、概念分层产生
-
数据归约简化数据、但产生同样或相似的结果
Ⅱ数据清洗
现实世界的数据一般是脏的、不完整的和不一致的。而数据清洗试图填充空缺的值、识别孤立点、消除噪声,并纠正数据中的不一致性。因此,从如下几个方面介绍:
1.空缺值;
2.噪声数据;
3.不一致数据。
1.空缺值
数据并不总是完整的数据库表中,很多条记录的对应字段可能没有相应值,比如销售表中的顾客收入
如何处理空缺值
1)忽略该元组:
2)人工填写空缺值
3)使用属性的平均值填充空缺值
4)使用一个全局变量填充空缺值
5)使用与给定元组属同一类的所有样本的平均值
6)使用最可能的值填充空缺值(最常用)
7)使用填充算法来处理缺失数据
2.噪声数据
噪声(noise):是一个测量变量中的随机错误或偏差,包括错误的值和偏离期望的孤立点值。
引起噪声数据的原因:
•
数据收集工具的问题
•
数据输入错误
•
数据传输错误
•
技术限制
•
命名规则的不一致
如何处理噪声数据
1)分箱 (binning):
分箱的步骤
:
首先排序数据,并将它们分到等深(等宽)的箱中,然后可以按箱的平均值、按箱中值或者按箱的边界等进行平滑。
按箱的平均值平滑:箱中每一个值被箱中的平均值替换
按箱的中值平滑:箱中的每一个值被箱中的中值替换
按箱的边界平滑:箱中的最大和最小值被视为箱边界,箱中的每一个值被最近的边界值替换
① 等深分箱 (binning):
按记录数进行分箱,每箱具有相同的记录数,每箱的记录数称为箱的权重,也称箱子的深度。
示例:
已知一组价格数据:15,21,24,21,25,4,8,34,28 现用等深(深度为3)分箱方法对其进行平滑,以对数据中的噪声进行处理。
解:排序后的数据:4,8,15,21,21,24,25,28,34
划分为等高度的Bins :
Bin1: | 4,8,15 |
Bin2: | 21,21,24 |
Bin3: | 25,28,34 |
根据Bin均值进行平滑
Bin1: | 9,9,9 |
Bin2: | 22,22,22 |
Bin3: | 29,29,29 |
根据Bin中值进行平滑
Bin1: | 8,8,8 |
Bin2: | 21,21,21 |
Bin3: | 28,28,28 |
根据Bin边界进行平滑
Bin1: | 4,4,15 |
Bin2: | 21,21,24 |
Bin3: | 25,25,34 |
②等宽分箱 (binning):
在整个属性值的区间上平均分布,即每个箱的区间范围设定为一个常量,称为箱子的宽度
示例:
已知一组价格数据:15,21,24,21,25,4,8,34,28 现用等宽(宽度为10)分箱方法对其进行平滑,以对数据中的噪声进行处理。
解:排序后的数据:4,8,15,21,21,24,25,28,34
划分为等宽度的Bins :
Bin1: | 4,8 |
Bin2: | 15,21,21,24,25 |
Bin3: | 28,34 |
根据Bin均值进行平滑
Bin1: | 6,6 |
Bin2: | 21,21,21,21,21, |
Bin3: | 31,31 |
根据Bin中值进行平滑
Bin1: | 6,6 |
Bin2: | 21,21,21,21,21 |
Bin3: | 31,31 |
根据Bin边界进行平滑
Bin1: | 4,8 |
Bin2: | 15,25,25,25,25 |
Bin3: | 28,34 |
2)聚类(Clustering): 相似或相邻近的数据聚合在一起形成各个聚类集合,而那些位于聚类集合之外的数据对象,被视为孤立点。
特点:直接形成簇并对簇进行描述,不需要任何先验知识。 通过聚类分析查找孤立点,消除噪声
3.不一致数据。
处理不一致数据的方式:
①人工更正
②
利用知识工程工具:例如,如果知道属性间的函数依赖关系,可以据此查找违反函数依赖的值。
③数据字典:在将不同操作性数据库中的数据进行集成时,也会带来数据的不一致。如:一个给定 的属性在不同的数据库中可能具有不同的名字,如姓名在一个数据库中为Bill,在另一个数据库中可能为B。对此,可根据数据字典中提供的信息,消除不一致。
Ⅲ数据规范化
在正式进行数据挖掘之前,尤其是使用基于对象距离的挖掘算法时,必须进行数据的规格化。如对于一个顾客信息数据库中年龄属性或工资属性,由于工资属性的取值比年龄属性的取值要大得多,若不进行规格化处理,基于工资属性的距离计算值将远远超过基于年龄属性的计算值,这就意味着工资属性的作用在整个数据对象的距离计算中被错误放大了
数据规范化:将数据按比例缩放至一个小的特定区间:
1)最小—最大规范化:
假定min
A
和max
A
分别为属性A的最小和最大值,则通过下面公式将A的值映
射到区间[new_min, new_max]中的v’ :
![](https://img-blog.csdnimg.cn/direct/092faaafe526485289273a816936ff3c.png)
例:假定属性income的最小与最大值分别为 $12000和$98000,可根据最小—最大规范化方法将
其范围映射到[0,1]:
如:属性值$73600将变换为:
[(73600-12000)/(98000-12000)]*(1-0)+0=0.716
2)z-score规范化(零均值规范化):
将属性A的值根据其平均值和标准差进行规范化;
常用于属性最大值与最小值未知,或使用最小最大规范化方法会出现异常数据的情况。
![](https://img-blog.csdnimg.cn/direct/cdf9d246924c42fb91ff82410bfab64d.png)
其中,mean
A
、standard
-
dev
A
分别为属性A取值的均值和标准差。
例:假定属性income的平均值与标准差分别为$54000和$16000,使用z-score规范化,则属性值
$73600将变换为:
(73600-54000)/16000=1.225
3)小数定标规范化:
通过移动属性A的小数点位置进行规范化,小数点的移动依赖于A的最大绝对值:
其中,j是使 Max(| v’ |)<1的最小整数
例:假定A的取值范围[-986, 917],则A的最大绝对值为986,为使用小数定标规范化,用1000(即
j=3)除每个值,这样-986被规范化为-0.986。
注意:
①规范化将原来的数据改变很多,特别是上述的后两种方法。
②有必要保留规范化参数(如平均值和标准差(z-score规范化)),以便将来的数据可以用一致的方式规范化。
第三章 认识数据
Ⅰ数据对象与属性类型
什么是属性:
数据集:
数据集是数据挖掘的对象,由数据对象组成,又称
样本、实例、数据点或元组
。
属性:一个数据字段,表示数据对象的一个特征。
属性向量(或特征向量): 用来描述一个给定对象的一组属性。
属性有不同类型:
-
标称属性( nominal attribute )
-
序数属性( ordinal attribute )
-
数值属性( numerical attribute )
-
离散属性与连续属性
Ⅱ数据的基本统计描述
均值
数据是的平均值
中位数
是常用的数据中心度量,是有序数据值的中间值
众数
是集合中出现最频繁的值
1.
极差、四分位数和四分位数极差
-
极差 是最大值与最小值之差
-
分位数 是数据集上每隔一定间隔上的点,把数据划分成基本上大小相等的连贯集合。
-
四分位数 给出分布的中心、散布和形状的某种指示。第1 个四分位数记作 Q1 ,是第 25 个百分位数,它砍掉数据的最低的1/4。四分位间距: 第 1 个和第 3 个四分位数之间的距离是散布的一种简单度量,它给出被数据的中间一半所覆盖的范围。
2.
方差与标准差:
代表数据分布的散布程度,是数据散布的度量 。低标准差意味数据趋向于靠近均值;而高标准差 表示数据散布在一个大的值域中。
3.
协方差和协方差矩阵
协方差(
Covariance
)
在概率论和统计学中用于衡量两个变量的总体误差。
n
个样本的样本协方差计算公式:
![](https://img-blog.csdnimg.cn/direct/8d802f203f7542dd91a8435c8efef6b7.png)
协方差矩阵(
Covariance matrix
)
由数据集中两两变量(属性)的协方差组成。矩阵的第(i,j)个元素是数据集中第
i
和第
j
个元素的协方差。
例如,三维数据的协方差矩阵如式所示:
![](https://img-blog.csdnimg.cn/direct/18c55cf56caa45c78b66fcf43c51fa36.png)
Ⅲ数据的相似性与相异性
数据矩阵:
又称对象-属性结构:这种数据结 构用关系表的形式或n×p(n个对象×p个属性)矩阵存放n个数据对象
![](https://img-blog.csdnimg.cn/direct/01b27ce0aa73418e8b0bf770607afbb3.png)
相异性矩阵:
又称对象-对象结构:存放n个对象两两之间的邻近度(proximity),通常用一个n×n矩阵表示
标称属性的值是一些符号或事物的名称,可以取两个或多个离散状态。
两个对象
i
和
j
之间的相异性可以根据
不匹配率
来计算:
其中,
m
是匹配的数目(即
i
和
j
取值相同状态的属性数),而p
是刻画对象的属性总数。
相似性
可以用下式计算:
各种距离:
1.明考夫斯基距离
令dij
表示样品X
i
与
X
j
的距离
![](https://img-blog.csdnimg.cn/direct/7c71d5ddca324fe3a75a2e84684db91b.png)
明考夫斯基距离的缺陷:
-
容易受变量的量纲影响
-
没有考虑变量间的相关性
两种改进措施:
-
“马氏距离”法变量
-
标准化处理法
2.马氏距离
两个样品间的马氏距离为:
马氏距离又称为
广义欧氏距离
。
优点:
(1)考虑了观测变量之间的相关性。如果各变量之间相互独立,即观测变量的协方差矩阵是对角矩阵。
(2) 不再受各指标量纲的影响
第九章 评估分类模型的性能
1.常用术语
1)True Positives(TP):
预测为正样本,实际也为正样本的样本数;
2)False Positives(FP):
预测为正样本,实际为负样本的样本数(错预测为正样本了,所以叫False);
3)True Negatives(TN):
预测为负样本,实际也为负样本的样本数;
4)False Negatives(FN):
预测为负样本, 实际为正样本的样本数(错预测为负样本了,所以叫False)
真正率(True Positive Rate,TPR)
(也叫灵敏 度(sensitivity)):TPR = TP /(TP + FN),即正样本预测结果数/正样本实际数
假负率(False Negative Rate,FNR):
FNR = FN /(TP + FN),即被预测为负的正样本结果数/正样本实际数
假正率(False Positive Rate,FPR)
:FPR = FP /(FP + TN),即被预测为正的负样本结果数/ 负样本实际数。
真负率(True Negative Rate,TNR)
(也叫特指度(specificity)):TNR = TN/(TN + FP), 即负样本预测结果数/负样本实际数
混淆矩阵(confusion matrix)
,又称为可能性表格或是错误矩阵
其
每一列代表预测值
,每一行代表的是
实际的类别
。这个名字来源于它可以非常容易的表明多个类别是否有混淆(也就是一个class被预测成另一个class)
![](https://img-blog.csdnimg.cn/direct/b5c9d824b0774835ad7094845e8dcf3b.png)
2.评价指标:
1.正确率(accuracy)
正确率是我们最常见的评价指标,分类器对整个样本的判定能力,即将正的判定为正,负的判定为负;
accuracy = (TP+TN)/(P+N),
即被分对的样本数除以所有的样本数,通常来说,正确率越高,分类器越好
2.错误率(error rate)
错误率则与正确率相反,描述被分类器错分的比例 error rate = (FP+FN)/(P+N)
对某一个实例来说,分对与分错是互斥事件, 所以 accuracy =1 - errorrat;
3.灵敏度(sensitive)
表示的是所有正例中被分对的比例,衡量了分类器对正例的识别能力 sensitive = TP/P
4.特效度(specificity)
表示的是所有负例中被分对的比例,衡量了分类器对负例的识别能力;specificity = TN/N
5.精度(precision)
精度是较精确性的度量,表示被分为正例的示例中实际为正例的比例 precision=TP/(TP+FP);
6.召回率(recall)
召回率是覆盖面的度量,度量有多个正例被分为正例,recall=TP/(TP+FN)=TP/P=sensitive 。
可以看到召回率与灵敏度是一样的。
第十一章 文本检索技术
ⅠTF
TF (Term Frequency):词语频率,表示词条(关键字)在文档中出现的频率。这个数字通常会被标准化(通常是词条频率除以文档中的词条总数),以防止它偏向长的文件。
![](https://img-blog.csdnimg.cn/direct/d4bc1fd694fd47efbb664eec03a1280c.png)
ⅡIDF
IDF (Inverse Document Frequency):逆文档频率,表示词条的普遍重要性。当包含词条的文档越少,IDF越大,则说明词条具有很好的类别区分能力。公式可以表示为:
ⅢTF-IDF
TF-IDF (Term Frequency-Inverse Document Frequency):是一个用于信息检索与文本挖掘的常用加权技术。它的主要思想是:如果某个词条(关键字)在一篇文章中出现的频率高(Term Frequency,TF),并且在其他文章中很少出现(Inverse Document Frequency,IDF),则认为这个词条具有很好的类别区分能力,对这篇文章的内容有很好的指示作用。
TF-IDF值通常用来评估词条(关键字)在文档中的重要性,对于文档d中的词条t,以及整个文档集D。高TF-IDF值的词条表示在给定文档中更重要,而在整个文档集中较为稀有。这有助于过滤掉常见的词汇,保留重要的词汇。
第十三章
协同过滤
协同过滤简单来说是利用某兴趣相投、拥有共同经验之群体的喜好来推荐用户感兴趣的信息,个人通过合作的机制给与信息相当程度的回应(如评分)并记录下来,以达到过滤的目的进而帮助别人筛选信息。 回应不一定局限于特别感兴趣的,特别不感兴趣信息的纪录也相当重要
通过分析用户评价信息(评分)把有相似需求或品味的用户联系起来,用户之间共享对物品的观点和评价,这样就可以更好地做出选择。
协同过滤分类
协同过滤方法分为:基于邻域的方法和基于模型的方法。
基于邻域的方法又分为两类,一类是
基于用户推荐
,一类是
基于物品推荐
。
相应地,基于近邻方法的推荐系统也分为两类:
一类是
基于用户(User)的协同过滤系统
,
如GroupLens, Bellcore video和Ringo,评估用户u对某 个物品i感兴趣的程度,是通过利用对该物品i已作出评价并且和该用户有相似评价习惯的其他用户(也叫近邻);
一类是
基于物品(Item)的协同过滤系统
,通过基于用户u给相似于i物品的评分来预测用户u给物品i的评分,所谓相似物品是指被一些用户评价并具有相似特点的物品。