数据挖掘技术研究进展 作者:speedfish 日期:2004年06月14日
--------------------------------------------------------------------------------
1.前 言
随着计算机技术和信息技术的发展,信息的增长速度呈现指数上升,最近几十年产生了很多超大型数据库,遍及超级市场销售、银行存款、天文学、行政办公、科学研究、信息量的急剧增长,使传统分析方法远远不能满足现实的需求。面对海量数据,如何从中发现有价值的信息或知识,成为一项非常艰巨的任务。人们急切的需要一种去粗存精、去伪存真的技术,能够从海量的数据中提取知识和信息的数据挖掘技术应运而生[1]。
数据挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程[2]。这些数据可以是结构化的,如关系数据库中的数据,也可以是半结构化的,如文本,图形,图像数据,甚至是分布在网络上的异构型数据。发现知识的方法可以是数学的,也可以是非数学的,可以是演绎的,也可以是归纳的。发现了的知识可以被用于信息管理、查询优化、决策支持、过程控制等,还可以进行数据自身的维护。数据挖掘借助了多年来数理统计技术和人工智能以及知识工程等领域的研究成果构建自己的理论体系,是一个交叉学科领域,可以集成数据数据库、人工智能、数理统计、可视化、并行计算等技术。
2. 数据挖掘技术的发展
1989年8月,在美国底特律召开的第11届国际人工智能联合会议的专题讨论会上首次出现KDD这个术语,随后在1991,1993,1994年都举行了KDD专题讨论会,集中讨论数据统计、海量数据分析算法、知识表示、知识运用等问题。KDD国际学术大会研究重点逐渐从发现方法转向系统应用,并且注重多种发现策略和技术的集成,以及多种学科之间的相互渗透,数据挖掘和知识发现成为当前计算机科学界的一大热点。1998年在美国纽约举行的第四届知识发现与数据挖掘国际学术会议上有30多家软件公司展示了数据挖掘软件产品,不少软件已经在北美和欧洲的国家得到应用。
META Group曾做出这样的评论:“全球重要的企业、组织会发现,到21世纪数据挖掘技术将是他们商业成功与否的至关重要的影响因素”。IBM公司发布了基于标准的数据挖掘技术-IBM DB2智能挖掘器积分服务,可用于个性化的解决方案。两大统计软件公司SAS和SPSS也推出了各自的数据挖掘工具Enterprise Miner和Clementine[3]。此外,在Internet上还有不少KDD电子出版物,其中以半月刊Knowledge Discovery Nuggets最为权威,另一份在线周刊为DS(决策支持),1997年开始出版。自由论坛DM Email Club可以通过电子邮件讨论数据挖掘和知识发现的热点问题。数据挖掘是数据库和信息决策领域的最前沿的研究方向之一,已引起了国内外学术界的广泛关注。在我国已经开始进行数据挖掘技术的研究,但还没有看到数据挖掘技术在我国成功应用的大型案例。
3.数据挖掘的目的
数据挖掘并不专用于特定领域,它需要凝结各种技术和创造力去探索可能隐藏在数据中的知识。在很多情况下,应用数据挖掘技术是为了实现以下三种目的:
·发现知识:知识发现的目标是从数据库存储的数据中发现隐藏的关系、模式和关联。例如,在商业应用中数据挖掘可用于发现分割、分类、关联、喜好四种知识。发现分割知识可以将客户记录分组,策划为客户度身定做的推销活动。发现分类知识可以将输入的数据分配到预定义的类别中,发现和理解趋势以及对文本文档的进行分类等。发现交叉销售的机会是一种关联知识,以及发现大部分客户的喜好的知识[4]。
·使数据可视化:分析人员需搞清楚数据库中存储的大量信息的含意。在做任何分析之前,需先将待处理的数据人性化,并寻找显示数据的好方法。
·纠正数据:在结合大规模的数据库时,数据库的数据常常是不完整的,而且通常包含错误和自相矛盾的信息。数据挖掘需要以最稳定的方法识别和纠正这些问题[5]。
4. 数据挖掘的方法
数据挖掘方法分为统计方法、机器学习方法、神经网络方法和数据库方法。
·统计学的方法是数据挖掘的经典方法。统计方法中包括回归分析(多元回归、自回归等)、判别分析(贝叶斯判别、费歇尔判别、非参数判别等)、聚类分析(系统聚类、动态聚类等)、探索性分析( 主元分析法、相关分析法等)等[6]。
·机器学习中包括归纳学习方法(决策树、规则归纳等)、基于范例学习、遗传算法、粗糙集等。粗糙集能够对不确定、不完整信息的进行处理,而遗传算法具有全局最优搜索的能力[7]。
·神经网络方法具有处理非线性数据和含噪声数据的能力。神经网络的常用算法包括前向神经网络(BP算法等)、自组织神经网络(自组织特征映射、竞争学习等)等[8]。
·数据库方法主要是多维数据分析或OLAP方法[9]。OLAP系统的数据库为高效存储静态数据构建。其存储结构的设计是为了高效检索数据,尤其是聚合数据,比如求总和或是其他运算[10]。
5. 数据挖掘的主要步骤
数据挖掘是一个复杂的过程,它的一般步骤是:
(1)分析问题: 源数据数据库必须经过评估确认其是否符合数据挖掘标准。以决定预期结果,也就选择了这项工作的最优算法。
(2)提取、清洗和校验数据:提取的数据放在一个结构上与数据模型兼容的数据库中。以统一的格式清洗那些不一致、不兼容的数据。一旦提取和清理数据后,浏览所创建的模型,以确保所有的数据都已经存在并且完整。
(3)创建和调试模型:将算法应用于模型后产生一个结构。浏览所产生的结构中数据,确认它对于源数据中"事实"的准确代表性,这是很重要的一点。虽然可能无法对每一个细节做到这一点,但是通过查看生成的模型,就可能发现重要的特征。
(4)查询数据挖掘模型的数据:一旦建立模型,该数据就可用于决策支持了。在微软的数据挖掘解决方案中,该过程通常使用VB或ASP通过OLE DB for Data Mining Provider编写前端查询程序[11]。
(5)维护数据挖掘模型:数据模型建立好后,初始数据的特征,如有效性,可能发生改变。一些信息的改变会对精度产生很大的影响,因为它的变化影响作为基础的原始模型的性质。因而,维护数据挖掘模型是非常重要的环节[5]。
6. 数据挖掘的常用工具
数据挖掘工具的市场一般分为三个组成部分:通用型工具、综合/DSS/OLAP数据挖掘工具和快速发展的面向特定应用的工具。
通用型工具占有最大和最成熟的那部分市场。从定义上说,它们是非面向特定应用的适合于各种需要的情况,其中包括的主要工具有SAS Enterprise Miner、IBM Intelligent Miner、Oracle Darwin、SPSS Clementine、Unica PRW、SGI MineSet等软件。
综合数据挖掘工具这一部分市场反映了商业对具有多功能的决策支持工具的真实和迫切的需求。商业要求该工具能提供管理报告、在线分析处理和普通结构中的数据挖掘能力。这些综合工具包括Cognos Scenario和Business Objects等。
面向特定应用工具这一部分工具正在快速发展,在这一领域的厂商设法通过提供商业方案而不是寻求方案的一种技术来区分自己和别的领域的厂商。这些工具是纵向的、贯穿这一领域的方方面面,其常用工具有重点应用在零售业的KD1、主要应用在保险业的Option&Choices和针对欺诈行为探查开发的HNC软件[12]。
7. 数据挖掘的应用领域
数据挖掘技术从一开始就是面向应用的,它不仅可用于特定数据库的简单检索查询调用,而且要对这些数据进行统计、分析、综合和推理,以指导实际问题的求解,发现事件间相互关联关系和进行预测。商业上通过使用面向CRM数据挖掘技术使公司可以快速的对顾客的需求做出反应,并且可以检验商业策略的成效[13]。在科学研究方面,一个天文学上的著名应用系统SKICAT就是相当成功的数据挖掘应用,利用该系统,天文学家已发现16个新的极其遥远的星群。在生物医学和DNA数据分析上,数据挖掘可以完成异构、分布式基因数据库的语义集成,用关联规则分析同时出现的基因序列,用路径分析发现在疾病不同阶段的致病基因等[14]。NBA教练就运用Advanced Scout来挖掘信息,安排阵型,提高了获胜的机率;在金融投资方面,FALCON系统是信用卡欺诈估测系统,已被相当数量的银行采用,FAIS是一个用于识别与洗钱有关的金融交易系统,LBS Capital Management则使用了专家系统、神经网络和基因算法技术来辅助管理多达6亿美元的有价证券;在电信业,利用数据挖掘可以确定潜在的盗用者和他们的非典型使用模式,检测想侵入用户账户的企图以及发现需要引起注意的异常模式,从而保证电信业的正常运转。在电力系统中,应用于数据挖掘技术的数据有电力系统的范围特征(包括是时间和空间上的)与统计特征,通常有几千个状态变量;混合存在的离散信息(如网络拓扑结构的改变或保护动作等)和连续信息(如某些连续变化的状态变量);对某些不确定量的掌握和处理(如噪声和不完整信息等)[15]。在Internet,利用数据挖掘技术可以Web后台数据库进行分类处理,从而向用户提供更快、更准、更有效的信息。同时,也可通过对Web日志进行挖掘,发现Web用户访问模式,在高度相关的站点提供快速有效的访问通道,帮助更好地设计Web主页,改善市场营销决策[16]。
8.结束语
越来越多人们已经认识到数据挖掘技术能将原始数据转换为有意义的形式,从中挖掘潜在的巨大商业价值和所蕴含的科学知识,数据挖掘已成为电子商务淘金的首要的手段。具有影响的"MIT技术回顾"最近对数据挖掘技术极力赞扬,认为其已成为十大新兴技术之一[4],将彻底改变数据库的处理模式。随着数据挖掘技术不断被应用到新的领域和各种算法不断被应用到数据挖掘领域中,将更大激发数据挖掘技术的潜力,进一步推进数挖掘技术的发展和普及[17]。
Trackback: http://tb.donews.net/TrackBack.aspx?PostId=43585