数据挖掘技术综述

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据挖掘技术综述
摘要:数据挖掘是一个利用各种分析方法和分析工具在大规模海量数据中建立模型和发现数据间关系的过程,这些模型和关系可用来帮助做出决策和预测。

本文主要论述了数据挖掘技术的常用方法。

关键字:数据挖掘方法
数据挖掘,也可以称为数据库中的知识发现(Knowledge Discover Database,KDD),就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程[16]。

实际上这是一个模式提取的过程,主要基于人工智能、机器学习、统计学等技术,高度自动化的分析企业原有的数据,做出归纳行的推理,从中挖掘出潜在的模式,预测客户的行为,帮助企业的决策者调整市场策略,减少风险,做出正确的决策。

1 数据挖掘的分类
数据挖掘就是发现隐藏在数据中的模式。

它所发现的模式按功能模型一般可分为两大类:描述型(descriptive)的模式和预测型(predictive)模式[21]。

描述型的模式是对当前数据中存在的事实做规范的描述,它所揭示的是当前数据的一般特性;预测型模型则是以时间为关键参数,对于时间序列型数据,根据其历史和当前的值去预测其未来的值。

根据模式的特征,预测和描述可以通过下面的任务来完成。

图1 数据挖掘模型
1) 关联规则(Association Rules)
关联模式是数据项之间存在的关联规则,是在同一事件中出现不同项之间的相关性,例如客户在一次购买活动中所购买的不同商品之间的关联性。

在数据挖掘领域,对于关联模式的研究开展得比较深入,人们提出了多种关联规则挖掘算法,如Apriori,DHP,Partition,Sampling,FP-Growth等算法。

这些算法能够发现数据库中形如“80%的客户在一次购买活动中购买X商品的同时也购买Y商品”之类的知识。

2) 分类分析(Classification)
分类就是构造一个分类模型,把具有某些特征的数据项映射到某个给定的类别上。

这个过程分为两步:模型的创建和模型的使用。

模型的创建是指通过对训练数据集的学习建立分类模型;模型使用是指使用分类模型对测试数据和新的数据进行分类。

其中的训练数据集是带有类标号的,也就是在分类之前,要划分的类别是已经确定的,通常分类模型是以分类规则、决策树或数学表达式的形式给出的。

分类模式往往表现为一棵树,从树根开始搜索,沿着数据满足的分支走。

走到树叶时就能确定类别。

已有许多数据分类方法,如决策树方法、统计方法及粗糙集方法等。

Metha, Agrawal, Rissanen等人开始研究面向数据库的分类方法。

J. Han等人在他们开发的知识发现系统DBMiner中采用了基于概括的决策树方法,该方法集成了面向属性的归纳和决策归纳技术。

3) 聚类分析(Clustering)
聚类就是根据数据的属性对一系列未分类数据进行类别划分,把一组个体按照相似性分成若干个类或簇,即“物以类聚”。

其目的是使类间的数据差别尽能大,类内的数据差别尽可能小,即“最小化类间的相似性,最大化类内的相似性”原则。

与分类模式不同的是聚类中要划分的类别是未知的,它是不依赖于预先定义的类和带类标号的训练数据集的非监督学习(unsupervised learning ),无需背景知识,其中类的数量由系统按照某种性能指标自动确定。

聚类分析的方法有很多,其中包括系统聚类法、分解法、加入法、动态聚类法、模糊聚类法、运筹方法等。

采用不同的聚类方法,对于相同的记录集合可能有不同划分结果。

4) 回归分析(Regression)
回归模式的函数定义与分类模式相似,主要差别在于分类模式采用离散预测值(例如类标号),而回归模式则采用连续的预测值。

它通过具有己知值的变量来预测其他变量的值。

在最简单的情况下,回归采用的是类似于线性回归的标准统计技术。

但在大多数现实世界中的问题是不能用简单的线性回归所能预测的。

如商品的销售量、股票价格、产品合格率等,很难找到简单有效的方法来预测,因为要完全地描述这些事件的变化需要上百个变量,而且这些变量本身往往都是非线性的。

为此学术界提出了很多试图解决这个问题方法,如逻辑回归、决策树和神经网络等。

5) 序列模式分析(Sequential)
序列模式分析和关联规则分析相似,它是描述基于时间或其他序列的经常发生的规律或趋势,并对其进行建模。

它能发现数据库中形如“在某一段时间内,75%的顾客购买商品A,接着购买商品B,然后又购买商品C,即序列A-B- C 出现的频度较高”之类的知识。

序列模式将关联模式和时间序列模式结合起来,重点考虑数据之间在时间维上的关联性。

在进行序列模式挖掘时主要有以下几个
问题值得注意:首先是序列的持续时间,也就是某个时间序列的有效时间或者是用户选择的一个时间段:其次是时间折叠窗口,即在某一段时间内发生的事件可以被看作是同时发生的;最后是所发现的模式时间间隔。

6) 偏差分析(Deviation)
偏差分析是指对差异或极端特例的描述,如聚类划分外的偏离值。

在大多数据挖掘方法中都是将这些偏差信息作为噪声而丢掉,然而在一些实际应用中,这种罕见的数据可能比正常的数据更有价值。

比如网络的入侵检测和信用卡的欺诈检测等。

我们可在通过这些异常数据的偏差来分析其中的原因,以便对其采用相应的措施。

2 数据挖掘的主要方法
数据挖掘是一门新兴的研究领域,其技术基础是人工智能(Artificial Intelligence )。

它借鉴了信息论、数理逻辑、进化计算、神经计算和统计学等理论和算法[22]。

在此介绍几种主流的方法。

1) 遗传算法
遗传算法是一种基于生物进化过程的组合优化方法,它是生物学和计算机相结合的产物,由美国密西根大学的D.J Holland教授和他的同事们在1975年首次提出的。

根据适者生存的原则模拟自然界的生命进化机制,形成当前群体适合的规则组成新群体,以及这些规则的后代。

基于这些思想,根据遗传算法的最适合模型,并进一步对数据模型进行优化。

由于遗传算法是一种弱算法,具有高效性和灵活性的特点,在数据挖掘中也用于评估其他算法的适应度。

遗传算法擅长于数据聚类,通过事件的类比和空间上的类比,可以把大量繁杂的信息数据进行系统化、条理化,从而找出数据之间的内在关系,得出有用的概念和模式。

再建立数据模式时,将遗传算法与神经网络相结合,可以更好地提高模型的适应性。

因此遗传算法广泛应用于自动控制、机器学习、模式识别和组合优化等领域。

2) 神经网络
神经网络(neural network )是由多个神经元按照某种方式相互连接形成,靠网络状态对外部输入信息的动态响应来处理信息,网络的信息分布式存储于连接权系数中,使网络具有很强的容错性和鲁棒性。

神经网络的核心是结构和算法,例如Hopfield网就是以结构见长,而BP (back propagation)网是以算法见长。

神经网络和基于符号的传统技术相比,具有直观性、并行性和抗噪声性。


前,已出现了许多网络模型和学习算法,主要用于分类、优化、模式识别、预测和控制等领域。

在数据挖掘领域,主要采用前向神经网络提取分类规则。

相关文档
最新文档