中国电信集团公司全国计费结算中心 李连祥 卜小明 刘晓亮
一、 引言
电信市场开放、竞争的不断加剧,促使电信运营商下大力气进行运营支撑系统建设,以保证企业核心竞争力方面的优势,最终确定在未来电信市场竞争过程中的有利地位。中国电信集团公司全国计费结算中心(以下简称全国中心)做为中国电信总部直属的计费清算部门,清醒地熟悉到数据仓库、商业智能(BI)技术在电信领域利用后所产生的重要作用,始终将电信市场经营决策支持系统(以下简称BI系统)的建设做为中国电信未来发展的生命线来抓。
早在1996年底,全国中心的技术人员就开始追踪数据仓库技术,并尝试在电信计费领域加以应用,对于相关市场猜测、经营分析工作起到了显著的支撑作用,加大了电信市场经营决策科学化的力度。1999年底,利用全国中心小规模BI系统进行了国际电话资费调整工作的猜测,对于选择资费优惠的国家、费率优惠的通话时长门限值等的确定,起到了良好的作用。
2000年初,全国中心结合市场经营部门的需求,开始国际通信结算摊分系统的规划、设计、建设工作,其中包括BI系统建设的内容。根据几年来实际工作中摸索的经验及体会,全国中心提出了如下建设目标:
1.建设中国电信行业第一个真正意义上的电信市场经营决策支持系统。其内涵为:以DATA MINING技术的实际应用为建设重点,以辅助和支撑市场猜测工作为目标,以发现海量数据中的隐含信息为立足点。
2.建设独立的、综合性的、涵盖全业务的BI系统。其内涵为:BI系统建设作为独立与应用系统的系统,在支撑国际通信计费结算系统的同时,能够支持国家骨干智能网计费系统、国家骨干IP网计费系统、国内长途计费系统、网间结算系统等。
3.以具体数据处理为基础。各专业系统一律向BI系统提供原始具体话单(或经处理后的最小粒度统计数据),并经星型模式转储,在此基础上支持DTMA MINING处理、OLAP处理。各专业具体数据保存两份,一份存入关系数据库供业务系统使用,一份存入多维数据库供BI系统使用。
BI系统建设于2001年5月开始。在中国电信集团公司总部的领导和各省公司计费结算中心的协助下,经过全国中心BI系统建设项目组与服务厂商的共同努力,该系统于2001年7月开始提供在线数据展示及其他功能的试运行,2001年9月通过初验。目前该系统运行稳定,效果良好,完全达到了工程建设预期要求。
二、 系统结构
中国电信全国计费结算中心BI系统包含数据模型治理模块、数据转移模块、数据仓库模块、决策支持应用平台等组成部分,下面分别介绍各个部分的功能。
1.数据模型治理模块
数据仓库和决策支持系统的性能、可用性和扩展能力与其模型设计质量具有紧密的联系。在需求分析定义、系统设计和具体设计阶段,需要在深入理解电信的业务流程和需求的基础上,将业务规则转换为逻辑模型,并逐渐细化为针对特定目标数据库的物理模型。
数据仓库模型是决策支持系统中最主要的源数据类型之一,是数据仓库建库和治理、定义数据转移规则和流程以及设计数据仓库和前端应用接口的重要依据。当需要对决策支持系统结构进行更改时,必须首先检查相应的数据模型是否需要变化以及怎样变化,再对决策支持系统的其他模块进行修改。
2.数据转移模块
数据转移模块将原有各专业计费系统所提供的具体数据和外部数据源的数据按照数据仓库模型整合到数据仓库系统中去,在这个过程中需要完成数据的抽取、清洗、转换、整合、传输、加载等操作,是决策支持系统构建过程中最为复杂的一个环节。数据转移模块主要解决以下问题。
(1)确定要抽取的源数据,这里主要从以下业务系统中抽取数据,如国际通信计费结算系统、国家骨干智能网计费系统、国家骨干IP网计费结算系统、各省国内长途集中计费系统、网间结算系统等等。在本系统中,国际通信专业集中了经由中国电信北京、上海、广州三个国际出入口局和哈尔滨、青岛、福州三个边境局出入的国际来、去、转电话全部具体话单(每月约为1.1亿张);国家骨干智能网专业集中了全网省际漫游的智能网业务全部具体话单(每月约为2000万张)、国家骨干IP网专业集中了全网省际漫游、国际漫游的全部具体结算话单(每月约为2000万张)。上述数据在经各专业计费系统完成相关计费处理的同时,经过相应的清洗、整理,进入BI系统的多维数据库转储。
(2)确定如何抽取数据
抽取数据可以采用文件方式或数据库直接抽取两种方式,而文件方式又可以分为主动文件抽取和被动文件抽取。目前全国中心一律采用文件方式抽取,经一段时间后台运行维护质量将得以稳定,那时将采用数据库直接抽取方式工作。
(3)确定抽取数据的频率和时间,这里必须设置为业务系统不繁忙的时段。目前各专业数据抽取的频度基本上与相关计费系统处理的频度相同,只是将处理时间做适当的分离,避免内部计费生产网络出现较高负荷。
(4)对来自不同数据源的数据进行一致性转换。
(5)合并来自不同数据源的信息,去除重复行。
(6)定义取值范围。
(7)进行匹配和清除。
(8)对同组或相关数据进行聚合或汇总计算。
(9)将数据源中的单一信息按照数据仓库的需要进行分解。
(10)对数据进行重组或重构。
(11)统一计量单位。
(12)将代码转换为完整的有实际意义的描述。
(13)确定数据加载的目标数据库。
(14)确定数据加载类型(批量装载、增量更新、原位更新、删除等)。
(15)对数据加载进行时间调度。
3.数据仓库模块
数据仓库模块包括如下三个数据存储部件。
(1)分段存储区
分段存储区是为了保证数据移动的顺利进行而开设的阶段性数据存储空间,需要进入数据仓库的各专业计费数据首先直接快速传输到分段存储区,再从分段存储区经过清洗、转换、映射等复杂的数据移动处理转移到目标数据仓库中。从各专业计费系统到分段存储区的数据传输,尽量避免进行数据处理,以保证数据的快速导入而尽量减小对计费系统造成的压力。分段存储区的数据也可以作为数据仓库系统的备份数据。
在开始加载数据后,首先将各个系统的历史数据转移到数据仓库中,以后系统运行过程中就只需要定期地增量加载数据。
(2)基础数据仓库
基础数据仓库的数据直接来源于对分段存储区数据的抽取,但数据结构完全按照决策支持的需求而设计成星型结构(或雪花结构),在设计中兼顾系统未来的发展变化和数据查询、访问的效率。在抽取过程中,对数据进行了完整性和有效性检查,对冗余和不一致的数据进行了清洗和转换。基础数据仓库中的数据量将非常庞大。
(3)数据集市
数据集市是数据仓库的子集,通常已经将具体数据聚合为汇总数据,其主要目的是支持各种不同的前端决策支持应用和其他业务系统的信息需求。数据集市的数据通过对基础数据仓库中数据的复制、分布或聚合而得到,数据结构设计为星型结构,可以直接支持通过R-OLAP服务器的多维分析。
4.多维数据库模块
在分析各专业计费结算数据时,从不同的角度来审阅业务的衡量数值是一种很自然的思考模式。例如,考虑商品的销售额,有时需要比较不同商品在同一地区的销售额。有时需要比较同一商品在不同地区的销售额,如此等等。这种分析方式叫做“多维分析”。简单地说就是,每一维即是一个分析的角度。在数据仓库技术及其提供的工具出现之前,每一个不同角度的分析都需要信息技术(IT)人员制作相应的报表。这样做不单耗费资源,而且决策人员也不能对业务上的变化及时采取相应的行动。现在的数据仓库产品中提供的OLAP(在线分析)工具就是为这种需要而产生的。这种工具的主要功能是根据用户所选择的分析角度,事先计算好一些辅助结构以及每一维各层次所需的汇总,以便在查询时能尽快抽取到所要的记录,并快速地从一维转变到另一维。这样一来,用户就可以在较短的时间内从各种不同的角度来审阅其业务的经营情况。“在线”一词形容的就是这种机动的、快速显现的功能。
5.决策支持应用平台
决策支持应用平台后端连结数据仓库模块,向决策支持系统用户提供OLAP分析、灵活查询、固定格式报表、灵活报表等不同层次的应用,满足电信的业务人员多种多样的信息需求,促进企业决策的科学化。决策支持应用平台主要包括分析模块和报表模块等组成部分。
(1)分析模块
分析模块是电信决策支持系统的主要数据展现和分析手段,企业用户通过客户端或浏览器与OLAP服务器连接,快速、一致、交互地访问各种可能的信息视图,洞察数据深处,把握隐于其中的规律。分析模块能够帮助企业中的决策人员、业务分析人员、数据分析人员完成各种OLAP需求。
在不同层次之间计算和建模;
从不同角度切割数据集合进行分析;
从宏观到微观,对数据进行深入分析;
从微观到宏观,对数据进行汇总分析;
查询底层细节数据;
对不同数据集合进行基于多个角度的比较。
(2)报表模块
决策支持系统的总体需求中除对分析功能提出要求外,也对完成各种固定格式的或灵活的报表提出了需求。报表模块根据电信的需要生成大量的企业内部使用或上报的规定格式报表,同时也可以根据需要生成用户临时要求的不同格式的报表。这些报表的数据来源多种多样,报表的复杂程度也各不相同。在报表生成周期上,既有年报、季报、月报、周报、日报等固定时间间隔的报表,也有一次性或临时生成的报表。
三、 数据挖掘模块
数据挖掘又称为KDD(数据库中的知识发现),就是使用各种计算及分析方法(如聚类分析、猜测分析等),从大量的数据中找寻数据与数据之间的关系。一个细心的决策人员,往往能从这些挖掘出来的关系得到意想不到的启示,从而帮助他在激烈的市场竞争中取得成功。数据挖掘的步骤:
1.数据挖掘的特点
数据挖掘过程首先要从数据仓库中选择要分析的数据,并对这些数据进行转换(如将某些字段离散化等)。然后选择挖掘的算法对转换后的数据进行处理,并对得到的结果进行分析,得到可理解的信息。由图2可以发现数据挖掘的几个特点。
(1)对挖掘所得到的信息必须再经过整合和验证,才能变成可以作为决策支持之用的报告;
(2)数据挖掘要得到一个有用的结果,必须经过多次反复,不断地修正数据、模型等等要素。由此可见,数据挖掘是个动态的过程。
数据挖掘提供了各种各样的算法来解决不同的商业问题,如聚类算法、关联分析、猜测、时间序列分析等等。下面就结合全国中心BI系统建设过程中存在的现实问题和需要,对不同的算法的应用进行具体的分析。
2.聚类分析
聚类就是对所有的数据记录划分到几个类(或组),使相似程度大的记录归入同一个记录,而不相似的记录归入不同的类。聚类的目的就是把所有的数据记录划分为几个类,而每个类中的记录具有共同或相近的属性特征。它在客户分群中有着广泛的应用。利用各种业务系统中的数据对客户进行聚类,不仅可以得到不同类别的客户具有那些不同的消费特点,还可以发现我们的老客户都具有怎样的特点,某项业务的客户具有什么特点,新出现某项业务后最应该向哪个类别中的用户进行推广等等。这样就使电信企业可以根据不同种类的客户采用不同的策略(即提供个性化的服务)。
聚类分析算法种类繁多,这里就介绍一种利用神经网络进行聚类的算法。
神经网络聚类算法大多采用自组织特征映射(SOM)神经网络。在SOM网络中,邻近的各个神经元通过彼此侧向交互作用,相互竞争,自适应发展成检测不同信号(或模式)的非凡检测器。
当外界输入不同的样本到SOM网络中,一开始时,输入样本引起输出兴奋神经元的位置各不相同,但经过自组织形成一些神经元群,它们的分布反映了输入样本的特征。这些神经元群,假如在二位输出空间,则是一个平面区域,样本自学习后,在输出神经元层中排列成一张二维的映照图,功能相同的神经元靠得比较近,而功能不相同的神经元分得比较开,这个映射过程是用一个简单的竞争算法来完成的,其结果可以使一些无规则的输入自动排序,在连接权的调整中可以使权的分布与输入样本的概率密度分布相似。
案例:长途电话用户消费特征分组
方法:利用SOM算法,以北京地区国内长权用户为例,希望根据其若干月份国内长途电话“张数、通话时间、通话费用”为指标,对其消费特征进行聚类分析。
结论:可以自动把长话用户自动分为:
① 海外亲属类。该组用户的消费特征是只打少量“国际话单”,国内话单不发生。通过对应用户资料发现,该类用户大都集中在海淀、中关村一带,属于有海外亲属的用户,其很少的国际话单主要用于与亲属联系。
② 外省办事处。该组用户的消费特征是只打DDD话单,话单量较大。
③ 使馆类。该组用户的消费特征是只打IDD电话,量非常大,无DDD电话。
④ 中小公司类。该组用户实际上属于以“住宅户”申办的小公司,国际、国内电话都有,但国际量小、国内量大。
⑤ 名人类。该组用户经对应用户资料后发现,主要为外企知名人士、影视界名人、居住在高档别墅和公寓内的人士。 对该类用户不宜优惠,但应做好服务工作。
对策:根据以上的聚类结果,提出了如下推广业务的策略:
① 针对不同的用户,寄送不同的广告信息,提供不同的促销服务;
② 补充用户资料,更好地把握客户;
③ 在拥有定价权的前提下,对不同用户采取不同的资费政策。
3.关联分析
随着电信业务种类日益繁多,必须想到一种方法来有效地向用户推销这些业务。假如能够将业务数据转换成如此形式的关联规则:“假如客户使用了A业务,那么,在x%的情况下,他也可能使用业务B”,那么就可以向客户有针对性地进行业务推广。
依据不同分类原则,关联规则可以分为很多种类,如根据数值类型的不同,可以分为布尔型关联规则和量化关联规则;根据数据维数的不同,可以分为一维关联规则和多维关联规则等等。下面介绍一种最简单的支持度(Support)-置信度(Confidence)模型。
设Ì={i1,i2,…,im}为所有业务的集合,D为数据库中的事务数据集合。任意的T∈D,TÌ。对于AÌ,当AT时,则认为事务T包含A。当AÌ,BÌ和AB=,则关联规则表示为AB。在事务集D中,关联规则AB成立的支持度为s,这里s为事务集中包含AB的百分比(可以认为是概率P(AB))。同理在事务集D中,AB的置信度c为包含A的事务同时包含B的百分比(可以认为是概率P(BA))。可以用下式来表示:
support(AB)= P(AB) (1)
confidence(AB)= P(AB) (2)
同时满足最小支持度阈值(min_sup)和最小置信度阈值(min_conf)的规则就认为是强相关的或紧密相关的。
support(AB)>min_sup (3)
confidence(AB)>min_conf (4)
通过使用关联分析,可以非常方便地挖掘出各种电信业务之间内在关联规则。
4.时间序列猜测
时间序列猜测,就是对数值型数据,根据其历史数值,对其将来一段时间内的数值进行猜测。一般说来,猜测都需要有足够长时间的历史数据积累,在分析挖掘历史数据内在规律和趋势的基础之上,才能有效地进行猜测。
可以使用采用误差反传练习算法的多层前馈型神经网络来进行时间序列猜测。这种网络不仅有输入层节点、输出层节点,而且有一层或多层隐含节点。
网络的学习(或练习)过程由正向和反向传播两部分组成。在正向传播过程中,每一层神经元的状态只影响下一层神经元网络。假如输出层不能得到期望的输出,也就是说实际输出值与期望输出值之间有误差,那么转入反向传播过程,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,逐次向输入层传播去进行计算,然后再经过正向传播过程,这两个过程反复应用,使得误差逐渐减小。当误差达到所期望的要求时,网络的学习过程结束。
在各专业电信计费系统中,积累了大量的有关客户发展、新业务发展、投资等方面的历史数据。通过使用时间序列猜测模型,我们可以方便地对业务量、客户发展、新业务发展等值进行猜测,为设备扩容、新业务投资、经营分析提供有力的支持。
案例:国际通信结算摊分系统数据的业务量猜测
方法:针对国际通信结算摊分系统的具体计费数据,利用误差反传练习算法的多层前馈型神经网络对未来一段时间内的业务发生量进行猜测。
结论:猜测结果如图4所示。假如把握当前时间以前一段时间的国际通信(或其他业务)相关业务量特征,在当前时间之后的一段时间(称为猜测时间窗口)的相应通信业务量特征就可以基于以前的特征加以猜测。在图4的猜测结果中,平均错误率分别为0.106和0.12。当系统积累的数据量继续增大,平均错误率将进一步下降。
除了以上介绍的聚类分析、关联分析、时间序列猜测等算法以外,全国中心在BI系统建设过程中,针对DATA MINING技术还尝试了决策树、回归分析、概念树等等算法。每一种算法都有其非凡的用途,并且有时还需要把不同的算法结合起来进行挖掘分析。比如对客户聚类分析得到的结果,可以利用决策树得到每一个类别的用户定量特性。并且在得到这个定量特性后,可以将这个决策树作为CRM系统中的用户分类器以对新客户进行个性化分析。
四、 结论
一般来讲,一个30人左右的计费中心,具备较为理想的维护水平,可以具有3亿张详单/月的生产维护能力。同样详单量BI系统维护的负荷,我们感觉是同专业计费应用系统的1.5倍左右。目前全国中心各专业计费系统月处理负荷为1.5亿张详单,同样的详单量进行了多维转储等处理,因此总处理负荷为(1+1.5)*1.5=3.75亿张详单/月。由于BI系统上线运行,对全国中心运维工作的压力是相当大的。
BI系统上线以来,在进行必要的安全性处理的同时,已经通过中国电信集团公司内部办公网直接向国际业务、国内综合业务、综合统计、集团客户等部门提供在线展示等服务,运转情况总体上讲是比较理想的。我们的体会有以下几点。
1.电信运营商进行决策支持系统建设,必须立足于具体企业数据(主要包括计费数据、网管数据两大部分)的处理。假如决策支持系统的建设脱离最基础、最原始的数据为基础,建立在各种统计处理、后续加工的基础上,对于真实性、准确性、可用性的把握就不尽如人意。而把握数据处理的质量,正是各级计费部门的强项。
2.后台运维工作的水平高低,直接影响前台用户的使用,直接影响对各部门的支撑力度。假如计费部门的后台维护水平不达到足够高的程度,BI系统数据的可用性、实时性就必然无法保障。
3.通过BI系统的建设,各级计费部门未来的定位就非常清楚了。由于计费部门把握着电信运营商最高性能的计算机设备、拥有最多的计算机专业人员储备,同时又把握着最多的与市场经营密切相关的电信企业数据,因此在做好目前计费、结算、帐务处理的同时,完全可以向电信运营商的数据集中处理(计算)中心的方向转型,承担收集、整理各类型企业数据,进行深度加工、处理和计算,抽取隐含信息,提供经营决策的第一手材料,促进决策科学化水平的提高。