基于数据仓库和数据挖掘的决策支持系统的研究

基于数据仓库和数据挖掘的决策支持系统的研究

ID:36566464

大小:3.17 MB

页数:79页

时间:2019-05-12

上传者:U-145848
基于数据仓库和数据挖掘的决策支持系统的研究_第1页
基于数据仓库和数据挖掘的决策支持系统的研究_第2页
基于数据仓库和数据挖掘的决策支持系统的研究_第3页
基于数据仓库和数据挖掘的决策支持系统的研究_第4页
基于数据仓库和数据挖掘的决策支持系统的研究_第5页
资源描述:

《基于数据仓库和数据挖掘的决策支持系统的研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究姓名:叶瑾申请学位级别:硕士专业:计算机应用指导教师:谢康林2002.1.1 的挖掘技术方面,提出了适合于实际应用的销售型数据仓库的关联规则挖掘算法SMAR;在挖掘语义层次上的关联规则方面,引入一种新的挖掘方法,通过挖掘明式或暗示的代表数据仓库特征的语义层次来处理数据的复杂性;在时间序列模式的数据挖掘中,提出一个基于季节指数的最小二乘法来预测与季节变动相关的销售数据走向。以上算法本文不仅从^、/,理论上进行探讨,还结合实际应用系统加以实现。)/1//然后,本文从实际应用的角度来阐述整个基于数据仓库和数据挖掘技术的综合决策支持系统。其中包括对综合决策支持系统体系框架结构的研究和分析,以及针对具体实际应用的各个模块功能和决策支持系统整体解决方案。最后,总结本论文所做的工作,并对进一步的发展方向进行展望。关键词:数据仓库,联机分析处理,数据挖掘,关联规则,趋势分析决策支持系统 DECISIONSUPPORTSYSTEMRESEARCHBASEDONDATAWAREHOUSEANDDATA_lNlNGABSTR^CTWiththedevelopmentofcompmertechnologyandtheimplementofinformationhighway,informationsyStemhasalreadybecomeonepartof0131"lives.DataWarehousecameforthwithtIleechooftime,andbecamethehighlightindatabaseresearch.DataWarehousetechnologywithOLAPandDataMiningtechnologyistheexcellentmethodfordatamanagement,informationacquirementandintelligentdecision.DataWarehouse,OLAPandDataMininghavebecomethefocusofresearchinDecisionSupportSystemcurrentlyThispaperfirstintroducesthecurrentdevelopmentsituationofDecisionSupportSystem,itsrealresearchingbackgroundanditsaim.Secondly,theauthordescribesthetheoryofDataWarehouse,OLAPandDataMining,andtheirdevelopmentdirectionsindepth.Meanwhile,theauthordiscussestheimplementationonofDataWarehouse,buildsonesalesdatawarehousewithtwosubjects,salesandcustomers.Afterthat,theauthorexplorestherealizationofOLAPandDataMininginrealapplicationbasedonthebuilt datawarehouse.ThekeystoneofthispaperistheinnovationinminingresearchAsthecoreofthispaper,thispartdiscussestheresearchachievementonDataMiningduringdailyresearchworkandmaster’Sthesiscomposition,andtheapplicationoftheresultachieved,whichincludes:analgorithmSMARonassociationrulesmining,whichissuitabletothebuiltsaleswarehouse;amethodonconceptsassociationrulesminingtomineassociationrulesbyexploitingtheimplicitandexplicitconceptshierarchieswhichfeaturewarehouse;aLeastSquareMethodwithseasonalindexontimeserialminingtoforecastthesalesquantitieswhicharerelatedwithseasonal’alternation.Allthesemethodsarediscussednotonlyintheory,bfltalsoinrealization.Afterwards,theauthorproposestheframeworkofthewholedecisionsupportsystembasedonwarehouseandmining,includingthearchitectureanalysisofdecisionsupportsystem,themodulefunctionsinitsapplicationanditsfullsolutioninapplication.Finally,theauthorsumsupthewholework,givessomepredictionsonfutureresearch.’KEYWORDS:datawarehouse,OLAP,datamining,associationrules,sequelanalysis,decisionsupportsystem 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究第一章绪论1.1基于新型决策支持技术的综合决策支持系统的提出决策支持系统(DecisionSupportSystem)的概念是20世纪70年代提出的,并且在80年代得到发展。它的产生基于以下原因:(1)传统的MIS没有给企业带来巨大的效益,人在管理中的积极作用要得到发挥;(2)人们对信息处理规律认识提高,面对不断变化的环境需求,要求更高层次的系统来直接支持决策;(3)计算机应用技术的发展为DSS提供了物质基础。决策支持系统,是以管理科学、运筹学、控制论和行为科学为基础,以计算机技术、仿真技术和信息技术为手段,针对半结构化的决策问题,支持决策活动的具有智能作用的人机系统。该系统能够为决策者提供决策所需的数据、信息和背景材料,帮助明确决策目标和进行问题的识别,建立或修改决策模型,提供各种备选方案,并且对各种方案进行评价和优选,通过人机交互功能进行分析、比较和判断,为正确决策提供必要的支持。数据仓库(DataWarehouse)和联机分析处理(On.LineAnalysisProcess)是20世纪90年代初提出的概念,到90年代中期已经形成潮流。在美国,数据仓库已经成为仅次于Internet之后的又一技术热点。数据仓库是市场激烈竞争的产物,它的目标是达到有效的决策支持。随着数据仓库的发展,OLAP也得到了迅猛的发展。数据仓库侧重于存储和管理面向决策主体的数据;而OLAP则侧重于数据仓库中的数据分析,并将其转换成辅助决策信息。OLAP的一个重要特点是多维数据分析,这与数据仓库的多维数据组织正好形成相互结合、相互补充的关系。到了20世纪90年代中期,从人工智能、机器学习等技术中发展出数据挖掘(DataMining)技术。数据挖掘是从数据库、数据仓库中挖掘有用的知识,其知识的形式有产生式规则、决策树、数据集、公式等,它对知识的推理即形成智能模型,是以定性分析方式辅助决策的。以数据仓库和OLAP相结合建立的综合决策系统是决策支持系统的新形式。以模型库为主体的决策支持系统已经发展了lO多年,它对计算机的辅助决策起了很大的推动作用。数据仓库和OLAP新技术为决策支持系统开辟了新途径。数据仓库与OLAP都是数据驱动的。这些新的技术和传统的模型库对决策的支持是两种不同的形式,它们可以相互补充。在OLAP中加入模型库,将会极大地提高OLAP的分析能力。把数据库、OLAP、数据开采、模型库结合起来形成综合决策支持系统,是更高级形式的决策支持系统。其中数据仓库能够实现对决策主题数据的存储和综合,OLAP实现多维数据分析,数据开采用以挖掘数据库和数据仓库中的知识,模型库实现多个广义模型的组合辅助决策,专家系统利用知识推理进行定性分析。它们集成的综合决策支持系统,将相互补充、相互依赖发挥各自的辅助决策优势,实现更有效的辅助决策。第l页共l页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究1.2论文研究的方法及拟达到的目标作者在硕士学位论文研究和撰写阶段,对数据仓库、OLAP和数据挖掘技术以及基于以上技术构架的决策支持系统进行了研究和探讨,同时阅读了国内外大量的最新技术文献,并且结合所参加的科研项目:三枪集团“基于数据仓库和数据挖掘的计划决策支持系统”的研究、设计和开发工作,在数据挖掘技术的某些前沿领域做了一些探索性尝试和努力。三枪集团是国内一家知名的大型内衣制造商,在多年的销售中已经积累了30万余条销售纪录。如何最大限度的利用好这些历史数据,从中提炼出对企业决策有价值的信息是一个值得特别研究的问题。该计划决策支持系统是三枪集团针对企业内部的生产管理和市场销售工作所提出的一个决策支持项目。概括的说,其目标和功能主要包括以下几点:●根据对市场销售情况的分析判断,对企业库存情况的统计,结合对企业内部生产能力的评估,合理、有效地制定生产计划;·及时了解企业集团分布在全国各地销售网点的销售情况,为管理者提供对销售数据准确、灵活的统计和查询能力;·对企业内部的各种数据进行分析,从中发现出有用的信息为企业的高层决策提供支持。作者希望通过对该系统的研究和开发,从而对决策支持系统的总体结构有一个较为全面的认识,同时对许多具体的技术细节进行较为深入的理解,并且在系统的设计和开发过程中,结合企业的具体实际应用,进行了一些有意义的尝试和探索性的研究。因此,在本硕士学位论文中,作者对数据仓库、OLAP和数据挖掘技术进行研究和探讨,并以三枪集团的计划决策支持系统作为实例,以系统设计开发的具体过程为线索,进行基于新型决策支持技术的综合决策支持系统的整体框架的研究。1.3论文研究的意义数据仓库技术自93年兴起以来,一直倍受业界人士的关注。作为决策型数据库,数据仓库能很好的实现异构数据库的集成,有效地利用历史数据资源。因而,众多的企业和公司都纷纷采用数据仓库技术来提高运作效率,提供最有效的信息来辅助决策。同时,数据仓库和联机分析技术、数据挖掘技术相结合,能更好地为用户提供决策信息的支持,这也正是目前用户所需要的。特别是在销售领域内,用户需要灵活的查询工具,从不同的角度来观察和分析数据,要同时做到概括性数据的浏览和细节性数据的探究。同时对用户无法表述而又想了解的决策信息,如关联规则的发现以及趋势的预测等。利用数据挖掘工具,系统就能自行在浩如烟海的数据中按一定的算法进行规则和趋势的挖掘,找出数据间的内在关联性,为用户提供决策上的支持。这些都是本课题研究的关键技术,在这些方面,作者不仅从理论上进行探讨,还结合具体的算法加以实现。以上这些技术都代表了目前国际上组织管理数据,发现获得信息和智能化决策的最先进的手段,并处于国内外该领域的科研前沿。同时,它们在决策支持领域中的应第2页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究用,将给企业的管理和决策带来巨大的经济效益,强大的企业竞争优势,高效有序的管理,以及无限的可扩性和适应性,具有无法估量的发展前景。目前数据仓库、联机分析和数据挖掘等技术都已经成为决策支持系统领域内的热点研究课题。可以毫不夸张地说,基于数据仓库和数据挖掘的综合决策支持系统的出现将给传统的决策支持带来一场革命,它将是人们朝着智能化决策所迈出的最为坚实的一步。1.4论文内容编排本文的结构以如下的方式进行组织。全文共由六章组成。第~章为绪论,简单介绍决策支持系统的发展情况和论文的实际研究背景以及论文拟达到的目标与意义。除此以外,还包括了论文内容的具体编排结构。第二章到第四章中,分别详细探讨了数据仓库、联机分析处理和数据挖掘技术的理论基础及其在实际系统中的应用状况。其中第四章是本论文的重点,在这一章中,结合对实际系统的开发,详细地介绍了作者在科研和硕士学位论文撰写阶段,在数据挖掘技术的某些前沿领域中所作的研究和创新工作,并且将数据挖掘技术和企业的实际相结合起来。这些工作集中表现在对关联规则挖掘和时间序列预测的研究方面,其中不少内容都是作者在科研和和硕士论文撰写阶段的研究成果。第五章在前几章的基础上从实际应用的角度来介绍整个基于数据仓库和数据挖掘技术的综合决策支持系统。其中包括对综合决策支持系统体系框架结构的研究和分析,以及针对具体实际应用的各个模块功能和决策支持系统整体解决方案。第六章总结本论文所做的工作,并对进一步的发展进行展望。第3页共78页 上二海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究第二章数据仓库技术的研究和应用2.1数据仓库技术的提出计算机系统的功能从数值计算扩展到数据管理距今已有三十多年了。最初的数据管理形式主要是文件系统,数据的访问必须依赖于特定的程序,数据的存取方式是固定的、死板的。到了1969年,E.F.Codd博士发表了他著名的关系数据模型的论文。此后,关系数据库的出现开创了数据管理的一个新时代。近几十年来,大量新技术、新思路的涌现出来,并被用于关系型数据库系统的开发和实现。这一切足以使得关系数据库系统的处理能力毫不逊色于传统封闭的数据库系统。而关系数据库在访问逻辑和应用上所带来的好处则远远不止这些,SQL的使用己成为一个不可阻挡的潮流,加上近些年来计算机硬件的处理能力呈数量级的递增,关系数据库最终成为联机事务处理系统的主宰。整个20世纪80年代直到90年代初,联机事务处理一直是数据库应用的主流。然而,应用在不断地进步。当联机事务处理系统应用到一定阶段后,用户便发现单靠拥有联机事务处理已经不足以获得市场竞争的优势,他们需要对其自身业务的运作以及整个市场相关行业的情况进行分析,而做出有利的决策。这种决策需要对大量的业务数据包括历史业务数据进行分析才能得到。在如今这样激烈的市场竞争环境下,这种基于业务数据的决策分析,我们把它称为联机分析处理(OLAP),比以往任何时候都显得更为重要。如果说传统联机事务处理强调的是更新数据库——向数据库中添加信息,那么联机分析处理就是从数据库中获取信息、利用信息。因此,著名的数据仓库专家RalphKimball写道:”我们花了二十多年的时间将数据放入数据库,如今是该将它们拿出来的时候了。”事实上,将大量的业务数据应用于分析和统计原本是一个非常简单和自然的想法。但在实际的操作中,人们却发现要获得有用的信息并非如想象的那么容易,这主要表现在以下几点:·所有联机事务处理强调的是密集的数据更新处理性能和系统的可靠性,并不关心数据查询的方便与快捷。联机分析和事务处理对系统的要求不同,同一个数据库在理论上都难以做到两全。·业务数据往往存放于分散的异构环境中,不易统一查询访问,而且还有大量的历史数据处于脱机状态,形同虚设。·业务数据的模式针对事务处理系统而设计,数据的格式和描述方式并不适合非计算机专业人员进行业务上的分析和查询。’因此有人感叹:20年前查询不到数据是因为数据太少了,而今天查询不到数据是因为数据太多了。针对这一问题,人们设想专门为业务的统计分析建立一个数据中心,它的数据从联机的事务处理系统中来、从异构的外部数据源来、从脱机的历史业务数据中来⋯⋯。这个数据中心是一个联机的系统,它是专门为分析统计和决策支持应用服务的,通过它可以满足决策支持和联机分析应用所要求的~切。这个数据中第4页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究心就叫做数据仓库。这个概念在20世纪90年代初被提出来。如果需要给数据仓库一个定义的话,那么数据仓库就是一个作为决策支持系统和联机分析应用数据源的结构化数据环境。数据仓库所要研究和解决的问题就是从数据库中获取信息的问题。那么数据仓库与数据库(主要指关系数据库)又是什么关系呢?回想当初,人们圃守封闭式系统是出于对事务处理的偏爱,人们选择关系数据库是为了方便地获得信息。我们只要翻开c.J.Date博士的经典之作(AnIntroductiontoDatabaseSystems))便会发现:今天数据仓库所要提供的正是当年关系数据库所要倡导的。然而,由于关系数据库系统在联机事务处理应用中获得的巨大成功,使得人们已不知不觉将它划归为事务处理的范畴;过多地关注于事务处理能力的提高,使得关系数据库在面对联机分析应用时又遇到了新的问题一今天的数据仓库对关系数据库的联机分析能力提出了更高的要求,采用普通关系型数据库作为数据仓库在功能和性能上都是不够的,它们必须有专门的改进。因此,数据仓库与数据库的区别不仅仅表现在应用的方法和目的方面,同时也涉及到产品和配置上的不同。以辨证的眼光看,数据仓库的兴起实际是数据管理的一种回归,是螺旋式的上升。今天的数据库就好比当年的层次数据库和网状数据库,它们面向事务处理:今天的数据仓库就好比是当年的关系数据库,它针对联机分析。所不同的是,今天的数据仓库不必再为联机事务处理的特性而无谓奔忙,由于技术的专业化,它可更专心于联机分析领域的发展和探索.数据仓库的概念一经出现,就首先被用于金融、电信、保险等主要传统数据处理密集型行业。国外许多大型的数据仓库在1996—1997年建立。那么,什么样的行业最需要和可能建立数据仓库呢?有两个基本条件:第一,该行业有较为成熟的联机事务处理系统,它为数据仓库提供客观条件;第二,该行业面临市场竞争的压力,它为数据仓库的建立提供外在的动力。2.2数据仓库的定义业界公认的数据仓库概念创始人w.H.Inmon在《建立数据仓库》一书中对数据仓库的定义是:数据仓库就是面向主题的、集成的、不可更新的(稳定性)、随时间不断变化(不同时间)的数据集合,用以支持经营管理中的决策制定过程。数据仓库中的数据面向主题,与传统数据库面向应用相对应。主题是一个在较高层次上将数据归类的标准,每一个主题对应一个宏观的分析领域:数据仓库的集成特性是指在数据进入数据仓库之前,必须经过数据加工和集成,这是建立数据仓库的关键步骤,首先要统一原始数据中的矛盾之处,还要将原始数据结构做一个从面向应用向面向主题的转变;数据仓库的稳定性是指数据仓库反映的是历史数据的内,而不是日常事务处理产生的数据,数据经加工和集成进入数据仓库后是极少或根本不修改的:数据仓库是不同时间的数据集合,它要求数据仓库中的数据保存时限能满足进行决策分析的需要,而且数据仓库中的数据都要标明该数据的历史时期。.数据仓库最根本的特点是物理地存放数据,而且这些数据并不是最新的、专有的,而是来源于其它数据库的。数据仓库的建立并不是要取代数据库,它要建立在一个较全面和完善的信息应用的基础上,用于支持高层决策分析,而事务处理数据库在企业第5页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究的信息环境中承担的是日常操作性的任务。数据仓库是数据库技术的一种新的应用,而且到目前为止,数据仓库还是用关系数据库管理系统来管理其中的数据。传统的数据库技术是以单一的数据资源,即数据库为中心,进行事务处理、批处理、决策分析等各种数据处理工作,主要的划分为两大类:操作型处理和分析型处理(或信息型处理)。操作型处理也叫事务处理,是指对数据库联机的日常操作,通常是对一个或一组纪录的查询和修改,主要为企业的特定应用服务的,注重响应时间,数据的安全性和完整性;分析型处理则用于管理人员的决策分析,经常要访问大量的历史数据。而传统数据库系统优于企业的日常事务处理工作,而难于实现对数据分析处理要求,已经无法满足数据处理多样化的要求。操作型处理和分析型处理的分离成为必然。近年来,随着数据库技术的应用和发展,人们尝试对DB中的数据进行再加工,形成一个综合的,面向分析的环境,以更好支持决策分析,从而形成了数据仓库技术(DataWarehousing)。作为决策支持系统(DecisionSupportSystem),数据仓库系统包括:l、数据仓库技术;2、联机分析处理技术(On—LineAnalyticalProcess);3、数据挖掘技术(DataMining);数据仓库弥补了原有的数据库的缺点,将原来的以单一数据库为中心的数据环境发展为一种新环境:体系化环境,如图2一I所示:图2一I数据仓库体系化环境2.3数据仓库中的数据组织2.3.1数据组织结构一个典型的数据仓库的数据组织结构如图2—2所示:数据仓库中的数据分为四个级别:早期细节级、当前细节级、轻度综合级、高度综合级。源数据经过综合后,首先进入当前细节级,并根据具体需要进行进一步的综合,从而进入轻度综合级乃至高度综合级,老化的数据将进入早期细节级由此可见,数据仓库中存在着不同的综合级别,一般称之为”粒度”。粒度越大,表示细节程度越低,综合程度越高。第6页共78页 上海交通大学硕士学位论文基于数据仓库和数捌挖掘的决策支持系统的研究图2—2DW数据组织结构2.3.2元数据(metadata)元数据是”关于数据的数据”,如在传统数据库中的数据字典就是一种元数据。对数据仓库来说,元数据是基础,它管理数据仓库中的各种控制参数,是数据仓库管理和开发的核心,是“关于数据仓库的数据库”。在数据仓库环境下,主要有两类元数据:第一种是为了从操作性环境向数据仓库转化而建立的元数据,包含了所有源数据项名、属性及其在数据仓库中的转化;第二种元数据在数据仓库中是用来和终端用户的多维商业模型/前端工具之间建立映射,主要是用于完成数据仓库的管理和监控,此种元数据称之为DSS元数据,常用来开发更先进的决策支持工具,包括数据的选取、加载和使用等过程等。2.3.3粒度与分割粒度是数据仓库的重要概念。粒度可以分为两种形式,第一种粒度是对数据仓库中的数据的综合程度高低的一个度量,它既影响数据仓库中的数据量的多少,也影响数据仓库所能回答询问的种类。在数据仓库中,多维粒度是必不可少的。由于数据仓库的主要作用是DSS分析,因而绝大多数查询都基于一定程度的综合数据之上的,只有极少数查询涉及到细节。所以应该将大粒度数据存储于快速设备如磁盘上,小粒度数据存于低速设备如磁带上。还有一种粒度形式,即样本数据库。它根据给定的采样率从细节数据库中抽取出一个子集。这样样本数据库中的粒度就不是根据综合程度的不同来划分的,而是有采样率的高低来划分,采样粒度不同的样本数据库可以具有相同的数据综合程度。分割是数据仓库中的另一个重要概念,它的目的同样在于提高效率。它是将数据分散到各自的物理单元中去,以便能分别独立处理。有许多数据分割的标准可供参考:如日期、地域、业务领域等等,也可以是其组合。一般而言,分割标准总应包括日期第7页共78页 上海交通大学硕士学位论文摹于数据仓库和数据挖掘的决策支持系统的研究项,它十分自然而且分割均匀。2.3.4数据仓库的数据组织形式·这里简单介绍数据仓库中常见的数据组织形式:f—j筋华罄勰之缪:它将每日由数据库中提取并加工的数据逐天积累并存储起来。r二)张橼兮史斧:数据存储单位被分为目、周、月、年等几个级别。在一个星期的七天中,数据被逐一记录在每日数据集中;然后,七天的数据被综合并记录在周数据集中;接下去的一个星期,日数据集被重新使用,以记录新数据。同理,周数据集达到五个后,数据再一次被综合并记入月数据集。以此类推。轮转综合结构十分简捷,数据量较简单堆积结构大大减少。当然,它是以损失数据细节为代价的,越久远的数据,细节损失越多。仨)筋纪直接勋学:它类似于简单堆积文件,但它是间隔一定时间的数据库快照,比如每隔一星期或一个月作一次。f四)篷嬖之鲈:通过两个连续的简化直接文件,可以生成另一种连续文件,它是通过比较两个简单直接文件的不同而生成的。当然,连续文件同新的简单直接文件也可生成新的连续文件。’对于各种文件结构的最终实现,在关系数据库中仍然要依靠”表”这种最基本的结构。2.3.5数据仓库的数据追加如何定期向数据仓库追加数据也是一个十分重要的技术。我们知道,数据仓库的数据是来自OLTP的数据库中,问题是我们如何知道究竟哪些数据是在上一次追加过程之后新生成的。常用的技术和方法有:·时标方法:如果数据含有时标,对新插入或更新的数据记录,在记录中加更新时的时标,那么只需根据时标判断即可。但并非所有的数据库中的数据都含有时标。·DELTA文件:它是由应用生成的,记录了应用所改变的所有内容。利用DELTA文件效率很高,它避免了扫描整个数据库,但同样的问题是生成DELTA文件的应用并不普遍。此外,还有更改应用代码的方法,使得应用在生成新数据时可以自动将其记录下来。但应用成千上万,且修改代码十分繁琐,这种方法很难实现。·前后映象文件的方法:在抽取数据前后对数据库各作一次快照,然后比较两幅快照的不同从而确定新数据。它占用大量资源,对性能影响极大,因此并无多大实际意义。·日志文件:最可取的技术大概是利用日志文件了,因为它是DB的固有机制,不会影响0LTP的性能。同时,它还具有DELTA文件的优越性质,提取数据只要局限日志文件即可,不用扫描整个数据库。当然,原来日志文件的格式是依据DB系统的要求而确定的,它包含的数据对于数据仓库而言可能有许多冗余。比如,对一个记录的多次更新,日志文件将全部变化过程都记录下来;而对于数据仓库,只需要最终结果。但比较而言,日志文件仍然是最可行的一种选择。第8页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究2.4数据仓库的设计数据仓库是建立决策支持系统的基础。数据仓库的设计必须同企业的管理系统和决策支持相紧密联系。作为数据仓库的设计者不仅要考虑数据库和用户界面,还要考虑数据加载策略,数据访问工具,用户的培训和不断出现的维护问题。因此,数据仓库需要一个综合考虑了许多方面的设计方案。本节以作者为三枪集团设计的销售数据仓库为实际应用背景,详细介绍整个设计过程,包括数据仓库需求分析,概念模型设计,逻辑模型设计和物理模型设计。同时还相应地总结在设计过程中所涉及到的各种问题。2.4.1数据仓库需求分析数据仓库的设计从“它将用于什么以及谁将会用它”这个最基本的问题开始。建立企业级的数据仓库,目的是将用户直接与他们所需要的数据相连,以便于进行灵活,有效的,详细的,战略性的商业决策。因此在设计数据仓库之前必须明确其应用目标。以三枪集团销售数据仓库为例,如图2—3所示,建立数据仓库的目的是能够将分布在全国各地的各种销售数据进行汇总,整理。然后以星型模型和雪花模型将多个数据表连接起来,并以多维数据立方体的形式进行组织管理。在此基础上,提供为企业决策服务的各种分析,查询,报表功能。不仅如此,还要在数据仓库的基础上,开发各种数据挖掘技术,并将其渗透到企业管理决策的各个领域。决策支持f。LJ‘t查询分析▲JL多维分析工具甸阿数据挖掘工具一I}/彳>仓库图2—3数据仓库应用框架Figure2—3DataWarehouseApplicationArchitecture第9页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究2.4.2概念模型设计这里指的概念模型与数据库设计中所指的概念模型基本相同。它是主观与客观之间的桥梁,是为系统设计和收集信息而服务的一个概念性工具。在计算机领域中,概念模型是客观世界到计算机世界的一个中间层次。人们将现实世界抽象为信息世界,再将信息世界抽象为机器世界,这个信息世界就是我们所说的概念模型。概念模型设计的主要任务是:1、界定系统边界.2、确定数据仓库的主题域及其内容。在概念模型设计中最常用的方法是E—R图法,即用E—R图来描述实体和实体之间的联系。在概念模型设计中长方形表示主题,在框内写上主题名;而椭圆表示一个主题对应的各个修饰限定信息,也就是维。(在下一章介绍联机分析时,维将是一个非常重要的概念。)图2—4主题分析Figure2—4DomainAnalysis图2—4是我们为三枪集团开发数据仓库时,进行概念模型设计的一部分较为典型的结果。在该图中,主要包含两个相关的主题:销售和顾客。在概念模型中,主题是由事实表来反映的。围绕着事实表的,是同该主题有关的一些限定信息,即维表。以销售主题为例:销售事实表反映三枪集团的服装销售情况。与之有关的是销售数量、销售金额、销售部门、销售地区、销售商品的型号、等级以及销售时间等。在图中,顾客购买信息主要是指顾客的相关信息。2.4.3逻辑模型设计逻辑模型设计是指:在数据仓库中如何将一个主题描述出来。它是对概念模型设计的细化。一般来说,数据仓库都是在现有的关系型数据库的基础上发展起来的。所第10页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究以数据仓库中的数据仍然是以数据表格的形式进行组织的。逻辑模型就是要把不同主题和维的信息映射到数据仓库中的具体的表中。这一阶段的设计主要包括:l、分析主题域和维信息,确定粒度层次划分。2、关系模式的定义。2.4j3i1星型模銎和雪花模型仍然以三枪集团数据仓库为例,对于销售主题,全部数据以一个多维数据立方体的形式进行组织。总共包含一个核心事实表和五个维表。在实际数据仓库中,事实表里包含了集团商品销售的各种度量(度量是一种特殊的维),包括销售数量,销售金额和平均单价等。这些数据将在以后被直接或间接地用在分析中。除此之外,核心事实表中还包含有多个外码,分别对应于多个维表。外码是联系事实表和数据维表的纽带。在本例中,事实表中包含了五个外来关键字,它们分别于五个维表相对应。维表中存放着各个维的相关信息。如图2—5所示,所有的数据维表以核心事实表为中心构成了一个星形模型。事实表I地区维表l销售地区+ll商品等级表l商品型号+I丽品信思表J{J商品等级+l顾客信息表卜顾客信息+——-一销售时间表f销售时间+销售数量销售金额+代表外码平均单价”+·平均单价为导E变量。金额,销售数量)图2-5星型模型Figure2—5StarModel雪花模型是在星型模型的基础上进行设计的。由于人们观察角度的是多层次的,数据的维往往不仅只有一个维层次。维的不同层次组合在一起可以构建一个复杂的维。对于同一维中的多个层次,可以用多张表来描述一个复杂的维。例如地区维可以进一步划分为地区,省份,城市。商品等级维可以进一步划分为一级品、二级品等等。因此一个维表又可以根据不同的层次分裂成多个分支,这种形状称为雪花模型。如图2—6所示,是销售数据仓库中的地区维经过分裂以后所形成的雪花模型的结果。在实际的设计中雪花模型和星型模型常常需要进行均衡。雪花模型适合于层次结构较为复杂的的维,但其缺点是关系模型的表结构较为复杂。星型模型可以用~张表来描述,所以从表结构上来看较为简单,但数据冗余较大,并且有时不能满足第四关系范式4NF的要求。274i3i2数据仓痒设计的规范化数据库的设计同数据仓库的设计目标有显著的差异。数据库管理系统主要关心的第1I页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究是快速高效存储和数据逻辑上的完整性。地区表省级表城市表地区维表销售地点地区代码省级代码城市代码商品等级表顾客信息表图2—6雪花模型Figure2—6SnowflowerMode事实表销售地点+商品型号+商品等级+顾客信息+销售时间+销售数量销售金额平均单价”商品信息表销售时间表·代表外码“平均单价为导出变量。为了规范数据库的设计,到目前为止,已经形成了一套比较完备的数据库规范化理论。数据库的规范化理论主要是由Codd提出的。目前经常使用的范式根据其级别不同依次为:第一范式1NF,第二范式2NF,BCNF和第四范式4NF。第一范式1NF最为简单,只要求保证数据项的原子性。它具有以下特征:1、所有的属性都是原子化的。2、属性不可能有一组值。3、属性不可能有任何嵌套关系。在第一范式的基础上,如果清除了主属性部分的依赖关系以后,所得到的关系就称为第二范式。第二范式的定义是:如果关系R∈lJ~,,,且每个非主属性完全函数依赖于码,那么R∈2NF。第二范式保证了所有不重要的属性关系完全依赖于主键。当然还有其它更高形式的规范化,现在许多数据库管理系统的设计层次都达到或高于第四范式。这里需要强调指出的是第四范式。因为第四范式的定义其实正说明了数据库与数据仓库之间的区别。从星型模型到雪花模型的转变就是针对第四范式。在星型模型中关系不必满足第四范式,因此数据中将会存在多值依赖。当从星型模型向雪花模型转变以后,消除或者减少了多值依赖,因此也减小了数据的冗余,但数据关系也由此而变得复杂。创建企业级的数据仓库是一个需要全面考虑各方面因素的开发过程,它需要用户团体与开发人员在开发过程中的密切合作。在数据仓库的关系模型设计阶段,这种合作显得尤为重要。因为关系模型的设计介于概念模型和物理模型设计之间,在这一阶段不仅要考虑用户的需求,同时还要考虑数据的组织。应该说,它起到了一个承上启下的作用。第12页共78页 卜海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究2。4.4物理模型设计物理模型是指数据在数据仓库中的存放形式和数据的组织。目前的数据仓库都是建立在关系型数据库的基础上,最终的数据存放是由数据库系统进行管理的,因此物理模型设计主要考虑构建物理数据库。包括数据的存储表结构,索引策略,数据的存放位置和存储分配。当然一般只有在涉及到数据分割等情况才进行一些数据存放和存储分配的处理。在实际系统的设计中,我们使用了MicroSoft公司的MSSQLSERVER7.0和MsOLAPSERVICES来作为数据库和数据仓库的管理系统。根据设计要求,针对用户定义的具体应用,建立了如下几类数据存储结构:(--)系统信息表这些表是用于维护,运行及编程所需要的所有元数据,它们是关于数据仓库的数据库,又称为元数据表。包括系统用户表,数据备份和转储表和系统数据字典。(二)核心事实表数据仓库的事实表包括:销售数据表,库存数据表,顾客信息表。这三个表其实也就代表了数据仓库中的三个不同的分析主题。(三)维表维表包含由企业用户自行定义的各种描述信息(时间维除外)。这些信息一般是根据管理者的需求来确定的,并且同企业日常数据库操作紧密联系。诸如商品规格,商品等级,销售地区和顾客信息等等。(四)转换对照表包括从数据源至数据仓库转换过程中的客户对照表、产品对照表等。它们的目的是为了解决数据在集成综合过程中由于原来不同数据库中对相同意义的项的不同定义方法所造成的不一致性。2.5建立数据仓库体系结构2.5.1数据仓库的体系结构图。参见图2—7。2.5.2数据导入在完成了数据仓库的设计工作以后,就可以着手进行数据仓库的数据导入。在上文中已经指出,数据仓库中存放的都是历史数据,这些数据主要来自OLTP数据库。因此,在进行决策支持之前,必须把外部数据完整无误地送入数据仓库。同样,上文也指出,数据仓库中的数据必须是经过集成的。数据是从原有的分散的数据库系统中抽去来的。这些数据可以来自不同的渠道,其结构是多样化的。将这些数据进行统一与综合,就成为在数据导入过程中所要完成的任务。数据导入的工作主要包括以下四个步骤:(一)数据检验(Verification)“检验”主要是用来确保导入数据仓库的数据在规定范围内是否是合法和准确的。由于这些数据以后会成为决策支持的重要依据,因此数据检验的这一步的重要性是不言而喻的。在实际的系统建设中,最简单有效的数据检验主要包括:第13页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究l、确保在必要的地方使用了NOTNULL属性2、确保主码的唯一性。比如,以下的SQL语句就确保了customer—id字段的取值不能为空:Createtable[customer]“customer—id][integer]notnull,[customer—name][varchar](40));又比如:createuniqueindexindex—idon[customer](customer—id)onprimary该SQL语句保证了主码属性CUStomer—id的唯一性。图2—7:数据仓库体系结构(二)数据抽取(Extraction)数据的抽取是数据进入仓库的入口。由于数据仓库是一个独立的数据环境,它需要通过抽取过程将数据从联机事务处理系统、外部数据源、脱机的数据存储介质中导入到数据仓库。数据抽取在技术上主要涉及互连、复制、增量、转换、调度和监控等几个方面。数据仓库的数据并不要求与联机事务处理系统保持实时的同步,因此数据抽取可以定时进行,但多个抽取操作执行的时间、相互的顺序、成败对数据仓库中信息的有效性则至关重要。在技术发展上,数据抽取所涉及的单个技术环节都已相对成熟,其中有一些是躲不开编程的。但整体的集成度还很不够。目前市场上所提供的大多是数据抽取工具。这些工具通过用户选定源数据和目标数据的对应关系,会自动生成数据抽取的代码。但数据抽取工具支持的数据种类是有限的;同时数据抽取过程涉及数据的转换,它是一个与实际应用密切相关的部分,其复杂性使得不可嵌入用户编程的抽取工具往往不能满足要求。因此,实际的数据仓库实施过程中往往不~定使用抽取工具。整个抽取过程能否因工具的使用而纳入有效的管理、调度和维护则更为重要。从市场发展来看,第14页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究以数据抽取、异构互连产品为主项的数据仓库厂商一般都很有可能被其它拥有数据库产品的公司吞并。在数据仓库的世界里,它们只能成为辅助的角色。“抽取”这~操作只在某些时间点上进行。这些时间点是经过准确定义的,并与其它资源里进行的抽取操作的时间相协调。“抽取”就是读取并过滤数据,·这些数据将进入数据仓库或暂时存放在中介数据文件里,但最终还是会被导入数据仓库。(三)数据净化d$crubbinz)“净化”是指对从不同渠道收集来的数据进行加工,使它们可以被数据仓库接纳。常见的“净化”操作包括对数据进行的通用化,格式化和用户化等等。(西)数据转换(Transformation)“转化”操作包括把一个数据记录分割成多个相关的条目,以及把多个条目组合成一个新的记录;对数据记录进行查找和转化,使数据适合于显示或比较;以及根据已有数据计算新数据。转化工作的附加职能还包括把前面处理过的数据载如到数据仓库中。数据导入的过程中,许多情况下需要自行编写代码来控制数据导入过程。我采用了MSSQL语句和VisualBasicScript相结合的办法,完成了整个系统的数据导入工作。采用VBScript代码的实例如下:FunctionTransform()DTS—Destination(“ID”)=DTS—Source(“ID'')。DTS—Destination(“name”)=DTS—Source(“name”)Transform=lEndFunctjon2.5.3实际系统中销售型数据仓库的体系结构最后,给出构建整个三枪集团销售数据仓库的体系结构,如图2—8所示。该系统将分布在全国各地销售网点的销售数据,通过电话网传输并汇总到一个统一的数据仓库中。数据从不同的应用系统和不同的操作环境,通过数据采集,数据清理和数据迁移最终进入数据仓库,并为上层的决策支持应用系统所使用。(~)数据采集由于应用单位三枪集团已经建立了全国计算机销售网络,所以数据采集也伸展到每个细节。通过计算机网络,从各分公司、各专卖店以及两大销售节点收集数据,进行了汇总,这是由专门的采集工具在各个部门独自完成的。数据的刷新每天进行。(二)数据清理+虽然各分公司、专卖店使用的销售管理系统是类似的,但由于各部门的某些编码并不一致,所以需要对采集来的数据进行清理,把编码统一化,数据的统计口径一致化,把数据合并起来,这就要进行数据追加,在这里面采用了数据字典进行管理,也就是前面介绍的方法。这部分工作是将采集的数据汇总到集团后由工具完成的。(三)数据迁移由于原先的销售管理系统建立在Novell+FoxPro的平台上,为了把数据存储到数据仓库中,就需要进行异构数据的迁移。我们利用ODBC接口,采用了VBScript与SOL语言相结合的方法,自行开发这样的一个工具,实现了异构数据的转换,将Novell+FoxPro中的数据迁移到WINNT+SQLSERVER的环境中。第15页共78页 E海交通大学硕士学位论文基十数据仓库和数据挖掘的决策支持系统的研究灞阴————■—留决策支持系统应用图2—8销售数据仓库体系结构Figure2—8SystemArchiteetureforDataWarehouse2.6数据仓库的发展状况2.6.1数据仓库技术九十年代来的进展‘90年代以来,计算机技术,尤其是数据库技术的发展为DSS提供了技术支持:激烈的市场竞争促进了高层次决策人员对DSS的实际需求。两方面的共同作用,促成了以DW为核心、以沪LAP和DM工具为手段建设DSS的可行方案。数据库技术的发展Dw需要以下数据库技术的支持。(一)高性能数据库服务器Dw的应用不同于传统DB的OLTP应用。传统DB的应用是操作型的,而Dw的应用是分析型的,它需要高性能的DBMS核心的支持,以使较快地获得分析结果,这通常需数秒至数分钟。虽然比OLTP的响应时间长一些,但由于第16页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究分析型应用涉及的数据量大,查询要求复杂,因此,对DBMS核心的性能要求更高,同DBMS必须具有良好的查询优化机制。(二)并行数据库技术Dw中的数据量大,而且随着时间的延长,新的数据还会不断进入。Dw中的数据库通常是GB甚至TB级的,可谓是超大规模数据库(VLDB)。而并行数据库技术是存储和管理VLDB,并提供对VLDB复杂查询处理的有效技术。(三)数据库互操作技术Dw中的数据大多来自企业或行业中业已运行的OLTP数据库或外部的数据源。这些数据库常常是异构的,甚至是文件系统中的数据。Dw必须从这些异构数据源中定期抽取、转换和集成所需要的数据,并把它们存入Dw中。因此,异构数据源之间的互访和互操作技术是必需的。+2.6.2数据仓库技术目前发展所遇到的问题数据仓库的真正关键是数据的存储和管理。数据仓库的组织管理方式决定了它有别于传统数据库的特性,同时也决定了其对外部数据表现形式。要决定采用什么产品和技术来建立数据仓库核心,则需要从数据仓库的技术特点着手分析。数据仓库遇到的第一个问题是对大量数据的存储和管理。这里所涉及的数据量比传统事务处理大得多,且随时间的推移而累积。从现有技术和产品来看,只有关系数据库系统能够担当此任。关系数据库经过近30年的发展,在数据存储和管理方面已经非常成熟,非其它数据管理系统可比。目前不少关系数据库系统已支持数据分割技术,能够将一个大的数据库表分散在多个物理存储设备中,进一步增强了系统管理大数据量的扩展能力。采用关系数据库管理数百个GB甚至到TB的数据已是一件平常的事情。一些厂商还专门考虑大数据量的系统备份问题,好在数据仓库对联机备份的要求并不高。数据仓库要解决的第二个问题是并行处理。在传统联机事务处理应用中,用户访问系统的特点是短小而密集;对于一个多处理机系统来说,能够将用户的请求进行均衡分担是关键,这便是并发操作。而在数据仓库系统中,用户访问系统的特点是庞大而稀疏,每一个查询和统计都很复杂,但访问的频率并不是很高。此时系统需要有能力将所有的处理机调动起来为这一个复杂的查询请求服务,将该请求并行处理。因此,并行处理技术在数据仓库中比以往更加重要。大家可以注意到,在针对数据仓库的TPC—D基准测试中,比以往增加了一个单用户环境的测试,成为”系统功力”(QPPD)。系统的并行处理能力对QPPD的值有重要影响。目前,关系数据库系统在并行处理方面已能做到对查询语句的分解并行、基于数据分割的并行、以及支持跨平台多处理机的群集环境和MPP环境,能够支持多达上百个处理机的硬件系统并保持性能的扩展能力。数据仓库的第三个问题是针对决策支持查询的优化。这个问题主要针对关系数据库而言,因为其它数据管理环境连基本的通用查询能力都还不完善。在技术上,针对决策支持的优化涉及数据库系统的索引机制、查询优化器、连接策略、数据排序和采样等诸多部分。普通关系数据库采用B树类的索引,对于性别、年龄、地区等具有大量重复值的字段几乎没有效果。而扩充的关系数据库则引入了位图索引的机制,以二进制位表示字段的状态,将查询过程变为筛选过程,单个计算机的基本操作便可筛选多条记录。由于数据仓库中各数据表的数据量往往极不均匀,普通查询优化器所得出第17页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究得最佳查询路径可能不是最优的。因此,面向决策支持的关系数据库在查询优化器上也作了改进,同时根据索引的使用特性增加了多重索引扫描的能力。以关系数据库建立的数据仓库在应用时会遇到大量的表问连接操作,而连接操作对于关系数据库来说是一件耗时的操作。扩充的关系数据库中对连接操作可以做预先的定义,我们称之为连接索引,使得数据库在执行查询时可直接获取数据而不必实施具体的连接操作。数据仓库的查询常常只需要数据库中的部分记录,如最大的前50家客户,等等。普通关系数据库没有提供这样的查询能力,只好将整个表的记录进行排序,从而耗费了大量的时间。决策支持的关系数据库在此做了改进,提供了这一功能。此外,数据仓库的查询并不需要像事务处理系统那样精确,但在大容量数据环境中需要有足够短的系统响应时间。因此,一些数据库系统增加了采样数据的查询能力,在精确度允许的范围内,大幅度提高系统查询效率。。总之,将普通关系数据库改造成适合担当数据仓库的服务器有许多工作可以做,它已成为关系数据库技术的一个重要研究课题和发展方向。可见,对于决策支持的扩充是传统关系数据库进入数据仓库市场的重要技术措施。在数据仓库的数据存储管理领域,从当今的技术发展来看,面向决策支持扩充的并行关系数据库将是数据仓库的核心。在市场上,数据库厂商将成为数据仓库的中坚力量。2.7本章小结在本章中,介绍了数据仓库技术。不仅分析了数据仓库的理论技术基础,还结合具体的实际系统,构建了实际系统中的基于销售和顾客这两个主题的销售型数据仓库,并对数据仓库技术目前发展所遇到的问题进行了分析。第18页共78页 圭查窒塑查兰堡主兰些堡苎苎士墼塑鱼堡塑塑塑堡塑竺达蔓兰塑墨竺!!里翌第三章联机分析处理技术的研究和应用在第二章中,作者论述了数据仓库的基础理论以及三枪集团销售数据仓库的具体设计和系统整体框架结构。当然,在数据仓库之上还必须要有强有力的工具来进行分析和决策。本章将讨论与数据仓库密切相关的OLAP技术,以及在设计开发三枪集团计划决策支持系统中所实际采用的联机分析技术。第四章中将重点详细讨论数据挖掘技术。3.1OLAP中的基本概念3.1.1OLAP的定义联机分析处理不是一个新的概念,但仅是最近才将OLAP这一名称赋给这种技术的。在1993年,关系数据库之父E.F.Codd博士,在他的白皮书“ProvidingOLAPtoUserAnalysiS:AnITMandate,”中提出了这个术语。当时,todd认为联机事务处理(OLTP)已不能满足终端用户对数据库查询分析的需要,SQL对大数据库进行的简单查询也不能满足用户分析的需求。用户的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果并不能满足决策者提出的需求。因此todd提出了多维数据库和多维分析的概念,即OLAP。在这个白皮书中,他设计了12条规则,定义了OLAP应用的特征:准则1OLAP模型必须提供多维概念视图。多维概念视图人们习惯于从多维的角度来观察数据、发掘数据的本质内容。作为OLAP分析工具而言,它的多维性不仅符合人们的习惯,也是必然的。准则2透明性准则。透明性OLAP工具在分析过程中所处的位置对用户来说应当是透明的。准则3存取能力推测。可访问性如果OLAP工具无法访问数据仓库中的数的话,信息的获取也就无从谈起。准则4稳定的报表能力。一致的报表操作对用户来说,报表的操作性能不应该随着参与分析的维数的增加而有所减弱。准则5客户/IJ&.务器体系结构。客户机/服务器体系结构很明显,OLAP作为一种独立的分析工具,要想获得强大的生命力,首先应当独立于任何数据库平台之外,客户机/服务器体系结构因此成为最佳的解决方案。更进一步说,OLAP工具的服务器构件应当具有足够的智能,以便各种客户只需花费最少的劳动,使用最少的集成程序就能与之相联。准则6维的等同性准则。通用的维结构必须存在一个维的逻辑结构和逻辑操作,它适用于所有的维。第19页共19页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究准则7动态的稀疏矩阵处理准则。动态稀疏矩阵处理OLAP服务器的物理结构应当完全适用于特定的分析模型。创建和加载这种模型是为了提供优化的稀疏矩阵处理。数据的物理存取方法也应该是动态可变的,它提供不同类型的机制。准则8多用户支持能力准则。多用户支持OLAP工具应当提供并发访问(检索和修改)、完整性和安全性等多用户支持功能,以便支持多个用户在同一分析模型上的并行分析操作。也只有这样,才能将OLAP的应用向更高的层次推广,真正满足用户的需要。准则9非受限的跨维操作。非限定的交叉维操作在多维的数据分析操作中,任何一维的生成和处理操作都是平等的,OLAP分析工具应当能够各维之间的交叉分析操作,而不需要最终用户定义分析的行为。准则10直观的数据操纵。直接数据操作如果用户分析时需要重新定向分析路径,或在维之间进行细化操作,那么这些操作都应当能够在分析模型上直接完成,而不需要跨越多个用户界面进行多次操作。准则ll灵活的报表生成。弹性报表OLAP分析工具应当能够按用户需要的任何方式来显示、操作、分析、综合、查看报表数据。准则12不受限的维与聚集层次。不受限制的维和聚集级别OLAP服务器至少应当能够在一个通用的分析模型中协调15个维的操作。每一个通用的维应当允许有无限个用户定义的聚集,而且给定联合路径的概括级别数据也是无限的。为了更好地、更方便地进行分析操作,除了上述的12条规则外,我认为OLAP分析工具还至少应该具有以下两条规则:明细信息的挖掘和报表数据的本地化支持。·明细信息的挖掘明细信息的挖掘指的是从数据仓库到日常营运数据库的访问。人们在OLAP分析过程中有可能对某些分析结果感兴趣,但是形成这一结果的原始数据存在于营运数据库而不在数据仓库之中。这时就要求分析系统能够提供一个对原始营运数据的访问手段,从而实现数据仓库和营运数据库之间的互访通讯。·报表数据的本地化支持OLAP作为一种独立性较强的分析工具,它与数据仓库之间应当是松耦合关系而不是紧耦合关系。因此,作为OLAP分析结果的主要表达方式的报表,应当能够独立于数据仓库之外。也就是说,在脱离了数据仓库的环境下,OLAP分析工具应该仍能够对报表进行分析操作。报表相关数据的本地化无疑是实现这一目标的最佳解决方案。3。1.2OLAP的多维数据概念多维结构是决策支持的支柱,也是OLAP的核心。OLAP展现在用户面前的是一幅幅多维视图。(一)维假定某某是个百货零售商,有一些因素会影响他的销售业务,如商品、时间、商店或流通渠道,更具体一点,如品牌、月份、地区等。对某一给定的商品,也许他想知道该商品在哪个商店和哪段时间的销售情况。对某一商店,也许他想知道哪个商品第20页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决镱支持系统的研究在哪段时间的销售情况。在某一时间,也许他想知道哪个商店哪种产品的销售情况。因此,他需要决策支持来帮助制定销售政策。这里,商店、时间和产品都是维。各个商店的集合是一维,时间的集合是一维,商品的集合是一维。维就是相同类数据的集合,也可以理解为变量。而每个商店、每段时间、每种商品都是某一维的一个成员。每个销售事实由一个特定的商店、特定的时间和特定的商品组成。维有自己固有的属性,如层次结构(对数据进行聚合分析时要用到)、排序(定义变量时要用到)、计算逻辑(是基于矩阵的算法,可有效地指定规则)。这些属性对进行决策支持是非常有用的。(二)多维性人们很容易理解一个二维表(如通常的电子表格),对于三维立方体同样也容易理解。OLAP通常将三维立方体的数据进行切片,显示三维的某一平面。如一个立方体有时间维、商品维、收入维,其图形很容易在屏幕上显示出来并进行切片。但是要加一维(如加入商店维),则图形很难想象,也不容易在屏幕上画出来。要突破三维的障碍,就必须理解逻辑维和物理维的差异。OLAP的多维分析视图就是冲破了物理的三维概念,采用了旋转、嵌套、切片、钻取和高维可视化技术,在屏幕上展示多维视图的结构,使用户直观地理解、分析数据,进行决策支持。3.1.30L^P的多维数据结构数据在多维空间中的分布总是稀疏的、不均匀的。在事件发生的位置,数据聚合在一起,其密度很大。因此,OLAP系统的开发者要设法解决多维数据空间的数据稀疏和数据聚合问题。事实上,有许多方法可以构造多维数据。t一)超立方结构超立方结构(Hypercube)指用三维或更多的维数来描述一个对象,每个维彼此垂直。数据的测量值发生在维的交叉点上,数据空间的各个部分都有相同的维属性。这种结构可应用在多维数据库和面向关系数据库的OLAP系统中,其主要特点是简化终端用户的操作。超立方结构有一种变形,即收缩超立方结构。这种结构的数据密度更太,数据的维数更少,并可加入额外的分析维。(二)多立方结构在多立方结构(Multicube)中,将大的数据结构分成多个多维结构。这些多维结构是大数据维数的子集,面向某一特定应用对维进行分割,即将超立方结构变为子立方结构。它具有很强的灵活性,提高了数据(特别是稀疏数据)的分析效率。一般来说,多立方结构灵活性较大,但超立方结构更易于理解。终端用户更容易接近超立方结构,它可以提供高水平的报告和多维视图。但具有多维分析经验的MIS专家更喜欢多立方结构,因为它具有良好的视图翻转性和灵活性。多立方结构是存储稀疏矩阵的一个更有效方法,并能减少计算量。因此,复杂的系统及预先建立的通用应用倾向于使用多立方结构,以使数据结构能更好地得到调整,满足常用的应用需求。第21页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究许多产品结合了上述两种结构,它们的数据物理结构是多立方结构,但却利用超立方结构来进行计算,结合了超立方结构的简化性和多立方结构的旋转存储特性。3.1.4活动数据的存储,用户对某个应用所提取的数据称为活动数据,它的存储有以下三种形式:f一)关秃熬摇荦?如果数据来源于关系数据库,则活动数据被存储在关系数据库中。在大部分情况下,数据以星型结构或雪花结构进行存储。f二)多维裁据牵?在这种情况下,活动数据被存储在服务器上的多维数据库中,包括来自关系数据库和终端用户的数据。通常,数据库存储在硬盘上,但为了获得更高的性能,某些产品允许多维数据结构存储在RAM上。有些数据被提前计算,计算结果以数组形式进行存储。f三j基于客户厅穸卫鲈?在这种情况下,可以提取相对少的数据放在客户机的文件上。这些数据可预先建立,如Web文件。与服务器上的多维数据库一样,活动数据可放在磁盘或RAM上。这三种存储形式有不同的性能,其中关系数据库的处理速度大大低于其他两种。3.2OLAP应用系统的设计。在为三枪集团设计开发“计划决策支持系统”的实际过程中,我们使用了bticrosoft公司的OLAPServices技术。该技术采用了典型的三层构架,如图3—1所示,系统层次依次分别为:OLAPServer,PivotTable和Client。下面首先介绍OLAPServer端,着重介绍对数据立方体的设计,然后分析中间层PirotTable,最后介绍在前台应用程序开发过程中所涉及的~些关键技术。包括决策支持对象(DecisionSupportObject),多维查询语言(MDX)和数据立方体的操作方法。3.2.1数摄立方体的设计通过对三枪集团数据仓库和决策支持应用的分析,我们总共为三枪集团设计了三个数据立方体:销售数据,客户数据和库存数据。考虑到在其它章节中已有叙述,这里仅简单地给出销售数据立方体的结构。其它两个数据立方体的结构也基本相似。在销售数据立方体中,采用了星型模型。度量分别为:销售数量,销售单价和销售金额。(度量是一种特殊的维)其中销售数量和销售金额是输入成员,销售单价是导出成员,表示商品的平均价格,销售单价=销售金额/销售数量。立方体的维包括:销售地区,销售时间,商品型号,商品等级,销售顾客信息。3.2.2数据立方体结构的操作t一)切片在多维数据的各个维上,分别选定某个对应维成员的操作成为切片操作,即在多维数组(维1,维2⋯.维11,度量)中确定每个维的维成员,所得到的多维数组的子集(维成员l,维成员2⋯.维成员n,度量)称为是对多维数组的一个切片。当某个维取全体时,即取root时,该维所对应维成员变量称为ALL。切片操作的例子第22页共78页 圭童窒望奎兰堡主兰垡堡奎兰王垫塑垒壁塑塾塑丝塑堕堂堂型堕堑型茎!!!!墨参见图3-2。OLAPServicesSystemArchitecture(server),一—。一—1’_——⋯。————”—————~1lIH}.IcL—,,。,,,.,.—。,.,,,。。.,。—,——.o+lPJv。tT-3ble。erⅥ二e{:-....—.◆:Clien:;一:一剪一图3一IOLAPServer系统框架.Figure3——IOLAPServicesSystemArchitecture(二)坐标旋转在多维数据中,改变某个切片中的维的排列次序,称为坐标旋转。如图3—2所示。改变时间维和地区维的次序,就使该切片进行了相应的坐标旋转。(三)上寻(R011up)与一F寻(Drilldown)操作上寻和下寻操作是OLAP技术中特有的一列操作。对于一个数据切片,将某个维中的成员变量从等级结构中的低一级变为其上一级父亲节点的操作称为上寻操作,反之从父亲接点变为其下一级中所有的子节点的操作称为下寻操作。具体实例见图3—3。第23页共78页 !塑銮望奎兰堡主兰堡丝兰苎±丝塑垒塞塑堑塑丝塑堕盗茎皇苎至皇塑!!!!垄地区维时间维地区维图3—2对数据立方体的切片操作与旋转变换Figure3--2SliceandRotationOperationsOnDataCube3.2.3透视表服务(PivotTableServico)透视表服务(PivotTableService)是三层构架中的中间层,它在OLAP环境中扮演双重角色。首先,透视表服务是一个0LEDB的提供者,它支持在OLEDB2.0中的OLEDBforOLAP扩展说明。这使得客户机应用程序能够与一个OLAP服务器通信。在这种情况下,透视表服务充当了OLAP服务器的一个客户。透视表服务所扮演的第二个角色是作为一个独立的在线处理OLAP服务器。在这种角色中,透视表服务能够提供在线和本地数据分析,并能提供对OLAP数据的访问。用户可以定义并将客户机器中的本地数据立方体结构填充在一个单一的立方体结构分区中。度量时间产品类型19981999A4543B345457C56456上寻<——>下寻度量时间产品类型19981999四Tota季度lA1213104543B80908095345457C13151456456图3--3上寻和F寻操作Figure3--3RollupandDrilldownOperation对于所有的OLEDB提供者,都可以直接使用提供者给出的界面和方法来编写程序。透视表服务也不例外。但是一般情况下,通过面向模型对象的编程更为容易。面向对象的模型可以将OLEDB对象的复杂功能包装到一个更为简单的,并代表了很多应用程序所要求功能的一个模型中。鉴于ADO模型一般适合于使用表格型的数据格式,ADOMD模型也被设计成通过记录集对象CellSets来检索多维数据的风格。当然,在实际设计中可以使用两种模型中的任何一种来开发应用程序。3.2.4客户端的决策支持对象(Decl8ionSupportObject)为了在客户端对OLAP服务器进行访问和控制,我使用了决策支持对象(DecisionSupportObject)。从COM模型的角度来考虑,DecisionSupportObject模型与DAO,OLEDB,ADO或者其他任何COM编程模型没有什么不同。虽然它包含一套不同于其他第24页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决黄支持系统的研究模型的对象集和集合,但它包含的集合,对象,属性以及方法依然是在通用的COM模型框架内。DSO支持OLAP对象的持久性描述。因此,它需要为服务器,数据库,和立方体结构等各个持久性对象存储全部的属性和集合,以便在以后可以使用它们。3.2.5多维表达式多维表达式(MDX)是由OLEDB为OLAP定义的一种语言,用来对处理多维数据的访问。该语言由类似于Transact-SQL的语法和语句组成,并且特意采用了与立方体结构模型有关的多维术语。(一)标准MDX语句。针对多维数据的查询以MDX语句的形式来表达的。查询结果作为一个数据集合(DataSets)被返回。在ADOMD模型中,DataSets又被称为数据元集(CellSets)。通过MDX语句,前台应用程序可以很方便地访问OLAPServer。一个标准的MDX语句如下所示:Select[,被定义为:[NOTEMPTY][]ON为轴规范标准中的维属性语句,通过它可以访问维中的属性。的语法是:[DIMENSION]PROPERTIES[,]可以是下面属性中的任何一种(参见表3—1)表3一i属性列表Table3——IPropertyTable属性语法维ID(dimensionname>.ID维关键字.KEY维名称.NAME级ID号ID级关键字.KEY级名称.NAME成员属性可以从以下内容中任选:COLUMNSROWSPAGES|SectionsCHAPTERS|AXIS(index)以三枪集团的销售数据立方体为实例,下面给出一个MDX语句的具体例子。Select{[Measures].[StoreSales],[Measures].[SalesCount],[Measures].[SalesAverage]}oncolumns,{[Time].[1997].[Q1].[i],[Time].[1997].[Q1].[2],[Time].[1997].[Q1].[3],[Time].[1997].[QI]}onrowsFromSales该语句返回的数据元集代表1997年第一季度以及一月,二月和三月份的各自的第25页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究总销售金额,销售数量以及平均价格。查询结果如图3—7所示。当然,以上仅仅是一个最简单的MDX语句,不过它基本上已经能够反映MDX语言的特性。由于篇幅的限制,这里不再展开。(二)数据立方体操作语法下面仍然以三枪集团的销售数据立方体为实例,介绍使用MDX语句,操作数据立方体的具体方法。1、切片操作对一个维来说,如果A11级存在的话,其默认成员应该是All级的A1l成员。如果维中不存在AU级,那么维的第一级(Lever1)中的一些成员将被选做默认级别。为了产生数据切片,在更多的情况下,往往需要指定维中的特殊成员。在MDX查询语法中,可以使用WHERE语句来指定切片内容。具体的MDX语句为:.Select[,⋯]FromWhere如下所示的代码,是一个简单的切片查询语句:select{[Measures].[StoreSales],[Measures].[SalesCount],lMeasures].[SalesAveragejJOncolumnsFromSalesWhere([Customer],[ALLCustomerj,[StoreLocation].[AtlStoreLoeation],[Time].[1997].[Q1],[Types].[A11types],[Quality].[A11Ouality])以上语句的执行结果同图3—4中所得到的数值结果是相同的。不同之处仅仅在于该查询语句特别指定了切片内容。第26页共78页 兰塑窒翌茎兰堕主兰垡笙兰兰王塾塑垒壁塑堑塑丝塑竺达兰塞量墨竺!!!!堑在实际的开发过程中,对于切片操作,我使用的MicroSoft公司的OLAPActiveX控键:CubeBrowser。如图3--5所示,就是使用该控键产生数据切片的实际结果。2、上寻和下寻操作在CubeBrowser控键中,对上寻和下寻操作的实现极为简单。如图3—5所示,纵向的是时间维,横向的是度量维(这是一维切片),包括销售金额和销售数量。在图中已经可以看到属于不同粒度的统计数据。有年度统计也有季度统计。当需要进行上寻或者下寻操作时,只须点击对应的‘+’和‘一’,就可以实l见。3.3OLAP目前行业现状以及发展方向3.3.1OLAP工具简介从实现上说,目前对OLAP工具并没有统一的分类标准。大致上,我们可以把OLAP工具分成多维数据库工具(multidimensionaldatabase)和关系型OLAP工具(relationalOLAP)和桌面型OLAP工具等三大类。多维数据库工具的数据存储不采用传统关系模型所使用的记录、表等方式,而采用矩阵(可能是多维的矩阵)的方式来存储数据。因此需要建设物理存在的多维数据库,由于访问MOLAP的多维数据库时,不再是SQL语句了,因此必须有数据接口。ROLAP工具使用关系型数据库来进行多维分析,数据库中的关系表采用数据仓库思想建设。它只需要在原来的数据库中重组关系表,采用数据仓库的思想形成逻辑上的多维,查询速度提高依靠数据整理和概要表、聚合表。ROLAP既可以是与其前台有数据接口也可以直接通过SQL语句访问后台的数据仓库。与多维数据库工具相比,关系型的OLAP工具在数据库层次上有标准的关系模型,有标准的数据访问方式(SQL)及其编程接口,工具与数据库的可互联性比较好。所谓桌面型OLAP工具是指在微机环境下开发的支持简单多维分析的用户工具。这些工具没有自己的数据存储,它们把用户提交的查询翻译为对数据源的查询,然后第27页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究把从数据源得到的结果数据合成最终的结果,返回给用户。这些工具的功能和可用性都比较好,但主要问题在于所支持的应用规模有限,而且不能完全支持OLAP的所有特性。目前,市场上能够获得的数据仓库产品很多,那么各大数据库厂商是如何定位自己的产品市场呢,见表3—2。表3—2各大数据库厂商的产品市场定位Table3--2MarketingLocationofDatabaseManufacturersMOLAPROLAPNCRSYBASESASSQLSERVERORACLEINFORMIXPILOEPLATINUM3.3.2OLAP分析目前遇到的挑战数据仓库中OLAP分析遇到的问题是支持多维分析的查询模式,这也是关系数据库在数据仓库领域遇到的最严峻的挑战之一。用户在使用数据仓库时的访问方式与传统的关系数据库有很大的不同。对于数据仓库的访问往往不是简单的表和记录的查询,而是基于用户业务的分析模式,即联机分析。如图3—6所示,它的特点是将数据想象成多维的立方体,用户的查询便相当于在其中的部分维(棱)上施加条件,对立方体进行切片、分割,得到的结果则是数值的矩阵或向量,并将其制成图表或输入数理统计的算法。图3—6联机分析数据处理不意图Figure3-6SketchMapofOLAPDataProcess+关系数据库本身没有提供这种多维分析的查询功能,而且在数据仓库发展的早期,人们发现采用关系数据库去实现这种多维查询模式非常低效、查询处理的过程也难以自动化。为此,人们提出了多维数据库的概念。多维数据库是一种以多维数据存储形式来组织数据的数据管理系统,它不是关系型数据库,在使用时需要将数据从关系数据库中转载到多维数据库中方可访问。采用多维数据库实现的联机分析应用我们称之为MOLAP。多维数据库在针对小型的多维分析应用有较好的效果,但它缺少关系数据库所拥有的并行处理及大规模数据管理扩展性,因此难以承担大型数据仓库应用。这样的状态直到星型模式”在关系数据库设计中得到广泛的应用才彻底改变。几年前,数据仓库专家们发现,关系数据库若采用”星型模式”来组织数据就能很好地解决多维分析的问题。”星型模式”只不过是数据库设计中数据表之间的一种关联形式,它的巧妙之处在于能够找到一个固定的算法,将用户的多维查询请求转换成针对该数据模式的标准SQL语句,而且该语句是最优化的。”星型模式”的应用为关系数据库在第28页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究数据仓库领域打开绿灯。采用关系数据库实现的联机分析应用称为ROLAP。目前,大多数厂商提供的数据仓库解决方案都采用ROLAP。3.3.3OLAP发展方向OLAP(联机分析处理)与DM(数据挖掘)都是数据库(数据仓库)的分析工具,在实际应用中各有侧重。OLAM一一onlineAnalyticalMining是二者相结合的产物,又称为OLAPMining,目前是学术界研究的一大热点。这将在下章中结合数据挖掘进一步描述。3。4本章小结在本章中,介绍了联机分析处理(OLAP)技术。不仅分析了它的理论基础,同时也结合具体实例,给出了在实际应用中开发OLAP的技术方法,为用户提供了灵活的查询处理机制,实现了联机分析处理的多种功能,包括下寻、切片、旋转等,可以让用户从不同角度(客户、地区、销售组织、物料类别、订货原因)、不同层次来察看销售状况的统计数据。.第29页共78页 圭塑銮望查堂堕主堂竺笙苎兰±塾堡垒壁塑垫堡丝塑塑堕篁兰翌墨望!!!!堕第四章数据挖掘技术的研究和应用随着数据库技术的迅速发展以及数据库管理系统的广泛应用,人们积累的数据越来越多。激增的数据背后隐藏着许多重要的信息,人们希望能够对其进行更高层次的分析,以便更好地利用这些数据。1989年8月在美国底特律召开的第11届国际人工智能联合会议的专题讨论会上首次出现KDD这个术语。数据挖掘使数据库技术进入了一个更高级的阶段,它不仅能对过去的数据进行查询和遍历,并且能够找出过去数据之间的潜在联系,从而促进信息的传递。4.1数据挖掘技术中的基本概念研究数据挖掘的历史,可以发现数据挖掘的快速增长是和商业数据库的空前速度增长分不开的,并且九十年代较为成熟的数据仓库正同样广泛地应用于各种商业领域。从商业数据到商业信息的进化过程中,每一步前进都是建立在上一步的基础上的。4.1.1数据挖掘的定义数据挖掘是数据仓库系统中最重要的部分。数据挖掘,就是从大型数据库的数据中提取人们感兴趣的知识。这些知识是隐含的,事先未知的有用信息,提取的知识可表示为概念(Concepts),规律(Regulations),模式(Patterns)等形式。事实上,更广泛一点说,数据挖掘就是在一些事实或观察数据的集合中寻找模式的决策支持过程。目前比较公认的定义是Fayyad等给出的:KDD是从数据集中识别出有效的、新颖的、潜在有用的以及最终可理解模式的高级处理过程。从数据挖掘的定义可以看出。作为一个学术领域,数据挖掘和数据库知识发现KDD(KnowledgeDiscoveryinDatabase)具有很大的重合度,大部分学者认为数据挖掘和知识发现是等价的概念。在人工智能(AI)领域习惯称KDD,而在数据库领域习惯称数据挖掘。4.1.2数据挖掘技术的分类·数据挖掘的核心模块技术历经了数十年的发展,其中包括数理统计、人工智能、机器学习。数据挖掘利用的技术越多,得出的结果精确性就越高。原因很简单,对于某一种技术不适用的问题,其它方法即可能奏效,这主要取决于问题的类型以及数据的类型和规模。数据挖掘方法有多种,其中比较典型的有关联分析、序列模式分析、分类分析、聚类分析等。(一)关联分析关联分析,即利用关联规则进行数据挖掘。在数据挖掘研究领域,对于关联分析的研究开展得比较深入,人们提出了多种关联规则的挖掘算法,如APRIORI、STEM、第30页共78页 !塑奎塑查堂堡主兰生堡兰苎±垫塑垒壁塑垫堡丝塑堕盗箜茎堑墨竺堕!!翌AIS、DHP等算法。关联分析的目的是挖掘隐藏在数据间的相互关系,它能发现数据库中形如”90%的顾客在一次购买活动中购买商品A的同时购买商品B”之类的知识。(二)序确模式分析序列模式分析和关联分析相似,其目的也是为了挖掘数据之间的联系,但序列模式分析的侧重点在于分析数据间的前后序列关系。它能发现数据库中形如”在某一段时间内,顾客购买商品A,接着购买商品B,而后购买商品C,即序列A—B—C出现的频度较高”之类的知识,序列模式分析描述的问题是:在给定交易序列数据库中,每个序列是按照交易时间排列的一组交易集,挖掘序列函数作用在这个交易序列数据库上,返回该数据库中出现的高频序列。在进行序列模式分析时,同样也需要由用户输入最小置信度c和最小支持度S。t三)分类分析设有一个数据库和一组具有不同特征的类别(标记),该数据库中的每一个记录都赋予一个类别的标记,这样的数据库称为示例数据库或训练集。分类分析就是通过分析示例数据库中的数据,为每个类别做出准确的描述或建立分析模型或挖掘出分类规则,然后用这个分类规则对其它数据库中的记录进行分类。举一个简单的例子,信用卡公司的数据库中保存着各持卡人的记录,公司根据信誉程度,已将持卡人记录分成三类:良好、一般、较差,并且类别标记已赋给了各个记录。分类分析就是分析该数据库的记录数据,对每个信誉等级做出准确描述或挖掘分类规则,如”信誉良好的客户是指那些年收入在5万元以上,年龄在40~50岁之间的人士”,然后根据分类规则对其它相同属性的数据库记录进行分类。目前已有多种分类分析模型得到应用,其中几种典型模型是线性回归模型、决策树模型、基本规则模型和神经网络模型。(四)聚类分析与分类分析不同,聚类分析输入的是一组未分类记录,并且这些记录应分成几类事先也不知道。聚类分析就是通过分析数据库中的记录数据,根据一定的分类规则,合理地划分记录集合,确定每个记录所在类别。它所采用的分类规则是由聚类分析工具决定的。聚类分析的方法很多,其中包括系统聚类法、分解法、加入法、动态聚类法、模糊聚类法、运筹方法等。采用不同的聚类方法,对于相同的记录集合可能有不同的划分结果。聚类分析和分类分析是一个互逆的过程。例如在最初的分析中,分析人员根据以往的经验将要分析的数据进行标定,划分类别,然后用分类分析方法分析该数据集合,挖掘出每个类别的分类规则;接着用这些分类规则重新对这个集合(抛弃原来的划分结果)进行划分,以获得更好的分类结果。这样分析人员可以循环使用这两种分析方法直至得到满意的结果。4.1.3数据挖掘的基本过程.数据挖掘过程一般由三个主要阶段组成:数据准备,挖掘操作,结果表达和解释。规则的挖掘可以描述为这三个阶段的反复过程:■数据准备这个阶段又可进一步分成3个步骤:数据集成,数据选择,数据预处理。数据集成将多文件和多数据库运行环境中的数据进行合并处理,解决语义模糊性,处理数据中的遗漏和清洗脏数据等。数据选择的目的是辨别出需要分析的数据集合,缩小处理范围,提高数据挖掘的质量。预处理是为了克服目前数据挖掘工具的局第3I页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的卅f究限性。■数据挖掘这个阶段进行实际的挖掘操作,包括的要点有:1、要先决定如何产生假设;2、选择合适的工具;3、挖掘规则的操作;4、证实挖掘的规则。一结果表述和解释根据最终用户的决策目的对提取的信息进行分析,把最有价值的信息区分出来,并且通过决策支持工具提交给决策者。因此,这一步骤的任务不仅是把结果表达出来(例如采用信息可视化的方法),还要对信息进行过滤处理。如果不能令决策者满意,需要重复以上数据挖掘的过程。4.2关联规则关联规则是发现交易数据库中不同商品(项)之间的联系,这些规则找出顾客购买行为模式,如购买了某一商品对购买其他商品的影响。发现这样的规则可以应用于商品货架设计、货存安排以及根据购买模式对用户进行分类。4.2。1关联规则的基本撅念关联规则是表示数据库中一组对象之间某种关联关系的规则,例如:“同时发生’或者“从一个对象可以推出另一个对象”。关联规则采掘的一般对象是数据库。这种数据库的一个主要应用是零售业,特别是超级市场的销售管理,以及其他不同行业的销售业务部门。关联规则就是辨别这些交易项目(Item,指交易中的内容,如面包,牛奶等都是项目)之间是否存在某种关联关系。例如,关联规则可以表示为:“购买了项目A和B的顾客中有95%的人又买了C和D”。这种关联规则提供的信息可以用作商品销售目录设计,商场布置,生产安排以及针对性的市场营销等等。具体的问题描述是这样的:设I={i。,i。,i。,⋯⋯,i.)是111个不同项目的集合。D是针对I的交易的集合。在每一笔交易中均包含若干项目i。,i,,⋯⋯,i。∈I。关联规则一般表示形式为x=>Y,其中x,Y∈I,并且xnY=中,x称为规则的前提,Y是结果。一般情况下,把一些项目的的集合称作项目组合(Itemset)。Itemset有一个统计的量度称为“支持度”(Support)。它是这样定义的:对于x∈I,如果交易集合D中包含x的交易个数为s,则Support(X)=s。同时对于一个规则进行衡量的标准称为“置信度”(Confidence),定义为:Confidence(X=>Y)=Support(XUY)/Support(X)。在关联规则的分析中,就是要找出这样一些规则,它们的Support和Confidence分别大于指定的最小Support和最小Confidence限度。因而,该问题可以分解成如下两个子问题:l、产生所有Support大于指定的最小Support值的Itemset,这些Itemset称为频繁属性序列集(1argeitemset),而其他的称为非频繁属性序列集(smallitemset)。2、对于每个频繁属性序列集(1argeitemset)L和任何S∈L,如果第32页共78贞 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究Support(L)/Support(L—S)>=minimumConfidence,那么规则L-S=>S就是有效规则。例如,设数据库中有4次交易为TI={A,B,C},T:={A,B,D},T产{A,D,EJ,T;2{A,B,D},设最小的Support为0.5,最小的Confidence为0.8,那么频繁属性序列集为{A},【B},{D},(A,B),(A,D},{A,B,D),而有效的规贝q为B=>A}口D=>A。这就是目前数据库领域内广泛研究的关联规则的挖掘问题。实践证明,关联规则为决策提供了强有力的支持。著名的“尿布与啤酒”的相关性就是最好的佐证。当超级连锁店的老板通过数据挖掘发现,在下班后前来购买婴儿尿布的顾客多为男性,他们往往也同时购买啤酒。于是精明的老板重新布置了货架,把啤酒类商品布置在婴儿尿布货架附近,并在二者之间放上土豆片之类的佐酒小食品,同时还将男性生活日用品放在附近。经过这样的调整,这几种商品的销量几乎马上成倍增长。这一生动的实例说明关联规则的挖掘在销售决策方面具有重要作用。.4.2.2关联规则的种类我们将关联规则按不同的情况进行分类:1.基于规黜中处理的变量的类镪.关联规鼬百j以分为布尔型和数值垫,布尔型关联规则处理的值都是离散的、种类化的,它显示了这些变量之间的关系:而数值型关联规则可以和多维关联或多层关联规则结合起来,对数值型字段进行处理,将其进行动态的分割,或者直接对原始的数据进行处理,当然数值型关联规则中也可以包含种类变量。例如:性别=“女”=>职业=“秘书”,是布尔型关联规则;性别=“女”=>avg(收入)=2300,涉及的收入是数值类型,所以是一个数值型关联规则。2、基于规翻中数据的抽象层次.可以分为单层关联规鼬和多层关联规蚋,在单层的关联规则中,所有的变量都没有考虑到现实的数据是具有多个不同的层次的;而在多层的关联规则中,对数据的多层性已经进行了充分的考虑。例如:IBM台式机=>Sony打印机,是一个细节数据上的单层关联规则;台式机=>Sony打印机,是一个较高层次和细节层次之间的多层关联规则。3、基于规氐中涉及翻的数据的维数.关联规鼬司以分为单维的和多维的,在单维的关联规则中,我们只涉及到数据的一个维,如用户购买的物品;而在多维的关联规则中,要处理的数据将会涉及多个维。换成另一句话,单维关联规则是处理单个属性中的一些关系:多维关联规则是处理各个属性之间的某些关系。例如:啤酒=>尿布,这条规则只涉及到用户的购买的物品;性别=“女”=>职业:“秘书”,这条规则就涉及到两个字段的信息,是两个维上的一条关联规则。给出了关联规则的分类之后,我们就可以考虑某个具体的方法适用于哪一类规则的挖掘,某类规则又可以用哪些不同的方法进行处理。4.3经典的关联规则挖掘算法一--^priori算法及其改进Apriori算法是R.Agrawal等人在1994年提出的。它是最早进行有关关联规则挖掘的算法,用来寻找频繁属性序列集。在数据库领域,该算法是其他关联规则挖掘的基础。第33页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究4.3.1^priori算法的描述令k一属性序列为具有k个属性的集合,Fre[k]为频繁k一属性序列的集合。而C[k]为候选k一属性序列(即可能的频繁属性序列)的集合。该算法需对数据库作多次遍历,每次遍历均由两个阶段构成。第一阶段:利用上次(第k—i次)遍历所得到的频繁(k—1)一属性序列集Fre[K—1]生成候选k一属性序列集C[kJ。候选生成算法Apriori—gen保证C[K]是所有频繁k一属性序列集的超集。第二阶段:对数据库作一次遍历,对其中的每个元组确定它支持C[k]中的哪些候选,并在相应候选的count域中累计支持数。遍历结束后,检查候选集C[k],确定哪些候选是频繁的,从而构成频繁k一属性序列集Fre[k]。该算法反复进行,直到Fre[K]为空时为止。为空表示此时不能产生属性量增加(如:K+1)的频繁序列集。己知频繁(k-i)一属性序列集Fre[k-1],候选生成算法Apriori—gen返回所有频繁k一属性序列集的超集。该候选生成算法的思想是基于这样一个观察:频繁属性序列集的任何一个子集均是频繁的。该候选生成算法也分为如下两步:1、链接:即Fre[L,K-1]与自己链接生成c[L,K].InsertintoC[L,K]SelectP.iteml,P.item2,⋯⋯,P.itemk一1,q.itemk一1FromP∈Fre[L,K—1],q∈FrelL,K一1]WhereP.iteml=q.iteml,P.item2=q.item2,⋯⋯P.itemk一2=q.itemk一2.P.itemk一1CD是否成立,是通过计算可信度Conf=Supp(ABCD)/Supp(AB)是否超过最小可信度来决定。如果超过,则规则成立,其中Supp(x)表示X的支持度。第六步:确定有价值(Interest)的关联规则作为输出。在上面的算法中,第二步和第五步都比较直观简单,第三步采用了基本的Apriori算法,而在第六步就采用了Interest度量方法,可测量所推算的规则的准确度。在以上的算法中,第一步和第四步需要进行详细的解释说明。4.4.2多值属性划分的聚类算法cP如果一个数量属性的取值数目过多,则将这个属性划分为若干个区段。如果一个类别属性的取值过多,则将其属性值进行归纳,将所有这些能划分到一起的属性归到一个区段中。对于一个属性的每一个取值,计算D中含有该属性值的交易数,结果构成集合Ic。Ic={(r,v,n)fx∈I,v是属性x的一个取值,n∈P是D中交易的个数)。对于任何属性x,将其对应的集合I,映射为二维图。X轴表示属性的取值,Y轴表示D中所对应的交易数。将图中的点用曲线连接起来,则得到波动的曲线图。对应于每个局部最大点Maxi,存在两个局部最小点MinL.和MinR.。将MinL。和MinR.之间的交易数相加得到Sum.,再将所有的K个Sum.相加得到s。将MinSupp设为C·Save,这里Save=S/K,C>0是与问题有关的常数。当Sumi大于C·Save第38页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究时,则认为MinL.和MinR.之间的区段是有价值的。这里要注意几个问题。Save的取值要有代表性。在计算局部最大之前,要从s减去max{Sum.}和min{Sum。}两个值,并从K中减去2,这样使得平均值更有意义。而且当一个区段的宽度很窄,与相邻区段很近,且它们之间的最低点与较低的局部最大点的差值很小,就可以将这两个区段合并,以减少信息的丢失。在合并相邻区段的同时还要考虑宽度。宽度是通过计算交易数和属性值的比率体现出来。如Sum./(MirlR。一MinL。)>S/(MinR。一MinL。),则认为Sum.所对应的区段是有价值的。具体的聚类算法可简述如下:for每个取值数>N的属性do●计算每个属性值所对应的交易数C。;‘●寻找所有的局部最大点Maxi和最小点MinL.和MinR.来确定区;●计算每个MinL。和MinR,之间的交易数Sum。;●如果满足合并条件则合并两个相邻区段,得到K个区段S=∑Sum.-maxfSum。卜min{sum。);Save=S/(k一2):●寻找所有大于c·Save的Sum。,并将结果存于Stmp;●ForStmp中每个区段jdoIfSum./(MinR.一MinLI)>S/(MinR。一MinL.)Then保存区段j于Sres结果为有价值的区段,保存在Sres中。以上处理是为了达到一定的支持度而进行的同一属性的合并。还要对一些达到了最小支持度MinSupp的区段进行合并,即合并频繁集中在同一属性的相邻区段。这样规则就更有概括性。虽然在这个转换过程中会丢失一些信息,但可以减少规则数,简化规则集。而且对信息损失的影响也不大。同时在合并了原有的规则后,考虑到规则的可信度时,也不能删除原有的规则。例如:Supp=5%,Supp=2%,Supp=3%,Supp=5%,Coff=70%)Coff=40%)Coff=50%)Coff=60%)(5)=>(Supp=8%,Coff=60%)(6)(Age=30⋯49>=>(Supp=7%,Coff=50%)若MinSupp=3%,MinCoff=70%,则在不删除频繁集中的原有项时,可得到规则(1),而删除后则得不到上面的任何一条规则。因而在通常的处理中,保留原有元素。同时在下~步的迭代过程中,仍然将未合并前的项作为Apriori算法前一次遍历的结果及成员之一。在其基础上创建长度加l的项目集合。以上就是MAQh的基本算法。在Apriori算法基础上,采用对类别属性进行概括,对数量属性进行聚类的办法将多值属性划分区段。然后转化为布尔型属性,再利用挖掘布尔型关联规则的方法挖掘多值关联规则。该算法能较好地解决多值属性值的区段划分问题。第39页共78页>>>>242410u1口ulI=I|=nerd}lhC<<<<>>>>I|=I|=>>>>934●O34=|I=egg:AA勾<<<<0日;^¨】D幻∞D后00并厶口 L海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究4.5实际系统中销售型数据仓库的关联规则数据挖掘算法(SMAR)前文仔细地探讨了关联规则的两种挖掘算法。它们是目前在具体应用实施的数据挖掘方面的有效方法。Apriori算法是整个关联规则挖掘算法的基础,它的核心思想是通过对数据仓库中的数据进行重复性遍历,产生长度不断增长的备选项集合。这种处理方法能保证不遗漏任何一项集合,做到充分完备。但很明显,它的不足之处在于耗时巨大。当数据量达到千亿计的时候,挖掘的响应时间就很值得考虑了。MAQA算法是对Apriori算法深层次的改进。它着重于对多值属性进行了分区域的聚类分析研究。将多值属性问题转化为布尔型属性问题,从而简化实现的步骤,更合理地分配数据区段。但这种算法也存在一定的局限性。当区域的划分时,它是作出交易分布的曲线图,找出其相邻的极值点,再进行相应的聚类合并过程。但当数据量很大时,这种复杂的分段排列过程就使得计算量很大。在特定的情况下,常常不需要如此复杂的计算处理。同时要看到这两种算法都是基于事务型数据库的,其数据结构中有明显的transaction标志。那么对于非transaction型的数据库进行挖掘分析,就要根据具体情况作适当的变动处理。借鉴了以上两种算法,针对实际系统中销售型数据仓库我提出了新的数据挖掘算法MAQA。该数据仓库的主题是销售与顾客。因而最关心的就是商品的销售情况,特别是产品在销售时的一些内在关系。所以关联规则的挖掘在这种情况下就显得非常重要。客户所要了解的仅仅是销售的状态。因而可以直接细化到具体的物料,而不必考虑其上层的物料分类,工厂,公司组织等。同时为了更集中的反映事实表中的销售情况,对销售组织维、产品维的划分都暂不列入挖掘范围中。整个分析过程集中于物料层次,涉及物料、用户维表和销售事实表。这里将用户维表列入是考虑到用户对于料销售情况的影响。很可能同一个客户对某两种商品存在长期的正相关需求,则此时仅考虑这两种物料的相关性的话,挖掘出的规则的价值就必然要打折扣了。因而在本数据仓库关联规则的挖掘中,要根据所有物料销售的历史数据进行具体全面的分析,查找出物料之间销售的关联程度。在销售状况的分析中,最主要的衡量指标还是销售数量和销售价值量。销售数量的增长可以很直观地看出该物料是否适销对路。销售量增长的幅度大小是多种物料之间存在某种相关性的一个重要标志。而销售价值量指标同样重要,它的变化与销售数量的变化并不是一定存在正比关系。在正常单价不变的情况下,销售的价值量是随着销售数量的变化而变化的。而有时候,由于降价销售的原因,产品的销售数量会大量增长,而此时销售的价值量或许仍会增长,但其增长的幅度就远远小于销售量的变化了。在数据挖掘过程中,这一点也是要被考虑在内的。这种降价导致增长的商品与正常情况下销售量增长的商品就不存在必然的内在联系。同时,假设在该数据仓库的内部结构中,并不存在transaction这样的数据项,事实表中存储的记录是以销售合同的ID号为主键进行唯一标识的,而且对于物料销售情况的处理多是单张合同单件物料。在这种特殊的情况下,原有的数据挖掘算法就不太适应该数据仓库具体环境的需求。因而针对该数据仓库的具体情况,结合Apriori算法,我设计了一种新的数据挖掘算法一sMAR(StatisticalMiningAssociationRule)。第40页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究4.5.1SMAR的基本算法挖掘算法SMAR的核心思想是利用统计的方法来比较不同物料在不同时段之间的销售数量和销售价值之间的增长率,从而确定物料之间的相关性。具体的算法为:第一步:用户确定挖掘规则中所要求的时间段的划分,最小差异值MinDifference和最小置信度Min—Coffidence,这是进行后面比较计算的具体参量。第二步:对统计中会涉及的数据项进行预处理,将所需的表格进行连接,选取有用的字段存放在挖掘过程的中间表格中。第三步:遍历整个数据库,按事先指定的时间段的长度,对不同客户物料的销售情况进行时间维上的分段和统计,并将统计结果存储起来。第四步:根据各种物料统计结果,分别对每一种物料进行前后时间段上销售值增加和减少情况的计算,这是在后面进行不同物料之间对比计算的主要依据。具体的计算公式为:∑销售量(本时间段)一£销售量(前时间段).某种物料的销售量增长率=某种物料的销售值的增长率=∑销售量(前时间段)∑销售值(本时间段)一£销售值(前时间段)E销售值(前时I司段)虽然计算公式不是很复杂,但由于数据量的巨大,计算的结果记录集也是巨大的。因而要将它们固定存储在数据库的一个表中,减少多次挖掘的重复处理时间。第五步:在统计好不同物料经过不同时间区间的增长幅度以后,对所有的物料进行两两比较,其衡量的标准是由用户先行指定的最小差异值和最小可信度。具体的方法是将两两物料按不同的时间区段存储的值一一比较,得出它们在该区段中的差异值。将这个差异值与最小差异值比较。若该时段的局部差异值小于最小差异值,则认为这两种物料在这个时间区间内是符合要求的,用内部的一个标志变量flag加以记录。待全部时段的差异值都比较完成之后,考察该标志变量flag和全部的时间区段个数N的关系。具体的判断标准如下:当flag/N=Min_Coffidence时,x,Y有关联规则存在第六步:经过对上表中数据的比较分析,可以得到一系列这样的相关性物料组。可以根据Apriori算法,进一步将两两相关的物料集合扩展为三元或多元相关物料组集合。当然在大多数情况下,出现最多的还是二元的相关物料组集合。第七步:经过以上这些步骤后,数据仓库中的关联规则就找出来了,可以用图形或文字的形式显示给用户。这就是在该数据仓库中采用的数据挖掘的基本算法SMAR。它与其他算法相比较而言,能较好的针对本数据仓库的研究环境,并且算法简便有效,实现了用户所需的销售方面物料的关联规则挖掘。第41页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究4.5.2SMAR算法的实现过程在本研究课题的数据挖掘的研究中,我遵循了上述的数据挖掘方法。在第一阶段的数据准备过程中,我仔细分析了用户在数据挖掘方面的需求以及可能涉及的数据项,在此基础上进行了初步的数据过滤和筛选工作,为将在算法的后期处理中涉及的数据项建立了一个新的表格Compare(见表4—1)。_Material表4—1Compare—Material的具体结构Table4-1StructureofCompare—MaterailFieldNameTypeLengthKeyMateriaiNameChar20√CustOmerNameChar20√OrderDateChar8QuantitYNam10NetValueNum10经过这样的处理,进行挖掘用的数据项都集中在一张表格中,这样就不必在实施查询时再去做类似的连接处理。毫无疑问,这样的预处理工作大大节省了系统开销。还值得一提的是时间的处理方法。整个挖掘的处理是根据不同的时间单位:·年,季度,月,进行了相应的转换。在原来的事实表或订货日期表格中,时间的处理是采用了SQLServer的六位日期作为数据类型的。而进行数据挖掘时,由于是在统计的基础上进行,所以完全没有必要采用精确到“日”的数据类型,一般只需要精确到“月”就可以了。因此在从销售表中提取数据时,就事先在时间维上进行了相应的统计工作,按特定的时间段分客户和物料进行了初步统计。可以说,在这张表中,已经是经过轻度聚合的数据项。至于到底是按“月”,还是按“年”或“季度”进行统计,可以由用户进行选择。在系统内部有三张表格,大致的结构和上图相同,但时间的统计量在不同的表格中是不同的。在日期项处分别设为:“年”,“季度”,“月”。这样的处理方式灵活性较强,易于下一步处理的方便。在完成了数据挖掘的准备工作以后,下一步是对CompareMaterial表中的数据项进行前后时间段上的对比。按算法中列出的计算公式进行同一客户同种物料在不同时段上统计结果的比较处理。例如:客户名为WangBin客户在1998年3月购买A物料100件,价值200元;在1998年4月购买A物料150件,价值为280元,则对于客户WangBin购买物料A的数量增长率为:(130一i00)/100=30%。其价值的增长率为:’(280—200)1200=40%。对于计算得到的这个结果,我又另外定义了一张表格来存储这些增长率ComparePercent。(见表4—2)。表4—2Compare—Percent的具体结构Table4—2StructureofCompare—PercentFieldNameTypeLengthKeyMaterialNameChar20√CustomerNameChar20√PeriodChar15Quantity_pencentNum10NetValuePercentNtuai0第42页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究根据上图中各个字段的定义,在上例中要增加的一项记录为:IAIWangBinJ199803一199804f0.3l0.4I这里要提到的是对“0”的处理。因为在实际的销售处理过程中,很可能某一位客户在某一个月中采购了某种物料,然后停止购买该物料达几个月之久以后,又开始逐月采购该种物料。这种情况表明采购的数量或价值量是非连续的,应该是离散值。这样的数值项导致的结果是在进行上述的物料增长率的计算时,会遇到除数为0的情况。我考虑到计算增长率的作用是为了在以后的几个步骤中比较不同物料之间增长率的差值,看是否是小于用户事先设定的最小差异值。因此这种除数为O的情况肯定是排除在比较的范围之外的。所以,我在该条记录的数量增长率和价值增长率两项处设定了一个的宏参量,用一个近似于无限大的数表示,这样在后面的比较操作中就可以进行统一的处理,而不用担心会出现什么误操作了。上面的例子是以“月”为单位进行增长率的计算。同上理,亦可以以“年”或“季度”为单位进行增长率的统计计算。在计算出不同的物料在不同时间段上的销售数量和销售价值的增长率并更新了Compare—Percent表的记录后,就要进行不同物料的增长率之间的两两比较。该部分的算法流程表示在图4—3中。通过这样的两重循环,对每一对差异值是否满足规定,符合条件的记录所占的总比例是否符合要求,都进行了检查,这样就找出了满足用户事先指定条件的相关物料组。由这些物料组构成的规则就是我们要得到的关联规则。在本课题的实际销售环境中,由于是制造型企业,它的产品订单多为单项采购。因而大部分物料的相关性是以二元物料的形式表示的。当然在一般的销售环境中,应该也存在三元,甚至是多元的关联规则。对于这种情况,在进行了上述处理,得到了二元频繁属性序列集的基础上,再迸行Apriori算法计算。经过多次迭代以后,就可以得出三元到多元物料间的关联规则。Apriori算法在前面已经进行了详细的论述,这里就不再累述了。在利用Apriori算法时,不用查找整个数据仓库的数据,只要对新构建的表格Associated—Rule中的纪录项进行遍历就可以了。经过挖掘以后得到的规则要被保存到这样一张表格Associate—Rule中(见表4—3)。这张表中的记录即为各个物料组的关联规则,它是整个统计运算的最终结果。表4—3Associated—Rule的具体结构Table4—3:StructureofAssoeiated-RuleFieldNameTypeLengthKeyMaterialNameChar40CustomerNameChar20√.销售数量增长率差值(Quantity—Difference)Char13销售价值量增长率差值(NetValue_Difference)Char13ConfidenceChar10下一阶段就是结果的表达和解释。这一部分的作用是将内部统计计算后得到的关联规则的结果显示给用户,并进行简要的解释说明,让用户明白所显示数据的内在含义。数据挖掘的最终目的也就是为用户提供决策信息,帮助商层决策者作出合理的战略性决定。这要在充分理解和运用挖掘规则的基础上进行。由此可见,挖掘结果的显示和解释就非常重要了,从某种程度上说,它决定了挖掘规则被有效利用的程度。第43页共78页 兰堡茎翌盔兰堡主兰垒丝奎兰王堑堡垒重塑塑塑堡塑塑盗篁茎量墨竺塑堕墅图4—3SMAR算法流程图Figure4-3FlowChartofSMAR第44页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究在具体的实现中,我是利用了最后的一张表AssociatedRule,以此为图形显示的数据来源。将不同时间段上两种物料数量增长率的差异和价值增长率的差异分别用不同颜色的折线显示在二维折线图中,其横坐标即为相关的物料组,整个增长率的变化是按时间顺序排列的。可能出现的情况有:1、物料组之间的差值变小,表明它们之间的关联变得紧密。可能表现为其中某种物料的高速增长率减缓,而别的物料的增长速度基本保持不变:或者是销售量都在下降的物料中,其中某种物料的下降速度减缓。2、物料组之间的差值变大,表明它们之间的联系在下降。可能表现为其中某种物料以正相关系数增长,而另一种物料的销售量下降,呈现反方向的下降趋势;也有可能是销售量都在增长的物料中,其中某种物料以较大的比例增长,而另外一种物料只以较小的比例增长。3、某种物料与另一种物料的差值处于负值区内,表明第二种物料比第一种物料的同增长或减少的变化大。4、某种物料与另一种物料的差值处于正值区内,表明第二种物料比第一种物料的同增长或减少的变化小。以上是对折线的变化趋势的具体分析。无论其差值是在正值区,还是在负值区,它们之间的差值都是在用户可接受的范围内。同时所有这些物料的增长率,无论是销售数量的增长率。还是销售价值的增长率都是在用户事先设定的最小差值的范围之内。所以上面所讲的关联关系的大或小都是相对而言的。举一次挖掘的例子,用户设定的最小允许差异值为:0.05,即5%;最小可信度为:0.8,即80%。经过SMAR算法统计得到的关联规则是:物料005与物料008存在内在相关性。在此例中,由于数据量不多,挖掘的时间是从1998年3月到1998年7月,设定的时间区段为“月”。从挖掘的结果可以得出结论:从3月到7月间两种物料销售利润的增长率的差值基本上保持不变;同时它们之间的销售量的增长率也显示了几乎同样的变化。在4月N5月间这两种物料销售量增长率的差值处于负值区,这说明物料008的增长或减少的比值略大于物料005相应的变化。而在其后几个月的差值则表示两种物料的变化幅度变得几乎相等了。在销售价值方面,这两种物料的变化也趋于一致,只是在五月到六月间两者的销售值增长率略有不同。分析这种变化出现的原因,可能是由于物料008在五月略微涨价而销售数量的增减并未受到影响:也可能是由于物料005在这一阶段略微降价。统观这组数据之间的变化趋势,可以看到这两种物料的关系是正相连关系非常紧密的互利品。其中一种物品的增加会很明显地增进另一种产品的增加。且两者之间的变化差异小于1%。在销售关系中的有很多可能因素组合,构成了销售值的各种变化,要根据具体情况加以分析,来判断它们之间联系的紧密程度和相互关系。经过以上的一系列处理,一次完整步骤的数据挖掘工作就完成了,可以得到用户所要发现的数据间内在规则。但要注意的是数据仓库的信息是在实时变动的。要不断地加入新的值。当然这一部分数据也是从操作型数据库中经过滤以后转换入数据仓库的。这表明数据挖掘的数据源在不停地更新,则数据挖掘过程中创建的各个表也需要进行不断地更新。但并不是说每时每刻都必须将数据仓库中新加的数据都采集到挖掘型数据表中,而是在必要的时候,由用户驱动或是系统内部驱动完成一次更新操作。这是由于仓库中的数据量是巨大的,这种更新操作必然会占用大量的时间,在更新期第45页其78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究间,用户就不能做任何挖掘操作了。同时从实际应用的角度来说,也没有必要经常性地更新数据,因为时间段的最小统计值为“月”,则每天的变化对整个挖掘的结果没有直接影响,所以只要每月至少更新一次即可。这样做也可以在减少系统耗费的同时,保证数据挖掘所产生的关联规则的实时性和价值。这就是在实际系统中销售型具体运用的数据挖掘算法SMAR。通过这些步骤,用户就可以挖掘出自己所需要的信息,了解在销售过程中那些物料是存在内部相关性的,以便作出生产,采购方面的计划和正确的决策。4.6基于语义层次的关联规则的挖掘算法数据仓库通过一个恰当的数据模式保持了数据结构的复杂性,该数据模式能代表多维数据的结构上或语义上的明式或暗示的语义层次。特别是在两个属性之间的暗示语义层次,如一个城市是一个地区的一部分就是一种归纳/详述的暗示关系。目前,抽取关联规则的数据挖掘工具很少是挖掘这些层次结构的,因为这些工具通常只考虑对数据单层的解释,即使考虑了一些暗示层次的挖掘,也仅扩展了传统的挖掘算法。4.6.1多层和多维关联规则对于很多的应用来说,由于数据分布的分散性,所以很难在数据最细节的层次上发现一些强关联规则。当我们引入概念层次后,就可以在较高的层次上进行挖掘。虽然较高层次上得出的规则可能是更普通的信息,但是对于一个用户来说是普通的信息,对于另一个用户却未必如此。所以数据挖掘应该提供这样~种在多个层次上进行挖掘的功能。根据规则中涉及到的层次,多层关联规则可以分为同层关联规则和层间关联规则。多层关联规则的挖掘基本上可以沿用“支持度一可信度”的框架。不过,在支持度设置的问题上有一些要考虑的东西。以上我们研究的基本上都是同一个字段的值之间的关系,比如用户购买的物品。用多维数据库的语言就是单维或者叫维内的关联规则,这些规则一般都是在交易数据库中挖掘的。但是对于多维数据库而言,还有一类多维的关联规则。例如:年龄(x,“20⋯30”)n职业(X’“学生”)一>购买(X,“笔记本电脑”)在这里我们就涉及到三个维上的数据:年龄、职业、购买。根据是否允许同一个维重复出现,可以又细分为维间的关联规则(不允许维重复出现)和混合维关联规则(允许维在规则的左右同时出现)。年龄(X,“20⋯30”)n购买(x,“笔记本电脑”)==>购买(x,“打印机”)这个规则就是混合维关联规则。在挖掘维间关联规则和混合维关联规则的时候,还要考虑不同的字段种类:种类型和数值型。对于种类型的字段,原先的算法都可以处理。而对于数值型的字段,需要进行一定的处理之后才可以进行。处理数值型字段的方法基本上有以下几种:。l、数值字段被分成一些预定义的层次结构。这些区间都是由用户预先定义的。得出的规则也叫做静态数量关联规则。第46页共78页 J二海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究2、数值字段根据数据的分布分成了一些布尔字段。每个布尔字段都表示一个数值字段的区间,落在其中则为l,反之为0。这种分法是动态的。得出的规则叫布尔数量关联规则。3、数值字段被分成一些能体现它含义的区间。它考虑了数据之间的距离的因素。得出的规则叫基于距离的关联规则。4、直接用数值字段中的原始数据进行分析。使用一些统计的方法对数值字段的值进行分析,并且结合多层关联规则的概念,在多个层次之间进行比较从而得出一些有用的规则。得出的规则叫多层数量关联规则。4.6.2在挖掘语义层次的关联规则所使用的数据模式在这里,我们的讨论是基于一个简单化的典型应用:三枪企业的销售型数据仓库,试图分析客户购买该企业产品的数据。数据仓库采用的数据模式是星型模式,星型模式的中央为事实表T,描述了某一客户在何时何地购买何种产品。客户、产品和分厂的信息组成了三个主要的维,在三个维表中详述了进一步的信息。如图4—4所示。CUStomers图4—4本算法中使用的数据仓库星型模式Figure4-4StarModelofDataWarehouseinThisAlgorithm在该应用中,显然Cust—id比city更细节,City比Area更细节。同样,Item—id比Sub—cat更细节,Sub-cat比Cat更细节。这种属性之间的归纳/详述关系可以定义如下:考虑星型数据模式S和S中的一个维,给定两个属性a和b,gens(a)=b表示b是在该维层次中与a最近的归纳。4.6.3语义层次的关联规则所使用的元模式从数据仓库中挖掘关联规则时,首要的事情是正确定义哪种规则是我们所感兴趣的。我们所使用的方法是通过定义关联规则的元模式(meta—pattern)来实现这一点。我们把关联规则的元模式定义成一个这样的元组P:,其中T,g,m,s,c为该模式的参数。T是数据仓库的事实表。m是挖掘属性。g为分组属性。第47页共78页 L海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究事实表T是根据属性g来排序的。在大多数算法中,并不考虑g和m为多重属性,所以我们假设g和m为单一属性。分组属性g的取值数量为G。如某一关联规则r:B=>H,B∈V.,H∈V.,BnH=o,其中V.是属性m的值域。s是最小支持度。规则r的支持度S,=G,/G,其中G,是包含规则r的记录数目。支持度表示该规则出现的频率,仅挖掘S,妻S的规则。C为最小置信度,规则r的置信度=G,/G。,其中G。为包含该规则B部分的记录数目,仅挖掘c,耋c的规则。规则r:B=>H的长度为前键和后键的取值数量,即size(r)=IB《+lHI。规则集合称为R。结合本应用,考虑一个元模式p:,同时为了方便,我们在图4—5(a)中显示了一个极为简单的事实表T,同时该事实表T已经根据Cust排序。那么,通过挖掘该事实表T可以得到以下规则集合:A=>B(s,=4/1l=O.364.c,=4/6=0.667):AB=>C(s。=2/11=0.182,c,=2/4=05):AC=>B(s,=2/lI=0.182,c,=2/2=1);BC=>A(s,=2/11=0182,c,=2/2=I):.C=>A(s。=2/II=0.182.Cr=2/3=0.667):C=>B(s,=2111=0.182,c。=2/3=0.667):C=>E(s。=2/1I=0.182,c,=2/3=0.667):D=>E(s,=2/II=0.182.cr-2/2=1);F=>A(s,=2/II=0.182。c,=2/3=0.667)。考虑第一个规则A=>B(sr=4/1l=0.364,c,=4/6=0.667),根据定义,该规则表示有36.4%的客户既购买了A产品,又购买B产品,同时购买了A产品的客户中有66.7%又购买了B产品。4.6.4粒度归纳(一)归纳的敬果在本应用中,我们如果考虑一个这样的元模式:p’:City,Item->Sub—cat,0.18,0.5>显然,根据该元模式将会挖掘出许多无用的规则,因为在任何一个分公司(以城市划分)里必然存在着大部分的产品分类。而挖掘出这些规则根本就不必考虑支持度和置信度,因为所有这些规则的支持度和置信度都相当接近l。也就是说,支持度和置信度的限制太细致了。所以我们只需考虑简化的元模式:P:=。同时,我们引入z。表示在分组属性g的第i个分组中属性m出现不同的值的个数。那么,我们通过定义钆..和f。两个值来对元模式进行预处理。其中,a。表示在分组属性g的不同值中出现挖掘属性m不同值的平均数,t,。表示在分组属性g的不同值中出现的挖掘属性m不同值的数目占挖掘属性m不同值总数的平均百分比。计算公式如下:‰:f∑引肛\gt,f/s.。=ag.m/l略(莩互M川叫)第48页(2)共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究CustDateItemStoreC1{丰}A★女el{丰丰B女%Ct十}}C^女C2$}$C女%C2}丰}D}}C2}木丰E}}C3}}$F$}C3}木}A}}C4}木{B}丰C4木丰半D丰丰C4丰}丰E}木C5}}丰F}丰C5}}木A女}C6}}木B}丰C6}$木A{丰C7$}}E女}C8}{}E十}C8}★}F★^C9{女丰E★女C9}}{A}木C9}$术B}术C9}}木C}木C10丰}术B}}C10丰}术A十}C11}}木B$}CustDateItemStoreCust一>CityItem一>Sub—catC1}}$}}{CitylKC1女}$}{}CitylXC1半木}{女女CityIKC2木}}}}}C“ylKC2丰丰}女{}CitylXC2丰木}{}}CitylZC1l}}}}}$CitylZC3木木}★}女City2KC3木丰丰★}%City2XC10丰女%★女}City2XClO}{}}木丰City2ZC4}}$}丰}City3ZC4}}}}丰丰City3K●C4木}}丰木{City3XC5}$}木木}City3KC5木丰}}}女City3ZC6木丰}}±★City3ZC6}%}}%}City3ZC7$}女女女City4ZC8}}{女}$City5KC8}木木}木}City5XC9$丰丰}木木City5KC9}丰丰丰木丰City5XC9}木木丰女{City5KC9女丰}}术{City5X图4—5(a)事实表T(根据属性Cust排序).(b)扩展的事实表T(根据维属性Cust一>City排序)Figure4-5(a)FactTableT(SortedbyAttributeCust)(b)ExtendedFaceTableT(SortedbyAttributeGust一>City)显然,0≤f。≤1。从f。的定义中可以看出,t..越大,表示挖掘属性m在每一个分组属性g中的不同值的数目越多,那么挖掘出无用规则的可能性越大。图4--5(b)中显示的扩展了维属性Oust一>City和Item一>Sub—cat的事实表,同时该事实表已经根据维属性Cust一>City排序,考虑本应用中上述元模式的简化元模式:P’City,Item一>Sub—eat>那么根据公式简单计算后可以得出f。.-=(3+3+3+1+2)/(3}5)=0.8。这个值是相当高的。4.6.5归纳运算符为了进行语义层次的关联规则挖掘,我们定义了两个不同的归纳运算符:考虑星第49页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究型模式S和两个简化的元模式巳l和卫2,当且仅当22一>g=gens(131一>g)时,定义分组属性归纳运算符fg(p1)=卫2:同样,当且仅当22一>m=gens(131一>m)时,挖掘属性归纳运算符fm(p1)=132。定义fg和fm这两个归纳运算符是为了把元模式之间的归纳关系公式化。我们把仅包含事实表T的简化的元模式称为为基本元模式乜n,因为巳b无法通过归纳运算符归纳得到。考虑基本元模式pb,我们定义归纳关系L为L(Q。)∈P(m)$P(13b)}ffg,fm),其中P(D)是基本元模式巳b的集合。一个元组∈L(卫。)当且仅当fg(121)=122时成立;同样道理,一个元组<上1,t22,fm>∈L(13。)当且仅当fm(131)=122时成立。显然,L(p。)是有限的。例如,在本应用中,考虑简化的基本元模式卫h.,则从该基本元模式中导出的归纳模式L(乜。)如图4—6所示:多夕‘\。≥罗a州‘弋\爹罗8弋q。婷M“≮苫岁蜘弋pt≥岁咖c舻哪”卜M”巩“弋f猡罗吼““。口pArea,ltem->Cat>图4--6从基本元模式导出的归纳模式L(∞Fj口⋯o4-BTi3dT⋯P口十tm1fn.、+'ramRaciPUDtaPqft⋯4.6.6算法挖掘的过程’根据以上定义,我们现在可以讨论在数据仓库中进行有效的基于语义层次的关联规则的挖掘过程了。给定一个星型的数据模式S和事实表T,算法首先对事实表T中所有的基本元模式卫b的集合进行计算,然后使用归纳运算符导出所有的归纳模式。具体算法如下:步骤1:由用户进行事实表T的定义,将基于该事实表T挖掘出有用的关联规则。事实表T位于数据仓库星型模式的中央。同时用户定义f。的最大值M,;步骤2:根据每一对在星型模式S的事实表T中的属性建立基本元模式卫。集合B:步骤3:对集合P。中的每一个基本元模式卫一,使用归纳运算符fg和fm导出相应的归纳模式L(Qb);步骤4:对每一个归纳模式L(B)计算其基本元模式卫的£..,并且步骤4.1:选择一个元模式P,条件为:它是从满足条件f。三M,的元模式中导出,并且该元模式P的f。还未计算;步骤4.2:计算该元模式P的f。,然后返回4.1;直到所有满足条件的元模式都已计算完毕;’第50页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究步骤5:输出所有满足条件f。至m的元模式P。经过上述处理后,接下来就能在输出的元模式集合中进行有用信息的挖掘:对每一个元模式p设定最小支持度S和最小置信度c,根据相应的算法从数据仓库中挖掘关联规则,计算各规则的支持度和置信度,然后再根据最小支持度S和最小置信度c评价得出的规则集。经过我们的多次试验,我们发现在该应用中t,。的合理上限值,即M【的经验值为0.7。这个数值我们在另一个大型的数据仓库中也检验过。但用户应根据自己的实际情况设定该值。同时该算法计算f。。仅需通过简单的SQC语句扫描一次数据仓库就可以了,比直接进行关联规则的挖掘要大大节省时间和空间。另外,我们还发现通过计算f。。并与M,进行比较后,该算法将会丢弃所有的基本元模式,这意味着基本元模式是无用的,因此在归纳模式L(E。)中完全不必考虑基本元模式。对于很多的应用来说,由于数据的复杂性,所以很难在数据最细节层次上发现一些有用的关联规则。当我们引入语义层次的关联规则挖掘后,就可以在较高的层次上进行挖掘。虽然较高层次上得出的规则可能是更普通的信息,但是对于一个用户来说是普通的信息,对于另一个用户却未必如此。所以数据挖掘应该提供这样一种在多个语义层次上进行挖掘的功能。该方法能在数据模式中明示的语义层次中进行挖掘,也在属性之间通过语义的归纳/详述关系暗示的语义层次中进行挖掘。通过这种方法,我们很快就放弃了较多无用的元模式,从而克服了多维数据的复杂性,使关联规则的挖掘变得更加集中和有效。4.7序列模式的数据挖掘技术时间序列的数据库内某个字段的值是随着时间而不断变化的,例如股票价格每天的涨跌,科学实验,浏览网页的次序等。我们运用数据挖掘的方法来对这些数据库进行“趋势分析”,“相似搜索”,“挖掘序列模式”,“时段模式”。4.7.1趋势分析一个变量Y,表示某一支股票每天的收盘价,可以看作是时间t的函数,例如:Y=F(t):这样的函数可以用一个时间序列的图来表示。在分析这些时间序列的数据时,有四个方面值得我们注意的:1、长时间的走向:表明在很长一段时间内总的走向趋势,这个可以用一个“趋势曲线”或者“趋势直线”来显示,具体方法将在下面讲到。2、周期的走向与周期的变化:直线和曲线的振荡并不是周期的,这个循环并不遵循基于相等时间的规律。3、季节性的走向与变化:例如在情人节来之前,巧克力和花的销量突然的增大。换一个话说,就是在连续的很多年中,有一段时期总是与这年中的其他时期大不同。规则的随机走向:由于一些突发的偶然事件而产生的。上面这些走向我们分别可以用变量T,c,s,I来表示,时间序列分析也就可以是将一个时间序列的数据分割成这四个基本的趋势。这时间序列变量Y就可以模化为这四个变量的乘积或者是总和。第5l页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究给定Y的集合,一个很普遍的分析出数据的走向的方法就是计算平均值,这个方法就叫做“movingaverageofordern”。如果采用一个有权重的方法的话,就是“weightedmovingaverageofordern”。给一个权重是为减少平滑的影响。其它的方法还有“freehandmethod”:用一个相似的曲线来代替数据,这儿最相似的曲线我们定义为d。的总和最小,d,是指曲线Y,与实际数据Y。的差。在实际的商业运用中,人们总想~般化季节性的波动。我们可以采用seasonalindexnumbers的方法来调节季节性拨动的数据。4.7.2基于季节指数的量小二乘法社会经济系统是一个复杂的动态系统,由许许多多的因素相互作用、相互影响而使系统的状态发生变化,在时间轴上表现为一系列不同的值。从时间的维度上考虑,影响系统的因素可以分为四大类,即:长期趋势因素、季节变动因素、周期变动因素和随机变动因素。在很多情况下,周期变动因素的影响可以忽略,随机变动因素的影响可以通过一些算法(如算术平均法,差分法等等)来消除,这样,我们只需要考虑长期趋势因素和季节变动因素的影响即可。长期趋势因素的影响可以用常规的预测方法(如趋势预测、平滑预测等)来求得,然后用加法模型或乘法模型将预测期的趋势值和季节变动因素的影响值叠加起来,就得到预测期的预测值。在课题研究项目中,预测每三个月的销售量原来是使用计算平均值的方法。但是,三枪企业销售的产品具有很强的季节性,使用计算平均的方法过于简单,不能反应出销售数据的真实走势。所以在本项目应用中,我采用基于季节指数的最小二乘法进行预测。4.7j2。l最小二乘法趋势分拆预莰4算法最小二乘法最早称为回归分析法。由著名的英国生物学家、统计学家道尔顿(F.Gallton)——达尔文的表弟所创。社会经济系统是由许多因素相互作用而形成的复杂的动态系统。各因素之间的作用可能是双向的,也可能是单向的。通过收集这些因素的样本数据,利用统计分析的方法,可以找出因变量随自变量变化的关系式。这样,只要知道自变量的未来值(可以通过趋势预测或其它预测方法,有时也可以认为是控制指标,如固定资产投资额等),就可以根据关系式计算出因变量的未来值。这种方法称为回归预测,只考虑一个自变量的回归预测称为一元回归预测,考虑多个自变量的回归预测称为多元回归预测。根据最小二乘法,建立三枪企业销售数据的数学模型如下:Y.--d+缸+“其中:Y表示第X个月的销售量,x表示第几个月。在每次预测的时候,从当前的月份倒推,取12个月的数据,预测第13个月的数据。最小二乘法的思路在于在Y与x的散点图上画出一条能够最好地描述Y与X(代表所有点)之间关系的直线,使得所有点到该直线的纵向距离的和(平方和)最小。“距离”——度量实际值与拟合值是否相符的有效手段,距离=O则完全相符,距离越大越不相符。第52页共78页 』望望受里盔兰堡主兰竺堕墨二————一一苎主塑型垒壁塑垫塑丝塑堕盗箜兰堑墨堕塑堕茎。。。兽萎中芽{量型!声‘孝见图4—7):l、点到直线的距离——点到直线的垂直譬粤长璧:一2、孽向口;离——点沿(平行)x轴方向到直线的距离。3、坂面话篱二=鏖掌二差算。。Y,争方字到直线的距离。也就是实际观点的Y坐标减去根嘉釜磊另程计算出来的Y“的拟合值。一~⋯⋯⋯⋯⋯这个差数以后称为误差,或称为残差,或称为剩余。‘』k,y)糍可蹉专。、.,;}。一,距离一、A为变际点,丑为拟箸l’合直线上与之对应y乇多)的点Figure4-7ThreeDistancesinDispersedPointsGraph銎璺坚享垄三竺实哆值与拟合值之差,差异大拟合不好,差异小拟合好。。+堡雪亨塑皇照离j垄乒.相加,即得误差平方和。所以,rr最好,,。看萏j箍使误差票空耋鲁,J、塑粤堡。根据和运用求极值的原理,将求最好拟合直磊问运磊蒺菇莱簇墓平方和最小的问题。~⋯⋯⋯⋯⋯⋯6:=y。一97=y?一口一bx?∑女;=∑(M—p)2=∑(只一a一6‘)2∑砰=min§Z(y,一d一撕,)2=min掣q∑(胛刮-o⋯.堡N引-卅∑(胛一如h曲⋯阳+(∑‘)6=∑以⋯⋯⋯(5)(∑‘)d+(∑#)6=∑薯咒⋯⋯⋯‘6)或[轰副硝妻卜⋯一五=歹一詹⋯⋯⋯⋯(8)s:∑苎兰!二堕⋯⋯.,。、∑#一九(i)2P7第53页(3)一(4)共78页 上海交垴大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究从方程中可以直接观察得出最小二乘直线得性质:性质l:由(7)式:6=歹一反≥歹=a+匆即拟合直线过y和X的平均数点。性质2:.’?u|2y?一y?2yj—o—ox,由(4)式,∑(y,一a一6工)x=o。∑五,工=o≥c。V∞,,∞)=03R..x2oj两者不相关a残差与自变量X的乘积和等于0,即残差与自变量X两者不相关。经过数学证明可以得出拟合直线的以下性质:⋯·(10)慨2.臃机扰动碘是要盟!堕!§蔗·⋯注意:残差=因变量的实际值一对应因变量的拟合值.残差又称为拟合误差,但它不是将来要设定的误差项(未知总体的残差又称为随机扰动项)。残差通过拟合直线可以计算出,误差项是未知的不能计算出,我们只能用残差去估计模型的误差。4i7.2.2热入季节指数进行调整季节变动因素是一种周期固定的影响因素,当时间序列相邻值之间的时间跨度远大于季节变动因素的周期时,可以忽略季节变动因素的影响,利用前面的趋势预测或平滑预测即可做出较准确的预测:当时间序列相邻值之间的时间跨度与季节变动因素的周期相差不多时,季节变动因素的影响不能忽略。这时,就需要求出季节变动因素的影响。各种季节预测模型的区别就在于提出了不同的求季节变动因素影响值的方法。表4—4是本课题研究项目中三枪企业的一个产品1993年到1997年的销售额的数据(已经按季节进行累计)。表4—4某一产品的销售额数据(从1993年到1997年)Table4-4SalesDataofoneProduct(From1993To1997)1993:ol:ool101995:03:oo1l1r1993:02:002151995:04:oo12311993:03:oo3161996:01:oo13121993:04:oo4301996:02:oo14171994:01:oo5ll1996:03:oo15181994:02:oo6151996:04:oo16331994:03:oo7171997:01:oo17131994:04:oo83l1997:02:oo181995:01:oo9111997:03:oo1918199s:02:oolO171997:04:oo2035第54页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究根据表4—4的销售数据可以绘制其趋势变动图,见图4~8图4--8某~产品的销售趋势变动图Figure4—8SalesTrendGraphofOneProduct显然只采用线性模型是无法给出精确预测值的。图4—9是在没有加入季节指数的情况下对该产品的销售额使用最d,-乘法进行预测的结果。4—9使用最小二乘法的预测结果(朱加入季节指数)Figure4-9ForecastResultbyLeastSquareMethod(withoutseasonalindexnumbers)引入表示季节变化的虚拟变量Q2、Q3和Q4,如表4—5所示。表4--5引入虚拟变量Q2、Q3和Q4Table4-5IntroductionofVirtualVariables02、03andQ4obsQ2Q3Q4obsQ2Q3Q4i993:01:0001995:03:000101993:02:00l01995:04:00011993:03:000101995:01:0001993:04:00011996:02:0010l994:01:00O01996:03:000l01994:02:0010l996:04:000l1994:03:000l01997:01:0001994:04.:0001199r:02:00101995:Ol:0001997:03:000101995:02:0010IggT:04:000Ol计算季节指数时,采用的方法是将每个季节的销售量累加,除以全年的销售量然后将预测的前三年计算出来的季节指数平均,就得出预测时使用的季节指数。本销售数据加入季节因素的拟合结果见图4—10。第55页共78页 上海交通大学顾士学位论文基于数据仓库和数据挖掘的决策支持系统的研究LSⅣDependentVariableisXSHEData:04104100Time:16:11Sample:1993:11997:4IncludedobsclvatJons:20R-squaredAdjustcdR_squaredS.E.ofregressionSumsquaredresidLogIikelihosdDurbin-WatsonstarMeandependantvatS.D.dependentvarAkaikclnfocriterionSchwarzcriterionF-statlsticProb【F_statistic]图4—10引入季节指数的预测结果Figure4-10ForecastingResultwithSeasonalIndexNumbers预测计算季节指数的最终结果见图4一ll。Date04/04/00Time16:28Sample1993:l—1997:4IncludedObservati013S20ResⅡlts}ScalingFactors10.65055220.9172330.95937541.746834图4—11预测计算季节指数的结果Figure4-1lFinalForecastingResultsofSeasonalIndexNumbers该季节指数的预测计算结果表明只有第4季节是旺季,第2季节和第3季节大致为平季,第l季节是淡季。三枪企业该产品为冬季饱暖内衣,因此冬季销售量最好,秋季天气变冷,销售量也较好。春季天气回暖,购买量下降。夏季的销售量也比较高,经过分析得知,因为三枪企业该产品在夏季会推出特价酬宾,所以销售量也较为可观。计算出季节指数后,用乘法模型将预测期的趋势值和季节变动因素的影响值叠加起来,就得到预测期的预测值。通常来说,模型预测的准确度越高,则其预测的可信度亦越高。允许预测有不超过一个等级的误差。这里,我们规定,如果预测与实测值仅差一个等级,并且其数值的误差率不低于70%,则可将其预测准确率记为70%;如果预测与实测值相差一个等级,其数值的误差百分率低于70%,则可认为其预测是不准确的。模型对1994年、1995年和1996年的预测准确度为100%、96.95%和90、95%。利用最小二乘法,并结合季节指数法建立数学模型,对三枪企业的销售量预测是比较成功的。另外,该方法简单且易于使用。第56页共78页O563O096390O5902D5240D2972L0吼口!J5叭m17B0B0榷黜川撇嚣蛊搿0512 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究4.7.3挖掘序列模式序列模式挖掘是基于时间或者其他序列的经常发生的模式。序列模式的一个例子就是“一个9个月前买了一台PC的顾客有可能在一个月内买一个新的CPU”。在序列模式挖掘中使用的参数:1、时间序列T的持续时间,即这个时间序列的有效时间或者是用户选择的一个时间段。2、时间折叠窗口w。在一段时间内发生的几件事件可以被看作是同时发生的,如果W被设置为持续时间T的长度,我们就可以发现一些关联模式。如果W被设置为0,那么序列模式就是两个事件发生在不同的时间里。如果w被设置为一段时间间隔(例如~个月或者是一天),那么在这段时间的交易在分析中可以被看作是同时发生的。3、时间间隔int,这个参数表示发现的模式的时间间隔。4.8数据挖掘技术的发展趋势OLAP与DM都是数据仓库的分析工具,在实际应用中各有侧重。前者是验证型的,后者是挖掘型的。前者建立在多维视图的基础之上,强调执行效率和对用户命令的及时响应,而且其直接数据源一般是数据仓库;后者建立在各种数据源的基础上,重在发现隐藏在数据深层次的对人们有用的模式(Patterns),一般并不过多考虑执行效率和响应速度。OLAM——On1ineAnalyticalMining是二者相结合的产物,又称为OLAPMining,目前是学术界研究的~大热点。4.8.10L^P与数据挖掘OLAP主要有两个特点,一是在线性(On—Line),体现为对用户请求的快速响应和交互式操作,它的实现是由C1ient/Server这种体系结构来完成的:二是多维分析(M叭ti—Ahalysis),这也是OLAP技术的核心所在。‘目前,针对OLAP技术的研究领域相当活跃,对OLAP的理解也不断深入。有人提出了OLAP的更为简洁的定义,如NigelPendse提出的FASMI(FastAnalysiSOfSharedMultidimensionalInformation)。他将OLAP所满足的特点用五个词来描述:Fast(对用户请求的快速响应):AnalysiS(可以应用多种统计分析工具、算法对数据进行分析);Shared(多个用户同时存取数据时,保证系统的安全性);Multidimensional(体现了OLAP应用多维的实质):Information(指应用所需的数据及其导出信息)。DM,或者说KDD,是从大量原始数据中抽取模式的一个处理过程,抽取出来的模式就是所谓的知识,必须具备可信、新颖、有效和易于理解这四个特点。4.8.20l^-}———-0w—jnjngOLAP和DM虽然都是数据库(数据仓库)的分析工具,但其应用范围和侧重点是不同的。OLAP的在线性体现在与用户的交互和快速响应,多维性则体现在它建立在多维视图的基础上。用户积极参与分析过程,动态地提出分析要求、选择分析算法,对数据进行由浅及深的分析。DM与OLAP不同,主要体现在它分析数据的深入和分析过程的自动化,自动化是说,其分析过程不需要用户的参与,这是它的优点,也正是它的不足,因为在实际中,用户也希望参与到挖掘中来,如只想对数据的某~子集进行挖掘,以及对不同抽取、集成水平的数据进行挖掘,还有想根据自己的需要动态选择挖掘算法等第57页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究等。可见,OLAP与DM各有所长,如果能将二者结合起来,发展一种建立在OLAP和数据仓库基础上的新的挖掘技术,将更能适应实际的需要。而OLAM正是这种结合的产物。发展OLAM的原始驱动力有以下几点:1、DataMining工具需要的数据是一些经过净化、集成处理的数据,通常这种处理过程也是昂贵的:而Dw作为OLAP的数据源,存储的就是这样的数据。它能为OLAP提供数据,当然也可以为DM提供数据;2、DW是一项崭新的技术,很多人在研究它。围绕着它有许多工具或是体系结构。而DM作为数据分析工具的一种,不是孤立的,也必然要与其他的工具发生联系。因此,考虑到如何最大限度地利用这些现成的工具,也是OLAM发展之初所关心的问题;3、成功的数据挖掘需要对数据进行钻探性(exporatory)分析,比如,挖掘所需的数据可能只是一部分、一定范围的数据。因此,对多维数据模型的切片、切块、下钻等操作,同样可以应用于DM的过程中。也就是说,可以将DM建立在多维模型(或说超级立方体)的基础之上。4、用户的参与对DM的重要性,动态地提出挖掘要求、选择挖掘算法。故可以将OLAP的C1ient/Server结构应用于D~【中来。4.8.3OL心的体系结构OLAM的挖掘分析处理是建立在超级立方体的基础之上的,而且,在实际应用中,尽管OLAM的多维计算可能需要更多的维数和更强大的访问工具,但我们可以断定,用于OLAP的立方体和用于0LA~I的立方体之间并没有本质的区别。因此,我们可以将OLAM的结构图与oLAP画在~起。我们可以看到,OLAM服务器通过用户图形接口接收用户的分析指令,在元数据的指导下,对超级立方体作一定的操作,然后将挖掘分析结果展现给用户,这个过程是动态的。多维数据视图(超立方体)是OLAM的基础,多维视图的组织方式对于系统的执行效率和响应速度起着至关重要的作用。根据多维数据实际存在形式的不同,有两种组织方式:i、基于多维数据库:在这种方式下,来自各关系数据库的综合数据以实际的多维形式被存储在多维数据库(MDDB)里。2、基于关系型数据库:在这种情况下,多维数据视图是在程序执行时由RDBMS翻译执行相应SQL语句来实现的。。两种结构各有长处,前者执行效率高、响应速度快,后者则在灵活性和扩展性方面要优于前者。在实际应用中到底应该采用哪一种,还是一个需要探讨的问题。4.8.4OL棚的功能特征建立在庞大数据库或数据仓库基础上的OLAM在实现过程中面临的最大挑战是执行效率的提高和对用户请求的快速响应。目前还没有OLAl_t的产品出现,对OLAM所应具备的特征也众说纷纭。但是。针对OLAM的发展驱动力和基本结构,以下几点是必要的:1、OLAM建立在多维数据库和OLAP的基础之上,因此应能方便地对任何一部分数据或不同抽象级别的数据进行挖掘。这是借助OLAP对超级立方体进行切片、切块、下钻等操作来实现的。另外,如果需要,OLAM还可以直接访问存储在底层数据库里的数据。总之,借助于OLAP的支持,OLAM能对任何它想要的数据进行挖掘。2、用户对挖掘算法具有动态选择的权力,在传统的关系数据库应用中,对同一个主题,任何不同的查询过程所得到结果是相同的。而数据挖掘则不然,对同。个问题,运用不同的挖掘算法,得出的结果可能大相径庭。因此很有必要给予用户以动态选择第58页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究挖掘算法的权力。此外,有的用户针对自己的问题,可能有一套他自己独特的挖掘算法也希望嵌入到OLAM中,因此,OLAM应该具有一个通用的接口,以便与其他工具或算法相衔接。3、OLAM建立在多维数据视图的基础之上,因此,基于超立方体的挖掘算法是其核心所在。超立方体计算与传统挖掘算法的结合使得数据挖掘有了极大的灵活性和交互性。这里所说的立方体计算方法一般指切片、切块、下钻、旋转等操作:而挖掘算法则是指关联、分类、聚类等基于关系型或事务型的挖掘算法。根据立方体计算和数据挖掘所进行的次序的不同组合可以有以下一些模式:(1)先进行立方体计算、后进行数据挖掘。在进行数据挖掘以前,先对多维数据进行~定的立方体计算,以选择合适的数据范围和恰当的抽象级别;(2)先对多维数据作数据挖掘,然后再利用立方体计算算法对挖掘出来的结果做进一步的深入分析;(3)立方体计算与数据挖掘同时进行,在挖掘的过程中,可以根据需要对数据视图做相应的多维操作。这也意味着同一个挖掘算法可以应用于多维数据视图的不同部分(4)回溯特性,OLAM的挖掘过程是对多维数据视图的一个不断深入的过程。在实际中,用户很有可能因为算法的复杂性而在超立方体中“迷失方向”。因此OLAM的挖掘算法应能给用户退回上次操作初始状态这样的回溯功能。4、与OLAP类似,OLAM也采用C1ient/Server体系结构,这使得它具有较高的执行效率和较快的响应速度。但由于一般挖掘算法都复杂而且耗时,因此在执行效率与挖掘的准确性两者之间应该协调好。一般情况下,OLAM与用户频繁而且高速地交互,选择合适的挖掘算法和数据空间。一旦这两点确定,在特定数据空间上再执行用户选定的复杂而缓慢的挖掘算法,以保证最终结果的正确性。除了以上四点外,OLAM还应具有灵活的可视化工具和良好的扩展性。OLAM是一个复杂的结构,它在实际应用中要与多个模块或工具交互作用。例如,一个OLAM系统可能与一个统计软件包相结合:或者系统本身功能扩展,使之适合于地理数据、文本数据或者商业数据的挖掘。因此,OLAM接口的标准化、通用化就显的尤为重要。OLAM是OLAP与数据挖掘相结合的产物,它兼有OLAP多维分析的在线性、灵活性和数据挖掘对数据处理的深入性,是数据库(数据仓库)应用工具未来发展的方向。4.9本章小结本章介绍了数据挖掘技术所涉及到的各个方面,包括数据挖掘产生的背景、定义、技术特点和技术分类等等。作为论文的核心,这部分着重介绍了在科研和硕士学位论文撰写阶段,在数据挖掘技术的某些前沿领域中所作的研究和创新工作,并且将数据挖掘技术和企业的实际相结合起来。这些工作集中表现在对关联规则挖掘和时间序列预测的研究方面,主要包括:在关联规则的挖掘技术方面,提出了适合于实际应用的销售型数据仓库的关联规则挖掘算法SMAR;在挖掘语义层次上的关联规则方面,引入一种新的挖掘方法,通过挖掘明式或暗示的代表数据仓库特征的语义层次来处理数据的复杂性:在时间序列模式的数据挖掘中,提出一个基于季节指数的最小二乘法来预测与季节变动相关的销售数据走向。以上算法本文不仅从理论上进行探讨,还结合实际应用系统加以实现。第59页共78页 }海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究第五章综合决策支持系统的研究和应用决策支持系统(DeciSionSupportSystem),是以管理科学、运筹学、控制论和行为科学为基础,以计算机技术、仿真技术和信息技术为手段,针对半结构化的决策问题,支持决策活动的具有智能作用的人机系统。该系统能够为决策者提供决策所需的数据、信息和背景材料,帮助明确决策目标和进行问题的识别,建立或修改决策模型,提供各种备选方案,并且对各种方案进行评价和优选,通过人机交互功能进行分析、比较和判断,为正确决策提供必要的支持。5.1DSS的概述在信息时代,企业面临着不断改变与不可预测(ContinuousChang]ngandUnpredictable)的生存环境,提出了许多新的生产与管理模式,以达到增强企业应变能力的目的。在先进生产与管理模式下,企业是一种动态联盟,经常处于动态重构的变化之中。决策分析与决策支持系统是一种帮助人们分析风险、降低风险,为夺取机遇而做出正确决策的科学方法,是信息时代企业必不可少的有效支持工具。决策支持系统是一个由多种功能协调配合而成的,以支持决策过程为目标的集成系统。从内部结构上看,决策支持系统有以下两种基本形式。(一)决策支持系统的基本形式l由对话子系统、数据库子系统、模型库子系统和方法库子系统组成(见图5一1)。1、数据库子系统:数据和信息是减少决策不确定因素的根本所在,因此,数据库子系统是决策支持系统不可缺少的重要组成部分。这个数据库应能够适应管理者的广阔的业务范围,不仅能够提供企业内部数据.而且能够提供企业外部数据。数据库子系统包括数据库(DataBase)和数据库管理系统(DataBaseManagementSystem),其功能包括对数据的存储、检索、处理和维护,并能从来自各种渠道的各种信息资源中析取数据,把它们转换成DSS要求的各种内部数据。从某种意义上说,DSS数据库子系统的主要工作就是进行一系列复杂的数据转换过程,与一般的数据库相比,DSS的数据库特别要求灵活易改,并且在修改和扩充中不丢失数据。2、模型库子系统:现实数据表示的是过去已经发生了的事实,因此数据必然是面向历史的。我们利用各种模型,就可以吧面向过去的数据变换成面向现在或者将来的有意义的信息。在DSS中,决策支持模型体现了管理者解决问题的途径,所以随着管理者对问题认识程度的深化,他们所使用的模型也必然会跟着产生相应的变化。模型库子系统应能够灵活地完成模型的存储和管理功能。模型库子系统包括模型库(ModelBase)和模型库管理系统(ModelBaseManagementSystem),它是决策支持系统的核心,是最重要的也是较难实现的部分。模型库管理系统管理的模型有两类:一类是标准模型(如规划模型、网络模型等),这些模型按照某些常用的程序设计语言编程,并存在库中。另一类是由用户应用建模语言而建立的模型,即使是标准模型也有个再开发的过程。模型库管理系统支持决策问题的定义和概念模型化、维护模型,第60页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究包括联结、修改、增删等。模型库子系统与对话子系统的交互作用,可使用户控制对模型的操作、处置和使用;它与数据库子系统交互作用,以便提供各种模型所需的数据,实现模型输入、输出和中间结果存取自动化:它与方法库子系统交互作用,实行目标搜索、灵敏度分析和仿真运行自动化等。模型库子系统的主要作用是通过人机交互语言使决策者能方便利用模型库中各种模型支持决策,引导决策者应用建模语言和自己熟悉的专业语言建立、修改和运行模型。3、方法库子系统:方法库子系统包括方法库(MethodBase)和方法库管理系统(MethodBaseManagementSystem)。在DSS中,通常是把决策过程中的常用方法(如优化方法、预测方法、蒙特卡罗法、矩阵方程求根法等)作为子程序存入方法库中。方法库管理系统对标准方法进行维护和调用。有的决策支持系统没有该子系统。4、对话子系统:对话子系统(Dialogue6enerationManagementSystem)是决策支持系统的人机接口,它负责接收和检验用户的请求,协调数据库系统、模型库系统和方法库系统之间的通信,为决策者提供信息收集、问题识别以及模型构造、使用、改进、分析和计算等功能。对话子系统通过人机对话,使决策者能够依据个人经验,主动地利用DSS的各种支持功能,反复学习、分析、再学习,以便选择一个最优决策方案。显然,对话决策方式充分重视和发挥了认识主体桑人的思维能动性,必然使管理决策质量大幅度提高。由于决策者大都是非计算机专业人员,他们要求系统使用方便,灵活性好,所以,对话子系统硬件和软件的开发和配置往往是决策支持系统成败的关键。央黄支持系统的组成框图(1)图5-1决策支持系统的基本形式(1)Figure5-1BasicStructureofPSS(1)(二)决策支持系统的基本形式2由语言子系统、知识子系统和问题处理子系统组成(见图5—2):1、语言子系统。语言子系统是用户与系统联系的工具,用户的问题需要通过语言子系统来描述和响应。2、知识库子系统。知识库子系统是DSS能够解决用户问题的智囊,它主要包括一个综合性的知识库,其中存储的是有关问题领域的各种知识聚数据、模型等。3、问题处理子系统。问题处理子系统是DSS的核心部分,它完成系统的动态过程,即接受用户的问题,运用知识子系统的知识,实现用户问题的求解过程。在实际建立DSS时,可以由上述两种基本结构通过分解或增加某些基本部件而演变出多种形式。第6I页共78页 圭塑窒望奎兰堕主堂垡堡苎苎主塾塑竺生塑垫塑丝塑堕堡墨兰堑墨竺竺塑塑用户决策支持系统的组成框图(2)图5--2决策支持系统的基本形式(2)Figure5-2BasicStructureofDSS(2)在DSS的各个子系统之间有着非常紧密的联系。良好的结构应使各组成部分有机地结合起来,不然的话,就会形成这样一种局面:在变更数据时,要求修改模型,在追加模型时,又会影响数据和对话接口。这种现象是不希望出现的。图5—3给出决策支持系统的~般框架。图5—3决策支持系统的总体框架Figure5-3GeneralFrameworkofDSS第62页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究5.2基于Dw和DM的综合决策支持系统框架结构的研究数据仓库和数据挖掘技术的出现,不仅为决策支持系统的智能化发展提供了新的方法,同时也指明了新的方向。这主要体现在两个方面。首先,数据仓库的出现,取代来原来以数据库作为基础的决策支持基本模式。在数据仓库这个专门针对各种分析和查询而建立的底层系统之上,现在可以非常方便地构建各种上层的管理和决策应用,决策支持系统对企业管理和决策人员所能提供的支持也将变得更为有力。其次,在数据仓库的基础上,联机分析处理和数据挖掘等技术的出现,为人们构建一个智能化管理决策系统的理想和努力指明了方向。尤其是数据挖掘技术,它的出现代表了当今数据库和人工智能领域中的前沿技术。它改变了过去对数据只能进行简单处理的观念,也突破了决策支持中的知识只能由领域专家所提供的局限。它的出现无疑把智能化决策支持引上了一条更为坚实的道路。5.2.1基于嘣和D_的综合DSS的框架如图5—4所示是作者在实际开发三枪集团计划决策支持系统的实践过程中,提出来的一种基于数据仓库和数据挖掘技术的决策支持系统框架结构。该体系结构从整体逻辑上看,主要由两部分组成:第一个部分的功能基本就是传统的决策支持系统,主要包括方法库、模型库、知识库、问题处理单元和人机界面;另一部分则主要包括了数据仓库和数据挖掘部分。当然这两个部分之间的联系不仅是形式上的,而是从内在逻辑上有非常紧密结合在一起。图5—4基于DW和DM的DSS的框架结构Figure5—4ArchitectureofDSSBasedOnDWandDM传统的DSS主要负责决策支持,通过对模型库、方法库、知识库和数据仓库中的模型、方法、知识和数据的处理,为管理决策用户提供相应的问题处理的能力。而数据仓库和数据挖掘部分则是该系统智能化的核心,数据挖掘处理单元通过对数据仓库中的数据采用有关的方法,结合相关的知识和规则进行数据挖掘,获取有用的知识和规则、模型。在这个模型中数据仓库和决策支持系统得到了比较完美的结合。第63页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究5.2.2基于Dw和D_的综合DSS框架结构的特点该体系结构是在传统的决策支持模型发展而来的。与传统的决策支持系统相比,其最大的特点在于两点。首先,它使用一个完全是针对决策分析的数据仓库取代了原有的数据库,将操作型数据同分析型数据进行了很好的分离。其次,在该体系结构中,新增加了问题处理单元和数据挖掘单元。从某种意义上说,这两个处理单元是全系统智能化的核心。问题处理单元根据用户提出的各种要求,通过对底层系统的访问,获得必要的信息和方法,求解问题并响应用户。而数据挖掘处理单元则是在用户的自动地在通过对数据仓库中的数据采用有关的方法,结合相关的自动地发现知识,模型和规则,并最终为用户所利用。问题处理单元和数据挖掘处理单元的区别在于,前者相对而言是被动的,是求解式的;而后者相对是主动的,是启发式的。·5.2.3基于明和D_的综合DSS的主要功能模块在系统结构中主要的模块及其功能如下:(一)数据仓痒和数据仓唪管理系统数据仓库在本体系结构中是基础,是整个系统的数据来源。数据仓库包含了在系统应用领域内的多年积累的数据。数据在进入数据仓库之前会有一个预处理,所以在数据挖掘和进行问题处理时可以显著地加快速度。数据仓库管理系统负责对数据仓库中数据进行管理,包括数据的增加,数据的导入等等。由于在数据仓库中很少对数据进行删除和修改,因此数据仓库管理系统部分要适于进行数据的增加。数据仓库中的数据存放应该要有利于对数据的访问,要能够同知识库,模型库和方法库有比较友好的界面。t二)模型痒和模型痒管理系统模型是对现实世界中的事物、现象或者过程的简化描述。在解决问题时可以使用多种模型。模型种类很多,有数学模型、数据处理模型、智能模型、图形模型、图像模型等。数学模型可以用数学方程形式表达,也可以用算法形式描述。数据处理模型一般用数据处理过程来说明。它们在计算机中均以计算机程序的形式表示。而图形、图像模型等在计算机中都是以数据文件形式表示。在决策支持系统中的模型主要是指数学模型,因为绝大多数的决策都是建立在数学的基础上的。如何表示模型,如何组织模型库,模型库管理系统的功能要求有哪些,这些问题是决策支持系统开发的关键。模型库包含了在解决问题时所使用的模型,它的使用加强了系统的灵活性。模型库既包含数据文件,又包含程序文件,需要设计统一的格式进行存储,以便使模型库管理系统对它们进行有效的管理。在本体系结构中,模型库还包含了数据挖掘所使用的模型,为数据挖掘提供更多的灵活性,而不是在数据挖掘程序中将使用的模型固定。同时,数据挖掘也可以为模型库挖掘出新的模型,或者通过对数据仓库中数据的拟合对模型进行适当的改进。模型库管理系统可以参照数据库管理系统的功能,负责模型库中模型的增、删、改,以适应新的要求,如库的建立、模型的查询、增加、删除、修改等。由于模型比数据复杂,模型库比数据库复杂得多,模型库管理系统的功能相应地也复杂许多。数据库管理系统是通过数据库语言来完成各项管理功能,模型库管理系统同样需要设计一套语言来完成模型库的各项管理功能,模型库语言比数据库语言复杂。第64页共78页 圭塑銮望查兰婴主兰垡堡苎苎王墼塑垒壁塑塑塑堡堡塑盗茎茎堑墨竺盟竺垄(三)方法库秘方法痒管理系统方法库包含了在解决问题时所使用的方法。方法是建立在模型的基础上的,因此在决策支持过程中,需要依据模型来选择相应的方法。方法库的使用进一步提高了系统的灵活性,因为在解决同一问题的时候,模型只有一种,而解决问题的方法却有多种。在本体系结构中,方法库同样还包含了数据挖掘所使用的方法,一般情况下这些方法都是用程序模块的方法来实现的,并且定义了标准的调用接口。方法库管理系统负责方法库中方法的增、删、改,也就是对方法的统一的接口进行增加,删除和修改,或部分修改其中的接口以适应新模型的要求。(匦)知识痒和知识章管理系统知识库是在决策支持系统逐渐朝智能化方向发展的过程中逐步提出来的,它是专家系统和DSS的结合,是智能化决策支持必不可少的部分。知识库包含了在解决问题时所使用的知识,这些知识主要是用于对模型进行的推理计算。知识库的使用简化了系统的工作过程,为系统的工作提供了依据,.可以利用已有的和在处理中获得的知识,而不必从头开始。在解决问题时用到的知识很多,变动性也是经常存在,故用知识库的方式保存知识。在本体系结构中,知识库中除了领域专家提供的知识之外还有在数据挖掘过程中得到的知识。从某种意义上说,这部分知识具有更大的实用性,毕竟这些知识是从实际的数据中得到的,和实际的关系更为密切,并且如果不进行数据挖掘,它们原本是为人们所被忽略的。知识库管理系统负责知识库中知识的增、删、改,也就是对知识的更新,或者是在新环境下的知识的变动。(五)数据挖掘单元数据挖掘单元是整个决策支持系统智能性的驱动部分。通过数据挖掘产生新的知识和规则,为问题的解决提供服务。在数据挖掘中,不仅使用数据仓库中的数据,而且使用其他三个库中的内容,模型库为数据挖掘提供模型和规则,方法库为数据挖掘提供方法,知识库为数据挖掘提供知识,为挖掘过程提供必要的辅助。数据挖掘的结果可以分别形成规则和知识,进一步充实模型库和知识库,为以后的问题处理所服务。t六)I萄题处理单元问题处理单元是决策支持系统的功能核心,四个库及数据挖掘单元存在的最终目的是为了进行问题的处理。在问题处理中,通过使用模型库中的模型,在模型基础上使用方法库中的方法,同时可以使用知识库中的知识来加快问题处理速度,数据的获取由数据仓库中而来。使用数据仓库的目的是为了加快其中的计算速度,并且可以避免对不相关的数据的访问。(t)接口技术在数据库系统和模型库系统建立后,部件之间的接口技术是一个关键技术。决策支持系统由三个部件组成,部件之间存在着三个接口:l、模型部件和综合部件存取数据库的接口。模型程序一般采用数值计算语言编制。而数据库语言主要进行非数值的数据处理工作,对数组运算等数值计算功能很弱,更不具有指针链表、集合运算、递归运算等功能。故数据库语言不适合于编制数值计算类型的模型程序。决策支持系统需要将数值计算和数据处理二者结合起来。目前尚无一种计算机语言具有二者兼顾的功能。有效的途径是解决好模型存取数据库的接第65页共78页 七海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究口。数值计算语言编制的模型程序所用到的数据一般以文件形式输入和输出。大多数决策问题都是多模型的组合,各模型之间是通过数据相连的,即严格模型的输出数据是另一个模型的输入数据。在决策支持系统中,把所有公用的数据都放入数据库中,这既便于数据库共享,也便于数据的统一管理。当各模型程序所需的数据都放入数据库后,模型存取数据库的接口就很重要了。模型程序用到数据时,要通过这个接口存取所需数据。2、综合部件存取数据库接口类似于模型对数据库的接口。3、综合部件对模型的接口。这个接口体现在综合部件对模型的控制运行以及多模型的组合。按计算机程序形式来组织模型,一般采用“顺序、选择、循环”结构以及嵌套组合结构形式来组合模型。(八)综合部俘的集戒技术决策支持系统由“综合、模型、数据”三部件组成。如何使三部件有机集成为系统是又一个关键技术。这里综合部件是关键,它要真正能控制单模型运行以及多模型的组合运行,控制大量数据库的存取,实现DSS的系统集成。综合部件需要利用一种计算机语言,针对具体的决策问题,编制或者自动生成决策总控程序,将所需要的模型库、数据库进行集成,形成~个实际的决策支持系统。人机交互系统完成人机对话功能,即对数据或信息的输入、显示和输出。应当充分利用各种界面技术,为人机交互提供更友好的环境。对实际决策问题,完成组织和控制模型的运行和对数据的存取,需要一种计算机集成语言,它具有人机交互、数值计算、数据处理、模型调用等多种功能。目前还没有哪种计算机语言能达到这个要求。我们可以采取两种方法:1、自行设计这种多功能的集成语言来完成决策支持系统的需求:2、选用功能较强的计算机语言,如c,C++,java,vb等作为宿主语言,增加一些它不足的功能语句,如数据处理功能语句,嵌入到宿主遗言中形成一种集成语言。有了这种综合多功能的集成语言,就能有效完成决策支持系统部件集成的需要。5.3实际应用中的计划决策支持系统实际系统中的“基于数据仓库和数据挖掘的计划决策支持系统”是一个针对企业内部生产管理和市场销售工作所提出的决策支持系统。其目标和功能主要包括以下几点:l、根据对市场销售情况的判断和对库存情况的统计,结合企业内部的生产能力,合理有效地制定生产计划。2、及时了解集团分布在全国各地的销售网点的销售情况,为管理者提供对各种数据准确,灵活的信息查询能力。3、对企业内部的各种数据进行分析,从中发现有用的信息为企业的高层决策提供支持。5.3.1用例CUseOne)分析根据这些目标,使用面向对象的软件工程方法(UML的方法),可以把各种目标和功能细化为若干个类的用例(UseCase)。它们包括:(一)计划管理类:l、生产计划的决策和制定。2、生产计划的查询,修改和删除。第66页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策交持系统的研究(二)OLAP分析类:1、对库存情况的多维分析(0LAP分析)。2、对顾客情况的多维分析(OLAP分析)。3、对全国各个销售网点的销售数据的多维分析(0LAP分析)。.(三)数据挖掘类:l、销售预测(时间序列预测算法)。2、相关性分析(关联规则)。这些用例之间的相互依赖关系如图5—5所示:J的查询.修改输出和删除产品相关分析(关联规则)立方体计划系统数据库对库存情况的多维分析(OLAP分析)兰竺O、/\对顾客情况的多维分析(OLAP分析对全国各个蛸岱网点的销倍数据的多维分忻(OLAP分析)/图5—5计划决策支持用例分析\/Figure5—5UseCaseAnalysisforPlanDSS在该计划决策支持系统中,最基本的功能是要根据对市场销售情况的预测判断和对库存情况的统计分析,结合企业内部的具体生产能力,制定合理的生产计划。因此生产计划的决策和制定在系统中处于核心的地位。在实际的系统中,由于计划信息的数据量较小,且相对较为独立,因此使用一个单独的数据库系统来存放计划信息。系统的另一个主要的功能是对各种数据的0LAP查询功能。我们主要设计了三个方面的数据,以数据立方体的形式进行组织。它们是:销售数据立方体,客户数据立方体和库存数据立方体,分别对应于数据仓库中的三个不同主题和它们各自对应的0LAP多维查询分析。第三个主要的功能是运用数据挖掘技术,对企业内部的各种数据资源进行分析,从中发现有用的知识来为企业的高层决策提供支持。根据具体的企业数据的类型和特点,我们选择了数据挖掘技术中的时间序列分析和关联规则提取这两类方法。它们分别针对了管理决策中销售预测和商品销售相关性分析。5.3.2实际应用中计划决策支持系统的框架结构最后,给出整个基于数据仓库和数据挖掘技术的计划决策支持系统的整体框架。该框架的核心是问题处理单元和数据挖掘单元。这两个单元从某种程度上,也正反映第67页其78页 L海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究了企业决策活动的两个不同层次:查询分析层和智能决策层。当然,这样的分类并非是绝对的。许多时候两者都是同时出现或者相互结合在一起的。如图5—6所示,就是该系统的功能框架图。这一结构基本上使用了第一节中提出的模型结构。而且针对企业的具体应用,为问题处理单元和数据挖掘单元赋予了相对较为明确的含义。图5—6三枪集团计划DSS功能框架Figure5—6FunctionArchitectureforPlanDSSofThree—Gun5.4决策支持系统的发展方向目前决策支持系统的发展方向有多个决策者共同参与的群体决策支持系统(GDSS)和结合专家系统以及人工智能技术的智能决策支持系统。.5.4.1群体决策支持系统(GDSS)群体决策支持系统(GroupDecisionSupportingSystem),是指在系统环境中,多个决策参与者共同进行思想和信息的交流,群策群力,寻找一个令人满意和可行的方案,但在决策过程中只由某个特定的人做出最终决策,并对决策结果负责。群体决策支持系统从DSS发展而来,通过决策过程中参与者的增加,使得信息的来源更加广泛;通过大家的交流、磋商、讨论而有效地避免了个体决策的片面性和可能出现的独断专行等弊端。第68页共78页 上海交通大学硕士学位论文旗于数据仓库和数据挖掘的决策支持系统的研究t一)GBss的功能1、群体决策支持系统的基本功能:1)通过加强通信,消除了差异:通过限制不必要的感情式的相互作用,控制、协调参与者的关系。2)提高讨论者的地位和结论的公正性。3)系统的实施可以是永久性的(稳定和正式的程序集合)或暂时性的(必要时才使用的系统)。2、群体决策支持系统的技术功能:1)对决策过程中数据信息交流的控制。2)自动选择合适的群体决策技术。3)对可行的决策方案进行分析计算和解释。4)如果群体决策无法一致,则讨论个体决策差异或提出重新定义问题的建议。。(二)GDSS的基本结构一个典型的GDSS结构如图5—7所示。历雨霸獗稠模型库『—-叫竺!!鐾里兰}‘—_1教据库用户接口囱国I蚤黼I囱睦I竺苎!卜.——。叫!堡苎璺堂J图5—7GDSS的一般结构Figure5-7TypicalFrameworkofGDSSGDSS是决策支持领域的新的分支,对常规的DSS进行了扩充,扩充的内容包括:l、增加了一个通信库(CommunicationBase),方便决策参与者之间进行交流。2、加强了模型库功能,提供了投票、排序、分类评估等功能来实现达成一致的决策。3、系统使用前能够快速准备和具有协调能力,如安排会议议程,事先让与会者熟悉相关数据文件和决策模型等。4、扩充了必要的物理设备。(三)GDSS的分类GDSS的类型在很大程度上取决于待决策问题的类型和问题所处的组织环境,因此,一般可将GDSS划分为四种类型:l、决策室(DecisionRoom)。与传统意义相当的电子会议室,决策参与者集中到一间支持群体决策支持的特殊会议室,通过特殊的终端或节点,参与决策过程。在这种环境下的决策过程都有一定的时间限制。。2、局域决策网(LocalDecisionNetwork)。GDSS的参与者没有地域的限制,只要局域网上的中央处理器存储有公共的GDSS软件和数据库,参与者就可以通过局域网进行成员间以及成员与中央处理机之间的通信。第69页共78页 j。海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究3、传真会议(Teleconferencing)。针对决策成员在地理上分散但必要时可集中决策的群体。在这种情况下,两个或两个以上的决策室通过视频和通信连接在一起,其方法与决策室相同,而且使用了传真会议。4、远程决策(RemoteDecisionMarketing)。主要针对需要定期在一起作决策而又不能会面的决策成员。地理上分散的决策成员通过远程“决策站”之间的持续通信,完成决策的制定。上面四种类型的GDSS,前一种属于集中性,而后三种是属于分散性的。·5.4.2智能决策支持系统智能决策支持系统(IntelligenceDecisionSupportingSystem),是人工智能(ArtificialIntelligence)和DSS相结合,应用专家系统(ExpertSystem)技术,使DSS能够更充分地应用人类的知识,通过逻辑推理来帮助解决复杂的决策问题的辅助决策系统。IDSS的概念最早由Bonczek等人于80年代提出。它的功能是,既能处理定量问题,又能处理定性问题。IDSS的核心思想是将AI与其它相关科学成果相结合,使DSS具有人工智能。(一)IDSS的信息结构把AI技术引人DSS,主要是通过专家系统与DSS相结合,在DSS系统中加入推理机和规则库。由于在决策过程中,许多知识不能用数据来表示,也不能通过模型来描述,所以没有固定方式的专门知识和历史经验。IDSS引人的规则库可以存储这些知识,为决策提供重要的参考和依据。IDSS可以有多种类型的信息库:文本库(TB)、数据库(DB)、方法库(AB)、模型库(MB)和规则库(RB)。其中文本库存储的是大量的自然语言书写的文档;数据库中存放的是事物关键因素的字段形式;模型库中存放的是反映信息本质关系的各种模型:规则库存放的是知识的最精炼的形式。从最初未加工的数据到经过加工的信息再到提炼出的知识,信息的这种演变关系被称为“演进链”。谤进健图5—8IDSS的框架结构图+Figure5-8FrameworkofIDSS(二)IDSS的结构畏次依照系统层次的观点,IDSS从技术上可以划分为三个层次:l、应用层,直接面向IDSS的使用者。在该层,决策者可以根据自己的需要,确定IDSS的状态和约束。决策者通过用户接口进行系统对话,输入相关信息,DSS则第70页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究通过信息转换理解用户请求和命令,并进行系统推理运算,将结果通过输出界面反映给用户。整个过程对用户是透明的。2、控制协调层,面向IDSS的总设计师。其基本单元是系统中餐库的控制协调模块,系统工程师通过各库的标准接口来建立它们之间的联系。3、基本结构层,面向专业程序设计人员。专业程序设计人员通过该层对各库进行具体的实现,具体到定义各库的组织结构、通信方式等,以完成各库的内部管理和外部通信任务。(三)ZDE$的特点IDSS的特点如下:l、基于成熟的技术,容易构造出实用系统;2、充分利用了各层次的信息资源;3、基于规则的表达方式,使用户易于掌握使用;4、具有很强的模块化特性,并且模块重用性好,系统的开发成本低;5、系统的各部分组合灵活,可实现强大功能,并且易于维护;6、系统可迅速采用先进的支撑技术,如AI技术等。(匹|)IDsS的运行效率由于在IDSS的运行过程中,各模块要反复调用上层的桥梁,比起直接采用低层调用的方式,运行效率要低。但是考虑到IDSS只是在高层管理者作重大决策时才运行,其运行频率与其他信息系统相比要低得多,况且每次运行的环境条件差异很大,所以牺牲部分的运传效率以换取系统维护的效率是完全值得的。5.5本章小结本章主要讨论了在数据仓库的基础上,将联机分析处理和数据挖掘等技术整合在一起,最终为用户提供一个完善的、高效的决策支持系统。文章首先从理论分析的角度,提出了一个基于数据仓库和数据挖掘技术的决策支持系统框架结构模型,并对该模型进行了详细的分析。然后又结合作者在实际系统设计开发过程中的实际情况,介绍了实际应用中的计划决策支持系统的系统框架和功能结构。本章最后还介绍了决策支持系统发展的两个方向。第7I页共78页 上海交通大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究6.1本文的贡献第六章结束语和展望数据仓库技术自93年兴起以来,一直倍受业界人士的关注。作为决策型数据库,数据仓库能很好的实现异构数据库的集成,有效地利用历史数据资源。同时,数据仓库和联机分析技术,数据挖掘技术相结合,能更好地为用户提供决策信息的支持,这也正是目前用户所需要的。据统计:98年世界上有60%的银行采用了该技术。可见数据仓库技术具有非常广阔的发展和应用的前景。作者在硕士学位论文研究和撰写阶段,对数据仓库、OLAP和数据挖掘技术以及基于以上技术构架的决策支持系统进行了研究和探讨,同时阅读了国内外大量的最新技术文献,并且结合所参加的科研项目:三枪集团“基于数据仓库和数据挖掘的计划决策支持系统”的研究、设计和开发工作,在数据挖掘技术的某些前沿领域做了一些探索性尝试和努力。所做的主要贡献可以简要地概括为:(一)研究数据仓库技术,结合具体的实际系统,构建了实际系统中的基于销售和顾客这两个主题的销售型数据仓库,并对数据仓库技术目前发展所遇到的问题进行了分析。(二)研究联机分析处理技术,同时结合实际系统,采用Cub结构,为用户提供了灵活的查询处理机制,实现了联机分析处理的多种功能,包括下寻、切片、旋转等,可以让用户从不同角度(客户、地区、销售组织、物料类别、订货原因)、不同层次来察看销售状况的统计数据。(三)研究数据挖掘的技术。作为论文的核心,这部分着重介绍了在科研和硕士论文撰写阶段,在数据挖掘技术的某些前沿领域中所作的探索性尝试和努力。这些工作集中表现在对关联规则和时间序列预测的研究方面。它们主要包括:1、在关联规则的挖掘技术方面,提出了适合于本系统的数据挖掘算法SMAR。依据此算法,从数据仓库中找出存在内部相关性的物料组,提供生产和计划方面的决策信息,所有联机分析的结果集合和挖掘出来的关联规则都用友好的可视化界面显示,为用户理解和利用信息提供最大的便利。2、在挖掘语义层次上的关联规则方面,引入一种新的挖掘方法,通过挖掘明式或暗示的代表数据仓库特征的语义层次来来处理数据的复杂性。该方法能有效的从数据仓库中抽取潜在的有用的知识。该挖掘方法从考虑高粒度的挖掘开始,进行语义层次属性的挖掘循环,直到归纳出的规则比前一次的规则的价值更低时停止。3、在时间序列模式的数据挖掘中,提出一个基于季节指数的最小二乘法来预测销售数据走向。对长期趋势因素的影响预测采用常规的预测方法(最小二乘法)来进行计算,然后用乘法模型将预测期的趋势值和季节变动因素的影响值叠加起来,就得到预测期的预测值。(四)在以上各章的基础上,从决策支持系统整体的角度,讨论了如何将数据仓第72页其78页 上海交强大学硕士学位论文基于数据仓库和数据挖掘的决策支持系统的研究库、联机分析处理和数据挖掘等技术统一到决策支持系统中的问题。文章不仅从理论分析的角度,提出了一个基于数据仓库和数据挖掘技术的决策支持系统框架结构模型,并对该模型进行了详细的分析,同时又结合作者在实际系统设计开发过程中的实际情况,介绍了实际应用中计划决策支持系统的系统框架和功能结构。6.2论文进一步研究工作的展望本论文在数据仓库的设计方法:多维数据(数据立方体)的联机分析处理操作方法:数据挖掘的基础算法研究和决策支持系统的结构框架研究等方面取得了一定的成绩。这些成果,在对实际应用中的计划决策支持系统的设计和开发中都产生了一定的效果。但是,由于该技术处于数据库领域的研究前沿,数以千计的研究人员正日以继夜地从各个方面完善它。可以说,数据仓库技术的发展是日新月异,日渐成熟。因而在完成了预定目标以后,再对比现今的发展状况,本系统还存在一些有待于进一步研究完善的地方。主要是以下几个方面:(一)在体系结构方面。本系统中采用的是C1ient/Server结构。这主要是由于硬件条件所限。毫无疑问,在信息时代,网络技术的飞速发展使得互联网成为未来社会的重要组成部分。Web在最终用户对数据仓库实例数据的访问中将发挥重要作用。因而在进一步的开发中,最好能采用Browser/Server结构,这是符合技术发展的趋势的。目前,开发商们正在提供介于Web服务器和数据引擎(OLAP服务器)之间的Web网关,用来实现webBrowser中的HTML格式和特定数据引擎的API之间的转换,让Web浏览器访问已启动的数据引擎上的数据。这对于实现两种体系的转换将起到帮助。(二)在联机分析方面。目前有两个主要问题可以加以研究。一是对于企业内部网Intranet和Internet。OLAP服务器也应该支持web的检索。可以将数值格式和图形格式的仓库信息经过概括后,作为位图收集起来,存放在一个web网页服务器中,由webD0览器(任何类型)按最终用户的请求下载和显示。Internet和OLAP的结合将极大的优化OLAP服务。现在,许多OLAP及数据仓库套装程序已经面世或在近期即将提供Web接口。第二个问题是预处理数据的存储,目前对于OLAP的预处理做的还不够,仍然用二维关系表存储。在进一步的工作中,可以尝试使用多维数据结构来存储预处理的分析统计数据,这将有利于减少查询的响应时间。(三)在数据采掘方面。可以对其他的数据挖掘技术进行进一步研究,如:挖掘聚类规则、归类规则等等。同时我认为还有一个重要的研究方面是挖掘数据的更新。由于数据挖掘的数据是经过预处理的,并且在数据挖掘过程中建立了几张过程表,它们对于数据的挖掘也起到便利的作用。这些表格,与数据仓库中的数据一样,也存在数据更新的问题。数据源中的数据量毫无疑问是巨大的,因而最好能实现增量更新的处理。数据挖掘的预处理表要能根据数据仓库中数据的变动而进行相应的改变。可以采用与数据仓库的数据转换相同的技术,来实现预处理表与数据仓库数据的同步。这样就可以大大减少数据更新处理的时间。(四)在决策支持系统框架结构方面。在本文中尽管提出了一种基于数据仓库和数据挖掘技术的决策支持系统框架模型,但并不等于说,这个模型就是最优的。而且第73页共7s页 』塑垄型!!!!塑主兰生堡苎堡主垫塑垒壁塑塑塑丝塑塑达茎茎堑墨竺盟竺塞第74页共78页髓帐瑚懈慨一黼晰一㈣强唿彭地佃狮城虮应∞一一一一一~一一一一现和馆中的一一一一一 兰塑奎里查兰堕圭兰垡笙苎苎三塾堡垒嬖塑塑塑丝塑塑盗茎塞堑墨竺堕!!翌参考文献[1]王珊等编著,数据仓库技术与联机分析处理,科学出版社,i999[2]TomHammergren著,曹增强,王备战等译,数据仓库技术(DataWharehousing:BuildingtheCorporateKnowledgeBase),中国水利水电出版社,1998[3]HarjinderS.GILL等著,王仲谋,刘书舟译,数据仓库一客户/服务器计算指南,清华大学出版社,西蒙舒斯特国际出版公司,1997[4]高人伯、陈文伟,数据仓库和数据开采相结合的决策支持新技术,计算机世界专题综述,1997[5]王珊、王秋月,我国数据仓库的应用展望,计算机世界专题综述,1996[6]郭萌,王珏,数据挖掘与数据库知识发现:综述,模式识别与人工智能,1998V01.1lNo.3[7]陈栋等,KDD研究现状及发展,计算机科学,1996V01.23No.6[8]王清毅等,知识发现的若干问题及应用研究,1997V01.24No.5[9]李水平等,数据采掘技术回顾,小型微型计算机系统,1998V01.19№.4[10]屈定春,林原,一种新型的数据库应用⋯一数据采掘,计算机应用研究,1996年第六期[11]胡侃,夏绍玮,基于大型数据仓库的数据采掘:研究综述,软件学报,i998V01.9No.1[12]张光业,从数据中发现信息,微电脑世界,1999年月1月第4期[13]Fayyad,U.Eta1.,KnowledgeDiscoveryandDataMiningTowardsaUnifyingFramework.KDD-96Proc.2ndIntl.Conf.OnKnowledgeDiscovery&DataMining,AAAIpress,1996[14]aSSOCiationrulestocorrelations.ProceedingsoftheACMSIGMOD,1996.pages255—276.[15]implicationrulesformarketbasketdata.InACMSIGMODInternattonalConferenceOntheManagementofData.1997.[16]J.L.Lin,andM.H.Dunham.Miningassociationrules:Anti—skewalgorithms.ProceedingsoftheInternationalConferenceonDataEngingeeringOrlando,Florida,February1998.[17]H.Mannila,H.Toivonen,andA.Verkamo.Efficientalgorithmfordiscoveringassociationrules.AAAIWorkshoponKnowledgeDiscoveryieDatabases,1994,PP.18卜192.[18]R.Ng,L.V.S.Lakshmanan,J.Han,andA.Pang.Exploratoryminingandpruningoptimizationsofconstrainedassociationsrules.ProceedingsofACMSIGMODInternattonalConferenceOffManagementofData,pates13—24,Seattie,Washington,June1998.[19]J.S.Park,M.S.Chen,andP.S.Yu.Aneffectivehash—basedalgorithmforminingassociationrules。ProceedingsofACMSIGMODInternational第75页共78页

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
大家都在看
近期热门
关闭