武书彦,李 咚
WU Shu-yan1,LI Dong2
(1.郑州牧业工程高等专科学校,郑州 450011;2.郑铁职业技术学院,郑州 450052)
随着计算机技术的飞速发展以及网络技术的普及,使得许多行业都有了更多的信息交流,促使数据库的规模、范围和深度都有了较大规模的扩大,从而积累了大量及以不同形式存储的数据资料,同时在许多领域也建立了数据仓库。在这些海量数据中往往隐含着各种各样的信息,这些信息往往人们凭直觉与经验是难以发现的如何从大量的数据中获得有价值的信息,采用传统的数据库技术己显得微不足道。数据的迅速增加与数据分析处理方法滞后的矛盾越来越大,人们希望能够在对已有的大量数据分析的基础上进行科学研究、商业决策或企业管理,从而达到为决策服务的目的。数据挖掘就是为了满足这种需求而迅速发展起来的一种新的数据处理技术。
l)数据挖掘的定义:目前有关数据挖掘的定义虽然有很多,但目前一种比较公认的定义是:数据挖掘(DM)就是从大型数据库的数据中提取人们感兴趣的知识。这些知识是隐含的、事先未知的潜在有用信息,提取的知识表示为概念、规则、规律、模式等形式。数据挖掘所要处理的问题,就是在庞大的数据库中寻找出有价值的隐藏事件,加以分析,并将这些有意义的信息归纳成结构模式,提供给有关部门在进行决策时参考。此外,数据挖掘看重的是数据库的再分析,包括模式的建构或是资料特征的判定,其主要目的就是要从数据库中发现先前关心却未曾获悉的有价值信息。数据挖掘是人工智能和数据库发展相结合的产物。下图为典型的数据挖掘系统:
图1 典型的数据挖掘系统
2)数据挖掘的特点:
(1)挖掘对象是海量的、复杂的各种类型的数据。
(2)挖掘的结果是潜在的、未知的、多样性的(发现的知识可以是多种形式的)。
(3)挖掘方法是不确定的。数据挖掘方面没有所谓最好的技术或通用的技术,因此,问题不是某一种方法比另一种方法更好,而是哪一种更适合所要解决的问题;
(4)数据挖掘支持在线数据存取。
(5)技术的综合性。数据挖掘融入了人工智能技术、数据库技术、数理统计技术、可视化技术等技术和哲学、逻辑学等学科的知识。
3)知识发现:知识发现的目的是从数据中发现知识,而数据挖掘则是知识发现中的一个特定步骤。二者都是从数据中发现知识,它们的区别可以这样来理解:只是发现比数据挖掘更广泛,而数据挖掘则是更具体更深入的概念。但在很多地方,就用数据挖掘表示知识发现。
数据挖掘的研究现状目前,国外在数据挖掘方面的发展趋势及研究主要有:对知识发现(简称KDD)方法的进一步研究,如近年来注重对Bayes(贝叶斯)方法以及Boosting方法的研究和提高;统计学回归法在KDD中的应用;KDD与数据库的紧密结合;对网络信息挖掘方法的研究等。目前国内外出现了一些比较有影响的数据挖掘系统,包括各种专用或通用的数据挖掘软件。但总的来说,现有的数据挖掘系统由于各自的算法和模型不同,跨平台操作还受到很大的限制,一个普遍实用的模型还有待研究。
数据挖掘的任务就是从数据集中发现模式。模式可以有很多种,按功能可分为两大类:预测型模式和描述型模式。在实际应用中,往往根据模式的实际作用又可分为以下几种:分类,聚类,关联,序列等。
1)分类:用于预测事件所属的类别,其中样本数据中包含标识样本事件所属类别的数据项,类别是己知的,由数据挖掘根据样本数据构建对这些类别的模式的描述,再利用所发现的模式,参照新的数据的特征变量。将其映射入己知类别中,如在医疗应用中,可根据患者的各种特征进行疾病诊断等。
2)聚类:用于描述和发现数据库中以前未知的数据类型,其中样本数据中不包含类别变量,数据挖掘将具有共同趋势和模式的数据元组聚集为一类,使类内各元组相似程序最高,类间差异最大。
3)关联:用于发现给定事件或纪录中经常一起发生的项目,由此推断事件间潜在的关联,识别有可能重复发生的模式。
4)序列模式:与关联分析类似,只是扩展为一段时间的项目集间的关系。常把序列模式看作由时间变量连接起来的关联。序列分析可分析长时间的相关纪录,发现经常发生的模式。
1)数据挖掘采用的典型方法针对上述应用类型,数据挖掘领域提出了多种实现模式。
(1)神经网络。它建立在数学模型的基础之上,可以对大量复杂的数据进行分析,并完成极为复杂的模式抽取及趋势分析。
(2)决策树。它是通过一系列规则对数据进行分类,建立起相应的数学模型。采用决策树,可以将数据规则可视化,其输出结果也容易理解。决策树方法精确度比较高,构造过程简单。
(3)联机分析处理。根据分析人员的要求,对大量数据进行复杂的处理,专门用来支持复杂的分析操作,对用户当前及历史数据进行分析、查询和总结,辅助领导决策。它主要是用来完成用户的事物处理,对响应的时间要求比较高。
(4)数据可视化。数据仓库中包含大量的数据,充实着各种数据模型,将如此大量的数据可视化需要复杂的数据可视化工具。
(5)遗传算法。它是一种优化技术,利用生物进化的一系列概念进行问题的搜索与挖掘,以达到优化组合的目的,在信息挖掘中以它强大的搜索能力找到最优解。
(6)统计学方法。旨在从抽样分析中提取未知的数学模型,在数据挖掘中常会遇到大量的统计数据,通过模型分析来获得普遍运行的模式规律。
(7)数据仓库技术。以传统的数据存贮和管理为基本手段,以统计分析作为数据分析和提取的有效方法,以人工智能作为知识挖掘和发现的科学途径。
目前,数据挖掘技术正处在发展当中。数据挖掘涉及到数理统计、粗集理论、模糊逻辑理论、神经网络、人工智能、专家系统等多种技术,技术含量比较高,实现难度较大。然而,数据挖掘技术与可视化技术、地理信息系统、统计分析系统相结合,可以丰富数据挖掘技术及工具的功能与性能。
2)数据挖掘的一般流程如下:
(1)定义问题:清晰地定义出业务问题,确定数据挖掘的目的。
(2)数据准备:数据准备包括:选择数据--在大型数据库和数据仓库目标中提取数据挖掘的目标数据集;数据预处理--进行数据再加工,包括检查数据的完整性及数据的一致性、去噪声,填补丢失的域,删除无效数据等。
(3)数据挖掘:根据数据功能的类型和和数据的特点选择相应的算法,在净化和转换过的数据集上进行数据挖掘。
(4)结果分析对数据挖掘的结果进行解释和评价,转换成为能够最终被用户理解的知识。
(5)知识的运用:将分析所得到的知识集成到业务信息系统的组织结构中去。
在技术上可以根据它的工作过程分为:数据的抽取、数据的存储和管理、数据的展现等关键技术。
1)数据的抽取
数据的抽取是数据进入仓库的入口。由于数据仓库是一个独立的数据环境,它需要通过抽取过程将数据从联机事务处理系统、外部数据源、脱机的数据存储介质中导入数据仓库。数据抽取在技术上主要涉及互连、复制、增量、转换、调度和监控等几个方面的处理。在数据抽取方面,未来的技术发展将集中在系统功能集成化方面,以适应数据仓库本身或数据源的变化,使系统更便于管理和维护。
2)数据的存储和管理
数据仓库的组织管理方式决定了它有别于传统数据库的特性,也决定了其对外部数据的表现形式。数据仓库管理所涉及的数据量比传统事务处理大得多,且随时间的推移而快速累积。在数据仓库的数据存储和管理中需要解决的是如何管理大量的数据、如何并行处理大量的数据、如何优化查询等。目前,许多数据库厂家提供的技术解决方案是扩展关系型数据库的功能,将普通关系数据库改造成适合担当数据仓库的服务器。
3)数据的展现
在数据展现方面主要的方式有:查询:实现预定义查询、动态查询、OLAP查询与决策支持智能查询;报表:产生关系数据表格、复杂表格、OLAP表格、报告以及各种综合报表;可视化:用易于理解的点线图、直方图、饼图、网状图、交互式可视化、动态模拟、计算机动画技术表现复杂数据及其相互关系;统计:进行平均值、最大值、最小值、期望、方差、汇总、排序等各种统计分析;挖掘:利用数据挖掘等方法,从数据中得到关于数据关系和模式的识。
数据挖掘技术在各行各业的使用都是较为突出的,而基于Web的数据挖掘正是当前热门研究方向之一,而且其应用范围广阔,潜力巨大。Web挖掘技术也在不断提出和改进之中,一般地Web挖掘可分为三类:Web内容挖掘、Web 结构挖掘和Web 使用记录挖掘。目前Web 挖掘研究的主要方向包括:Web 文本的自动分类、多层次Web 信息库的建立、Web log 挖掘,以及其它涉及信息安全、搜索的效率、查询结果的质量、搜索工具的可伸缩性等方面的问题研究。可以预见,随着XML的兴起,Web 页面会蕴涵更多的结构化和语义信息,这会使Web 挖掘变得更有效。
Web通过数据挖掘技术,可以使我们得到相关的信息数据:①内容数据,即用户在网页上看到的信息,主要是文本与图像等;②结构数据,描述网页内容的组织方式的数据,其中,页内结构以HTML 和XML 表示成树形结构,页间结构以连接不同网页的超链接结构表示;③访问特征数据,主要指与用户访问相关的IP 地址、URL 、访问日期、访问时间长度等数据;④用户背景数据,包括用户的注册信息,如姓名、年龄、籍贯、收入、职业、学历、专业、需求重点、个人爱好等。
数据挖掘是目前国际上数据库和信息系统最前沿的研究方向之一,可以说它已成为国际上一个研究热点。然而就现状而言,数据挖掘仍有一定的局限性,如系统的低性能和挖掘对象的单一性等,但可预见,随着研究的进一步深入和数据存储及表达方式的日趋标准化,数据挖掘将变得更为有效并将得到更为广泛的应用。
[1]宋爱波,黄逸生,等.Web挖掘研究综述[J].计算机科学,2001,28(11):73-77.
[2]陈宁,周龙骧.数据采掘在Internet 中的应用[J].计算机科学,1999 ,26(7):44-49.
[3]张志强,周立柱,等.Web 数据库技术简述[J ].计算机科学,2001,28(10):1-6.
[4]王清毅,陈恩红,蔡庆生.知识发现的若干问题及应用研究[J ].计算机科学,1997,24(5):13-16.
[5]胡侃,夏绍玮.基于大型数据仓库的数据采掘:研究综述[J].软件学报,1998,9(1).