武汉工程大学本科毕业设计
巨额数据,对气象预报、臭氧层监测等能起很大作用。
上个世纪九十年代开始出现数据挖掘商用软件以来,据不完全统计,到_1998 年底1999年初,已达50多个厂商从事数据挖掘系统的软件开发工作,在美国数据挖掘产品市场在1994年约为5千万美元,1997年达到5亿美元。2001年将达到10亿美元。从产品的类型来看,通常有以下五类产品: ?能够提供广泛的数据挖掘能力,典型产品有:IBM公司的Intelligent Miner;SAS公司
的Enterprise Miner。 ?旨在为某个部门求解问题,典型的有:Unica公司的Response Modeler Segment;IBM
公司的Business Application等。 ???与提供服务联系在一起的,典型的有:NeoVista、Hyperparallel、HNC Marksman。 黑匣工具,典型的有:GroupModel、ModelMax、Predict。
解决客户问题,典型的有:MarketierParegram、ExchemgeApplication等。 数据挖掘(知识发现)的目的就是为企业决策提供的正确依据,从分析数据发现问题作出决策采取行动这一系列操作是一个单位的动作行为,利用计算机及信息技术完成这整体行动,是发挥机构活力和赢得竞争优势的唯一手段。因此人们将这种机构行为和手段称这为“事务智能”(Business Intelligent,简称BI),BI能极大地改进决策的质量和及时性,从而改进机构的生产率或发挥竞争优势。所以近年来,一些大公司将数据分析和数据挖掘工具及其有关技术组合起来形成所谓BIS(Business Intelligent Softwave)。其中SAS公司的的Enterprise Minter就是将数据源、数据预处理、数据存贮、数据分析与发掘、信息表示与应用等方面技术有机形成一个复杂数据挖掘系统有机整体。
IBM 公司更全面地考虑BI系统的结构和功能,与其它公司共同合作来开发BI各类软件和工具。并从多方面来加以考虑:首先必须有一良好的数据库和数据仓库,并能使企业管理与决策机制能够过渡到下一个时期,所以提出了一个统一的数据库系统DB2和一个可视化数据仓库VDW(Visual Data Warehouse),可以将各种应用和各部门的信息融为一体,加上Visual Warehouse OLAP工具可以生成实时报告在信息发现和数据发掘工具方面,提出能对结构型和非结构型数据进行发掘的一整套智能工具(Intelligent Miner Family)。BI手段只有在好的数据基础上才能见效,因此提出数据重组工具。由于向用户提供联合统一观点的企业数据是作出聪明决策的前提,又提出能支持异形数据库的DataJointer(数据接合)。BI 系统标志着从数据到知识到决策的进程中的更深入的一步,展示着真正的实用的智能信息系统的雏
16
武汉工程大学本科毕业设计
形。
1.6数据挖掘研究重点
有关数据挖掘研究的若干重点问题描述如下:
(1)挖掘方法与用户交互问题。这其中涉及所挖掘知识的类型,挖掘多细度的知识,领域知识的利用,定制挖掘和知识挖掘的可视化。 ?从数据库挖掘不同类型的知识。由于不同的应用需要不同类型的知识,因此数据挖掘
应该覆盖广泛的数据分析与知识发现任务需求。这其中包括:数据概念描述、对比概念描述、关联知识、分类知识、聚类分析、趋势和偏差分析,以及相似性分析。这些挖掘任务可以是对同一个数据库进行不同的操作。因此需要设计开发大量的数据挖掘技术。 ?基于多层抽象水平的交互挖掘。由于无法准确了解从一个数据库中究竟能够发现什么。
因此一个数据挖掘过程应该是交互的。鉴于数据库中包含大量的数据,首先需要利用合适的采样技术来帮助实现交互式数据挖掘的探索。交互数据挖掘能够让用户参与并指导对(要挖掘)模式的搜索,或帮助让用户精炼所返回的挖掘结果。与数据仓库OLAP交互模式类似,用户也可以与数据挖掘系统进行交互来帮助进行更有效地数据挖掘,以便能从多个不同角度发现多个抽象层次(细度)的模式知识。 ?数据挖掘查询语言与定制数据挖掘。关系(数据库)查询语言,
如:SQL语言,能够帮助用户提出各种有针对性的数据检索要求。同样开发高水平的数据挖掘查询语言以帮助用户描述特定的挖掘任务(包括描述其中的数据特征)、描述挖掘任务所涉及的领域知识、挖掘结果的模式知识类型,以及对挖掘结果有趣性等约束条件。这样一种语言还应该与数据库或数据仓库查询语言集成在一起,并为实现有效灵活的数据挖掘而进行集成优化。 ?数据挖掘结果表达与可视化。数据挖掘应该能够用高水平语言、可视化表示、或其它
表示方式来描述所挖掘出的知识,以使用户更加容易地理解和应用所挖掘出的知识。数据挖掘结果的可视化表示,对于交互式数据挖掘系统而言是非常重要的,同时也要求系统采用多种表示形式,如:树、表格、规则、图、示意图、矩阵、曲线来描述所数据挖掘结果。 ?处理有噪声或不完整的数据。数据库中的数据或许反映有噪声、不完整、以外的数据
对象。因此当挖掘数据规律时,这些对象或许会使挖掘过程迷失方向以致挖掘出一个不符合实际情况的模型。这时就需要数据清洗和数据分析方法以处理这些有噪声的数据;有时也需要异类挖掘方法以帮助实现意外情况的挖掘与处理。 ?
模式评估:有趣性问题。一个数据挖掘系统能够发现数以千计的模式,而用户常常只
17
武汉工程大学本科毕业设计
对其中的一小部分模式感兴趣;其它大多数都属于常识性或缺乏新意的知识。如何对所挖掘出模式的趣味性进行评估,特别是如何基于用户信念和期待对所挖掘模式进行主观评估,仍然是一个尚待进一步研究的问题。如何利用趣味性来指导挖掘过程以有效减少搜索空间,也是尚待进一步研究的问题。
(2)性能问题。这其中包括:效率、可扩展性和数据挖掘算法的并行化等问题。 ?数据挖掘算法的效率与可扩展性。为了能够有效地从数据库大量的数据中抽取模式知
识,数据挖掘算法就必须是高效的和可扩展的。算法的可扩展性表现在它的(数据挖掘)运行时间与所处理的数
据规模呈线性关系,假设挖掘系统可利用的其它资源不变的情况下(如:内存和硬盘空间等);这也就意味着当被挖掘数据的规模确定后,相应数据挖掘算法的运行时间是可以预测的,当然也是可以接受的。从数据库角度来要求知识发现算法,效率和可扩展性也是构造数据挖掘系统的一个关键问题。前面所介绍的数据挖掘方法与用户交互中的许多问题也涉及到效率与可扩展性的问题。 ?并行、分布和增量更新算法。许多数据库中数据的巨大规模、广泛分布的数据(存储)
地点,以及一些数据挖掘算法的计算复杂性等,都极大地推动了并行分布数据挖掘算法的研究与开发。这类算法将数据分为若干份进行并行处理,然后将处理获得的结果合并在一起。此外一些数据挖掘过程所涉及的高昂代价也促使了增量数据挖掘算法的发展,这类增量挖掘算法无需每次(挖掘时)均对整个数据库进行挖掘而只需对数据库中的增量数据进行挖掘即可。当然增量挖掘算法需要对之前所挖掘获得的模式知识进行增量式修改与完善。
(3)数据库类型多样化所涉及的问题。 ?关系和复杂类型数据的处理。数据库与数据仓库的类型有许多种,期望一个数据挖掘
系统能够对所有类型的数据都能够很好地完成挖掘任务是不现实的。鉴于关系数据库与数据仓库应用较广,研究设计高效有效地挖掘这类数据的数据挖掘系统是必要的。然而其它数据库包含复杂数据对象,如:超文本、多媒体数据、空间数据、时间数据,或交易数据,显然一个数据挖掘系统不可能满足挖掘不同数据类型并完成不同挖掘任务的要求。因此需要根据特定的挖掘数据,构造相应的数据挖掘系统。 ?异构数据库和全球信息系统的信息挖掘。本地和广域计算机网络系统(如:互联网)
将许多数据源连接在一起,从而构成了一个巨大的、分布的、异构的数据库。如何从来自不同数据源(具有不同数据语义),这其中包括:结构化数据、半结构数据和无结构数据,
18
武汉工程大学本科毕业设计
挖掘出所需要的模式知识是数据挖掘研究所面临巨大挑战。数据挖掘或许能够帮助从多个异构数据库中挖掘高层次的数据规律,而这些数据规律是无法通过简单查询系统就可获得的,由此甚至还可以帮助改善信息交换和异构数据库之间的互操作性。 这里对以下几个方面的内容作了概要的介绍与说明。这些方面内容包括: ?数据技术,它从基本的文件处理发展到具有查询与事务处理能力的数据库管理系统。
来自各行各业应用,其中包括:商业与管理、行政管理、科学与工程和环境控制等所收集数据的爆炸性增长,更进一步地刺激了对有效数据分析和数据理解工具的需求。 ?数据挖掘,它是一个从大量有噪声、不完整数据中挖掘出有意义模式知识的过程。所
挖掘的数据对象可以是数据库或数据仓库内容,也可以是其它数据源内容。数据挖掘是一个新兴的多学科交叉领域,这其中主要涉及:数据库系统、数据仓库、统计学、机器学习、数据可视化、信息检索和高性能计算等,其它学科还包括:人工神经网络、模式识别、空间数据分析、图像数据库、信号处理和归纳逻辑编程。数据挖掘是一个包含多个处理步骤的知识发现过程,这其中主要包括:数据清洗、数据集成、数据选择、数据转换、数据挖掘、模式评估和知识表达输出。 ?数据仓库,它是一个存放来自多个数据源并随时间积累的数据容器,其目的就是为管
理决策提供辅助支持。数据仓库提供了在线分析处理功能,以帮助实现用户指导下的数据探秘工作。 ?数据挖掘结果,数据挖掘所获得的知识类型包括:定性概念描述、定性对比概念描述、
关联规则、分类规则、聚类知识、趋势描述知识、偏差分析知识等。 ?挖掘结果评估,数据挖掘结果评估主要依据两类标准,即客观标准和主观标准。这两
类标准的出发点均是:所挖掘出的模式应是新奇的、有趣的、有价值的。这两类评估标准都可以与挖掘过程密切结合,以指导知识发现的搜索过程。 ?数据挖掘系统分类,数据挖掘系统可以按照三种标准进行划分,它们是数据库类型、
所挖掘的知识和所使用的技术。 ?数据挖掘尚待研究问题,对大规模数据库内容进行高效的数据挖掘,作为数据挖掘研
究的基本出发点,为我们提出许多尚待解决的问题,主要涉及数据挖掘方法、用户交互、性能与可扩展性,以及多样化数据的处理等。 1.7数据挖掘课题的选择
在电信系统中,经常需要根据用户的登入登出进行计时收费,这样我们就需要根据登录日志来将用户的登入记录和登出记录按照对应关系匹配起来,形成一条完整的登录记
19
武汉工程大学本科毕业设计
录,登录记录中包含以下信息:用户登录名,登入时刻,登出时刻,登录时长,登录终端机器IP等。在匹配过程中,理论上一条登入记录跟一条登出记录匹配,但有可能在我们采集数据时用户还没有登出,所以日志文件中可能出现没有登出记录与之匹配的登入记录,这些登入记录我们将其保存在一个指定的文件中,在下次采集时再读取。在整个电信系统中,这些记录无疑是非常巨大的,不是依靠人力手工能够完成的,这时,我们就需要有一个具体的系统来帮我们自动完成这些功能,这也就是本次课题的选择——数据挖掘系统DMS(Data Mining System)。
20