计算机工程
COMPUTER ENGINEERING
1999年 第25卷 第8期 Vol.25 No.8 1999



数据采掘支持的新型DSS系统在intranet上的扩展
徐海蔚，杨明福
摘要：提出了一种采用数据采掘技术的决策支持系统。在指出数据采掘对决策支持系统应用的重要意义之后，阐明了一种根据用户需求及新技术的发展而提出的基于Browser/Server结构的DSS体系结构。采用这一体系结构，用户可以较方便地实现能自我更新的、功能强大而界面友好的、适应最广大用户需求的决策支持系统。
关键词：决策支持系统；数据采掘；Intranet；Web
Decision Support System with Data Mining and Its Expanding on Intranet
Xu Haiwei,Yang Mingfu
(Department of Computer Science and Engineering,East China University of Science a Technology,Shanghai 200237)
【Abstract】This article introduces a new kind of Decision Suppory System with Data Mining supported.After discussing the importance of more powerful and self-renewable DSS which could fit the demands more properly.
【Key words】DSS;Data Mining;Intranet;Web
　　由于数据采掘本身就是一种从事实或观察数据的集合中寻找模式的决策支持过程，因此数据采掘和决策支持系统 (DSS) 是密不可分的。可以说，数据采掘的目的，就是为目标决策提供支持；而以数据采掘作为支持技术的新型决策支持系统，则能更加强大和具有实用价值。然而 , 传统的决策支持系统往往无法为广大企业经营人员充分利用，更无法体现数据采掘技术的优越。改造 DSS 系统的体系结构并将其向 Intranet 扩展，是决策支持系统发展的必然趋势。
1 一种新型的决策支持系统 
　　数据采掘 (Data Mining) 就是从大型数据库 ( 或数据仓库 ) 中提取人们感兴趣知识的过程。这些知识是隐含、事先未知和潜在有用的。提取的知识表示为概念、规则、规律、模式等形式。更为广泛的说法是：数据采掘是在一些事实或观察数据中寻找模式的决策支持过程。数据采掘的对象不仅是数据库，也可以是文件系统或其他任何组织在一起的数据集合，例如像 WWW 上的信息资源。
　　在数据采掘的过程中，普遍使用以下两种方法： 
　　(1) 基于验证的采掘 利用这种手段，先提出假设，再进行验证，以获取知识。采掘技术由易到难，有：查询、多维数据分析、统计分析等。
　　基于验证的数据采掘方法已经在传统的决策支持系统中有了广泛的应用。但仅靠这些远远无法满足用户的需求。这是因为，如果指望人为地为数据采掘提供假设，不仅会影响数据采掘的效率，更会影响它的质量。因为很多最有价值的知识，是很难被事先假设的。因此，基于机器自动发现知识的数据采掘，才是这项技术的精髓。
　　(2) 基于发现的数据采掘 基于发现的数据采掘主要有 4 种：预测模型、数据库划分、关联分析、偏差发现等。在基于发现的数据采掘中，仅靠 DBMS 与统计分析技术已远远不够了，必须使机器具有一定的智能。常用的技术有人工神经网络、决策树、遗传算法、最近邻技术、规则归纳、可视化方法等。
　　从上面的介绍可以发现，数据采掘同决策支持系统相结合，能为其增添更加强大的功能。其表现在： 
　　1) 数据采掘技术能不断地为决策支持系统提供新知识 
　　传统决策支持系统往往仅限于根据其知识库中已有知识或假设进行分析和验证。这样固定的知识来源，使决策支持系统无法适应环境的变化，很容易因应用的发展而淘汰。而数据采掘所能提供的，不仅仅是对已有知识和假设的验证，更在于它能自动发现和更新知识，使系统具有自我学习的能力，能够根据形势变化提供符合客观情况的决策支持。这正是决策支持系统所迫切需要的。
　　2) 数据采掘技术能为决策者提供更有价值的信息 
　　由于数据采掘不仅能对假设验证，更能主动地发现知识，因此它能为决策者提供未知的、甚至是没有想到的问题和答案。典型的例子是，它不仅能告诉超市的经营者，商品甲和商品乙放在一起是否合适，更能告诉经营者什么商品和什么商品放在一起更好。这些事先无法预料到的知识，对于决策者来说更有价值，使他们觉得花时间使用决策支持系统是很值得的。
　　3) 使决策支持系统能处理规模庞大、形式复杂，甚至存在质量问题的数据 
　　企业在长期经营过程中积累起来的大量数据是企业的宝贵财富，能为决策支持提供重要的依据。然而由于种种原因，这些数据必然是数量庞大而形式不一的。它们可能在不同类型的数据库、电子报表，甚至是文本文件中。而由于数据收集过程中的不可知因素，这些数据不可能完全正确，甚至可能不全。数据采掘技术为处理这样的大量复杂数据提供了可能，使人们能在海量的数据中淘到真金。
　　总之，数据采掘继承了许多技术的最新发展成果，又有自己新的内涵。结合了数据采掘的新型决策支持系统，具有强大的生命力，能适应应用的不同要求和不断发展，是这一领域发展的必然方向。
2 传统体系结构存在的问题 
　　传统决策支持系统建立数据库和知识库，并通过人机对话系统与用户交互，了解用户需求，表示知识，提供决策支持信息。随着应用网络化的需求，Client/Server 技术也被用在 DSS 中。常见的是，系统将数据库和知识库集中放在服务器端，由用户通过客户端应用程序向服务器端提出决策所需的数据和知识要求，根据这些数据和相关知识，应用程序作出决策分析和预测 ( 图 1 所示 ) 。
　　传统体系结构曾经发挥过它的功效，但随着应用需求的不断扩大和复杂化，尤其随着数据采掘技术的加入，它将越来越不能适应应用需要。有些问题是无法解决或难以解决的，它们表现在： 

