大话数据挖掘第一章1.1-1.5

来源:互联网 发布:东莞买房 知乎 编辑:程序博客网 时间:2024/06/05 20:33

第1章    揭开数据挖掘的面纱

1、数据挖掘的最高境界就是‘从数据中获取知识,辅助科学决策’。
     希望通过我们的数据挖掘课程的学习,使你们了解到什么是数据挖掘?它能够干什么?有哪些数据挖掘技术?怎么应用?

     沃尔玛的'购物篮分析’后来演变为‘关联规则分析’


2、数据挖掘定义:数据挖掘(DataMining)就是从大量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐含在其中的、人 们事先不知道的、但又是潜在有用信息和知识的过程。

大量的:实际上数据挖掘的算法大都是建立在统计学大数定律基础上的,数据量太小,常常无法反映出真实世界中的普遍性,这样挖掘算法得出的结论自然不可靠。但并非小数据量就不可以挖掘,近年来研究者也提出了一些对小样本进行挖掘的方法,如支撑向量机方法就是基于小样本学习理论的非常实用的方法。数据量虽小,但数据总是事物特性一定程度的反映,只要建立的模型和算法得当,当然也可以从这些数据中获取一定的信息。也不是说数据量越大越好,随着数据量的增大,算法执行效率会越来越低,甚至无法计算。
有噪声的:由于异常情况的干扰,使我们获得的数据偏离了真实值,这样的数据就是噪音数据。
不完全的:问卷调查时发现不少人不填婚姻状况和年龄,这些不完全的或缺失的数据会给数据挖掘带来一定的难度,我们要么干脆删除这些样本或记录,要么选择使用一定的方法将这些缺失数据补上,或者选择使用可以自动处理缺失数据的算法

模糊的:模糊性则指事物本身从属概念的不确定性。个子的高矮就是典型的模糊性概念,到底多高才算高。

随机的:随机性是指事件发生与否的不确定性。比如说超市啤酒每天的销量显然是不确定的,大部分人买啤酒是在超市转悠时临时决定的。


3、我们能够收集、存储、处理如此海量的数据,归功于20世纪70年代IBM发明的关系式数据库和SQL查询语言。在此基础上通过计算机和网络进行联机事务处理(OnLine Transaction Processing,OLTP)可以对管理信息进行日常操作并及时、安全、高效地存储数据,这样便引发了数据爆炸式地增长。

数据仓库出现的原因:

OLTP关心的只是业务操作,只对当前数据感兴趣。其实信息处理的目的是为人们提供决策支持,这就需要对历史数据进行大量地分析处理。对历史数据的分析,往往导致系统进行长时间运行,严重影响日常数据实时操作,这就要求把分析性操作及其相关数据从事务处理环境中提取出来,按照决策支持的需要进行重新组织,建立单独的分析环境。

为了满足这种需求,W. H. Inmon 于1993年出版了‘Building the Data Warehouse’,从此数据仓库(DataWarehouse)隆重登场。

数据仓库定义:‘数据仓库是一个面向主题的、集成的、随时间变化的、持久的数据集合,用于支持管理层的决策过程’。在数据仓库产生的同时,联机在线分析(OnLineAnalytical Processing,OLAP)出现了,它是一种具有对数据进行汇集、合并和聚集以及从不同角度观察信息的分析技术。”


4、数据挖掘以数据库中的知识发现(Knowledge Discovery in Database,KDD)。从此以后,数据挖掘(Data Mining)和数据库中的知识发现(KDD)互为别名。

在科研界便继续沿用 KDD 这个术语,而在商用领域,因为‘数据库中的知识发现’显得过于冗长,就普遍采用了更加通俗、简单的术语‘数据挖掘’。


5、数据挖掘的主要功能:

概括地说,数据挖掘的功能主要包括关联分析、聚类分析、分类、回归、时间序列分析和偏差甄别等,下面我们分别介绍这些功能。

6、关联规则挖掘:

关联是指一个事件与另一个事件之间的依赖关系。关联规则挖掘是发掘数据库中的关联关系。

 关联(association)规则挖掘,最经典的关联规则算法是1994年提出的Apriori算法。

 Apriori算法最基本思想是:

首先从事件中寻找所有频繁出现的事件子集,然后在这些频繁事件子集中发现可信度较高的规则。


7、 聚类:

聚类就是将数据对象划分成若干个类,在同一类中的对象具有较高的相似度,而不同类中的对象差异较大。

两个对象间的距离越小,说明二者越相似,用距离度量对象的相似性是最自然的方法。

聚类的基本思想:

类内数据点越近越好,类间数据点越远越好。

 两类经典的聚类算法:

划分方法(Partitioning Method)和层次聚类方法(Hierarchical Method)。


8、两种划分方法:K-means和K-medoids方法

 k-Means算法核心思想是把n个数据对象划分为k个类,使每个类中的数据点到该类中心的距离平方和最小。

K-means算法就是尝试找出平方误差函数最小的K个划分,为了找出合适的聚类个数K,一般用若干个K试验,哪个K得到的距离平方和最小,就认为哪个K是最佳的聚类个数。


K-means算法和K-medoids算法区别:

K-means算法:将已聚集的点的均值作为新的聚类中心。对噪声和孤立点非常敏感,因为一个离群值对质心的计算影响很大。

K-medoids算法:以各聚类均值点最近的点作为聚类中心,其他和K-means算法一致,可以有效消除K-means算法的敏感性。


K-means算法和K-medoids算法的应用:

当结果簇是密集的,而簇与簇之间区别明显时,k-means算法的效果较好。对于大规模数据集,该算法是相对可扩展的,并且具有较高的效率。
k-means和k-mediods算法只有在簇数据点的平均值有定义的情况下才能使用,即一般只适用于连续变量,而对于离散属性的变量无法使用;后有改进后的k-模算法,K-模算法用代替簇的平均值,用新的相异性度量方法来处理分类对象,如基于频率的方法来修改聚类的模。k-means和k-模算法相结合,产生k-原型算法,用了处理有数值类型分类类型属性的数据。

这两种算法也不适用于发现非球状的簇。对于非球状的簇,要用密度来代替相似性聚类算法,基于密度的聚类算法即Density-based-Method,常见的有DBSCAN、OPTICS、DENCLUE等。


9、 层次方法(Hierarchical Method)的基本思想:按数据分层建立簇,形成一颗以簇为节点的树。如果自底向上进行层次聚集,则称为凝聚的(Aggalomerative)层次聚类;如果自顶向下进行层次分解,则称为分裂法(Divisive)的层次聚类。

层次方法的优缺点:

优点:层次方法可以在不同粒度水平上对数据进行探测,容易实现相似度量或距离度量。

缺点:单纯的层次聚类算法终止条件含糊,执行合并或分裂簇的操作不可修正,可能导致聚类结果质量很低。

而且需要检查和估算大量对象或簇才能决定簇的合并或分裂,所以可扩展性较差。

所以实际解决中,将层次算法和其他聚类算法结合,形成多阶段聚类,能够改善聚类质量。这种方法包括:BRICH、CURE、

ROCK、Chameleon等。

























0 0
原创粉丝点击