数据挖掘综述数据挖掘综述摘要:数据挖掘是一项较新的数据库技术,它基于由日常积累的大量数据所构成的数据库,从中发现潜在的、有价值的信息——称为知识,用于支持决策。
数据挖掘是一项数据库应用技术,本文首先对数据挖掘进行概述,阐明数据挖掘产生的背景,数据挖掘的步骤和基本技术是什么,然后介绍数据挖掘的算法和主要应用领域、国内外发展现状以及发展趋势。
关键词:数据挖掘,算法,数据库ABSTRACT:Data mining is a relatively new database technology, it is based on database, which is constituted by a large number of data coming from daily accumulation, and find potential, valuable information - called knowledge from it, used to support decision-making. Data mining is a database application technology, this article first outlines, expounds the background of data mining , the steps and basic technology, then data mining algorithm and main application fields, the domestic and foreign development status and development trend.KEY WORDS: data mining ,algorithm, database数据挖掘产生的背景上世纪九十年代.随着数据库系统的广泛应用和网络技术的高速发展,数据库技术也进入一个全新的阶段,即从过去仅管理一些简单数据发展到管理由各种计算机所产生的图形、图像、音频、视频、电子档案、Web页面等多种类型的复杂数据,并且数据量也越来越大。
在给我们提供丰富信息的同时,也体现出明显的海量信息特征。
信息爆炸时代.海量信息给人们带来许多负面影响,最主要的就是有效信息难以提炼。
过多无用的信息必然会产生信息距离(the Distance of Information-state Transition,信息状态转移距离,是对一个事物信息状态转移所遇到障碍的测度。
简称DIST或DIT)和有用知识的丢失。
这也就是约翰·内斯伯特(John Nalsbert)称为的“信息丰富而知识贫乏”窘境。
因此,人们迫切希望能对海量数据进行深入分析,发现并提取隐藏在其中的信息.以更好地利用这些数据。
但仅以数据库系统的录入、查询、统计等功能,无法发现数据中存在的关系和规则,无法根据现有的数据预测未来的发展趋势。
更缺乏挖掘数据背后隐藏知识的手段。
正是在这样的条件下,数据挖掘技术应运而生。
数据挖掘的步骤在实施数据挖掘之前,先制定采取什么样的步骤,每一步都做什么,达到什么样的目标是必要的,有了好的计划才能保证数据挖掘有条不紊的实施并取得成功。
很多软件供应商和数据挖掘顾问公司投提供了一些数据挖掘过程模型,来指导他们的用户一步步的进行数据挖掘工作。
比如SPSS公司的5A和SAS公司的SEMMA。
数据挖掘过程模型步骤主要包括:1定义商业问题;2建立数据挖掘模型;3分析数据;4准备数据;5建立模型;6评价模型;7实施。
1定义商业问题。
在开始知识发现之前最先的同时也是最重要的要求就是了解数据和业务问题。
必须要对目标有一个清晰明确的定义,即决定到底想干什么。
比如想提高电子信箱的利用率时,想做的可能是“提高用户使用率”,也可能是“提高一次用户使用的价值”,要解决这两个问题而建立的模型几乎是完全不同的,必须做出决定。
2.建立数据挖掘库。
建立数据挖掘库包括以下几个步骤:a数据收集;b数据描述;c选择;d数据质量评估和数据清理;e合并与整合;f构建元数据;g加载数据挖掘库;h维护数据挖掘库;3.分析数据。
分析的目的是找到对预测输出影响最大的数据字段,和决定是否需要定义导出字段。
如果数据集包含成百上千的字段,那么浏览分析这些数据将是一件非常耗时和累人的事情,这时需要选择一个具有好的界面和功能强大的工具软件来协助你完成这些事情。
4.准备数据。
这是建立模型之前的最后一步数据准备工作。
可以把此步骤分为4个部分:a.选择变量。
b.选择记录。
c.创建新变量。
d.转换变量。
5.建立模型。
建立模型是一个反复的过程。
需要仔细考察不同的模型以判断哪个模型对面对的商业问题最有用。
先用一部分数据建立模型,然后再用剩下的数据来测试和验证这个得到的模型。
有时还有第三个数据集,称为验证集,因为测试集可能受模型的特性的影响,这时需要一个独立的数据集来验证模型的准确性。
训练和测试数据挖掘模型需要把数据至少分成两个部分:一个用于模型训练,另一个用于模型测试。
6.评价和解释。
模型建立好之后,必须评价得到结果、解释模型的价值。
从测试集中得到的准确率只对用于建立模型的数据有意义。
在实际应用中,需要进一步了解错误的类型和由此带来的相关费用的多少。
经验证有效的模型并不一定是正确的模型。
造成这一点的直接原因就是模型建立中隐含的各种假定。
因此直接在现实世界中测试模型很重要。
先在小范围内应用,取得测试数据,觉得满意之后再向大范围推广。
7.实施。
模型建立并经验证之后,可以有两种主要的使用方法。
第一种是提供给分析人员做参考;另一种是把此模型应用到不同的数据集上。
因为事物在不断发展变化,很可能过一段时间之后,模型就不再起作用。
销售人员都知道,人们的购买方式随着社会的发展而变化。
因此随着使用时间的增加,要不断的对模型做重新测试,有时甚者需要重新建立模型。
数据挖掘的基本技术一、预言型数据挖掘1分类分类要解决的问题是为一个事件或对象归类。
在使用上,既可以用此模型分析已有的数据,也可以用它来预测未来的数据。
例如,用分类来预测哪些客户最倾向于对电子信箱的销售做出回应,又有哪些客户可能会换他的手机服务提供商,或在医疗领域当遇到一个病例时用分类来判断一下从哪些药品着手比较好。
2回归回归是通过具有已知值的变量来预测其他变量的值。
在最简单的情况下,回归采用的是象线性回归这样的标准统计技术。
但在大多数现实世界中的问题是不能用简单的线性回归所能预测的。
为此人们又发明了许多新的手段来试图解决这个问题,如逻辑回归、决策树、神经网络等3时间序列时间序列是用变量过去的值来预测未来的值。
与回归一样,也是用已知的值来预测未来的值,只不过这些值的区别是变量所处时间的不同。
时间序列采用的方法一般是在连续的时间流中截取一个时间窗口(一个时间段),窗口内的数据作为一个数据单元,然后让这个时间窗口在时间流上滑动,以获得建立模型所需要的训练集。
二、描述型数据挖掘图形和可视化工具在数据准备阶段尤其重要,它能使人们快速直观的分析数据,而不只是枯燥乏味的文本和数字。
我们不仅要看到整个森林,还要拉近每一棵树来察看细节。
在图形模式下人们很容易找到数据中可能存在的模式、关系、异常等,直接看数字则很难1聚类聚类是把整个数据库分成不同的类,类与类之间差别要很明显,而同一个类之间的数据则尽量相似。
与分类不同,在开始聚类之前我们不知道要把数据分成几组,也不知道怎么分。
因此在聚类之后要有一个对专业很熟悉的人来解释分类的意义。
2关联分析关联分析是寻找数据库中值的相关性。
两种常用的技术是关联规则和序列模式。
关联规则是寻找在同一个事件中出现的不同项的相关性,比如在一次购买活动中所买不同商品的相关性。
序列模式与此类似,他寻找的是事件之间时间上的相关性。
数据挖掘的算法数据挖掘的核心是为数据建立模型的过程。
所有的数据挖掘产品都有这个建模过程,不同的是它们构造模型的方式互不相同。
进行数据挖掘时可采用许多不同的算法。
决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。
常用的算法有CHAID、CART、ID3和C4.5。
决策树方法很直观,这是它的最大优点,缺点是随着数据复杂性的提高,分支数增多,管理起来很困难。
ANGOSS公司的KnowedgeSEEKER产品采用了混合算法的决策树。
神经网络近来越来越受到人们的关注,因为它为解决大复杂度问题提供了一种相对来说比较有效的简单方法。
神经网络常用于两类问题:分类和回归。
它的最大优点是它能精确地对复杂问题进行预测。
神经网络的缺点是网络模型是个黑盒子,预测值难于理解;神经网络有过拟合的现象。
IBM、SAS、SPSS、HNC、ANGOSS等公司是这个产品的供应者。
遗传算法是一种基于进化过程的组合优化方法。
它的基本思想是随着时间的更替,只有最适合的物种才得以进化。
遗传算法能够解决其它技术难以解决的问题,然而,它也是一种最难于理解和最开放的方法。
遗传算法通常与神经网络结合使用。
采用上述技术的某些专门的分析工具已经发展了大约十年的历史,不过这些工具所面对的数据量通常较小。
而现在这些技术已经被直接集成到许多大型的工业标准的数据仓库和联机分析系统中去了。
数据挖掘的应用目前数据挖掘的典型应用领域包括:⑴市场分析和预测;如英国BBC广播公司进行的收视率调查、大型超市销售分析与预测、销售渠道与价格分析等;⑵工业生产:主要用于发现最佳生产过程;⑶金融;采用统计回归式神经网络构造预测模型,如自动投资系统(Aummated Investor)、可预测最佳投资时机;⑷科学研究;贝克(Bacon)对于天文定理的发现、地震发现者(Quake finder)用于分析地壳的构造活动等;⑸WEB数据挖掘;站点访问模式分析、网页内容自动分类、聚类等;⑹工程诊断。
数据挖掘作为一种新的知识发现手段,还引起了工程诊断领域的重视,许多国家和研究机构都在监测诊断项目中加入了对数据挖掘的研究。
数据挖掘的国内外发展概况目前国外市场份额较大的有IBM公司的IntelligentMiner、SAS公司的EnterpriseMiner、SPSS公司的Clementine、Insightful公司的Insightful Miner等。
⑴SAS Enterprise Miner:SAS系统全称为Statisties Analysis System。
是美国使用最为广泛的三大著名统计分析软件(SAS,SPSS和SYSTAT)之一,被誉为统计分析的标准软件。
1997年SAS发布了SAS Enterprise Miner,这个工具为用户提供了用于建模的一个图形化流程处理环境,并且它有一组常用的数据挖掘算法,包括决策树、神经网络、回归、关联等,还支持文本挖掘。