图1　Client/Server模式
　　(1) 知识库结构和内容固定，更新困难。
　　(2) 混淆了知识发现者和决策支持使用者这两类角色，人机交互界面过于专业化。
　　(3) 难以适应分布范围广的用户的不同需求，浪费系统资源且维护成本高。
　　(4) 数据处理能力较弱。
　　可以看到，传统体系结构已无法适应决策支持系统的发展，必须对它加以修改并引入新技术。
3 新型决策支持系统的框架结构
　　根据企业用户范围广、流动性大的特点，同时考虑数据采掘技术的要求，我们提出了决策支持系统的一个新型框架结构 ( 图 2) 。在这种结构下，决策支持系统可以充分发挥数据采掘技术根据最新情况获得最新知识的特点。同时，也能充分满足企业各部门不同层次的用户对决策支持系统的不同需求，维护方便，并能充分利用系统的各项资源。下面，就对这一系统结构作详细介绍。

图2　Brower/Server模式
　　系统的整个框架结构，是建立在基于 WWW 技术的 Intranet 应用集成框架之上，其应用模型已从 Client/Server 模式转变成具有多种优势的 Browser/Server 模式。
　　在决策支持系统服务器端，首先建立了收集所有数据采掘可能感兴趣数据的数据仓库。数据仓库的采集单元 (pump) 负责定期通过 Intranet 通信干线向分布在企业网络各处的有关数据库 ( 或其他数据来源 ) 收集最新数据，并完成数据的清洗和重组任务。由于数据仓库中数据对象较为复杂，数量又非常庞大，决策支持系统其他单元对数据仓库的访问 ( 通常是查询 ) 则通过 OLAP Server 完成。使用 OLAP Server 的目的是为了得到完善的多维数据管理，并提供方便快捷且性能有保证的多维数据查询以及分析。这些查询功能的性能往往直接影响到数据采掘和决策分析的性能，因此必须得到保证。许多应用厂商 ( 如 IBM 、 Oracle 、 Platinum 等 ) 都推出了自己的 OLAP Server 和 pump 产品，具有较好的性能。当然，用户也可以根据具体要求开发自己的 pump 和 OLAP Server 。
　　 在建立数据仓库的同时，系统也建立了知识库。但同传统体系结构不同的是，知识库中的知识除了在系统建立之初输入之外，还有另一个重要来源：决策支持系统的数据采掘功能单元。在这个功能单元中，采掘人员通过 OLAP Server 查询数据仓库中的数据，利用各种数据采掘工具和挖掘算法，将采掘所得的知识放入知识库中。所得到的知识有可能是一些定期固定的统计分析或关联度分析，也可能是一些未预料到的意外收获。在数据采掘单元中，可以使用已有的一些数据采掘工具，如 SAS,IBM Intelligent Miner 等，也可以安置自己开发的数据采掘算法单元。由于数据采掘处理的经常是非常大量的数据，复杂度高，因此要配置较高的硬件资源，并要保证它和 OLAP Server 间的高速数据通信 ( 最好用高速通信专线连接 ) 。由专门人员负责数据采掘的引导与控制工作，并维护知识库，发布新知识。
　　在服务器端，还设置有 Knowledge Server 和 Web 服务器。用户通过 HTTP 协议访问在 Web 服务器上的 HTML 格式 Web 页面，而 Web 服务器则根据页面设置和用户要求向 Knowledge Server 提出决策需求。Knowledge Server 是处理用户决策需求的综合服务单元。它根据用户需求向知识库和数据库要求相应的知识和数据，作处理后以 Web 页面的形式提供给用户。考虑到用户耐心有限，Knowledge Server 还应定期生成一些用户会经常查询到的知识，或分析处理时间较长的知识，等待用户的查询。如本月各子公司销售业绩统计和回归分析，就可以在月末生成出来，在用户需要时直接提供给他们。Knowledge Server 和 Web 服务器的维护由 DSS 专业人员进行。他们根据新发现的知识和用户的需求的变化，维护和扩充服务器端提供的所有服务。
　　在 Browser 端，所有经营决策人员都通过 Web 浏览器访问 Intranet 上连接有 Knowledge Server 的 Web 服务器来进行决策咨询。根据具体需求，决策支持系统用户可以分为以下两大类。一类是一般的经营人员，他们只需要了解一下企业总体经营情况，以及决策支持系统对具体经营的一般性建议，而不需要 ( 或企业政策不允许 ) 了解进一步的信息。这一类用户，不需要和系统动态交互，服务器上的静态 Web 页面就可以满足他们的需求。另一类用户则不是这样。他们可能是真正的决策人员或经营主管人员。他们往往不仅要知其然，还要知其所以然。例如，他们可能不会满足于仅看到各公司销售业绩统计，可能还想看一些更具体的数据资料，或提出要进行某些分析与知识咨询。系统可以通过在 Web 页面上嵌套 Java Applet 小程序来实现这种系统和用户的动态交互，使用户能动态地要求通过 Knowledge Server 访问数据仓库和知识库，并得到他所需要的特殊信息。
　　相对于传统决策支持系统体系结构，新型框架具有其不可比拟的优点。其表现在： 
　　(1) 将数据采掘和决策支持两大功能分开，既保证数据采掘功能强大，又方便决策人员使用 
　　在新型体系结构中，彻底分离了知识发现者和知识使用者这两种角色。决策人员既不需要对决策系统有深刻的了解，也不需要学习统计、关联、 OLAP 等数据采掘知识。同时，由具有丰富采掘知识和经验、并对决策支持系统有较深刻理解的专业人员负责数据采掘和知识发布的工作，使得数据采掘的优势得以保障和发挥。
　　(2) 无须管理的客户端，真正跨地域、跨平台使用，对客户端资源要求较低 
　　Web 技术使客户端可以定位于企业各地。只要有浏览器，就可以通过 TCP/IP 协议访问 Web 服务器，用户可以在任何地方的任何计算机上使用决策支持系统。这使流动用户使用方便，也使客户端的软件管理成本几乎为零。由于知识发现都集中于数据采掘单元完成，客户端的处理相对简单。计算机无需太高的配置，大大降低系统整体成本。
　　(3) 系统功能修改和扩充方便，用户访问功能权限集中管理 
　　由于使用 Web 技术，只要对 Server 进行维护和修改，就可以完成对不同用户系统功能的分配、维护和扩展。因此对于由于决策功能扩展和知识修正与发布所带来的变化，也只需通过修改 Web 服务器和 Knowledge Server 就可以完成。服务器也可以统一控制使用权限。总之，不需要对客户端作任何修改。
　　(4) 具有强大、及时的数据管理功能。
　　决策支持系统可以及时处理来自企业各处的最新数据信息，并能将它们合理而系统地组织起来，为数据采掘提供最符合客观情况的依据。
　　总之，采用这样的体系结构，能使决策支持系统真正参与到企业的日常运作中去，被最广大的用户所使用，从而得到他们的承认。它解决了长期困扰决策支持系统开发和使用人员的很多问题。
4 实践中需要注意的问题 
　　当然，这样的体系结构并不是完美的。由于采用了一些新技术，并分离了数据采掘与决策支持两大单元，因此在系统的开发和使用中，必须要注意解决好以下这几个问题。
　　(1) 决策人员和数据采掘人员之间的协调问题 
　　在实际运作中，要求决策人员和数据采掘人员协调工作。数据采掘人员应了解决策人员对系统的具体要求，并尽量引导系统发现这些知识，将它们用决策者易于理解的方式表达出来。而决策者除了要向数据采掘人员提出明确的要求之外，更要向他们提供相应的背景知识，促进他们的采掘工作。
　　(2) 知识库中知识表示问题 
　　由于数据采掘是不断自动发现知识的过程，而要发现的知识是事先未知的，因此如何设计一种灵活、可扩展性强，又不失准确性的知识表示方法，是应用中要认真考虑并妥善解决的问题。
　　(3) 直观地表达知识的问题 
　　如何向所有的用户提供易于理解又能充分满足他们需求的多种知识表达方法，是设计人员要认真考虑的问题。
　　总之，新型决策支持系统的开发和应用涉及到许多计算机技术和管理思想的结合与实践。用户应该根据自己的实际需求和实际使用者的应用水平，选择适当的开发工具及技术支持产品，使系统既能满足需要又不要过于复杂和昂贵。使决策支持系统能真正在决策过程中发挥其预想的作用，才是系统开发人员的最终目标。
作者单位：华东理工大学计算机系，上海 200237
参考文献 
1 Eriksson H. Expert Systems as Knowledge Servers. IEEE Expert on Intelligent Systems, 1996-07:14-19 
2 Anand S S. Designing a Kernel for Data Mining. IEEE Expert on Intelligent Systems, 1997,(03-04):65-73 
3 Fayyad U, Piatetoky-Shapiro G, Smyth P. The KDD Process for Extracting Useful Knowledge from Volumes of Data. CACM,1996(11):27-34 
4 胡侃，夏绍玮. 基于大型数据仓库的数据采掘：研究综述. 软件 学报，1998-01:53-63 ； 
5 凌永明. 基于 Web 的 Client/Server 计算. 计算机工程，1997 ，23 (2) ： 3-7 
