资源描述
第一章 引言
1.1 问题的提出
我国的电信业,尤其是移动通信业,起步比较晚,但发展非常快,对许多
业务的决策和方向的把握都是在摸索中进行的,某些立项缺乏统一意见和充足
的科学依据,带有一定程度的盲目性。另一方面,经过多年运营,积累了庞大
的业务数据,如计费中心的计费数据、客服中心的用户信息数据等,这些海量
数据中包含着宝贵的经验和商业信息,可以很好地拿来借鉴今后的业务运作。
但是这些数据信息隐藏在庞大、复杂的数据库里面,许多有价值的信息并没有
直接表现出来,而是掩盖在无聊的数据后面。多数情况下,我们不得不用到某
些分析工具,以期取得丰富而又客观翔实的商业信息,用于开发更大的市场和
提供更完善的服务。
到目前为止,电信业尚无比较完备的分析工具,然而另一方面,电信业又
面临着许多急于解决的问题,如:话费流失问题、新业务开展问题、基站分配
问题、批价问题等等。以话费流失为例,我国电信业每年仅此项损失就达数亿
元人民币之巨,基本上无法追回。如何尽快避免或尽量减免这一损失,就显得
极为迫切和必须。
在这种背景下,数据仓库技术以及其上的一些分析挖掘工具就应运而生了,
如联机分析处理、数据挖掘等等。
决策支持系统(DSS-Decision Support System)是70 年代由美国M.S.Scott
Morton 提出,迅速发展起来的新型学科。决策支持系统是综合利用大量数据,
有机组合众多模型(数学模型与数据处理模型等),通过人机交互,辅助各级决
策者实现科学决策的系统。
数据仓库DW(Data Warehouse)建立在传统事务型数据库的基础之上,
为企业DSS 及数据挖掘系统提供数据源。它从原事务数据库中将分析型数据与
事务型数据相分离,单独存放而形成数据集合。数据仓库就是要把分散存放在
企业各个地方的数据集中到一起,并利用这些数据制定出更好的决策。
联机分析处理 OLAP(On Line Analysis Processing)是数据仓库上的分析
应用工具。它建立在多维数据视图的基础上,主要有在线性和多维分析两个特
点。
数据挖掘 DM(Data Mining)是从大量数据中提取出可信的、新颖的、有
效的并能被人理解的模式的高级处理过程。
4
1.2 国内外发展现状
目前,各大数据库厂商均在数据仓库项目上提出了风格各异、内容相似的
数据仓库全面解决方案,比较知名的有Oracle、Sybase、Informix、 IBM、NCR、
CA 等公司。
Sybase 拥有一个独特而强有力的点对点方案,用来设计、建立和管理数据
仓库和数据集市。各个部门之间通过集中的元数据进行交互,具有完整性、集
中性和灵活性等特点。使用的工具也具有很多优越性能,如Power Designer
Warehouse Architect、Power Stage、Adaptive Server IQ、Power Dimensions 等。
Sybase 的解决方案及其组成具有以下特点:快速实现、数据集市与中心仓库的
无缝集成、极高的查询速度、高效的数据压缩。
Oracle 提出一个面向决策支持应用的数据仓库解决方案,开发出了Oracle
Warehouse Builder、Oracle8i 数据库、Oracle Express 等系列工具,其中Oracle8i
直接对分区键值作更新,有利于大量重复操作;还在SQL 引擎内建立强大的指
令集,如扩展了CUBE 和ROLLUP SQL 操作,支持对表进行抽样查询。
Informix 为促使 IT 专业人员迅速建立和运用数据仓库和数据集市,提供了
尖端决策方案套装,这一合成的产品和服务是专为概括高级关键商务分析的决
策支持环境设计的。为关键商务数据仓库提供世界一流的数据仓库产品和服务,
及工业领先的工具,包括:Informix 的专家级数据库设计,具有超级的可操作
性,伸缩性和广泛性。为建立和展开分析应用的合成工具, 包括数据抽取,转
换,清理和装载。提供了基于ROLAP 的多维数据分析、导向、汇报以及一整
套编程工具和APIs。值得一提的是,Informix 的OLAP 工具METACUBE 在汉
化方面做了大量的工作,基本能够满足国内用户的需求。
其他公司的解决方案大体类似,只是具体开发工具在功能上有所不同。这
些国外公司的最大特点是各种开发工具齐全,从数据仓库模型设计、数据抽取
工具、数据库管理系统到OLAP 分析工具。用户只需要面对一个厂商就可以获
得全部的支持和服务。而国内公司则没有这样的技术优势。
在国内,数据仓库刚刚起步,从事这方面研究的学校和公司不多,主要是
知识发现(数据挖掘)领域的研究,并且是利用第三方开发工具系统集成,比较
知名的有:中青旅尚洋电子技术有限公司、亚信德康通信技术有限公司、亿阳
信通有限公司、巨阳科技开发有限公司等。
根据数据仓库技术国际著名刊物 DM Review 的评论,有国外一些电信公司
采用决策支持通用平台,如新加坡电信,英国电信等。目前已经在我国设立办
事处或代理机构的厂商的产品有:Brio,SAS,Clementine,Business Object,
5
SPSS,Oracle,Informix,Sybase,Pilot 等,其优点是平台系统而完整,不足之
处在于存在本地化问题等,往往需要二次开发,无法直接适应中国电信市场的
需要。
1.3 主要工作及成果
本文在深入研究数据仓库、数据挖掘技术的基础上,设计并实现了一个DSS
系统。主要完成了以下几个方面的工作:
建造了一个数据仓库管理系统,并运用聚类、分类算法和 C5 算法进行用
户信用度分析和客户行为特征分析。
提出并实现了一个改进的聚类算法。传统系统聚类算法仅限于样本聚类,
在聚类指标过多并且指标之间存在依赖关系的情况下正确度不高。本文提出并
实现的多重系统聚类算法,将样本聚类与变量聚类结合起来,在不同的指标组
上分别聚类,然后进行二次(或多次)聚类,在很大程度上提高了算法的正确
度。
6
第二章 数据仓库技术
2.1 基本概念
随着 IT 业的发展,业界数据规模的不断扩大。为了以合理的费用,向任
何地点需要数据的人提供高质量的数据,1992 年William H. Inmon 提出了取
得广泛认可的数据仓库概念:集成的、面向主题的、随时间变化的不可修改的
数据集合。
从上面的定义,我们可以知道,数据仓库首先是一个数据的集合,在这一
点上,它与传统意义上的数据库是一致的。实际在物理上,数据仓库也主要是
以关系表的形式实现的。
数据仓库有四大主要特点:
面向主题的。是相对于传统数据库的面向应用而言的。所谓面向应用,指
的是系统实现过程中主要围绕着一些应用或功能。而面向主题则考虑一个个的
问题域,对问题域涉及到的数据和分析数据所采用的功能给予同样的重视。
集成的。数据仓库中的数据来自各个不同的数据源(操作数据库),由于历
史的原因,各操作数据库的组织结构往往是不同的,在这些异构数据载入到数
据仓库之前,必须经历一个集成过程,或称为抽取过程。
随时间变化的。数据仓库以维的形式对数据进行组织,维是数据仓库技术
中很重要的一个概念。通常可以这样理解一个维:维是人们看待事物的一种角
度。维具有层次性。
不可修改的。与面向应用的事务数据库对数据作频繁的插入、更新操作不
同的是,对于数据仓库中数据的操作仅限于数据的初始导入和记录查询。在数
据载入数据仓库之后,一般不允许随意修改。
2.2 数据仓库简介
数据仓库是一种结构化的数据环境,为决策支持系统提供数据源。它可以
帮助企业管理者准确了解企业的状况,从而进行预测,制定计划并作出明智的
决策。
数据仓库作为整个企业的业务数据集成库,从众多数据源中集成数据,它
包含庞大的企业级数据,其实质是由多种技术和服务组成的完整的解决方案。
数据仓库处理的数据与一般的信息系统的数据不同,它来自不同的分散数据源,
包括操作数据、历史数据、外部数据等,对这些数据进行提炼和综合,集成到
一个单一的关系数据仓库中;对这个集成的数据仓库进行管理,将其规范为面
7
向主题的格式,以便于最终用户进行数据访问和分析。
数据仓库由可操作的外部数据源、一个/多个数据仓库和一个/多个数据分
析工具组成。构造数据仓库,首先要从数据源(如联机信息系统、电子邮件消
息等)中抽取、集成、转换、聚合和复制数据,并存储到数据仓库中;然后,
这其中的一部分数据再被聚合、复制到数据集市;最后,用户用分析工具创建
电子报表,进行查询操作,从而实现决策分析。
2.3 数据仓库的关键技术
在技术上可以根据数据的工作过程分为:数据的抽取、存储和管理以及数
据的表现三个方面。在此,我们将分别讨论每一个环节。
2.3.1.数据的抽取
数据的抽取是数据进入仓库的入口。由于数据仓库是一个独立的数据环
境,它需要通过抽取程序将数据从联机事务处理系统、外部数据源、脱机的数
据存储介质中导入数据仓库。数据抽取在技术上主要涉及互连、复制、增量、
转换、调度和监控等几个方面。数据仓库的数据不要求实时响应,因此数据抽
取可以定时进行,但多个抽取操作执行的时间、相互的顺序、成败对数据仓库
中信息的有效性则至关重要。
目前市场上提供很多数据抽取工具(例如Informix 的ETL---Extract
Transform Loader 和Sybase 的Power Stage)。这些工具通过用户选定源数据
和目标数据的对应关系,会自动生成数据抽取的代码。数据抽取过程涉及数据
的转换,但抽取工具支持的数据种类有限;这种情况使得抽取工具往往不能满
足要求。因此,实际的数据仓库实施过程中往往不一定使用抽取工具。整个抽
取过程能否因工具的使用而纳入有效的管理、调度和维护则更为重要。
经过抽取后的数据记录应为格式统一、业务信息完整的数据记录。
2.3.2.存储和管理
数据仓库的关键是数据的存储和管理。数据仓库的组织管理方式决定了它
有别于传统数据库的特性,同时也决定了它对外部数据的表现形式。要决定采
用什么产品和技术来建立数据仓库核心,则需要从数据仓库的技术特点着手分
析。
数据仓库遇到的第一个问题是对大量数据的存储和管理。这里所涉及的数
据量比传统事务处理大得多,且随时间的推移而累积。从现有技术和产品来看,
只有关系数据仓库系统能够担当此任。关系数据仓库经过近30 年的发展,在数
8
据存储和管理方面已经非常成熟。目前不少关系数据仓库系统已支持数据分割
技术,能够将一个大的数据仓库表分散在多个物理存储设备中,进一步增强了
系统管理大数据量的扩展能力。采用关系数据仓库管理数百个GB 甚至到TB 的
数据已是一件平常的事情。
数据仓库要解决的第二个问题是并行处理。在传统联机事务处理应用中,
用户访问系统的特点是短小而密集;对于一个多处理机系统来说,能够将用户
的请求进行均衡分担是关键,这便是并发操作。而在数据仓库系统中,用户访
问系统的特点是庞大而稀疏,每一个查询和统计都很复杂,但访问的频率并不
是很高。此时系统需要有能力将所有的处理机调动起来为这一个复杂的查询请
求服务,将该请求并行处理。因此,并行处理技术在数据仓库中比以往更加重
要。
数据仓库的第三个问题是针对决策支持查询的优化。这个问题主要针对关
系数据仓库而言。在技术上,针对决策支持的优化涉及数据仓库系统的索引机
制、查询优化器、连接策略、数据排序和采样等诸多部分。普通关系数据仓库
采用B 树类的索引,对于性别、年龄、地区等具有大量重复值的字段几乎没有
效果。而扩充的关系数据仓库则引入了位图索引的机制,以二进制位表示字段
的状态,将查询过程变为筛选过程,单个计算机的基本操作便可筛选多条记录。
由于数据仓库中各数据表的数据量往往极不均匀,普通查询优化器所得出的最
佳查询路径可能不是最优的。因此,面向决策支持的关系数据仓库在查询优化
器上也做了改进,同时根据索引的使用特性增加了多重索引扫描的能力。以关
系数据仓库建立的数据仓库在应用时会遇到大量的表间连接操作,而连接操作
对于关系数据仓库来说是一件耗时的事儿。扩充的关系库中对连接操作可以做
预先的定义,我们称之为连接索引,使得数据仓库在执行查询时可直接获取数
据而不必实施具体的连接操作。数据仓库的查询常常只需要数据仓库中的部分
记录,决策支持的关系数据仓库在此做了改进,提供了这一功能。此外,在大
容量数据环境中需要有足够短的系统相应时间。因此,一些数据仓库系统增加
了采样数据的查询能力,在精确度允许的范围内,大幅度提高系统查询效率。
数据仓库的第四个问题是支持多维分析的查询模式,这也是关系数据仓库
在数据仓库领域遇到的最严峻的挑战之一。用户在使用数据仓库时的访问方式
与传统关系数据仓库有很大的不同。对于数据仓库的访问往往不是简单的表和
记录的查询,而是基于用户业务的分析模式,即联机分析。它的特点是将数据
想像成多维的立方体,用户的查询便相当于在其中的部分维(棱)上施加条件,
对立方体进行切片、分割,得到的结果则是数值的矩阵或向量,并将其制成图
表或输入数理统计的算法。
9
2.3.3.数据的表现
它们主要集中在多维分析、数理统计和数据挖掘方面。
多维分析是数据仓库的重要表现形式,由于MOLAP(多维OLAP)系统是专
用的,因此,关于多维分析领域的工具和产品大多是ROLAP(关系OLAP)工具。
在实际工作中,客户需要通过对数据的统计来验证他们对某些事物的假设,以
进行决策。数据挖掘强调的不仅仅是验证人们对数据特性的假设,而且它更要
主动地寻找并发现蕴藏在数据之中的规律。因此,在当前的数据仓库应用中,
有效地利用数理统计就已经能够获得可观的效益。
2.4 数据仓库和数据库的区别
数据仓库和数据库有多方面的区别,下表从几个方面加以比较:
数据库 数据仓库
联线处理方式OLTP OLAP
数据源 单一数据源 多数据源集成
数据属性 动态 除非刷新,否则为静态
数据内容 当前值 概要值,计算值,归档值
数据结构 复杂, 适于OLTP 简单,适于OLAP
数据存取频率 高 低
数据修改方式 直接修改 不直接修改
数据存取类型 重复的读和写 不重复,只读
系统响应时间 秒级 分级
2.5 数据仓库多维模型设计
2.5.1 多维模型的设计原则:
数据仓库与传统数据库所不同的是表间较少以二维关系型方式连接,而以
多维形式关联。最为流行且被业界认可的逻辑结构有星型结构和雪花型结构,
其中以星型结构最常被人们采用。
下图是数据仓库逻辑结构的一个实例,这个例子采用的是星型结构。星型
模式中间有一个单一对象,沿半径向外连接到多个对象。它反映了最终用户对
商务查询的看法,称为“事实表”(Fact Table),与之相连的对象称为“维表”
(Dimension Table)。图中事实表中存储了键属性(时间代码、地区代码、年
10
龄代码等),对事实表的查询就是获取指向维表的指针表。当对事实表的查询与
对维表的查询结合在一起时,就可以检索大量的信息。通过联合,维表可以对
查找标准细剖和聚集。维表通过外键与事实表相关联。
雪花模式:雪花模式是对星型模式的扩展,每一个点都沿半径向外连接到
多个点。雪花模式对星型模式的维表进一步标准化,它的优点是通过最大限度
地减少数据存储量以及把最小的标准化表(而不是大的非标准化表)联合在一
起来改善查询性能。由于采取了标准化及较低的粒度,雪花模式增加了应用程
序的灵活性,当然同时也增加了用户必须处理的表的数量和某些查询的复杂性。
图 2.1:客户群体特征事实表
2.5.2 多维模型的设计方法:
多维数据模型由事实表和维表组成。事实表中一个索引对应一个维表,常
用的统计信息放在事实表中。维表分得尽可能的细致、方便,维表之间相互独
立,不同维表之间不能有相同的主键和外键。要根据数据之间的基本的内在联
系组织数据,而不是根据现有的分析主题组织数据。
下面是一个实例:
drop table f_cdr;
drop table d_account;
11
create table d_account(
sub_id integer not null,
name char(50),
postal_code char(6),
id_name char(10),
id_code char(20),
contact_person char(20),
contact_phone char(40),
address char(60),
primary key (sub_id)
) maxrows per segment 40000;
create synonym det_account for d_account;
drop table d_period;
create table d_period (
per_key integer not null,
day char(20),
month char(10),
year char(6),
current_flag char(1),
primary key (per_key)
) maxrows per segment 400;
create synonym det_period for d_period;
drop table d_duration;
create table d_duration(
dur_key integer not null,
dur_seg char(40),
primary key (dur_key)
) maxrows per segment 10;
create synonym det_duration for d_duration;
drop table d_time;
create table d_time (
time_key integer not null,
minute char(6),
hour char(2),
promo_desc char(10),
primary key (time_key)
) maxrows per segment 1440;
create synonym det_time for d_time;
drop table w_area;
create table w_area (
area_code char(8) not null,
area_tag char(8),
city char(20),
province char(10),
region char(10),
primary key (area_code)
) maxrows per segment 600;
12
create synonym d_orig_area for w_area;
create synonym det_area for w_area;
drop table d_route;
create table d_route(
route_key char(10) not null,
route_desc char(10),
primary key (route_key)
) maxrows per segment 1000;
create synonym det_route for d_route;
create table f_cdr (
imsi char(15) not null,
calling_time timestamp not null,
sub_id integer not null,
per_key integer not null,
time_key integer not null,
dur_key integer not null,
orig_area_code char(8) not null,
route_key char(10) not null,
base_fee decimal(7,3),
idd_fee decimal(9,3),
sub_fee decimal(9,3),
ddd_fee decimal(9,3),
gat_fee decimal(9,3),
roam_fee decimal(7,3),
extra_fee decimal(7,3),
duration integer,
calling_count integer,
primary key (imsi, calling_time),
foreign key (imsi) references d_imsi (imsi),
foreign key (sub_id) references d_account (sub_id),
foreign key (per_key) references d_period (per_key),
foreign key (time_key) references d_time (time_key),
foreign key (dur_key) references d_duration (dur_key),
foreign key (route_key) references d_route (route_key),
foreign key (orig_area_code) references d_orig_area (area_code),
) maxsegments 2 maxrows per segment 10000000;
2.6 数据仓库的成功案例
在数据仓库应用领域,从电信、金融到制造、餐饮零售,都有不少成功的
案例。如MCI 通过Informix 公司为其建立数据仓库应用,数据仓库规模为3TB,
能被1 万个用户访问。借助于数据仓库,MCI 公司可以分析存储其公司范围内
几乎全部的美国消费者信息,以此增强公司的竞争地位。
美国百事可乐快餐集团也建立了自己的数据仓库解决方案,各连锁快餐厅
13
使用数据仓库技术为其提供及时、有效的信息,它们包括:顾客对某个快餐厅
的喜好,总体购买行为,快餐厅地理位置的选择等等,用于集团对所有快餐厅
的最终管理和评估。这些信息对于集团来说是极其重要且有价值的。
Sybase 公司与美国财政部的国内税收服务部门(IRS)合作开发的项目获
得了Data Warehousing Institute(TDWI)颁发的1999 年度数据库最佳实践奖。
NCR 公司的”电信业解决方案” – Fraud SENTRY 等。
在国内也有不少成功的数据仓库应用案例。在目前国内采用的同类产品,
可分为开发专用的系统、引进国外的软件、使用通用决策支持基础平台等。见
诸报道的专用系统有国内新太公司的”邮电智能办公决策管理系统” -
IntraSuite,亚信德康的“金眼睛”等。
第三章 联机分析处理与数据挖掘
14
3.1 联机分析处理
传统的数据库管理系统建立在事务型数据的基础之上,注重的是数据库的
安全、高效运作以及维持大量细节数据的一致性、安全性以及完整性这样的事
务性操作,即OLTP(On Line Transaction Processing )。为了保证系统的高
效运作及快速响应,不可能维持决策分析所需的大量历史数据。此外,系统在
运行过程中产生的数据大多并不能直接拿来做决策支持分析之用,而首先要作
一些预处理工作,比如汇总、抽取等,这样的预处理工作也是OLTP所不能完成
的。
要想得到对决策有用的信息或对数据仓库中的数据做灵活的、多角度的探
察,则还必须借助一些分析展示工具。因此,就在这样一个背景下,1993年
E.F.Codd首次提出了联机分析处理系统(OLAP)的概念。
3.1.1 OLAP 的概念及特征
联机分析处理OLAP 是一类软件技术,它使分析人员、管理人员通过对信
息的多种可能的观察进行快速、一致和交互性的存取以获得对信息的深入理解。
OLAP 是数据仓库上的分析展示工具,它建立在数据多维视图的基础上,可以提
供给用户强大的统计、分析、报表处理功能及进行趋势预测的能力。主要有两
个特点,一是在线性(On Line),体现为对用户请求的快速响应和交互式操作;
二是多维分析(Multi Dimension Analysis),数据的多维视图使用户能从多角
度、多侧面、多层次地考察包含在数据中的信息,这正是OLAP 技术的核心所在。
根据对数据组织方式的不同,OLAP 可分为两种:基于多维数据库的
OLAP(MOLAP)和基于关系数据库的OLAP(ROLAP);前者响应速度快、执行
效率高,但由于所有的预处理操作都是预先定义好的,限制了它的灵活性。与
之相比,后者由于建立在数据仓库的基础上,灵活性、扩展性要高得多,并且
支持大数据量和较多维数的能力也要强于前者,因此,虽然在响应速度、执行
效率上差一点,仍然得到了广泛的应用。就软件技术而言,数据仓库的核心是
关系数据仓库,而让集成的数据发挥效益,则需要一个先进的关系型联机分析
处理(ROLAP)工具。这种工具应能支持并行数据查询(PDQ)和操作,支持
表分割技术(Table Cross),支持多种DSS 索引等等。因此现有的OLAP 工具
大多基于后者。关于二者的更详细的区别,请参见文献[46]。
目前,针对OLAP 技术的研究领域相当活跃,对OLAP 的理解也不断深入。有
人提出了OLAP 的更为简洁的定义,如Nigel Pendse 提出的FASMI(Fast
Analysis Of Shared Multidimensional Information)。
15
3.1.2 OLAP 的结构
OLAP 是建立在客户/服务器结构之上的。它要对来自基层的操作数据进行
多维化或预综合处理,故它是一个三层的客户/服务器体系结构。
OLAP 对数据仓库中数据的操作是针对多维数据视图或称为超立方体进行
的。对立方体的典型操作有:切片、切块以及旋转等:
??切片是指选定多维数组的一个二维子集;
??切块是指选定多维数组的一个三维子集;
??旋转指改变一个立方体显示的维方向,使人们可以从不同的角度更加清晰
直观地观察数据
图 3.1 是典型OLAP 操作的抽象图:
3.2 数据挖掘
数据挖掘涵盖了广泛的计算机技术,涉及到机器学习、模式识别、统计学、
智能数据库、知识获取、数据可视化、高性能计算、专家系统等多个领域。根
据人类学习的不同模式人们提出了很多机器学习方法,如:实例学习、观察和
发现学习、神经网络和遗传算法等等。其中某些常用且较成熟的算法已被人们
运用于实际的应用系统及智能计算机的设计和实现中。
数据挖掘包括在数据中查找模式,传统上这是属于分析专家的领域。其中
一个主要的问题是统计上重要的模式没有商业价值,要借助于商业知识和日常
感觉,而不是IT 经验来实现。
数据挖掘通常用于电信、金融、零售、直销、银行贷款欺诈检测及欺诈分
析、健康保障行业、电视台电视栏目收视率分析、交通流量分析、罪犯特征分
析、保险风险分析、药品和化学成分的影响分析等。这种投资回报有时是超出
想象的。例如一位客户采用Clementine 软件处理了一家环保超标的工厂的数据,
切片
切块
旋转
地
域
年份地域
产
品
图 3.1: 对超立方体的典型操作
16
这项改进为公司节约了计划 10 万美元的预期投资。
3.2.1 数据挖掘的概念
数据挖掘是从大量数据中提取出可信的、新颖的、有效的并能被人理解的
模式的高级处理过程。
下面我们对这个定义作一些解释:
数据:数据是指一个有关事实F 的集合,它是用来描述事物有关方面的原
始信息的。
模式:模式给出了数据特性或数据之间的关系,是对数据包含信息更抽象
的描述。对于集合F 中的数据,我们可以用语言L 来描述其中数据的特性,得
出一个表达式E,E 所描述的数据是集合F 的一个子集FE。只有当表达式E 比
列举所有FE 中元素的描述方法更为简单时,我们才可称之为模式。如:“如果
成绩在81-90 之间,则成绩优良”可称为一个模式,而“如果成绩为81、82、
83、84、85、86、87、88、89 或90,则成绩优良”就不能称之为一个模式。
可信:通过数据挖掘从当前数据中所发现的模式必须有一定的正确程度,
否则数据挖掘就毫无作用。可以通过新增数据来检验模式的正确性,我们用c
表示模式E 的可信度c = C(E,F)。
新颖:经过数据挖掘提取出的模式必须是新颖的,至少对系统来说应该如
此。模式是否新颖可以通过两个途径来衡量:其一是得到的数据,通过对比当
前得到的数据和以前的数据或期望得到的数据之间的比较来判断该模式的新颖
程度;其二是通过其内部所包含的知识,通过对比发现的模式与已有的模式的
关系来判断。通常我们可以用一个函数来表示模式的新颖程度N(E,F),该函
数的返回值是逻辑值或是对模式E 的新颖程度的一个判断数值。
有效:提取出的模式应该是有意义的,这可以通过某些函数的值来衡量。
用u 表示模式E 的有作用程度,u = U(E,F)。
可被人理解:数据挖掘的一个目标就是将数据库中隐含的模式以容易理解
的形式表现出来,从而帮助人们更好地了解数据库中所包含的信息。当然一个
模式是否容易被人理解,这本身就很难衡量,比较常用的方法是对其简单程度
进行衡量。我们假定模式E 的简单度(可理解度)为S,则可用函数S(E,F)
来衡量。
处理过程:数据挖掘是一个多步骤的处理过程,包括数据预处理、模式提
取、知识评估及过程优化。
上面介绍的各种度量函数都只是从不同角度对所发现的模式进行评价,一
般为方便起见,往往采用权值来对所发现的模式进行综合评判。在某些数据挖
17
掘系统中,利用函数来求得模式E 的权值i = I (E,F,C,N,U,S);而在其
他一些系统中,通过对求得的模式的不同排序来表现模式的权值大小。
3.2.2 数据挖掘技术的工业标准
数据挖掘技术的工业标准 CRISP-DM 是英文“CRoss Industry Standard
Process for Data Mining”(数据挖掘技术的工业标准过程)的缩写,是基于经验的,
集中于解决业务问题的,数据挖掘技术的业界规范。1997 年数据挖掘技术报告
Data Mining Report 指出,CRISP-DM 确立了数据挖掘技术的工业规范,提供了
数据挖掘过程的所有策略。数据挖掘本质上是根据经验来学习。恰当的数据展
示了企业积累的经验;通过CRISP-DM 可以理解数据及建立数据模型可使商务
活动能吸收过去积累的经验。职业的商务人员能发现那些对商务活动真正重要
的东西,避免无谓的浪费时间。
CRISP-DM 最早由英国ISL 公司在其著名软件Clementine 中提出,其倡导
者包括ISL,NCR, Daimler-Benz, OHRA 等著名公司,并得到了欧洲议会的支
持。CRISP-DM 提出的目的是开发一种产业界用户和工具开发商共同认可的数
据挖掘过程模型。
CRISP-DM 在世界范围内超过100 个成员公司的支持,其中包括:
数据挖掘技术开发商,有 IBM, SAS, SGI, Data Distilleries, Magnify 等;
系统提供商,有 Cap Gemini,ICL Retail 等;
最终用户,包括 BT, Daimler-Benz, ABB, Lloyds Bank, AirTouch 等。
3.2.3 数据挖掘的处理过程
数据挖掘是一个高级处理过程,它从数据集中识别出以模式表示的知识。
数据挖掘包括以下步骤:
1.数据准备
数据挖掘的处理对象是大量的数据,这些数据一般存储在业务数据库系统
中,是长期积累的结果。但往往不合适直接在这些数据上进行知识挖掘,需要
做一些准备工作,也就是数据的预处理。数据预处理包括数据的选择(选择相
关数据)、净化(消除噪音、冗余数据)、推测(推算缺值数据)、转换(离散型
数据与连续型数据之间的转换)、数据缩减(减少数据量)等。
数据准备是数据挖掘的第一个步骤,也是比较重要的一个步骤。数据准备
是否做好将影响到数据挖掘的效率和准确度以及最终模式的有效性。
2.数据分析
数据分析是数据挖掘中最为关键的步骤,它根据数据挖掘的目标,选取相
应算法的参数,分析数据,得到可能形成知识的模式模型。目前采用较多的技
术有决策树、分类、聚类、粗糙集、关联规则、神经网络、遗传算法等。
18
3.模式的评估、解释
通过上面步骤所得到的模式,有可能是没有意义或没有实用价值的,因此
需要评估,确定哪些是有效的、有用的模式。此外,大部分模式是用数学手段
描述的表达式,很难被人理解,还需要将其解释成可理解的方式以呈现给用户,
亦即上文说的数据展示。
4.知识运用
发现知识是为了运用,如何使知识能被运用也是数据挖掘的步骤之一。运
用知识有两种方法:一种是只需看知识本身所描述的关系或结果,就可以对决
策提供支持;另一种是要求对新的数据运用知识,由此可能产生新的问题,而
需要对知识做进一步的优化。
数据挖掘过程可能需要多次的循环反复,每一个步骤一旦与预期目标不
符,都要回到前面的步骤,重新调整,重新执行。
3.2.4 数据挖掘的典型模式
模式有很多种,按功能可分有两大类:预测型(Predictive)模式和描述型
(Descriptive)模式。
预测型模式是可以根据数据项的值精确确定某种结果的模式。挖掘预测型
模式所使用的数据也都是可以明确知道结果的。例如,根据各种动物的资料,
可以建立这样的模式:凡是胎生的动物都是哺乳类动物。当有新的动物资料时,
就可以根据这个模式判别此动物是否是哺乳动物。
描述型模式是对数据中存在的规则做一种描述,或者根据数据的相似性把
数据分组。描述型模式不能直接用于预测。例如,在地球上,70%的表面被水
覆盖,30%是土地。
在实际应用中,根据模式的实际作用往往可以细分为以下六种:
分类(Classification)、回归(Regression)、时间序列(Time Series)、聚类
(Clustering)、相关分析(Association Analysis)、序列发现(Sequence Discovery)。
分类和回归主要用于预测,相关分析和序列发现主要用于描述,聚类则二者皆
可。
1.分类(Classification)
分类模式是一个分类函数(分类器),能够把数据集中的数据项映射到某个
给定的类上。分类模式往往表现为一棵分类树,根据数据的值从树根开始搜索,
沿着数据满足的分支往上走,走到树叶就能确定类别。给定类的属性不能太多,
也就是树的分支不能太多。
2.回归(Regression)
19
回归用一系列已经存在的数值和它们的属性来预测连续型变量的数值。
与分类不同的是,分类的输出是离散型的变量,回归输出的是连续型的变量。
3.时间序列(Time Series)
与回归类似,时间序列也用于预测,所不同的是,时间序列基于时间的各
个层次,如一周七天,一年十二月。
4.聚类(Clustering)
聚类模式以“物以类聚”的原
展开阅读全文