资源预览内容
第1页 / 共586页
第2页 / 共586页
第3页 / 共586页
第4页 / 共586页
第5页 / 共586页
第6页 / 共586页
第7页 / 共586页
第8页 / 共586页
第9页 / 共586页
第10页 / 共586页
亲,该文档总共586页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据挖掘技术及应用最全面理论最全面理论+最佳实践最佳实践目录n理论:南航李静教授n实践:广东移动案例(仅供学习交流,如需引用,请注明以上来源单位,谢谢!)(仅供学习交流,如需引用,请注明以上来源单位,谢谢!)内容提纲1. 概述概述2. 数据数据仓库与与OLAP技技术3. 数据挖掘技数据挖掘技术4. 数据挖掘在数据挖掘在电信信领域的域的应用用5.数据挖掘工具数据挖掘工具6. 数据挖掘数据挖掘实例例内容提纲n数据挖掘介绍n数据挖掘系统n数据挖掘算法n国际会议和期刊n课后研读的论文n主要参考资料I.数据挖掘介绍A.数据挖掘的由来B.数据挖掘的应用C.基本概念区分D.数据挖掘基本内容E.数据挖掘基本特征F.数据挖掘的其他主题A.数据挖掘的由来n背景n网络之后的下一个技术热点n数据爆炸但知识贫乏n从商业数据到商业信息的进化1.背景n人类已进入一个崭新的信息时代n数据库中存储的数据量急剧膨胀n 二十世纪末以来,全球信息量以惊人的速度急剧增长据估计,每二十个月将增加一倍。许多组织机构的IT系统中都收集了大量的数据(信息)。n目前的数据库系统虽然可以高效地实现数据的录入、查询、统计等功能,但无法发现数据中存在的关系和规则,无法根据现有的数据预测未来的发展趋势。为了充分利用现有信息资源,从海量数据中找出隐藏的知识,数据挖掘技术应运而生并显示出强大的生命力。n产生了一个新的研究方向:基于数据库的知识发现(KnowledgeDiscoveryinDatabase),以及相应的数据挖掘(DataMining)理论和技术的研究n随着大数据库的建立和海量数据的不断涌现,必然提出对强有力的数据分析工具的迫切需求。但现实情况往往是“数据十分丰富,而信息相当贫乏。”n快速增长的海量数据收集、存放在大型数据库中,没有强有力的工具,理解它们已经远远超出人的能力。因此,有人称之为:“数据坟墓”。n由于专家系统工具过分依赖用户或专家人工地将知识输入知识库中,而且分析结果往往带有偏差和错误,再加上耗时、费用高,故不可行。数据矿山数据矿山信息金块信息金块数据挖掘工具数据挖掘工具2.网络之后的下一个技术热点n大量信息在给人们带来方便的同时也带来了一大堆问题:n信息过量,难以消化n信息真假难以辨识n信息安全难以保证n信息形式不一致,难以统一处理3.数据爆炸但知识贫乏n随着数据库技术的迅速发展以及数据库管理系统的广泛应用,人们积累的数据越来越多。目前的数据库系统可以高效地实现数据的录入、查询、统计等功能,但无法发现数据中存在的关系和规则,无法根据现有的数据预测未来的发展趋势。缺乏挖掘数据背后隐藏的知识的手段,导致了“数据爆炸但知识贫乏”的现象。4.从商业数据到商业信息的进化进化阶段进化阶段商业问题商业问题支持技术支持技术产品厂家产品厂家产品特点产品特点数据搜集数据搜集(60(60年代年代) )“过去五年中我的过去五年中我的总收入是多少?总收入是多少?”计算机、磁带和磁盘计算机、磁带和磁盘IBMIBMCDCCDC提供历史性的、静提供历史性的、静态的数据信息态的数据信息数据访问数据访问(80(80年代年代) )“在新英格兰的分在新英格兰的分部去年三月的销售部去年三月的销售额是多少?额是多少?”关系数据库关系数据库(RDBMS)(RDBMS)结构化查询语言结构化查询语言(SQL)(SQL)ODBCODBCOracleOracleSybaseSybaseInformixInformixIBMIBMMicrosoftMicrosoft在记录级提供历史在记录级提供历史性的、动态数据信性的、动态数据信息息数据仓库数据仓库决策支持决策支持(90(90年代年代) )“在新英格兰的分在新英格兰的分部去年三月的销售部去年三月的销售额是多少?波士顿额是多少?波士顿据此可得出什么结据此可得出什么结论?论?”联机分析处理联机分析处理(OLAP)(OLAP)多维数据库多维数据库数据仓库数据仓库PilotPilotComshareComshareArborArborCognosCognosMicrostrategyMicrostrategy在各种层次上提供在各种层次上提供回溯的、动态的数回溯的、动态的数据信息据信息数据挖掘数据挖掘(正在流行)(正在流行)“下个月波士顿的下个月波士顿的销售会怎么样?为销售会怎么样?为什么?什么?”高级算法高级算法多处理器计算机多处理器计算机海量数据库海量数据库PilotPilotLockheedLockheedIBMIBMSGISGI其他初创公司其他初创公司提供预测性的信息提供预测性的信息KDD的出现n数据挖掘是八十年代投资AI研究项目失败后,AI转入实际应用时提出的。它是一个新兴的,面向商业应用的AI研究。n基于数据库的知识发现(KDD)一词首次出现在1989年举行的第十一届AAAI学术会议上。n1995年在加拿大蒙特利尔召开了第一届KDD国际学术会议(KDD95)。n由KluwersPublishers出版,1997年创刊的KnowledgeDiscoveryandDataMining是该领域中的第一本学术刊物。KDD的出现 随后,在1991年、1993年和1994年都举行KDD专题讨论会,汇集来自各个领域的研究人员和应用开发者,集中讨论数据统计、海量数据分析算法、知识表示、知识运用等问题。最初,数据挖掘是作为KDD中利用算法处理数据的一个步骤,其后逐渐演变成KDD的同义词。数据挖掘数据库技术统计学高性能计算人工智能机器学习可视化数据挖掘是多学科的产物KDD已经成为人工智能研究热点n目前,关于KDD的研究工作已经被众多领域所关注,如过程控制、信息管理、商业、医疗、金融等领域。n作为大规模数据库中先进的数据分析工具,KDD的研究已经成为数据库及人工智能领域研究的一个热点。B.数据挖掘的应用n电信 :流失n银行:聚类(细分), 交叉销售n百货公司/超市:购物篮分析 (关联规则)n保险:细分,交叉销售,流失(原因分析)n信用卡: 欺诈探测,细分n电子商务: 网站日志分析n税务部门:偷漏税行为探测n警察机关:犯罪行为分析n医学: 医疗保健英国电信需要发布一种新的产品,需要通过直邮的方式向客户推荐这种产品。使直邮的回应率提高了100电信GUS日用品零售商店需要准确的预测未来的商品销售量,降低库存成本。通过数据挖掘的方法使库存成本比原来减少了3.8%零售商店美国国内税务局需要提高对纳税人的服务水平。合理安排税务官的工作,为纳税人提供更迅捷、更准确的服务税务局银行n金融事务需要搜集和处理大量的数据,由于银行在金融领域的地位、工作性质、业务特点以及激烈的市场竞争决定了它对信息化、电子化比其它领域有更迫切的要求。利用数据挖掘技术可以帮助银行产品开发部门描述客户以往的需求趋势,并预测未来。美国商业银行是发达国家商业银行的典范,许多地方值得我国学习和借鉴。数据挖掘在银行领域的应用n美国银行家协会(ABA)预测数据仓库和数据挖掘技术在美国商业银行的应用增长率是14.9。n分析客户使用分销渠道的情况和分销渠道的容量;建立利润评测模型;客户关系优化;风险控制等nMellon银行使用数据挖掘软件提高销售和定价金融产品的精确度,如家庭普通贷款。n美国Firstar银行使用数据挖掘工具,根据客户的消费模式预测何时为客户提供何种产品。汇丰银行需要对不断增长的客户群进行分类,对每种产品找出最有价值的客户。营销费用减少了30银行C.基本概念区分n数据挖掘与知识发现n数据挖掘和数据仓库n数据挖掘与信息处理n数据挖掘与联机分析n数据挖掘与人工智能、统计学1.数据挖掘和知识发现数据挖掘(DataMining)从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。与之相似的概念称为知识发现。知识发现(KnowledgeDiscoveryinDatabases)是用数据库管理系统来存储数据,用机器学习的方法来分析数据,挖掘大量数据背后隐藏的知识,称为数据库中的知识发现。2.数据挖掘和数据仓库n大部分情况下,数据挖掘都要先把数据从数据仓库中拿到数据挖掘库或数据集市中。从数据仓库中直接得到进行数据挖掘的数据有许多好处。数据仓库的数据清理和数据挖掘的数据清理差不多,如果数据在导入数据仓库时已经清理过,那很可能在做数据挖掘时就没必要再清理一次了,而且所有的数据不一致的问题都已经解决了。数据源数据源数据仓库数据仓库各分公司各分公司数据集市数据集市分分 析析数据集市数据集市数据挖掘数据挖掘数据集市数据集市 数据挖掘库可能是数据仓库的一个逻辑上的子集,而不一定非得是物理上单独的数据库。但如果数据仓库的计算资源已经很紧张,那么最好还是建立一个单独的数据挖掘库。 当然为了数据挖掘也不必非得建立一个数据仓库,数据仓库不是必需的。建立一个巨大的数据仓库,把各个不同源的数据统一在一起,解决所有的数据冲突问题,然后把所有的数据导到一个数据仓库内,是一项巨大的工程,可能要用几年的时间花上百万的钱才能完成。只是为了数据挖掘,你可以把一个或几个事务数据库导到一个只读的数据库中,就把它当作数据集市,然后在它上面进行数据挖掘。数据源数据源数据挖掘库数据挖掘库3.数据挖掘与信息处理n信息处理信息处理基于查询,可以发现有用的信息。但是这种查询的回答反映的是直接存放在数据库中的信息。它们不反映复杂的模式,或隐藏在数据库中的规律。4.数据挖掘与联机分析nOLAP分析过程在本质上是一个演演绎推理推理的过程,是决策支持领域的一部分。传统的查询和报表工具是告诉你数据库中都有什么(whathappened),OLAP则更进一步告诉你下一步会怎么样(Whatnext)和如果采取这样的措施又会怎么样(Whatif)。用户首先建立一个假设,然后用OLAP检索数据库来验证这个假设是否正确。n数据挖掘在本质上是一个归纳推理推理的过程,与OLAP不同的地方是,数据挖掘不是用于验证某个假定的模式(模型)的正确性,而是在数据库中自己寻找模型。n数据挖掘和OLAP具有一定的互互补性性。在利用数据挖掘出来的结论采取行动之前,OLAP工具能起辅助决策作用。而且在知识发现的早期阶段,OLAP工具用来探索数据,找到哪些是对一个问题比较重要的变量,发现异常数据和互相影响的变量。这都有助于更好地理解数据,加快知识发现的过程。5.数据挖掘与人工智能、统计学n数据挖掘利用了人工智能和统计分析的进步所带来的好处。这两门学科都致力于模式发现和预测。n数据挖掘不是为了替代传统的统计分析技术。相反,它是统计分析方法学的延伸和扩展。大多数的统计分析技术都基于完善的数学理论和高超的技巧,预测的准确度还是令人满意的,但对使用者的要求很高。而随着计算机计算能力的不断增强,我们有可能利用计算机强大的计算能力只通过相对简单和固定的方法完成同样的功能。一些新兴的技术同样在知识发现领域取得了很好的效果,如神经元网络和决策树,在足够多的数据和计算能力下,它们几乎不需人工干预就能自动完成许多有价值的功能。n数据挖掘就是充分利用了统计学和人工智能技术的应用程序,并把这些高深复杂的技术封装起来,使人们不用自己掌握这些技术也能完成同样的功能,并且更专注于自己所要解决的问题。数据挖掘与统计学n数据挖掘分析海量数据n许多数据库都不适合统计学分析需要D.数据挖掘基本内容n数据挖掘的定义n数据挖掘的数据来源n数据挖掘的过程n数据挖掘的功能n数据挖掘的过程模型n数据挖掘的分类n数据挖掘的主要问题1.数据挖掘的定义n数据挖掘是从大量数据中提取或“挖掘”知识。n与数据挖掘类似但稍有不同含义的术语有:从数据库中发现知识(KnowledgeDiscoveryfrom/inDatabase,KDD)知识提取(Knowledgeextract)数据/模式分析(Data/Modelanalysis)。数据考古数据捕捞n技术上的定义n商业角度的定义技术上的定义n数据挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。商业角度的定义n数据挖掘是一种新的商业信息处理技术,其主要特点是对商业数据库中的大量业务数据进行抽取、转换、分析和其他模型化处理,从中提取辅助商业决策的关键性数据。数据挖掘的定义(续)n人们给数据挖掘下过很多定义,内涵也各不相同,目前公认的定义是由Fayyad等人提出的。n所谓基于数据库的知识发现(KDD)是指从大量数据中提取有效的、新颖的、潜在有用的、最终可被理解的模式的非平凡过程。2.数据挖掘的数据来源n关系数据库n数据仓库n事务数据库高级数据库系统和高级数据库应用n面向对象数据库n空间数据库n时间数据库和时间序列数据库n文本数据库和多媒体数据库n异种数据库nWWW3.数据挖掘过程n数据挖掘是一个反复迭代的人机交互处理过程。该过程需要经历多个步骤,并且很多决策需要由用户提供。n从宏观上看,数据挖掘过程主要由三个部分组成,即数据整理、数据挖掘和结果的解释评估。(1)定义商业问题 要想充分发挥数据挖掘的价值,必须要对目标有一个清晰明确的定义,即决定到底想干什么。否则,很难得到正确的结果。(2)建立数据挖掘库 数据准备工作大概要花去整个数据挖掘项目的50%-90%的时间和精力。一般来说,直接在公司的数据仓库上进行数据挖掘是不合适的,最好建立一个独立的数据集。 建立数据挖掘库可分成如下几个部分:a)数据收集b)数据描述c)选择d)数据质量评估和数据清理e)合并与整合f)构建元数据g)加载数据挖掘库h)维护数据挖掘库(3)分析数据 数据分析的目的:是找到对预测输出影响最大的数据字段,并决定是否需要定义导出字段。(4)准备数据 这是建立模型之前的最后一步数据准备工作。可分成4个部分:a)选择变量;b)选择记录;c)创建新变量;d)转换变量。(5)建立模型 对建立模型来说要记住的最重要的事是它是一个反复的过程。需要仔细考察不同的模型以判断哪个模型对你的商业问题最有用。 为了保证得到的模型具有较好的精确度和健壮性,需要一个定义完善的“训练验证”协议。有时也称此协议为带指导的学习。验证方法主要分为: a)简单验证法 b)交叉验证法:首先把原始数据随机平分成两份,然后用一部分做训练集另一部分做测试集计算错误率,做完之后把两部分数据交换再计算一次,得到另一个错误率,最后再用所有的数据建立一个模型,把上面得到的两个错误率进行平均作为最后用所有数据建立的模型的错误率。 c)自举法:是另一种评估模型错误率的技术。在数据量很小时尤其适用。与交叉验证一样模型是用所有的数据建立。(6)评价和解释 a) 模型验证。模型建立好之后,必须评价其结果、解释其价值。从测试集中得到的准确率只对用于建立模型的数据有意义。在实际应用中,随着应用数据的不同,模型的准确率肯定会变化。更重要的是,准确度自身并不一定是选择最好模型的正确评价方法。需要进一步了解错误的类型和由此带来的相关费用的多少。b)外部验证。无论我们用模拟的方法计算出来的模型的准确率有多高,都不能保证此模型在面对现实世界中真实的数据时能取得好的效果。经验证有效的模型并不一定是正确的模型。造成这一点的直接原因就是模型建立中隐含的各种假定。例如,在建立用户购买模式的模型时,可能没有考虑通货膨胀的影响,但实施模型时通货膨胀率突然由3%增加为17%,这显然会对人们的购买意向产生重大影响,因此再用原来的模型来预测客户购买情况必然会出现重大失误。(7)实施 模型建立并经验证之后,可以有两种主要的使用方法:第一种方法,是提供给分析人员做参考,由他通过察看和分析这个模型之后提出行动方案建议。比如可以把模型检测到的聚集、模型中蕴含的规则、或表明模型效果的图表拿给分析人员看。另一种方法:是把此模型应用到不同的数据集上。模型可以用来标示一个事例的类别,给一项申请打分等。还可以用模型在数据库中选择符合特定要求的记录,以用OLAP工具做进一步的分析。当提交一个复杂的应用时,数据挖掘可能只是整个产品的一小部分,虽然可能是最关键的一部分。例如,常常把数据挖掘得到的知识与领域专家的知识结合起来,然后应用到数据库中的数据。在欺诈检测系统中可能既包含了数据挖掘发现的规律,也有人们在实践中早已总结出的规律。KDD过程(续)KDD过程(续)n1.数据准备:了解KDD应用领域的有关情况。包括熟悉相关的背景知识,搞清用户需求。n2.数据选取:数据选取的目的是确定目标数据,根据用户的需要从原始数据库中选取相关数据或样本。在此过程中,将利用一些数据库操作对数据库进行相关处理。KDD过程(续)n3.数据预处理:对步骤2中选出的数据进行再处理,检查数据的完整性及数据一致性,消除噪声,滤除与数据挖掘无关的冗余数据,根据时间序列和已知的变化情况,利用统计等方法填充丢失的数据。n4.数据变换:根据知识发现的任务对经过预处理的数据进行再处理,主要是通过投影或利用数据库的其他操作减少数据量。KDD过程(续)n5.确定KDD目标:根据用户的要求,确定KDD要发现的知识类型。因为对KDD的不同要求会在具体的知识发现过程中采用不同的知识发现算法。如分类、总结、关联规则、聚类等。n6.选择算法:根据确定的任务选择合适的知识发现算法,包括选取合适的模型和参数。KDD过程(续)n7.数据挖掘:这是整个KDD过程中很重要的一个步骤。运用前面选择的算法,从数据库中提取用户感兴趣的知识,并以一定的方式表示出来(如产生式规则等)是数据挖掘的目的。n8.模式解释:对在数据挖掘步骤中发现的模式(知识)进行解释。经过用户或机器评估后,可能会发现这些模式中存在冗余或无关的模式,此时应该将其剔除。如果模式不能满足用户的要求,就需要返回到前面的某些处理步骤中反复提取。KDD过程(续)n9.知识评价:将发现的知识以用户能了解的方式呈现给用户。v在上述步骤中,数据挖掘占据非常重要的地位,它主要是利用某些特定的知识发现算法,在一定的运算效率范围内,从数据中发现出有关知识,决定了整个KDD过程的效果与效率。4.数据挖掘功能数据挖掘任务有两类:第一类是描述性挖掘任务:刻划数据库中数据的一般特性;第二类是预测性挖掘任务:在当前数据上进行推断,以进行预测。概念/类描述:特征化和区分n概念/类描述(class/conceptdescription):用汇总的、简洁的、精确的方式描述每个类和概念。n数据特征化(datacharacterization):是目标类数据的一般特征或特性的汇总。其中数据特征的输出形式有:饼图、条图、曲线、多维数据立方体、多维表等。n数据区分(Datadiscrimination):是将目标类对象的一般特性与一个或多个对比类对象的一般特性比较。关联分析(1)定义:关联分析 (association analysis):发现关联规则,这些规则展示“属性值”频繁地在给定数据集中一起出现的条件。关联规则(associationrule):“X Y”,即 A1 A2 Am B1 B2 Bn关联规则分为两类:一类是“多维关联规则”(multi-dimensionalassociationrule);另一类是“单维关联规则”(single-dimensionalassociationrule)。(2)实例age(x,“20.29”) income(X, “20K.29K”) buys(X, “CD_player”) support = 2%, confidence = 60%(1)定义 分类 (classification):是找出描述并区分数据类或概念的模型(或函数),以便能够使用模型预测类标记未知的对象的过程。注:导出模型(或函数)是基于对训练数据集(即其类标记已知的数据对象)的分析。(2)分类模型的导出方式分类规则(IF-THEN)、决策树、数学公式、神经网络等。(3)相关分析 (relevance analysis)一般情况下,相关分析需要在分类和预测之前进行,它试图识别对于分类和预测无用的属性,且这些属性应被排除。分类和预测(1)定义 聚类 (clustering):与分类和预测不同,它主要分析数据对象,而不考虑已知的类标记。一般情况下,训练数据中不提供类标记,因为不知道从何开始。聚类可以用于产生这种标记。(2)聚类或分组的原则“最大化类内的相似性、最小化类间的相似性”对象的簇(聚类)的形成办法为:使得在一个簇中的对象具有很高的相似性,而与其它簇中的对象很不相似。所形成的每个簇可以看作一个对象类,由它可以导出规则。聚类分析(1)定义 孤立点 (outlier):数据库中的那些与数据的一般行为或模型不一致的数据对象。大部分数据挖掘方法将孤立点视为噪声或异常而将其丢弃,然而,在一些实际应用中(如欺骗检测、军事情报分析等),罕见点事件可能比正常出现的那些更有趣。孤立点数据分析称为孤立点挖掘(outliermining)。(2)孤立点的检测方法第一种方法:统计试验检测方法。假定一个数据分布或概率模型,并使用距离度量,到其它聚类的距离很大的对象被视为孤立点。第二种方法:基于偏差点方法。通过考察一群对象主要特征上的差别识别孤立点。孤立点分析(1)定义 数据演变分析 (evolution analysis):描述行为随时间变化的对象的规律或趋势,并对其建模。演变分析包括时间相关数据的特征化、区分、关联、分类或聚类,最主要有三种演化分析方法:a)时间序列数据分析b)序列或周期模式匹配c)基于类似性的数据分析演变分析数据挖掘过程模型是确保数据挖掘工作顺利进行的关键。典型的过程模型有:(1)SPSS的5A模型评估(Assess)、访问(Access)、分析(Analyze)、行动(Act)、自动化(Automate)。(2)SAS的SEMMA模型采样(Sample)、探索(Explore)、修正(Modify)、建模(Model)、评估(Assess)。(3)跨行业数据挖掘过程标准CRISP-DM目前CRISP-DM仍在建立之中。(4)此外,TwoCrows公司的数据挖掘过程模型,它与正在建立的CRISP-DM有许多相似之处。5.数据挖掘过程模型6.KDD的分类n根据挖掘的数据库类型分类n根据挖掘的知识类型分类n根据所用的技术分类n根据应用分类7.KDD的主要问题n数据挖掘结果的表示和显示n处理噪声和不完全数据n模式评估兴趣度问题n数据挖掘算法的有效性和可伸缩性n并行、分布式和增量挖掘算法n异种数据库和全球信息系统挖掘信息E.数据挖掘基本特征nKDD和数据挖掘可以应用在很多领域中,它们具有如下一些公共特征:海量数据集数据利用非常不足在开发知识发现系统时,领域专家对该领域的熟悉程度至关重要最终用户专门知识缺乏有效的知识发现系统n为使知识发现系统更加有效,有几个软、硬件问题需要强调:为使数据服务更加详尽,必须研究基础的体系结构、算法和数据结构。解决存储管理中的新问题,开发有效的存储机制。高层次的查询语言成为重要的研究课题。描述多维对象的可视化工具在知识表示中将起重要作用。F.数据挖掘的发展趋势n视频和音频数据挖掘n科学和统计数据挖掘n数据挖掘的应用探索n可伸缩的数据挖掘方法n数据挖掘与数据库系统、数据仓库和Web数据库系统的集成n数据挖掘语言的标准化n可视化数据挖掘n复杂数据类型挖掘的方法nWeb挖掘n数据挖掘中的隐私保护与信息安全可视化数据挖掘n数据可视化n数据挖掘结果可视化n数据挖掘处理过程可视化n交互式的可视化挖掘数据可视化数据挖掘结果可视化VisualizationofdataminingresultsinSASEnterpriseMiner:scatterplotsVisualizationofassociationrulesinMineSet3.0VisualizationofadecisiontreeinMineSet3.0VisualizationofclustergroupingsinIBMIntelligentMiner数据挖掘过程可视化交互式的可视化挖掘II.数据挖掘系统n数据挖掘工具n数据挖掘过程n数据挖掘系统n如何选择数据挖掘系统n数据挖掘系统发展趋势A.数据挖掘工具n目前,世界上比较有影响的典型数据挖掘系统有:SAS公司的EnterpriseMinerIBM公司的IntelligentMinerSGI公司的SetMinerSPSS公司的ClementineSybase公司的WarehouseStudioRuleQuestResearch公司的See5还有CoverStory、EXPLORA、KnowledgeDiscoveryWorkbench、DBMiner、Quest等。B.数据挖掘过程步骤步骤步骤名称步骤名称 描述描述 1数据仓库数据仓库Data Data WarehouseWarehouse数据仓库管理用于决策支持的数据。在该步骤内,数据数据仓库管理用于决策支持的数据。在该步骤内,数据从操作型系统以及第三方的数据源聚集、清洗、以及转从操作型系统以及第三方的数据源聚集、清洗、以及转换到数据仓库中,供决策分析使用。换到数据仓库中,供决策分析使用。 2数据挖掘数据挖掘Data MiningData Mining在这个步骤中,数据从数据仓库抽取出来,用来产生预在这个步骤中,数据从数据仓库抽取出来,用来产生预测模型或者规则集。该步骤可以自动化。测模型或者规则集。该步骤可以自动化。 3预测模型预测模型Predictive Predictive ModelingModeling在该步骤内,为了产生一个优化的模型,一个或多个预在该步骤内,为了产生一个优化的模型,一个或多个预测模型被选择或者联合。这些预测模型可能从数据挖掘测模型被选择或者联合。这些预测模型可能从数据挖掘系统产生,也可能从统计模型中产生,或者通过第三方系统产生,也可能从统计模型中产生,或者通过第三方购买购买 。4预测记分预测记分Predictive Predictive ScoringScoring在这个步骤中,选择的预测模型对操作型数据或者交易在这个步骤中,选择的预测模型对操作型数据或者交易数据进行记分(数据进行记分(score) 。 C.数据挖掘系统n数据挖掘系统介绍n数据挖掘系统实施策略n数据挖掘系统接口1.数据挖掘系统介绍数据挖掘系统介绍数据挖掘系统结构数据挖掘系统进展数据挖掘系统结构数据仓库数据仓库数据清洗和集成数据清洗和集成过滤过滤数据库数据库数据库或数据仓库服务器数据挖掘引擎模式评价图形用户接口知识库知识库n数据库、数据仓库或其他信息库:这是一个或一组数据库、数据仓库、电子表格或其他类型的信息库。可以在数据上进行数据清理和集成。n数据库或数据仓库服务器:根据用户的数据挖掘请求,数据库或数据仓库服务器负责提取相关数据。n知识库:这是领域知识,用于指导搜索,或评估结果模式的兴趣度。n数据挖掘引擎:这是数据挖掘系统基本的部分,由一组功能模块组成,用于特征化、关联、分类、聚类分析以及演变和偏差分析。n模式评估模块:使用兴趣度度量,并与数据挖掘模块交互,以便将搜索聚焦在有趣的模式上。n图形用户界面:在用户和数据挖掘系统之间通信,允许用户与系统交互,指定数据挖掘具体任务。数据挖掘系统进展数据挖掘系统进展代代特征特征数据挖掘算数据挖掘算法法集成集成分布计分布计算模型算模型数据模数据模型型第一代第一代数据挖掘作数据挖掘作为一个独立为一个独立的应用的应用支持一个或者支持一个或者多个算法多个算法 独立的独立的系统系统单个机单个机器器向量数向量数据据第二代第二代和数据库和数据库以及数据以及数据仓库集成仓库集成多个算法:能多个算法:能够挖掘一次不够挖掘一次不能放进内存的能放进内存的数据数据数据管理系数据管理系统,包括数统,包括数据库和数据据库和数据仓库仓库同质同质/ /局局部区域的部区域的计算机群计算机群集集有些系统支有些系统支持对象、文持对象、文本、和连续本、和连续的媒体数据的媒体数据第三代第三代和预测模型和预测模型系统集成系统集成 多个算法多个算法数据管理和数据管理和预测模型系预测模型系统统intranet/intranet/extranetextranet网络计算网络计算支持半结构支持半结构化数据和化数据和webweb数据数据第四代第四代和移动数据和移动数据/ /各种计算数各种计算数据联合据联合 多个算法多个算法数据管理、数据管理、预测模型、预测模型、移动系统移动系统移动和各移动和各种计算设种计算设备备普遍存在的普遍存在的计算模型计算模型第一代数据挖掘系统n特点支持一个或少数几个数据挖掘算法挖掘向量数据(vector-valued data)数据一般一次性调进内存进行处理典型的系统如Salford Systems公司早期的CART系统(www.salford-systems.com)n缺陷如果数据足够大,并且频繁的变化,这就需要利用数据库或者数据仓库技术进行管理,第一代系统显然不能满足需求。CBAn新加坡国立大学。基于关联规则的分类算法,能从关系数据或者交易数据中挖掘关联规则,使用关联规则进行分类和预测第二代数据挖掘系统n第二代数据挖掘系统支持数据库和数据仓库,和它们具有高性能的接口,具有高的可扩展性。例如,第二代系统能够挖掘大数据集、更复杂的数据集、以及高维数据。这一代系统通过支持数据挖掘模式(dataminingschema)和数据挖掘查询语言(DMQL)增加系统的灵活性。第二代数据挖掘系统(续)n特点与数据库管理系统(DBMS)集成支持数据库和数据仓库,和它们具有高性能的接口,具有高的可扩展性能够挖掘大数据集、以及更复杂的数据集通过支持数据挖掘模式(data mining schema)和数据挖掘查询语言(DMQL)增加系统的灵活性典型的系统如DBMiner,能通过DMQL挖掘语言进行挖掘操作n缺陷只注重模型的生成,如何和预测模型系统集成导致了第三代数据挖掘系统的开发DBMinerSASEnterpriseMiner第三代数据挖掘系统n第三代的特征是能够挖掘Internet/Extranet的分布式和高度异质的数据,并且能够有效地和操作型系统集成。这一代数据挖掘系统关键的技术之一是提供对建立在异质系统上的多个预测模型以及管理这些预测模型的元数据提供第一级别(firstclass)的支持。第三代数据挖掘系统n特点和预测模型系统之间能够无缝的集成,使得由数据挖掘软件产生的模型的变化能够及时反映到预测模型系统中由数据挖掘软件产生的预测模型能够自动地被操作型系统吸收,从而与操作型系统中的预测模型相联合提供决策支持的功能能够挖掘网络环境下(Internet/Extranet)的分布式和高度异质的数据,并且能够有效地和操作型系统集成n缺陷不能支持移动环境SPSSClementine以PMML的格式提供与预测模型系统的接口第四代数据挖掘系统n第四代数据挖掘系统能够挖掘嵌入式系统、移动系统、普适(ubiquitous)计算设备产生的各种类型的数据。第四代数据挖掘系统n特点目前移动计算越发显得重要,将数据挖掘和移动计算相结合是当前的一个研究领域。第四代软件能够挖掘嵌入式系统、移动系统、和普适(ubiquitous)计算设备产生的各种类型的数据第四代数据挖掘原型或商业系统尚未见报导,PKDD2001上Kargupta发表了一篇在移动环境下挖掘决策树的论文,Kargupta是马里兰巴尔的摩州立大学(UniversityofMarylandBaltimoreCounty)正在研制的CAREER数据挖掘项目的负责人,该项目研究期限是2001年4月到2006年4月,目的是开发挖掘分布式和异质数据(Ubiquitous设备)的第四代数据挖掘系统。第一代系统与第二代相比因为不具有和数据管理系统之间有效的接口,所以在数据预处理方面有一定缺陷第三、四代系统强调预测模型的使用和在操作型环境的部署第二代系统提供数据管理系统和数据挖掘系统之间的有效接口第三代系统另外还提供数据挖掘系统和预测模型系统之间的有效的接口目前,随着新的挖掘算法的研究和开发,第一代数据挖掘系统仍然会出现,第二代系统是商业软件的主流,部分第二代系统开发商开始研制相应的第三代数据挖掘系统,比如IBMIntelligentScoreService。第四代数据挖掘原型或商业系统尚未见报导2.数据挖掘系统实施策略第一代数据挖掘系统,直接将需要挖掘的数据一次性调入内存,这些系统的成功依赖于团队和数据的质量如果数据足够大,并且频繁的变化,这就需要利用数据库或者数据仓库技术进行管理,因此第二代数据挖掘系统是必须的。不幸的是,目前的数据仓库设计是方便OLAP操作的,而不是数据挖掘应用。这意味着真正的第二代数据挖掘系统必须使用自己专门的数据管理系统,作为弥补目前数据库及数据仓库管理系统的缺陷,直到数据库和数据仓库厂商对合适的数据挖掘原语提供充分的支持。第二代数据挖掘系统应该能够产生PMML或者类似PMML的开放格式,使得挖掘结果能够与操作型系统集成。 实施策略(续)如果使用多个预测模型,或者预测模型需要经常修改,那么应该选择正在出现的第三代数据挖掘系统,以支持这些功能,当然第三代系统也能与数据库或者数据仓库集成。第三代数据挖掘系统和预测模型系统的一个重要的优点是由数据挖掘系统产生的预测模型能够自动地被操作型系统吸收,从而与操作型系统中的预测模块相联合提供决策支持的功能。目前在公司的日常营运中,移动计算越发显得重要,第四代数据挖掘系统能够在这儿起关键的作用。将数据挖掘和移动计算相结合是当前的一个研究领域。第一代数据挖掘系统仍然未发展完全,第二代、第三代数据挖掘系统已经出现。目前未见到任何第四代数据挖掘系统的报导。3.数据挖掘系统接口p第二代数据挖掘系统提供数据仓库和数据挖掘系统之间的有效的接口p第三代系统另外还提供数据挖掘系统和预测模型系统之间的有效的接口p数据管理系统和数据挖掘之间的接口,可以作为如何标记合适的数据挖掘原语的一个研究问题。数据挖掘原语能够在数据仓库或者数据库内部执行以改善数据挖掘系统的性能。pPMML是数据挖掘系统与预测模型系统之间的一个标准接口。D.如何选择数据挖掘系统n不同的数据挖掘系统相似性较小不同的功能模块和方法处理的数据集不同如何选择数据挖掘系统(续)n数据类型(关系、文本、事务、时间序列、空间)n系统问题(运行的操作系统)n数据源(ODBC、多关系数据源)n数据挖掘的功能和方法n数据挖掘系统和数据库或数据仓库系统的结合n可伸缩性(数据库的大小和维度)n可视化工具n数据挖掘查询语言和图形用户接口E.数据挖掘系统发展趋势n集成第二代、第三代、以及第四代数据挖掘和预测模型系统将与数据仓库合并,以提供一个集成的系统来管理日常的商业过程。n嵌入另一方面,二、三、四代数据挖掘技术将不断发展和成熟,能够和各种应用集成,成为一种嵌入式的技术(embeddedtechnology)。1.8 未来趋势未来趋势n未来的未来的热点点应用用领域域 网站的数据挖掘(网站的数据挖掘(Web site data miningWeb site data mining) 生物信息或基因的数据挖掘生物信息或基因的数据挖掘 文本挖掘(文本挖掘(Textual miningTextual mining) 多媒体挖掘多媒体挖掘 1.8 未来趋势未来趋势n网站的数据挖掘(网站的数据挖掘(Web site data miningWeb site data mining) 当前Internet上各类电子商务网站风起云涌,电子商务业务的竞争比传统的业务竞争更加激烈。客户从一个电子商务网站转换到竞争对手那边,只需点击几下鼠标即可,电子商务环境下客户保持比传统商业更加困难。若想在竞争中生存进而获胜,您必须比竞争对手更了解客户。电子商务网站每天都可能有上百万次的在线交易,生成大量的记录文件(Log files)和登记表,如何对这些数据进行分析和挖掘,及时地了解客户的喜好、购买模式,甚至是客户一时的冲动,设计出满足于不同客户群体需要的个性化网站,进而增加竞争力,几乎变得势在必行。1.8 未来趋势未来趋势n网站的数据挖掘(网站的数据挖掘(Web site data miningWeb site data mining) 就分析和建立模型的技术和算法而言,网站的数据挖掘和原来的数据挖掘差别并不是特别大,很多方法和分析思想都可以运用。所不同的是网站的数据格式有很大一部分来自于点击流,和传统的数据库格式有区别。因而对电子商务网站进行数据挖掘所做的主要工作是数据准备。目前,有很多厂商正在致力于开发专门用于网站挖掘的软件。1.8 未来趋势未来趋势n生物信息或基因的挖掘生物信息或基因的挖掘 生物信息或基因数据挖掘则完全属于另外一个领域,在商业上很难讲有多大的价值,但对于人类却受益非浅。例如,基因的组合千变万化,得某种病的人的基因和正常人的基因到底差别多大?能否找出其中不同的地方,进而对其不同之处加以改变,使之成为正常基因?这都需要数据挖掘技术的支持。 对于生物信息或基因的数据挖掘和通常的数据挖掘相比,无论在数据的复杂程度、数据量还有分析和建立模型的算法方面,都要复杂得多。从分析算法上讲,更需要一些新的和高效的算法。现在很多厂商正在致力于这方面的研究。但就技术和软件而言,还远没有达到成熟的地步。 1.8 未来趋势未来趋势n文本挖掘(文本挖掘(Textual miningTextual mining) 文本挖掘是人们关心的另外一个话题。例如,在客户服务中心,把同客户的谈话转化为文本数据,再对这些数据进行挖掘,进而了解客户对服务的满意程度和客户的需求以及客户之间的相互关系等信息。 无论是在数据结构还是在分析处理方法方面,文本数据挖掘和数据挖掘相差很大。文本挖掘并不是一件容易的事情,尤其是在分析方法方面,还有很多需要研究的专题。目前市场上有一些类似的软件,但大部分方法只是把文本移来移去,或简单地计算一下某些词汇的出现频率,并没有真正实现语义上的分析功能。 1.8 未来趋势未来趋势n多媒体挖掘(多媒体挖掘(Multimeadia MiningMultimeadia Mining)基于描述的检索系统基于图像的描述创建索引并实现对象检索,如关键字、标题、尺寸和创建时间等;人工实现则极为费时、费力;自动实现则往往结果不理想。基于内容的检索系统支持基于图像内容的检索,例如颜色、质地、形状、对象及小波变换C-BIRD: Content-Based Image Retrieval from Digital librariesSearchnby image colorsnby color percentagenby color layoutnby texture densitynby texture Layoutnby object modelnby illumination invariancenby keywords1.8 未来趋势未来趋势n未来的研究未来的研究热点点 发现语言的形式化描述言的形式化描述 寻求数据挖掘求数据挖掘过程中的可程中的可视化方法化方法 研究在网研究在网络环境下的数据挖掘技境下的数据挖掘技术 加加强强对各种非各种非结构化数据的挖掘构化数据的挖掘 知知识的的维护更新更新 1.8 未来趋势未来趋势n发现语言的形式化描述言的形式化描述 即研究专门用于知识发现的数据挖掘语言,寻求类似于数据库中SQL语言一样的数据挖掘语言,使挖掘过程走向形式化和标准化。 n寻求数据挖掘求数据挖掘过程中的可程中的可视化方法化方法 使知识发现的过程能够被用户理解,也便于在知识发现的过程中进行人机交互。 n研究在网研究在网络环境下的数据挖掘技境下的数据挖掘技术 特别是在因特网上建立DMKD服务器,并且与数据库服务器配合,实现Web挖掘。 1.8 未来趋势未来趋势n加加强强对各种非各种非结构化数据的挖掘构化数据的挖掘 如对文本数据、图形数据、视频图像数据、声音数据乃至综合多媒体数据的挖掘。 n知知识的的维护更新更新 数据挖掘的结果知识是具有时效性的,需要研究知识的维护更新技术,如知识的增量更新、模型的进化等。 III.数据挖掘算法n粗糙集n聚类n关联规则n决策树n模糊集n神经网络和支持向量机n回归分析粗糙集(RoughSet)n粗糙集理论是波兰数学家Z.Pawlak于1982年提出的,是一种新的处理含糊性(Vagueness)和不确定性(Uncertainty)问题的数学工具。n粗糙集理论的主要优势之一就在于它不需要关于数据的任何预备的或额外的信息。n粗糙集可以用于对信息系统的属性进行约简,即求出原有属性集合的一个子集,该子集具有与原属性集合相同的分类能力。n粗糙集已广泛应用于知识发现、机器学习、决策支持、模式识别、专家系统、归纳推理等领域。聚类(Clustering)n聚类(Clustering)是将物理或抽象的对象集合分成多个组的过程,聚类生成的组称为簇(Cluster),即簇是数据对象的集合。聚类就是要让生成的簇内部的任意两个对象之间具有较高的相似度,而属于不同簇的两个对象间具有较高的相异度。聚类分析n从统计学的观点看,聚类分析是对数据建模,从而简化数据的一种方法,作为多元统计分析的主要分支之一,聚类分析已被研究了很多年,主要集中在基于距离和基于相似度的聚类方法。n从机器学习的观点看,簇相当于隐藏模式,聚类是搜索簇的无监督学习过程。n从实际应用的角度看,聚类分析是数据挖掘的主要任务之一。数据挖掘领域主要研究面向大型数据库、数据仓库的高效和实用的聚类分析算法。聚类分析数据挖掘中的聚类分析n数据挖掘关心聚类算法的如下特性:处理不同类型属性的能力、对大型数据集的可扩展性、处理高维数据的能力、发现任意形状簇的能力、处理孤立点或“噪声”数据的能力、对数据顺序的不敏感性、对先验知识和用户自定义参数的依赖性、聚类结果的可解释性和实用性、基于约束的聚类等。n主要的数据挖掘聚类方法有:划分的方法、层次的方法、基于密度的方法、基于网格的方法、基于模型的方法等。关联规则nAgrawal针对大型超市的销售数据库建立了关联规则模型和数据挖掘算法。n所谓关联规则是指数据集中支持度和信任度分别满足给定阈值的规则。n几年来,在基于关联规则的算法研究中先后出现了AIS、SETM等数据挖掘算法。其中最著名的算法是R.Agrawal等人提出的Apriori。nApriori算法的核心思想是把发现关联规则的工作分为两步:第一步通过迭代检索出事务数据库中的所有频繁项集,即频繁项集的支持度不低于用户设定的阈值;第二步从频繁项集中构造出满足用户最低信任度的规则。决策树n决策树提供了一种展示类似“在什么条件下会得到什么值”这类规则的方法。比如,在贷款申请中,要对申请的风险大小做出判断,为了解决这个问题而建立的一棵决策树,从中我们可以看到决策树的基本组成部分:决策节点、分支和叶子。决策树中最上面的节点称为根节点,是整个决策树的开始。决策树(续)n决策树是一个类似树形结构的流程图,每个内部节点表明在一个属性上的测试,树枝描述测试结果,叶子节点指明分类或分类的分布情况。构造决策树的方法采用自上而下递归的方式,如果训练例子集合中的所有例子是同类的,就将其作为一个叶子节点,节点内容为该类别的标记。否则,根据某种策略确定一个测试属性,并按属性的各种取值把实例集合划分为若干个子集合,使每个子集上的所有实例在该属性上具有相同的属性值。然后,再依次递归处理各个子集,直到得到满意的分类属性为止。模糊集n美国加利福尼亚大学的L.A.Zadeh教授于1965年提出了模糊集。n模糊集合论用隶属程度来描述差异的中介过渡,是一种用精确的数学语言对模糊性进行描述的方法。n扎德提出了著名的复杂性与精确性的“不相容原理”。模糊数学的产生把数学的应用范围从精确现象扩大到模糊现象的领域。n模糊聚类方法对对象的这种不分明的类属性质进行了很好地表达和处理。n模糊集方法也可用于分类问题。神经网络和支持向量机n神经网络近来越来越受到人们的关注,因为它为解决大复杂度问题提供了一种相对来说比较有效的简单方法。神经网络可以很容易的解决具有上百个参数的。神经网络常用于两类问题:分类和回归。n需特别指出的是,在一般情况下,统计学习理论和支持向量机(SVM)比一般的神经网络更有效,而且可将SVM看作是广义化的神经网络。其优点是,具有深厚的数学基础,算法可靠、推广能力强,适用于小样本数据集的知识(或规则)发现。xyy=x+1X1Y1Y1回归分析Rank 1:nACM SIGMOD:Intl. Conf. on Management of DatanVLDB / PODS:Intl. Conf. on Very Large Data BasesnICDE:Intl. Conf. on Data EngineeringnSIGKDD:Intl. Conf. on Knowledge Discovery and Data MiningRank 1.5:nICDM:IEEE Intl. Conf. on Data MiningnSDM (SIAM):SIAM Data Mining ConferenceIV.有关国际会议和期刊Rank 2:nPKDD:European Conf. on Principles and Practice of Knowledge Discovery in DatabasesnPAKDD:Pacific-Asia Conf. on Knowledge Discovery and Data MiningnDASFAA:Intl. Conf. on Database Systems for Advanced ApplicationsOthers:nWWWnICMLnCVPRnNIPSnSIGIR与DM有关的国际会议(续)nDMKD (DAMI):Data Mining and Knowledge DiscoverynTKDE:IEEE Transaction on Knowledge and Data EngineeringnSIGKDD Explorations(关于KDD最新研究进展的综述论文较多)与DM有关的主要国际期刊nR.Agrawal,T. Imielinski,andA.Swami.Mining association rules between sets of items in large databases.In:Proceedings of ACM SIGMOD Intl. Conf. on Management of Data,pages207-216,May1993.nR.Agrawal,andR.Srikant.Fast algorithms for mining association rules in large databases.In:Proceedings of the 20th Intl. Conf. on Very Large Data Bases (VLDB),pages478-499,June1994.V.课后研读论文主要参考资料:1JiaweiHan,MichelineKamber著.范明,孟小峰等译.数据挖掘:概念与技术.机械工业出版社,2001.(注:DataMining:ConceptsandTechniques(SecondEdition)将于2005年11月正式出版)2JiaweiHan.DataMining:Principles&ResearchFrontiers(PPT).May23-27,2005.3DavidHand等著.张银奎等译.数据挖掘原理.机械工业出版社,2003.主要内容主要内容1. 概述概述2. 数据数据仓库与与OLAP技技术3. 数据挖掘技数据挖掘技术4. 数据挖掘在数据挖掘在电信信领域的域的应用用5.数据挖掘工具数据挖掘工具6. 数据挖掘数据挖掘实例例2 数据仓库与数据仓库与OLAP技术技术2.1 数据数据仓库2.2 ETL过程程2.3 电信信领域数据域数据仓库的的设计与与实现2.4 数据数据仓库的的应用用OLAP2.1 数据仓库数据仓库2.1.1 数据数据仓库的定的定义2.1.2 数据数据仓库的的组成成2.1.3 数据数据仓库的数据模型的数据模型2.1.4 数据数据仓库与数据与数据库的关系的关系数据仓库的定义n数据仓库综合和合并多维空间的数据.构造数据仓库涉及数据清理,数据集成和数据变换,可以看作数据挖掘的一个重要预处理步骤.n此外,数据仓库提供联机分析处理(OLAP)工具,用于各种粒度的多维数据的交互分析,有利于有效的数据泛化和数据挖掘.n构造数据仓库和OLAP已经成为知识发现过程的基本步骤.数据仓库的定义n自从自从NCR公司公司为Wal Mart建立了第一个数据建立了第一个数据仓库。n1996年,加拿大的年,加拿大的IDC公司公司调查了了62家家实现了数据了数据仓库的欧美企的欧美企业,结果表明:数据果表明:数据仓库为企企业提供提供了巨大的收益。了巨大的收益。n早期的数据早期的数据仓库大都采用当大都采用当时流行的客流行的客户/服服务器器结构。近年来分布式构。近年来分布式对象技象技术飞速速发展,整个数据展,整个数据仓库体系体系结构从功能上划分构从功能上划分为若干个分布式若干个分布式对象,象,这些分布式些分布式对象不象不仅可以直接用于建立数据可以直接用于建立数据仓库,还可以在可以在应用程序中向用用程序中向用户提供提供调用的接口。用的接口。nIBM的的实验室在数据室在数据仓库方面已方面已经进行了行了10多年的多年的研究,并将研究成果研究,并将研究成果发展成展成为商用商用产品。品。n其他数据其他数据库厂商在数据厂商在数据仓库领域也域也纷纷提出了各自提出了各自的解决方案。的解决方案。数据仓库的定义nIBM: 在其在其DB2UDB发布一年后的布一年后的1998年年9月月发布布5.2版,版,并于并于1998年年12月推向中国市月推向中国市场,除了用于,除了用于OLAP(联机分机分析析处理)的后台服理)的后台服务器器DB2 OLAP Server外,外,IBM还提提供了一系列相关的供了一系列相关的产品,包括前端工具,形成一整套解决品,包括前端工具,形成一整套解决方案。方案。nInformix公司公司: 在其在其动态服服务器器IDS(Informix Dynamic Server)中提供一系列相关)中提供一系列相关选件,如高件,如高级决策支持决策支持选件件(Advanced Decision Support Option)、)、OLAP选件件(MetaCube ROLAP Option)、)、扩展并行展并行选件件(Extended Parallel Option)等,)等,这种体系种体系结构构严谨、管理方便、索引机制完善,并行管理方便、索引机制完善,并行处理的效率更高,其中数理的效率更高,其中数据据仓库和数据和数据库查询的的SQL语句的一致性使得用句的一致性使得用户开开发更更加加简便。便。n前景:随着前景:随着计算机技算机技术的的发展,尤其是分布式技展,尤其是分布式技术的的发展,展, 数据数据仓库在我国有着广在我国有着广阔的的发展空展空间和良好的和良好的发展前景。展前景。例如:例如:由于由于银行商行商业化的步伐正在加大,各大中型化的步伐正在加大,各大中型银行在入世的机遇和行在入世的机遇和挑挑战下,开始重新考下,开始重新考虑自身的自身的业务,特,特别是信是信贷风险管理方面特管理方面特别注意,因而有关信注意,因而有关信贷风险管理和管理和风险规章的基于数据章的基于数据仓库的决的决策支持系策支持系统的需求逐的需求逐渐增多;增多;由于由于电子商子商务的迅速的迅速发展,越来越多的展,越来越多的电子商子商务网站,开始考网站,开始考虑如何将数据如何将数据仓库应用于商品用于商品销售分析、售分析、顾客的客的诚信度分析等,信度分析等,为客客户提供更提供更进一步的个性化服一步的个性化服务;如移如移动通信等各大型企通信等各大型企业也开始考也开始考虑着手着手进行决策支持以及数据行决策支持以及数据仓库规划。划。数据仓库的定义n微微软公司公司: 在其在其SQL Server7.0以及以及SQL Server2000中集成了代号中集成了代号为Plato的的OLAP服服务器。器。nSybase: 提供了提供了专门的的OLAP服服务器器Sybase IQ,并将其与数据并将其与数据仓库相关工具打包成相关工具打包成Warehouse Studio 。nPLATINUM: 提出了由提出了由InfoPump(数据(数据仓库建模建模与数据加与数据加载工具)和工具)和Forest&Trees(前端(前端报表工表工具)构成的一套具)构成的一套较有特色的整体方案。有特色的整体方案。 ; nOracle公司公司: 则推出从数据推出从数据仓库构建、构建、OLAP到数到数据集市管理等一系列据集市管理等一系列产品包(如品包(如Oracle Warehouse Builder、Oracle Express、DataMart Suit等)。等)。2.1.1 数据仓库的定义数据仓库的定义 数据仓库是在企业管理和决策中面向主题的、集成的、与时间相关的、不可修改的数据集合。 此定义由最为权威的、被称为“数据仓库之父”的William H. Inmon 先生给出。2.1.1 数据仓库的定义数据仓库的定义n面向主面向主题的的 是相对于传统数据库的面向应用而言的。所谓面向应用,指的是系统实现过程中主要围绕着一些应用或功能。而面向主题则考虑一个个的问题域,对问题域涉及到的数据和分析数据所采用的功能给予同样的重视。n典型的主典型的主题领域域 顾客、产品、事务或活动、保险单、索赔和账目。2.1.1 数据仓库的定义数据仓库的定义n集成的集成的 数据仓库中的数据来自各个不同的数据源(操作数据库)。由于历史的原因,各操作数据库的组织结构往往是不同的,在这些异构数据输入到数据仓库之前,必须经历一个集成过程。 2.1.1 数据仓库的定义数据仓库的定义n集成的集成的 最重要的特点。应用问题的设计人员制定出不同的设计决策,且表示方法不同。例如编码、命名习惯、实际属性和属性度量等方面不一致。 数据进入数据仓库时,需要消除各种不一致性。例如,数据仓库中顾客“性别”的编码,可采用“男/女”或“m/f”,采用哪种方式并不重要,重要的是在数据仓库中应该统一编码。如果应用数据编码为“X/Y”,则进入数据仓库时需要进行转换。 此外,对所有应用所涉及的问题都要考虑一致性。例如命名习惯、键码结构、属性度量以及数据特点等。2.1.1 数据仓库的定义数据仓库的定义n与与时间相关的相关的 数据仓库以维的形式对数据进行组织,时间维是数据仓库中很重要的一个维度。并且数据仓库中的数据时间跨度大,从几年甚至到几十年,称为历史数据。2.1.1 数据仓库的定义数据仓库的定义数据仓库中数据随时间变化的特性表现在:n数据仓库中的数据时间期限要远远长于操作型数据库中的数据时间期限。操作型数据库的时间期限一般是6090天,而数据仓库中数据的时间期限通常是510年。n操作型数据库含有“当前值”的数据,这些数据的准确性在访问时是有效的,同样当前值的数据能被更新。而数据仓库中的数据仅仅是一系列某一时刻生成的复杂的快照。n操作型数据的键码结构可能包含也可能不包含时间元素,如年、月、日等。而数据仓库的键码结构总是包含某一时间元素。 2.1.1 数据仓库的定义数据仓库的定义n不可修改的不可修改的 面向应用的事务数据库需要对数据进行频繁的插入、更新操作,而对于数据仓库中数据的操作仅限于数据的初始导入和记录查询。 操作型数据是一次访问和处理一个记录,可以对操作型数据库中的数据进行更新。但数据仓库中的数据则不同,通常是一起载入与访问的,在数据仓库环境中并不进行一般意义上的数据更新。 2.1.1 数据仓库的定义数据仓库的定义n数据仓库是语义上一致的数据存储,他充当决策支持数据模型的物理实现,并存放企业战略决策所需要的信息.n数据仓库也可以看作一种体系结构,通过将异构数据源中的数据集成在一起而构造,支持结构化/或专门的查询/分析报告和决策制定.2.1.1 数据仓库的定义数据仓库的定义 数据仓库是决策支持系统(Decision Support System, DSS,DSS)的基础。 在数据仓库中只有单一集成的数据源,并且数据是可访问的。所以与传统数据库相比,在数据仓库环境中DSS分析员的工作将较为容易。2.1.2 数据仓库的组成数据仓库的组成n一个数据仓库的大小一般都是在100GB以上n通常,数据仓库系统应该包含下列程序: (1)抽取数据与加载数据 (2)整理并转换数据(采用一种数据仓库适用的数据格式) (3)备份与备存数据 (4)管理所有查询(即将查询导向适当的数据源)2.1.2 数据仓库的组成数据仓库的组成数据仓库的管理器数据仓库的管理器n加加载管理器管理器 执行程序:抽取与加载程序 功能:抽取并加载数据、在加载数据之前与进行中执行简单的转换n仓库管理器管理器 执行程序:数据整理与转换程序、备份与备存程序 功能:转换并管理数据仓库数据、备份与备存数据n查询管理器管理器 执行程序:查询管理程序 功能:引导并管理数据仓库的查询加载管理器加载管理器n功能功能 支持数据抽取与加载n实现途径途径 (1)外购的软件工具 (2)针对特殊要求而编写程序、存储过程以及脚本文件加载管理器加载管理器 建建议 用户尽量选用适合的软件工具来协助进行整个加载管理的工作; 但是,因为源数据的特性存在很大的差异,数据仓库中加载管理器的功能无法一致,所以不可能完全使用外购的软件工具,而必须自行设计针对特殊需要而编写的程序、存储过程或是脚本文件。加载管理器的具体功能加载管理器的具体功能n抽取来自源系统的数据n将抽取的数据快速加载临时保存介质n执行简单的数据转换任务n将转换后数据加载至与数据仓库类似的数据结构之中仓库管理器仓库管理器n功能功能 执行管理一个数据仓库所需的必要程序n实现途径途径 (1)外购的系统管理工具 (2)针对特殊需要而编写的程序以及脚本文件n复复杂度度 因自动化的程度而异仓库管理器的具体功能仓库管理器的具体功能n检验各字段相互之间的关系与一致性n将临时保在存储介质中的数据转换与合并,然后加载至数据仓库n对数据仓库数据添加索引、视图、数据分区n根据需要进行数据的标准化n根据需要生成新的集合信息n更新已有的集合信息n备份数据仓库(完整或是递增式)n备存数据仓库中过时的数据(另存至其它存储介质)查询管理器查询管理器n功能功能 执行管理数据仓库系统中所有查询工作的相关处理程序。n实现途径途径 (1)外购调度软件 (2)使用用户存取工具 (3)数据仓库系统所提供的系统监控工具 (4)数据库管理系统所提供的管理工具 (5)针对特殊需要而编写程序以及脚本文件n复复杂度度 视数据仓库系统而定。查询管理器的具体功能查询管理器的具体功能n将查询引导至正确的表n实现客户查询的调度 查询管理器将把查询统计分析的结果存入查询概述文件,供仓库管理器使用,以决定为哪些项目执行数据集合的工作。 2.1.3 数据仓库的数据模型数据仓库的数据模型 数据模型是对现实世界的一种抽象,根据抽象程度的不同,可形成不同抽象层次上的数据模型。与数据库的数据模型相类似,数据仓库的数据模型也分为三个层次: 概念模型 逻辑模型 物理模型2.1.3 数据仓库的数据模型数据仓库的数据模型n概念模型概念模型 客观世界到计算机系统的一个中间层次,它最常用的表示方法是ER法(实体关系)。 目前,数据仓库一般是建立在关系型数据库的基础之上,所以其概念模型与一般关系型数据库采用的概念模型相一致。2.1.3 数据仓库的数据模型数据仓库的数据模型n逻辑模型模型 指数据的逻辑结构,如多维模型、关系模型、层次模型等。数据仓库的逻辑模型描述了数据仓库的主题的逻辑实现,即每个主题对应的模式定义。2.1.3 数据仓库的数据模型数据仓库的数据模型n物理模型物理模型 是逻辑模型的具体实现,如物理存取方式、数据存储结构、数据存放位置以及存储分配等。在设计数据仓库的物理模型时,需要考虑一些提高性能的技术,如表分区,建立索引等。2.1.3 数据仓库的数据模型数据仓库的数据模型 目前,对数据仓库模型的讨论大多集中在逻辑模型,其中最常用的是多维模型。维 人们观察数据的特定角度。例如,企业常常关心不同销售数据随时间的变化情况,所以时间就是一个维;维的的层次次 人们观察数据的某个特定角度还可以存在细节程度不同的多个描述,这就是维的层次。一个维往往有多个层次,比如描述时间维时,可以从年份、季度、月份、天等不同层次来描述,那么年份、季度、月份和天就是时间维的层次; 2.1.3 数据仓库的数据模型数据仓库的数据模型维成成员 维的一个取值称为该维的一个成员。如果一个维是多层次的,那么该维的成员就是在不同层次取值的组合。例如时间维分为年、月和天三个层次则分别在其上各取一个值组合起来即得到日期维的一个成员,即“某年某月某日”;度量度量 描述了要分析的数值,例如话费、用户数量等; 2.1.3 数据仓库的数据模型数据仓库的数据模型粒度粒度 粒度是指数据仓库的数据单位中保存数据的细化或综合程度的级别。细化程度越高,粒度级就越小;相反,细化程度越低,粒度级就越大。 粒度深深地影响存放在数据仓库中数据量的大小,同时影响数据仓库所能回答的查询类型。 在数据仓库中的数据粒度与查询的详细程度之间要做出权衡。 2.1.3 数据仓库的数据模型数据仓库的数据模型 当提高粒度级别时,数据所能回答查询的能力会随之降低。换言之,在一个很低的粒度级别上,几乎可以回答任何问题,但在高粒度级别上,数据所能处理的问题的数量是有限的。 左图是一个低粒度级,每个活动(在这里是一次电话)被详细记录下来,数据的格式如图所示。到月底每个顾客平均有200条记录(全月中每个电话都记录一次),因而总共需要40000个字节; 右图的边是一个高粒度级。数据代表一位顾客一个月的综合信息,每位顾客一个月只有一个记录,这样的记录大约只需200个字节。问题:“上星期某某顾客是否给某某人打了电话?”在低粒度级别上,完全可以回答这一问题,虽然这种回答将花费大量资源去查询大量的记录,但是问题结果是可以确定的。在高粒度级别上,则无法明确地回答这个问题。假如在数据仓库中存放的只是所打电话的总数,那么就无法确定其中是否有一个电话是打给某人的。2.1.3 数据仓库的数据模型数据仓库的数据模型n数据仓库的数据模型 星型结构 雪花型结构 星型雪花型结构n数据仓库的数据事实数据维度数据 不论是星型、雪花型或者是星型雪花型结构都是以事实表为中心。不同点只是在外围维度表相互之间的关系不同而已。2.1.3 数据仓库的数据模型数据仓库的数据模型n星型架构的维度表只会与事实表生成关系,维度表与维度表之间并不会生成任何的关系。n雪花型架构描述可合并在一起使用的维度数据。星型结构的实例星型结构的实例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcityprovince_or_streetcountrylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranch雪花结构的实例雪花结构的实例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcity_keylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_keyitembranch_keybranch_namebranch_typebranchsupplier_keysupplier_typesuppliercity_keycityprovince_or_streetcountrycity星型雪花型结构的实例星型雪花型结构的实例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcityprovince_or_streetcountrylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranchShippingFactTabletime_keyitem_keyshipper_keyfrom_locationto_locationdollars_costunits_shippedshipper_keyshipper_namelocation_keyshipper_typeshipper2.1.4 数据仓库与数据库的关系数据仓库与数据库的关系 到目前为止,数据仓库在国外已经发展了十几年的时间。在国内,虽然起步较晚,但发展较为迅速。 目前有很多的大公司或企业正在建或计划建设不同规模的数据仓库和数据集市。 2.1.4 数据仓库与数据库的关系数据仓库与数据库的关系 数据仓库建立在传统事务型数据库的基础之上,为企业决策支持系统、OLAP及数据挖掘系统提供数据源。2.1.4 数据仓库与数据库的关系数据仓库与数据库的关系n数据库的应用包括:事务型应用和分析型应用n物理数据库实际存储的数据包括: 事务型数据(或称操作数据)和分析型数据(也可称为汇总数据、信息数据)。n起初,两类数据放到一起,即分散存储在各底层的业务数据库中。n后来,随着企业规模的扩展、数据量的增加、以及希望在决策分析时得到更多支持需求的日益迫切,并且考虑保证原有事务数据库的高效性与安全性。因此将分析型数据与事务型数据相分离,单独存放,即形成了所谓的数据仓库。2.1.4 数据仓库与数据库的关系数据仓库与数据库的关系 数据仓库只不过是因为用户需求增加而对某一类数据库应用的一个范围的界定。单就其是数据的存储容器这一点而言,数据仓库与数据库并没有本质的区别。 而且在更多的时候,我们是将数据仓库作为一个数据库应用系统来看待的。 因此,不应该说数据库到数据仓库是技术的进步。数据库与数据仓库的区别数据库与数据仓库的区别业务数据库数据仓库内容与业务相关的数据与决策相关的信息数据模型关系、层次结构的关系的/多维的访问经常是随机的读写操作经常是只读操作负载事务处理量大、但每个事务涉及的记录数较少查询量少,但每次要查询大量的记录事务输出量一般很少可能非常大停机时间可能意味着灾难性错误可能意味着延迟决策演变过程演变过程n60年代数据收集、数据库创建、信息管理系统(IMS)和网络数据库管理系统(NetworkDBMS)n70年代关系数据模型以及关系型DBMS演变过程演变过程n80年代至今高级数据模型(具有扩充关系的,面向对象的,演绎的等等)和面向应用的DBMS(空间的,科学的,工程的等等)n90年代至今数据挖掘和数据仓库,多媒体数据库和Web数据库。演变过程演变过程 在20世纪70年代之前,数据一般存储在文件中,由应用程序直接管理;之后有了简单的数据收集和数据库的构造;后来发展到对数据的管理,包括数据存储、检索以及数据库事务处理;再后来发展到对数据的分析和理解,这时候出现了数据仓库技术和数据挖掘技术。数据挖掘使数据库技术进入了一个更高级的阶段,它不仅能对过去的数据进行查询和遍历,并且能够找出过去数据之间的潜在联系,并且能够预测未来的数据。数据库的局限性数据库的局限性 传统数据库所能做到的只是对已有的数据进行存取以及简单的查询统计,即使是一些流行的OLAP工具,也无非是另一种数据展示方式而已。人们仍然无法发现数据中存在的关系和规则,无法根据现有的数据预测未来的发展趋势。这也直接导致了目前“数据爆炸但知识匮乏”的现状。2.2 ETL过程过程2.2.1ETL的概念2.2.2ETL的功能2.2.3ETL的目标2.2.4ETL的流程2.2.5ETL的框架2.2.6ETL的组成2.2.7ETL的相关技术2.2.8ETL的实现方法2.2.9ETL的工具2.2.10ETL的应用2.2.1 ETL的概念的概念 将原来业务系统的数据经过抽取、转换、加载到数据仓库所在的中心存储库的过程称为ETL (Extraction, Transformation and Loading)过程,制定这个过程的策略称之为ETL策略,而完成ETL过程的工具则是ETL工具。相对于数据仓库中的表而言,业务系统数据库中的表称为源表,业务系统数据库称为源数据库,数据仓库中所有的数据都来自于业务系统数据库。在打造一个数据仓库的过程中,ETL的实施是一项繁琐、冗长而艰巨的任务,因为它关系到数据仓库中数据的质量问题,如果导入的数据漏洞百出,对决策者来说无疑是个噩耗。 ETL过程是搭建“数据仓库”时最重要的最重要的和最最易易误解的解的步骤之一。2.2.1 ETL的概念的概念ETL过程不仅仅是数据的迁移迁移(Migration)或净化化(Cleansing),也应该是企企业数据管理策略数据管理策略中不可缺少的一部分。ETL过程的功能是:发现数据仓库需要的数据,将其从源系统中抽取抽取出来,并进行一定的处理理,然后装装载到数据仓库中去。2.2.2 ETL的功能的功能n提高数据质量n搭建数据仓库(WarehousingProcesses)操作型活动(OperationalActivities)数据获取(DataAcquisition)仓库存储(WarehouseStorage)nEAI的数据集成ETL功能提高数据质量功能提高数据质量n数据清洁补充缺失值,平滑噪声数据,识别与删除异常数据以及有效解决数据的一致性问题n数据集成多个数据库、数据立方体或文件的数据整合n数据转换实现数据的归一化n数据简化在不影响分析结果的前提下,缩减数据量n数据离散化对于数值型数据可通过取样实现离散化以降低数据量ETL功能提高数据质量功能提高数据质量ETL功能搭建数据仓库功能搭建数据仓库Legacy ApplicationsVSAMIDMSIMSCICSCOBOLMultimediaDocumentsERP ApplicationsGroupwareDatabasesWebOperational ActivitiesData AcquisitionTransformationIntegrationStagingWarehouse StorageDataWarehouseODSWarehouseDelivery & AccessETL功能搭建数据仓库功能搭建数据仓库现有数据的特点分散的非整合的难以访问的多种的数据源多种的平台低劣的数据质量冗余的数据难于理解不能分析数据量很大,甚至是海量的Legacy ApplicationsVSAMIDMSIMSCICSCOBOLMultimediaDocumentsERP ApplicationsGroupwareDatabasesWebOperational ActivitiesETL功能搭建数据仓库功能搭建数据仓库n“数据仓库”中的信息为战略经营提供决策支持整合的便于多维分析和报表根据历史信息预测未来的发展趋势Warehouse StorageDataWarehouseODSWarehouseDelivery & AccessETL功能搭建数据仓库功能搭建数据仓库n本质上,ETL过程完成了将“生数据”(RawData)转化为“信息”(Information)的过程,即传递有用的数据至数据仓库(中央数据库)中;首先是从各种操作型数据源中抽取“有用”的数据;然后,将操作型数据转换成“具有战略意义”的信息;最后,将“具有战略意义”的信息装载到数据仓库中,以备决策支持使用。Data AcquisitionTransformationIntegrationStagingETL功能功能 EAI数据集成数据集成n使用相应的工具完成现有应用数据的集成(即数据的抽取、转换和存贮)统一客户资料系统GSM客户资料数据库193客户资料数据库165客户资料数据库ETL工具综合营帐系统2.2.3 ETL的目标的目标n提高数据质量n提供一种统一的、跨平台的存取数据方法n将数据“信息化”,为企业决策者的经营分析提供信息来源2.2.4 ETL的流程的流程n抽取转换/清洁装载数据仓库数据仓库临时存储区 数据源数据源抽取抽取转换转换/清洁清洁装载装载All driven by metadata2.2.4 ETL的流程的流程(1)预处理。这是正式开始作业之前的准备工作,包括清空工作区、检查过渡准备区。如果需要直接访问操作型数据源系统时,要检查远程数据库服务器状态,并核对目标区数据加载状态,以核算出加载作业的参数,如加载数据的时间间隔和范围(是24小时的数据,还是前3天的数据)。(2)启动数据加载的批作业。2.2.4 ETL的流程的流程(3)因为维度表有事实表所参照的主键,所以要先完成对维表的加载,生成维表主键,并作为以后加载事实表所需要的外键。在加载维表时,有时要处理好缓慢变化的维的问题,并可能涉及到版本号的处理问题。(4)加载事实表。这中间也涉及到键查找的问题,即从有关维表中找到相应的主键,并以此作事实表的外键。2.2.4 ETL的流程的流程(5)事实表加载完成后,再对总计方阵体系进行刷新,以保障总计方阵与它的基础数据同步。(6)应设计具有完善的出错处理机制和作业控制日志系统,以监测和协调整个加载的过程。ETL流程数据抽取流程数据抽取 数据提取是ETL处理的首要部分,解决的主要问题是确定需要提取的数据,并确定适当的提取方式。 指从一个或多个源数据库中通过记录选取进行数据复制的过程。抽取过程将记录写入ODS(OperationalDataStore)或者临时区(StagingArea)以备进一步处理。ETL流程数据抽取流程数据抽取n预抽取识别数据(Formal;Informal)元数据(Metadata)n元数据定义(实体、记录、数据项、模型、主键、外键)n源应用系统(操作系统、DBMS、位置)n更新的频率n数据(交易)量n源数据的拥有者(IS管理员、经营部门主管)n业务含义描述n可靠性、完整性评估(通过浏览数据)ETL流程数据抽取流程数据抽取后台技术结构(BackRoomTechArchitecture)n单文件系统平面文件、COBOL、VSAMn早期的DBMSsIMS,IDMS,Adabas,MarkIV,n第三方应用软件nERP系统一些已经具有数据仓库能力,但很有限n企业报表系统很难回溯到原始数据nODS操作型数据存储(PartofDW/notpartofDW,最细粒度、面向主题、整合的、经常新增交易数据、企业视点、星型模型)ETL流程数据抽取流程数据抽取n预抽取(续)选择数据源(原则)n可访问性n操作型活动的最近阶段n最接近真实的数据(不是派生的)n与新开发的OLTP系统一致注意注意:任何没有被任何没有被选中的数据源,中的数据源,应该记录原因原因分析源数据n理解源系统的元数据(数据字典)n业务规则获取(BusinessRuleCapture)ETL流程数据抽取流程数据抽取Both Data and Metadata EXTRACT SchemaData WarehouseMetadata Database EXTRACT EXTRACTCLEANSINGETL流程数据抽取流程数据抽取n数据抽取策略(从操作型DBs到DW):陈旧的存档数据n少见;保险公司;危险品公司现存于操作型环境中的全部数据只获取与上一次抽取相比更新的数据n时间戳(time-stamped)nDELTA文件n日志文件n触发器n比较两次数据库快照(Snapshot)ETL流程数据抽取流程数据抽取 其中最重要的是变化数据捕获(Change Data Capture, CDC )。有几种方法实现CDC:时间戳、读取RDBMS系统的日志文件、使用源系统中的触发器或者自己开发CDC程序来检查日志文件。 使用时间戳是最简单的,也是相当普遍的方法。前提是所有的源表都有时间戳。 例如:超市的业务系统数据库中几乎每个表都保障有“插入记录日期”、“更新记录日期”两个字段。这是规范数据库的一个基本标准。数据抽取的实现数据抽取的实现 在多数情况下,数据源系统与数据仓库并不处于同一个数据服务器中,它们往往是独立的,并处在远程系统中。数据的提取往往是以远程的、分布式的提取模式进行,并涉及各种各样的方法和手段,其中包括: (1)应用SQL*Plus提取到文本文件; (2)应用OCI or Pro*C程序,或者Oracle UTIL_FILE提取到文本文件; (3)应用Oracle Export Utility实用程序提取到Oracle Export Files文件;数据抽取的实现数据抽取的实现(4)远程数据复制(5)信息流 ETL流程数据转换流程数据转换n数据数据转换将抽取出的数据进行过滤、合并、解码、翻译等转换,为数据仓库创建有效数据的过程。n一旦数据抽取或选取过程完成,就要设计并确定转换规则(BusinessRules)应用于已抽取出的数据n转换过程需要理解业务侧重点(BusinessFocus)、信息需求(InformationalNeeds)和目前可用的源数据(AvailableSources)。ETL流程数据转换流程数据转换n转换规则字段级的n数据类型转换n增加“上下文”数据 如,时间戳n解码(Decoding)如,将数值型的地域编码替换成地域名称清洁和净化n保留字段具有特定值或特定范围的记录n引用完整性检查n去除重复记录ETL流程数据转换流程数据转换n转换规则(续)多数据源整合n字段映射(Mapping)n代码变换(Transposing)将不同数据源中的数据值规范成数据仓库数据值。例如,将原系统非英文编码转换成数据仓库英文编码;将原系统信息编码转换成数据仓库信息编码等。n合并(Merging)将两个或更多个源系统记录合并为一个输出或“目标”记录n派生(Derivations)根据源数据,利用数学公式产生数据仓库需要的数据。例如,由身份证号码计算出出生日期、性别、年龄等。聚合(Aggregation)和汇总(Summarization)nDetail light agg/sum levels of rollups more agg/sumETL流程数据清洁流程数据清洁 数据仓库中必须存放“优质数据”(Quality Data)符合一致性的、大家公认或经过验证是有价值的,并符合元数据定义的。清洁功能能够检测出那些违反规则的数据,一旦发现要么抛弃,要么将其转换成“清洁”数据,使其符合规则,然后装载到数据仓库中。ETL流程数据清洁流程数据清洁 来自操作型数据源的数据如果含有不洁的成分和不规范的格式,将对数据仓库的建立维护,特别是对联机分析处理的使用,造成很多问题和麻烦。这时必须在ETL处理过程中加以解决,通常包括以下处理方法:a.设计拼写检查、分类并与标准值表对照检查b.处理名字和地址 c.为名字和地址建立辅助表格或联机字典,据此进行检查修正 d.数据转换函数以及子程序库ETL流程数据清洁流程数据清洁n“脏”数据(数据(Dirty Data)n数据不符合一致性n用数据库设计工具定义Checks,ValidationCriteria,IntegrityConstrainsn数据库设计者不是很清楚DBMSn删除了“约束”,因为它们会降低操作性能n使用一些特定代码、标志或“哑元”(Dummyvalues)n多目标域(Fields)某域依赖其他域,但不一致ETL流程数据清洁流程数据清洁n“脏”数据的清数据的清洁包括三个包括三个层次:次:数据源、应用层的数据清洁(实现起来困难)整合与转换层的数据清洁n元素化剖析成原子数据n标准化每个元素值的表达n验证标准化后的元素值是否满足一致性数据仓库内部的数据清洁通常,上述三种方式联合使用,以获得高效性。ETL流程数据清洁流程数据清洁n保障数据清洁顺利进行的原则 首先,对数据清洁流程进行分析和系统化的设计, 其次,针对数据的主要问题和特征,设计一系列数据对照表和数据清洗程序库。 两者的有效组合,可以面对不断变化的、形形色色的数据清洁问题。ETL流程数据清洁流程数据清洁n数据清数据清洁的的过程程(1)预处理:对于大的数据加载文件(特别是新的文件和数据集体)进行预先诊断和检测,不能贸然加载。有时需要临时编写诊断小程序,称作“小狗”,它会用鼻子闻一闻这个庞然大物(不知底细的文件),以进行卫生检查;(2)标准化处理:应用建于数据仓库内部的标准字典,对于地区名、人名、公司名、产品名、品类名进行标准化处理;(3)查重:应用各种数据查询手段,避免引入重复数据;(4)出错处理和修正:将出错的记录和数据写入到日志文件,留待进一步处理。ETL流程数据装载流程数据装载n装装载过程程 将转换/清洁后的数据装载到企业数据仓库中。 在完成数据提取和转换/清洁后,接下来是将数据加载到数据仓库中。在进行数据加载时,可供选用的实用程序和工具很多,可选择最基本的Import、SQL Loader 和 SQL语言进行必要的转换。 为了提高程序和实用过程的复用性,编制和设计数据转换的函数库子程序库是十分必要的。ETL流程数据装载流程数据装载n使用装载工具或数据查询语言(SQL)效率问题避免违反约束关系,注意装载顺序ETL流程数据装载流程数据装载 转换的工作虽然较为繁琐,但却是三个步骤中最简单的。 许多ETL工具都提供了强大的转换功能。例如DTS中有:复制字段转换、小写字符串转换、大写字符串转换、中间字符串转换、剪裁字符串转换、日期时间字符串转换、读取文件转换、写入文件转换和ActiveX 脚本转换等。 在这些转换操作中,最常用的是ActiveX 脚本转换,因为它允许自行撰写VBScript或Jscript将原始字段中的数据转换至目标字段中的数据。 实际上,如果前述的各种转换都无法满足需求时,则ActiveX 脚本转换将是最终的选择。2.2.5 ETL的框架的框架DW Populating subsystem reference architectureScott Howard (IBM)2.2.6 ETL的组成的组成2.2.7 ETL的相关技术的相关技术nDTS(MicrosoftSQLServer)n逻辑上,实现ETL过程有3种策略远程抽取(RemoteExtraction)推(Push)拉(Pull)n并行技术(Parallelism)n数据堆装载(DataBulkLoad)ETL技术技术DTSSQLServer的数据转换服务(DataTransformationServices,简写为DTS)提供了一套基于OLEDB的COM对象,使用VBScript、PerlScript或MicrosoftJscript脚本描述语言创建数据转换程序,可以实现不同OLEDB数据源之间的数据转换操作。2.2.8 ETL的实现方法的实现方法n远程抽取ETL过程是在一个独立的远程平台上进行的。受数据源现有系统或目标仓库结构的影响最小。几乎不影响源和目标系统的CPU和容量。可能会提高成本;对网络带宽要求较高。n“Push”在现有系统环境中开展ETL过程当现有系统具有相当充裕的容量,而且不会超越CPU处理限度时,经常采用这种方法现有系统是同构的,经常采用这种方式2.2.8 ETL的实现方法的实现方法n“Pull”(Collocation)ETL过程在“仓库”端进行当现有系统是异构时,经常采用当“仓库”端平台具有必需的性能和容量时,会体现一定优势。由于“仓库”不断增长,可能需要制定长期策略(1)高速装载:在内存中;通过本地文件系统通信;有限的输入/输出请求(2)保留带宽:避免了访问网络,使得其它依赖于网络的应用不受任何影响。2.2.8 ETL的实现方法的实现方法n并行技术(Parallelism)多线程服务器端软件多处理器(SMP)n数据堆装载(DataBulkLoad)“堆”是最快的数据装载方式数据库中有堆装载器,ETL也支持该功能避免使用“插入”或“更新”操作,避免采用ODBC2.2.9 ETL的工具的工具n协助完成ETL过程开发的工具称作ETL或ETLM工具。它们可以标准化ETL过程开发,使运行和正在进行的维护过程提高效率。nDesignStudio(Sagent公司)nDecisionStream(Cognos公司)2.2.10 ETL的应用的应用例如:“统一客户资料沉淀子系统”(UCIS-etl)nUCIS-etl的框架n实施工具Sagentn问题及解决办法 UCISETL在统一客户资料在统一客户资料系统中的位置系统中的位置UCIS-etl框架系统功能图UCIS-etl框架ETL活动图ETL过程活动图过程活动图UCIS-etl实施工具SagentSagentETL系列工具系统图存在的问题及解决办法存在的问题及解决办法n克服网络拥塞(RemoteRepositoryLocal)nETL的实质SQLGUIvs.ScriptSQL优化提高数据库查询性能(Index)n提高工作效率,缩短ETL周期以中间数据库为界,实现抽取和装载并行2.3 电信领域数据仓库的设计与实现电信领域数据仓库的设计与实现2.3.1 电信信领域数据域数据仓库的的设计2.3.2 电信信领域数据域数据仓库的的实现2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计(1 1)确定数据)确定数据仓库的主的主题 根据电信业务和电信运营的需求,电信公司涉及的最主要的三个主题是:客户发展收益分析呼叫特性分析2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计 客客户发展展主要是对客户群体进行分类后,从不同的角度展现电信公司提供服务的客户数量情况。划分的角度可以按照客户本身的自然属性,例如客户本身的自然属性,例如客户性别、年龄、客户入网的时间、客户的类型(公费、私人等)、客户受教育的程度等。2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计 收益分析收益分析收益分析主要是通过不同的角度对电信企业的收益情况进行分析。收益分析的角度可以按照客户的自然属性和扩展属性划分;也可以按照电信公司的业务运(品牌、交费方式)进行划分;还可以按照机构设置、地理角度对收益进行划分。2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计呼叫特性分析呼叫特性分析呼叫特性分析即分析不同类型客户在呼叫上所具有的特性,特性可能包括下列衡量指标:2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计按照呼叫时间划分为:成长呼叫、中呼叫和短呼叫按照呼叫类型可划分为:本地通话、长途通话、漫游通话。(其中长途又可以划分成国际长途、国内长途;漫游通话可划分成省内、省际、国内漫游等等)按照呼叫金额可以划分为:高额呼叫和非高额呼叫按照呼叫所在地区域考察呼叫的热点区域2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计(2 2)数据)数据仓库模型的模型的设计可用的数据可用的数据例如,要完成客户发展、收益分析、呼叫特性分析三个主题,下列三部分信息是必要的,即:客户的基本信息表客户的账单信息表客户的呼叫信息表客户基本信息表的常见字段客户基本信息表的常见字段客户基本信息表字段客户识别码客户号码客户类别客户信用度客户姓名客户通信地址客户身份证号客户联系电话客户邮编客户归属局通信费支付方式开户日期客户帐单信息表的常见字段客户帐单信息表的常见字段客户账单字段 客户号码月租费附加功能费本地话费省内漫游费省际漫游费国际漫游费账单金额短信费滞纳金金额总话费付款方式呼叫信息表的常见字段呼叫信息表的常见字段客户呼叫信息表字段呼叫类型IMSI号主叫号码被叫号码通话开始时间通话时长基本通话费基本通话附加费长途费长度附加费通话位置漫游类型2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计(2 2)数据)数据仓库模型的模型的设计粒度的确定粒度的确定 在数据仓库设计中,最重要的步骤是确定数据的粒度。 单一粒度一粒度对于客户基本信息表,由于它属于增长较为缓慢的信息(随着客户数量的增长,客户业务信息的变更表会增长),可以使用单一的数据粒度。 数据仓库模型的设计数据仓库模型的设计粒度的确定粒度的确定 如果客户数量很大,每个月生成一张客户信息表将浪费大量的空间,因为只有客户信息变化了或者新增加了客户,才需要修改原先的客户信息表。增加一个“当前标志”字段,用于表示客户的当前信息,并选择“数据变更日期”作为时间字段。客户识别码客户号码客户类别客户信用度客户姓名客户通信地址客户身份证号客户联系电话客户邮编客户归属局通信费支付方式开户日期客户识别码客户识别码数据变更日期数据变更日期当前标志当前标志客户号码客户类别客户信用度客户姓名客户通信地址客户身份证号客户联系电话客户邮编客户归属局通信费支付方式开户日期使用单一粒度的客户基本信息表使用单一粒度的客户基本信息表 数据仓库模型的设计数据仓库模型的设计粒度的确定粒度的确定 对于客户的账务信息表,每个月一个客户号码只在账务信息中对应一条记录,因此数据本身就带有一定的综合性,可以采用单一的数据粒度。客户账单字段月份客户号码月租费附加功能费本地话费省内漫游费省际漫游费国际漫游费账单金额短信费滞纳金金额总话费付款方式客户账单字段月份月份客户号码月租费附加功能费本地话费省内漫游费省际漫游费国际漫游费账单金额短信费滞纳金金额总话费付款方式使用单一粒度的客户帐务信息表使用单一粒度的客户帐务信息表 数据仓库模型的设计数据仓库模型的设计粒度的确定粒度的确定 双重粒度双重粒度呼叫计费数据是电信公司中数据量最大的部分,对于一个客户的一次通话(无论是主叫还是被叫,因为一次通话实际上将生成主叫、被叫两条记录),在呼叫表中都将出现一个通话记录,因此对于一个大型电信公司,其呼叫计费数据的数据量非常大,所以采用双重粒度来记载呼叫计费数据。 对于近34个月的细节呼叫计费数据,保留在数据仓库中,并定期聚合成按月综合的数据,然后将细节数据导出,另外保存,为新的细节数据腾出足够的空间。呼叫类型IMSI号主叫号码被叫号码通话开始时间通话时长基本通话费基本通话附加费长途费长度附加费通话位置漫游类型IMSI号主叫号码被叫号码通话开始时间通话时长基本通话费基本通话附加费长途费长度附加费通话位置漫游类型客户呼叫信息表字段呼叫类型IMSI号主叫号码被叫号码通话开始时间通话时长基本通话费基本通话附加费长途费长度附加费通话位置漫游类型按月综合的数据按月综合的数据 最近最近3个月的个月的细节数据数据3个月之前的细节数据个月之前的细节数据其它空间其它空间 使用双重粒度的呼叫信息使用双重粒度的呼叫信息 2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计(2 2)数据)数据仓库模型的模型的设计 OLAP OLAP模型的模型的设计 针对每一个主题确定其需要的维度和度量变量,然后为每一个主题定义关系模式,从而形成一个星型结构,在这个星型结构的基础上,可以生成多维数据表,建立多维数据库。 以客户信息主题为例,客户信息主题的维度设计书如下: 模型名称:客户基本信息 模块功能:用于客户数量的分析以及客户属性的分析 事实表:客户信息事实表 度量:客户数量 数据粒度: 每个客户每月计算一次收益,事实表中每条记录表示一个客户的属性。 事实表中存放1年以内的数据,超过10年的数据按月进行滚动,最初的数据进行汇总后从事实表中卸出。 相关维度: (1)客户详细资料维 (2)客户性别维 (3)客户年龄层次维 (4)客户在网时间维 (5)客户消费层次维 (6)客户信用度层次维 (7)是否大客户维 (8)交费类型维 (9)地理维 (10)客户流失概率层次维 (11)客户挽留价值层次维 (12)成为大客户概率层次维客户信息主题的维度设计书客户信息主题的维度设计书 客户基本信息的星型结构图客户基本信息的星型结构图 客户信息事实表Cust_IDSex_IDAgeLevel_ID BeVIP_IDPayType_IDInServTimeLevel_IDGeo_IDPayLevel_IDChurnLevel_IDCreditLevel_ID DetainValueLevel_IDCustValueLevel_IDBeVIPLevel_ID 客户详细资料维Cust_ID客户性别维Sex_ID客户年龄层次维AgeLevel_ID客户在网时间维InSeverTimeLevel_ID消费层次维PayLevel_ID客户信用层次维CreditLevel_ID地理维Geo_ID客户流失概率层次维ChurnLevel_ID客户挽留价值维DetainValuelevel_ID成为大客户的概率层次维BeViplevel_ID交费类型维PayType_ID是否大客户维BeVip_ID2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计(2 2)数据)数据仓库模型的模型的设计 ETL ETL过程程数据提取转换加载随着应用和系统环境的不同而具有不同的特点。一般而言,总包括下面的处理过程:a.预处理正式开始作业之前的准备工作,包括清空工作区、检查过渡准备区。如果需要直接访问操作型数据源系统时,要检查远程数据库服务器状态,并核对目标区数据加载状态,以核算出加载作业的参数,如加载数据的时间间隔和范围(24小时的数据,还是前3天的数据)。2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计(2 2)数据)数据仓库模型的模型的设计 ETL ETL过程程b.启动数据加载的批作业c.因为维度表有事实表所参照的主键,所以要先完成对维表的加载,生成维表主键,并作为以后加载事实表所需要的外键。在加载维表中,有时要处理好缓慢变化的维的问题,并可能涉及到版号的处理问题。2.3.1 电信领域数据仓库的设计电信领域数据仓库的设计(2 2)数据)数据仓库模型的模型的设计 ETL ETL过程程d.加载事实表这中间也涉及到键查找的问题,即从有关维表中找到相应的主键,并以此作事实表的外键。e.事实表加载完成后,再对总计方阵体系进行刷新,以保障总计方阵与它的基础数据同步。 f.设计具有完善的出错处理机制和作业控制日志系统,用以监测和协调整个加载的过程。2.3.2 电信领域数据仓库的实现电信领域数据仓库的实现 抽取数据到抽取数据到临时数据区数据区 数据仓库的数据源不是来自终端客户每天输入的数据,而是主要来自企业的OLTP系统数据。 抽取数据到临时数据区的好处n简单电信数据仓库的数据库工具采用微软公司的SQLServer2000,在将其数据加载到数据仓库前,需先将OLTP系统的数据抽取到一个临时数据区,并在临时数据区进行数据清理和校验工作,待数据正确无误后,再加载到数据仓库,以保证数据质量。这是采用临时数据区的一个好处。n临时数据区事实上就是一个数据库,此数据库作为数据仓库的数据源,数据仓库直接从临时数据区加载数据,从而避开OLTP系统,这样就避免了OLTP系统和数据仓库系统之间处理上的冲突,避免了OLTP系统因数据抽取而影响其响应时间的问题。这是采用临时数据区的另外一个好处。2.3.2 电信领域数据仓库的实现电信领域数据仓库的实现 临时数据区暂存将要加载到数据仓库的维度数据和事实数据,它利用关系表映射数据仓库的星型和雪花架构。因为系统是建立在SQLServer2000数据库工具基础上,所以从OLTP系统抽取数据时,必然会用到存储过程以及脚本文件。2.3.1 电信领域数据仓库的实现电信领域数据仓库的实现加加载数据到数据数据到数据仓库的具体步的具体步骤设定数据库和数据源建立多维数据集设计存储和处理多维数据集为多维数据集创立分区2.3.2 电信领域数据仓库的实现电信领域数据仓库的实现企企业级数据数据仓库的的实现途径途径从建造某个部门特定的数据集市开始,逐步扩充数据仓库所包含的主题和范围,最后形成一个能够完全反映企业全貌的企业级数据仓库;从一开始就从企业的整体来考虑数据仓库的主题和实施。2.3.2 电信领域数据仓库的实现电信领域数据仓库的实现 第一种方法类似于软件工程中“自底向上”的方法,投资少、周期短且易于见到成果,但由于该设计开始时是以特定的部门级主题为框架的,向其他的主题和部门扩充往往比较困难; 第二种方法与第一种相反,即“自顶向下”的方法,投资大、周期长。实际中大多采用第一种方法。2.3.2 电信领域数据仓库的实现电信领域数据仓库的实现 “自底向上”地建立数据仓库,并不意味着不需要在设计阶段的长远规划。采用逐步积累的方式建立数据仓库,其最大的问题是已有的框架无法把新的业务集成进来。因此在设计阶段就必须充分考虑到这一点。例如,部门级的主题是否有助于形成企业级的主题,数据加载模块是否能够重用等等。数据仓库的长远规划,并不仅仅是技术部门的事情,应当把数据仓库的构建作为企业发展战略的一个组成部分。在设计阶段需要不同部门的沟通和协调,技术框架和系统设计必须从整个企业的角度来考虑,即使刚开始实施的时候是面向某个部门的。从这一点来看,建立一个企业级的数据仓库,主要的障碍不是技术,而是不同部门之间组织、协调的问题。2.4 OLAP技术技术2.4.1OLAP的定义和特点2.4.2OLAP的分类2.4.3OLAP的典型操作2.4.1 OLAP的定义、特点的定义、特点n60年代,关系数据库之父E.F.Codd提出了关系模型,促进了联机事务处理 (OLTP)的发展(数据以表格的形式而非文件方式存储)。n1993年,E.F.Codd提出了OLAP概念,认为OLTP已不能满足终端客户对数据库查询分析的需要,SQL对大型数据库的简单查询也不能满足终端客户分析的要求。客户的决策分析需要对关系数据库进行大量计算才能获得结果,而查询的结果并不能满足决策者提出的需求。因此,E.F.Codd提出了多维数据库和多维分析的概念,即OLAP。2.4.1 OLAP的定义、特点的定义、特点nOLAPOLAP(On-Line Analysis ProcessingOn-Line Analysis Processing)定)定义 是数据仓库上的分析展示工具,它建立在数据多维视图的基础上。 nOLAPOLAP的主要特点的主要特点 一是在线性(On Line),体现为对用户请求的快速响应和交互式操作; 二是多维分析(Multi_Analysis),这是OLAP技术的核心所在。2.4.1 OLAP的定义和特点的定义和特点 整个数据(仓)库系统的工具层大致可以分为三类,或者说三个发展阶段:(1)以MIS为代表的查询、报表类工具(2)以OLAP为代表的验证型工具(3)以及以DM为代表的挖掘型工具2.4.1 OLAP的定义和特点的定义和特点nOLAPOLAP与与OLTPOLTP的区的区别 (1)OLTP主要面向公司职员;OLAP则主要面向公司领导者。 (2)OLTP应用主要是用来完成客户的事务处理,其数据基础是操作型数据库,如民航订票系统、银行储蓄系统等等,通常需要进行大量的更新操作,同时对响应时间要求较高;而OLAP是以数据仓库或数据多维视图为基础的数据分析处理,是针对特定问题的联机数据访问和分析,它一般不对仓库数据作修改处理,而只是查询,其应用主要是对客户当前及历史数据进行分析,辅助领导决策,其典型的应用有对银行信用卡风险的分析与预测、公司市场营销策略的制定等,主要是进行大量的查询操作,对时间的要求不太严格。OLAP与与OLTP的不同的不同2.4.1 OLAP的定义和特点的定义和特点OLAPOLAP与数据挖掘的比与数据挖掘的比较 相同之处 OLAP与DM都是数据库(数据仓库)上的分析工具; 不同之处 (1)在实际应用中各有侧重。前者是验证型的,后者是挖掘型的; (2)前者建立在多维视图的基础之上,强调执行效率和对用户请求命令的及时响应,而且其直接数据源一般是数据仓库;后者建立在各种数据源的基础上,重在发现隐藏在数据深层次的对人们有用的模式,一般并不过多考虑执行效率和响应速度。2.4.1 OLAP的定义和特点的定义和特点OLAPOLAP与数据挖掘的比与数据挖掘的比较(3)数据挖掘与OLAP不同,主要体现在它分析数据的深入和分析过程的自动化,自动化的含义是其分析过程不需要客户的参与,这是它的优点,也正是其不足。因为在实际中,客户也希望参与到挖掘中来,例如只想对数据的某一子集进行挖掘,对不同抽取、集成水平的数据进行挖掘,或是根据自己的需要动态选择挖掘算法等等。因此,OLAP与数据挖掘各有所长。OLAP与数据挖掘的结合与数据挖掘的结合OLAM将OLAP与数据挖掘结合起来,发展出一种为数据挖掘服务的具有新型OLAP的数据仓库,将更能适应实际的需要。 OLAM(OnLineAnalyticalMining,联机分析挖掘)正是这种结合的产物。2.4.2 OLAP的分类的分类n根据对数据的组织方式的不同,OLAP分为两种: 基于多基于多维数据数据库的的OLAP(MD-OLAP)OLAP(MD-OLAP) 基于关系数据基于关系数据库的的OLAP(ROLAP)OLAP(ROLAP) 前者响应速度快、执行效率高,但源于结构的局限,灵活性不高。 与之相比,后者由于建立在大量现有数据库(数据仓库)的基础上,灵活性、扩展性要高的多,并且支持大数据量和较多维数的能力也要强于前者。因此,虽然在响应速度、执行效率上差一点,仍然得到了广泛应用。现有的OLAP工具大多基于后者。2.4.3 OLAP的典型操作的典型操作 OLAP对数据仓库中数据的操作是针对多维数据视图(又称为超立方体)进行的。对立方体的典型操作包括:切片、切块以及旋转等。切片 选定多维数组的一个二维子集;切块 选定多维数组的一个三维子集;旋转 改变一个立方体显示的维方向,人们可以从不同的角度更加清晰、直观地观察数据。多维数据多维数据Salesvolumeasafunctionofproduct,month,andregionProductRegionMonthDimensions: Product, Location, TimeHierarchical summarization pathsIndustry Region YearCategory Country QuarterProduct City Month Week Office Day立方体实例立方体实例Total annual salesof TV in U.S.A.DateProductCountrysumsum TVVCRPC1Qtr2Qtr3Qtr4QtrU.S.ACanadaMexicosum数据立方体的浏览数据立方体的浏览VisualizationOLAPcapabilitiesInteractivemanipulation主要内容主要内容1. 概述概述2. 数据数据仓库与与OLAP技技术3. 数据挖掘技数据挖掘技术4. 数据挖掘在数据挖掘在电信信领域的域的应用用5. 数据挖掘工具数据挖掘工具主要内容主要内容1. 概述概述2. 数据数据仓库与与OLAP技技术3. 数据挖掘技数据挖掘技术4. 数据挖掘在数据挖掘在电信信领域的域的应用用5.数据挖掘工具数据挖掘工具6. 数据挖掘数据挖掘实例例3 数据挖掘技术数据挖掘技术3.1 聚聚类(Clustering)3.2 分分类(Classification)3.3 关关联(Association)3.4 预测(Prediction)3.5 数据挖掘的可数据挖掘的可视化化3.6 数据挖掘的数据挖掘的实施施3.1 聚类聚类3.1.1 定定义3.1.2 聚聚类算法算法 3.1.2.1 聚聚类方法分方法分类 3.1.2.2 K均均值算法算法 3.1.2.3 K中心点算法中心点算法 3.1.2.4 C均均值算法算法3.1.1 定义定义n聚聚类分析分析从纷繁复杂的数据中,根据最大化类内相似性、最小化类间相似性的原则进行聚类或分组。即使得在一个簇内的对象具有高相似性,而不同簇间的对象具有低相似性的过程。3.1.2.1 聚类方法分类聚类方法分类n基于划分的聚基于划分的聚类方法方法n基于基于层次的聚次的聚类方法方法n基于密度的聚基于密度的聚类方法方法n基于网格的聚基于网格的聚类方法方法n基于模型的聚基于模型的聚类方法方法 3.1.2.1 聚类方法分类聚类方法分类n基于划分的聚基于划分的聚类方法方法 给定一个由个n对象组成的数据集合,对此数据集合构建k个划分( ),每个划分代表一个簇,即将数据集合分成多个簇的算法。 要求:每个簇至少有一个对象; 每个对象必须且仅属于一个簇。 典型算法k-均值和k-中心点算法等。3.1.2.1 聚类方法分类聚类方法分类n基于基于层次的聚次的聚类方法方法 对给定的数据集合进行层层分解的聚类过程,具体地主要包括凝聚法和分裂法。 凝聚法指起初每个对象被认为是一个簇,然后不断合并相似的簇,直到达到一个令人满意的终止条件;分裂法恰恰相反,先把所有的数据归于一个簇,然后不断分裂彼此相似度最小的数据集,使簇被分裂成更小的簇,直到达到一个令人满意的终止条件。 根据簇间距离度量方法的不同,层次法可分为不同的种类。常用的距离度量方法包括:最小距离、最大距离、平均值距离和平均距离等。 典型算法:CURE、Chameleon和BIRCH等基于层次的聚类方法基于层次的聚类方法n这类方法不需要预先给定参数(聚类数),但需要终止条件。Step0Step1Step2Step3Step4bdceaabdecdeabcdeStep4Step3Step2Step1Step0agglomerative(AGNES)divisive(DIANA)CURE算法描述随机选取s个样本;将所有样本划分为p个簇,每个簇的样本数是s/p; 将每个簇划分为q个子集,每个子集样本数是s/pq 删除孤立点数据 随机取 如果一个簇变化缓慢,则删除该簇- 合并其中的部分子集CURE算法DataPartitioningandClusterings=50p=2s/p=25xxxyyyyxyxns/pq = 5CURE算法ShrinkingRepresentativePointsxyxynShrinkthemultiplerepresentativepointstowardsthegravitycenterbyafractionof.nMultiplerepresentativescapturetheshapeoftheclusterCHAMELEON算法nCHAMELEON算法是由G.Karypis,E.H.Han和V.Kumar在1999年提出的一种动态层次聚类方法。n基于动态模型计算相似性只有当两个类之间的相似性高于类内对象的相似性时合并两个类。n本质上,是一个两阶段算法1.首先,使用图分割算法将数据集合划分为多个子集;2.然后,使用层次聚类中的凝聚方法将这些子集进行反复的合并,直至获得最终的聚类结果。CHAMELEON算法ConstructSparse GraphPartition the GraphMerge PartitionFinal ClustersData Set3.1.2.1 聚类方法分类聚类方法分类n基于密度的聚基于密度的聚类方法方法 这类算法的思想是,只要某簇邻近区域的密度超过设定的某一阈值,则扩大簇的范围,继续聚类。这类算法可以获得任意形状的簇。 典型算法:DBSCAN、OPTICS和DENCLUE等3.1.2.1 聚类方法分类聚类方法分类n基于网格的聚基于网格的聚类方法方法 基于网格的聚类算法首先将问题空间量化为有限数目的单元,形成一个空间网格结构,随后聚类在这些网格之间进行。这类算法速度较快。 典型算法:STING、WareCluster和CLIQUE等3.1.2.1 聚类方法分类聚类方法分类n基于模型的聚基于模型的聚类方法方法 基于模型的聚类算法为每个簇假定一个模型,寻找数据对给定模型的最佳拟合。所基于的假设是:数据是根据潜在的概率分布生成的。 典型算法:COBWEB和神经网络算法等。3.1.2.1 聚类方法分类聚类方法分类n上述方法属于传统聚类的范畴。一般地,传统聚类算法对于维度较低的数据集较有效,而当维度较高时,可能就不适合了。n此外,大型数据库的聚类研究受到越来越多的重视。随着数据库技术的普及,积累了大量的数据信息,因此这一分支成为一个研究热点。模式矩阵模式矩阵 一般地,数据对象采用矢量表示法,即通过一个在多维空间中的矢量,来描述一个对象多方面的特征。矢量的每个维度描述对象的一个特征。多个对象的矢量构成一个模式矩阵(Pattern Matrix),即(xij)mn 其中每行代表一个对象,每列描述一个特征。相似度相似度 在各种聚类算法中,通常是需要借助量化的指标以表征数据对象之间的特征差异和不同,称之为聚类统计量。聚类统计量包括:距离或相似度。标准化标准化 由于不同的特征采用不同的度量标准或尺度,这将对聚类结果产生不同的影响,为了消除这一差别,常进行标准化变换,使所有的特征能用一个共同的标准度量。距离的计算距离的计算 标准化处理后,计算对象间的距离最常用:欧氏距离,曼哈顿距离(又称绝对距离)、明考斯基(Minkovski)距离等方法。 相似度的计算相似度的计算 n个对象彼此之间的相似性或近似性可通过相似(异)度矩阵(Dissimilarity Matrix)表示。它是一个nm维、对角线元素为1的对称矩阵,即(rij)nm。其中,rij是i对象和j之间相似性的量化表示。通常其值是非负的。对象和关系越亲密,其绝对值越接近1;彼此关系越疏远,其值越接近于0。 对象间相似度的计算方法包括:夹角余弦法、相关系数法及指数相似系数法等。评价聚类方法的标准评价聚类方法的标准n聚类分析是一种无监督的学习,事先对给定数据集合的结构一无所知,没有利用任何先验知识。无论采用哪种聚类算法,其聚类结果的合理性和有效性都有待评价。n聚类有效性对聚类分析具有重要意义,被认为是聚类分析的一个瓶颈。对于相同的数据集合,采用不同的聚类方法,可能得到不同的聚类结果。n即便是采用同一种聚类方法,若选择不同的初始参数(如聚类数、聚类中心等)也可能会得到不同的聚类结果。 例如,采用相同的k-均值聚类算法对同一个wine测试集进行聚类实验,当预设聚类类别数分别为18时,则所得到的聚类正确率是不同的,如柱状图所示。评价聚类方法的标准评价聚类方法的标准n可伸可伸缩性性 即算法中模式数发生变化的情况。有些算法在模式数小的条件下,算法的性能很好,但是模式数增大后,算法性能下降。如PAM算法是一种k-中心点算法,它对小的数据集合非常有效,但对大的数据集合则没有良好的可伸缩性。n高高维性性 即算法中模式属性个数发生变化的情况。同样,有些算法只擅长处理低维数据。在高维空间中聚类是一个挑战,特别是数据有可能非常稀疏和偏斜。评价聚类方法的标准评价聚类方法的标准n发现任意形状的聚任意形状的聚类 一个簇可能是任意形状的,但一般的聚类算法是基于欧氏距离和曼哈顿距离度量实现聚类,更趋于发现球状簇。在这方面,基于密度的聚类方法较好。n处理噪声数据的能力理噪声数据的能力 噪声数据可能是数据本身不完整,也可能是孤立点数据(Outlier)。有些算法不擅于处理孤立点数据,因此还专门出现了发现孤立点数据的算法。评价聚类方法的标准评价聚类方法的标准n用于决定用于决定输入参数的入参数的领域知域知识最小化和最小化和输入入记录顺序敏感性序敏感性 一方面要求降低算法对输入参数的敏感程度,另一方面要求输入记录顺序对算法的结果影响小。如经典的k-均值算法,需要预先给出簇的数目。在一些知识发现应用中,这一参数非常影响聚类的质量。这常常是高效率算法的弱点。评价聚类方法的标准评价聚类方法的标准n可解可解释性和可用性性和可用性 知识发现过程中,聚类结果总是表现为一定的知识,这就要求聚类结果可解释、易理解。这与可视化密切相关,同时也与实际应用有关。如SOM(Self Organization Mapping)算法用于文本聚类可以产生知识地图,表现了良好的可视化性能。3.1.2.2 K均值算法均值算法nK均值(k-means)是一种简便、实用的无监督聚类分析算法。这种算法在已知簇的个数时,可很好地实现数据的聚类分析。n基本思想(1)首先,随机选择k个数据点做为聚类中心;(2)然后,计算其它点到这些聚类中心点的距离,通过对簇中距离平均值的计算,不断改变这些聚类中心的位置,直到这些聚类中心不再变化为止。3.1.2.2 K均值算法均值算法输入:n个数据的数据集合和已知的簇个数k输出:n个数据各属于k个簇中哪个簇的信息算法步骤:1)任意从n个数据中选择k个作为初始的簇中心;2)将剩余的n-k个数据按照一定的距离函数划分到最近的簇;3)repeat4)按一定的距离函数计算各个簇中数据的各属性平均值,作为新的簇中心;5)重新将n个数据按照一定的距离函数划分到最近的簇;6)until簇的中心不再变化。3.1.2.2 K均值算法均值算法nK K均均值的流程的流程 由流程图可知,k-均值算法是一种基于对数据集进行划分的方法进行聚类的算法。它是不断趋于最优解的试探过程。每一次迭代都试图使簇中心的选择更加接近于数据集的实际簇中心。输出N输入读入标准化归一化初始化簇计算簇平均值更改簇中心重新决定点归何簇Y簇中心是否变化3.1.2.2 K均值算法均值算法nK K均均值的的实现过程程3.1.2.2 K均值算法均值算法n优势(1)算法简单;(2)执行和收敛过程相对较快,是一种常见的聚类算法。n局限性局限性(1)必须事先知道聚类数;(2)算法要求簇是密集的、簇和簇之间的差异比较大;(3)数据集的平均值的计算必须有适当的定义;(4)不能用于非凸面的聚类;(5)对于某些孤立数据和“噪声”点敏感等。3.1.2.3 K中心点算法中心点算法nk-中心点算法是对k-均值的改进n主要的改主要的改进 不采用簇中对象的平均值作为参照点,选用簇中位置最中心的对象,即中心点。这样的划分方法依然是基于最小化所有对象与其参照点之间的相异度之和的原则来执行的。3.1.2.3 K中心点算法中心点算法n基本思想基本思想 首先为每个簇随机的赋一个样本做中心点,将剩余的点依照距离的远近分配给最近的簇;随后用其它的非中心点数据做中心点,并查看聚类情况。如果替换的聚类总代价小于零,那么就执行替换直到中心点不再发生变化,也就是说达到代价最小值时停止算法。3.1.2.3 K中心点算法中心点算法输入:簇的个数k,包含n个样本的数据集输出:各样本属于k个簇的信息算法步骤:1)随机选择k个样本作为初始中心点;2)repeat3)将非中心点的数据依照与各中心点的距离划分到最近的簇中;4)随机的在非中心点中选择一个样本;5)计算使用该点做中心点来代替原中心点的代价;6)if 6THENtenured=yesClassifier(Model)分类的实现分类的实现利用模型预测利用模型预测ClassifierTestingDataUnseenData(Jeff,Professor,4)Tenured?3.2.1 概述概述分分类与聚与聚类的比的比较n分类是有监督的学习Supervision:Thetrainingdata(observations,measurements,etc.)areaccompaniedbylabelsindicatingtheclassoftheobservationsNewdataisclassifiedbasedonthetrainingsetn聚类是无监督的学习TheclasslabelsoftrainingdataisunknownGivenasetofmeasurements,observations,etc.withtheaimofestablishingtheexistenceofclassesorclustersinthedata分类方法的评价标准分类方法的评价标准预测的正确性时间构建模型的时间使用模型所需的时间健壮性处理噪声及缺失值的能力可扩展性可操作性规则的优化决策树的大小分类规则的简洁性3.2.1 概述概述常常见的分的分类方法方法n决策树分类 决策树归纳是一种经典的分类算法。它采用自顶向下、递归的、各个击破的方式构造决策树。树的每一个结点上使用信息增益度量选择属性,可以从所生成的决策树中提取出分类规则。3.2.1 概述概述nKNNKNN分分类 即K最近邻法,最初由Cover和Hart于1968年提出的,是一个理论上比较成熟的方法。该方法的思路非常简单直观:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)样本中的大多数属于某一个类别,则该样本也属于这个类别。该方法在分类决策上只依据最邻近的一个或者几个样本的类别来决定待分类样本所属的类别。 该算法较适用于样本容量比较大的类域的自动分类,而那些样本容量较小的类域采用这种算法比较容易产生误分。3.2.1 概述概述nSVMSVM分分类方法方法 即支持向量机(SupportVectorMachine)法,由Vapnik等人于1995年提出,具有相对优良的性能指标。该方法是建立在统计学习理论基础上的机器学习方法。通过学习,SVM可以自动寻找出那些对分类有较好区分能力的支持向量,由此构造出的分类器可以最大化类与类的间隔,因而有较好的适应能力和较高的分准率。该方法只需要由各类域的边界样本的类别来决定最后的分类结果。SVM法对小样本情况下的自动分类有着较好的分类结果。3.2.1 概述概述nVSMVSM分分类方法方法 即向量空间模型(VectorSpaceModel)法,由Salton等人于60年代末提出。这是最早也是最著名的信息检索方面的数学模型。其基本思想是将文档表示为加权的特征向量:D=D(T1,W1;T2,W2;Tn,Wn),然后通过计算文本相似度的方法来确定待分类样本的类别。当文本被表示为空间向量模型的时候,文本的相似度就可以借助特征向量之间的内积来表示。VSM法相对其他分类方法而言,更适合于专业文献的分类。3.2.2.1 决策树算法决策树算法 决策树分类是用属性值对样本集逐级划分,直到一个节点仅含有同一类的样本为止。 决策树首先起源于Hunt等人提出的概念学习系统(Concept Learning System,CLS),然后发展到Quinlan的ID3算法,最后演化为能处理连续属性值的C45算法。3.2.2.1 决策树算法决策树算法n决策决策树的的输入入 一组带有类别标记的样本n决策决策树的的输出出 一棵二叉或多叉树。 二叉树的内部节点(非叶子节点)一般表示为一个逻辑判断,如形式为(ai=vi)的逻辑判断,其中ai是属性,vi是该属性的某个属性值;树的边是逻辑判断的分支结果。 多叉树(ID3)的内部节点是属性,边是该属性的所有取值,有几个属性值,就有几条边。树的叶子节点则是类别标记。3.2.2.1 决策树算法决策树算法n决策决策树的构造的构造 采用自上而下的递归构造。 以多叉树为例,其构造思路是:如果训练样本集中所有样本是同类的,则将它作为叶子节点,节点内容即是该类别标记;否则,根据某种策略选择一个属性,按照属性的不同取值,将样本集划分为若干子集,使得每个子集上的所有样本在该属性上具有同样的属性值。然后再依次处理各个子集。实际上就是“分而治之”(divide-and-conquer)的策略。二叉树同理,差别仅在于要选择一个好的逻辑判断。3.2.2.1 决策树算法决策树算法n决策决策树构造的条件构造的条件 构造好的决策树的关键是:如何选择好的逻辑判断或属性。对于同样一组样本,可以有很多决策树能符合这组样本。研究表明,一般情况下,树越小则树的预测能力越强。要构造尽可能小的决策树,关键在于选择恰当的逻辑判断或属性。由于构造最小的树是NP问题,因此只能采用启发式策略选择好的逻辑判断或属性。3.2.2.1 决策树算法决策树算法 实际中,用于模型学习的训练数据往往不是完美的,原因是: 某些属性字段上缺值(missing values); 缺少必需的数据而造成数据不完整; 数据不准确含有噪声甚至是错误的。 此时,需要克服噪声和决策树剪枝。3.2.2.1 决策树算法决策树算法 基本的决策树构造算法没有考虑噪声,生成的决策树完全与训练样本拟合。在有噪声的情况下,完全拟合将导致过分拟合(overfitting),即对训练数据的完全拟合反而不具有很好的预测性能。3.2.2.1 决策树算法决策树算法n剪枝技剪枝技术 是一种克服噪声的技术,同时它也能使树得到简化而变得更容易理解。n剪枝的剪枝的类型型 - 向前剪枝(forward pruning)在生成树的同时决定是继续对不纯的训练子集进行划分还是停机。 - 向后剪枝(backward pruning)是一种两阶段法:拟合化简(fitting-and-simplifying),首先生成与训练数据完全拟合的一棵决策树,然后从树的叶子开始剪枝,逐步向根的方向剪。 3.2.2.1 决策树算法决策树算法n剪枝的局限性剪枝的局限性 剪枝并不是对所有的数据集都好,就象最小树并不是最好(具有最大的预测率)的树。当数据稀疏时,要防止过分剪枝(over-pruning)。从某种意义上而言,剪枝也是一种偏向(bias),对有些数据效果好而有些数据则效果差。Attributes=Outlook,Temperature,Humidity,WindOutlookHumidityWindsunnyrainovercastyesnoyeshighnormalnostrongweakyesPlayTennis=yes,no打高尔夫球的决策树实例(自顶向下) 根据加薪百分比、工作时长、法定节假日、及医疗保险三个属性来判断一个企业的福利状况(good或bad)。 3.2.2.2 CLS算法算法nCLS(Concept Learning System)系统 以一棵空决策树开始,并通过增加结点逐步求精,直到产生一棵能正确分类训练样本的决策树为止,是一个循环递归过程。设PN为已知训练子集,则:1 (1)如果PN中的所有样本均为正例,则生成一个YES结点并终止;如果PN中的所有样本均为反例,则生成一个NO结点并终止;否则,根据某种启发策略选择一个属性A,设A取值为1,2r,并生成新结点。2 (2)将PN中的样本根据其属性A的取值加以划分,生成r个子集记为PN1,PN2PNr。 (3)递归地应用该算法到每个子集PNi。3.2.2.2 CLS算法算法nCLSCLS算法的局限性算法的局限性 分类属性的选择决定了算法的效率与所生成的决策树的繁简程度、预测效果。选择属性是决策树归纳算法的关键。 CLS算法可以产生所有可能的决策树,正确分类训练样本,并能选择最简单的决策树。但是属性选择的不确定性,在实际应用中往往受问题大小的限制。3.2.2.3 ID3算法算法 Quinlan提出的ID3算法,对CLS算法做出了改进。它的基本算法仍然来自于CLS,但使用熵来选择属性,效果非常理想。n举例例 根据天气状况决定某天早上是否合适打高尔夫球,合适的属于正例记为P,不合适的属于反例记为N。天气由四个属性描述,即 outlook(天气形势)取值分别为sunny,overcast和rain; temperature(温度)取值分别为cool,mild和hot; humidity(湿度)取值为normal和high; windy(风) 取值为false和true outlook temperature humidity windy class 1 sunny hot high false N 2 sunny hot high true N 3 overcast hot high false P 4 rain hot high false P 5 rain cool normal false P 6 rain cool normal true N 7 overcast cool normal true P 8 sunny mild high false N 9 sunny cool normal false P 10 rain mild normal false P 11 sunny mild normal true P 12 overcast mild high true P 13 overcast hot normal false P 14 rain mild high true N 表 打高尔夫球天气情况的样本集(14个)ID3算法举例其中p=9,n=5。 gain(outlook) = I(p,n) - E(outlook) = 0.940 - 0.694 = 0.246ID3算法举例 类似地,可得: gain(temperature) = 0.029 gain(humidity) = 0.151 gain(windy) = 0.048因此,outlook具有最大的信息增益,因此outlook被选为根结点并向下扩展,通过类似的方法,得到相应的ID3决策树。3.2.2.3 ID3算法算法n优势 算法理论清晰 方法简单 学习能力较强n不足之不足之处 对较小的数据集有效 对噪声比较敏感 当数据集增大时,决策树可能会改变。3.2.2.4 C45算法算法nC45C45算法算法 ID3有很多改进算法,其中Quinlan在1994年开发出的C45算法流行最广。 C45的改进主要体现在两方面: (1)解决了连续数据值的学习问题; (2)提供了将学习结果决策树到等价规则集的转换功能。3.2.2.4 C45算法算法nC45C45算法算法 C45属于一种归纳学习算法。归纳学习(Inductive Learning)旨在从大量经验数据中归纳抽取一般的判定规则和模式,它是机器学习(Machine Learning)中最核心、最成熟的一个分支。 根据有无导师指导,归纳学习又分为有导师学习(Supervised Learning,又称为示例学习)和无导师学习(Unsupervised Learning)。 C45属于有导师的学习算法。3.2.2.4 C45算法算法n示例学习算法分为两大类: 覆盖算法(covering algorithms) 分治算法(divide-and-conquer algorithms) n前者归纳生成规则,后者归纳生成决策树。3.2.2.5 Autoclass算法算法nAutoclassAutoclass算法算法 是一个基于Bayesian网络的无监督的分类算法,该算法可以处理连续和离散的属性。对于连续属性值,用户应先验说明属性的概率分布类别(比如正态分布);而对于离散属性,用户可以说明属性可能的所有取值。Autoclass算法可以把属性单独考虑,也可以先验说明某些属性的联合分布。该算法根据先验的概率分布类别,探索性地将数据集多次分成不同个数的类,然后比较这些分类,给出较优的几个结果。3.2.2.6 神经网络算法神经网络算法 人工神经网(ArtificialNeuralNetwork,ANN)是20世纪80年代后期迅速发展起来的人工智能技术,它对噪声数据具有很高的承受能力,对未经训练的数据具有分类模拟的能力,因此在网站信息、生物信息和基因以及文本的数据挖掘等领域得到了越来越广泛的应用。在多种ANN模型中,反向传播(BackPropagation,BP)网络是应用最广的一种。神经元神经元通过非线性函数n维的输入向量x被映射为变量ymk-fweighted sumInputvector xoutput yActivationfunctionweightvector ww0w1wnx0x1xn神经网络的组成神经网络的组成输出节点输出节点输入节点输入节点隐层节点隐层节点输入矢量输入矢量输入矢量输入矢量: xiwij基本的BP网络由输入层、输出层和隐层组成。神经网络的拓扑结构神经网络的拓扑结构 神经网络训练之前,需要设计网络拓扑结构。设计网络拓扑的关键是,确定隐层的神经元个数及各神经元初始权值和阈值(偏差)。理论上讲,隐层的神经元数越多,逼近越精确。但实际上,隐层神经元数不宜过多;否则会极大加长训练时间,并造成网络容错能力下降。经训练后的神经网络若其准确性不能被接受,则必须重新进行拓扑设计或改用不同的初始权值和阈值(偏差)。神经网络的训练神经网络的训练n训练的终止条件获得一组权重值,使得训练集中几乎所有样本都分类正确n训练步骤利用随机值对权值进行初始化将训练样本逐一地输入给神经网络,进行训练对于每个神经元n将其所有的输入值进行线性求和计算得到总的输入n利用激励函数计算其输出值n计算误差n修正网络权值和阈值(偏差)BP神经网络神经网络 BP神经网络通过迭代处理一组训练样本,将各样本的网络预测与实际已知类标号进行比较实现学习训练,反向修改网络的权值,使得网络预测与实际类之间的误差平方最小。BP神经网络按照最优训练准则反复迭代,确定并不断调整神经网络结构,通过迭代修改,当误差收敛时学习过程终止。 因此,具有分类准确、收敛性好、动态性好和鲁棒性强等优点。 BP神经网络存在的问题神经网络存在的问题n收收敛速度速度问题BP分类器最大的弱点是其训练速度非常缓慢,难以收敛。尤其是当网络的训练达到一定程度后,收敛更为缓慢。n局部极小点局部极小点问题BP算法采用的是梯度下降法,对一个复杂的网络而言,其误差曲面是一个高维空间中的曲面,其中分布着许多局部极小点,一旦陷入了局部极小点则算法很难逃离出来。BP神经网络存在的问题神经网络存在的问题n网网络瘫痪问题 在训练过程中,权值可能变得很大,这会使神经元的网络输入变得更大,从而使得其激励函数的一阶导函数在此点上的取值很小。此时的训练步长会变得非常小,最终导致网络停止收敛,这种现象即是所谓的网络瘫痪现象。其它的分类算法其它的分类算法n基于案例推理的分类n基于遗传算法的分类n基于粗糙集的分类n基于模糊集的分类3.3 关联关联3.3.1基本概念3.3.2典型算法3.3.3算法实现3.3.1 基本概念基本概念n关关联自然界中某种事物发生时其他事物也会发生,则这种联系称之为关联。反映事件之间依赖或关联的知识称为关联型知识(又称依赖关系)。n关关联的的类型型分为简单关联、时序关联、因果关联。3.3.1 基本概念基本概念n关关联规则关联是两个或多个变量取值之间存在的一类重要的可被发现的某种规律性。3.3.1 基本概念基本概念n关关联规则的数学定的数学定义先设I=i1, i2, .,im 是一个以m个不同项为元素的集合,T是针对I的交易的集合,每一笔交易包含若千个属于I的项。关联规则可表示为X=Y,其中X,Y I 且 X Y= X称为规则的前提或前项,Y称为结果或后项。每一规则有两个度量标准,即支持度(Support)和可信度(Confidence) 规则的支持度定义为: support (X=Y) =support (X U Y) 规则的可信度定义为: confidence(X= Y)=support(X U Y)/support(X)3.3.1 基本概念基本概念n关关联规则的形式的形式R: X= Y 其中,X及Y是两个不相交的集合,即X,YI且XY=关联规则可以理解为一个命题,即如果一个交易支持项集X,则它也以一定的可能性支持项集Y,这一可能性称之为规则的可信度,记为conf(R)或C(R)3.3.1 基本概念基本概念n举例例规则形式:Body Headsupport,confidencebuys(x,“diapers”) buys(x,“beers”)0.5%,60%major(x,“CS”)takes(x,“DB”) grade(x,“A”)1%,75%3.3.1 基本概念基本概念n关关联规则的性的性质 规则的非结合性 规则的不可分解性 规则的不可传递性 规则的可扩展性关联规则挖掘实例关联规则挖掘实例 通过发现顾客放入其购物篮中不同商品之间的联系,分析顾客的购买习惯。通过了解哪些商品频繁地被顾客同时购买,这种关联的发现可以帮助零售商制定营销策略。例如,在同一次购物中,如果顾客购买牛奶的同时,也购买面包(和什么类型的面包)的可能性有多大?这种信息可以引导销售,可以帮助零售商有选择地经销和安排货架。例如,将牛奶和面包尽可能放近一些,可以进一步刺激一次去商店同时购买这些商品。关联规则挖掘实例关联规则挖掘实例购物物篮关关联分析分析实例例图3.3.1 基本概念基本概念Customerbuys diaperCustomerbuys bothCustomerbuys beer“啤酒与尿布啤酒与尿布”的关联规则的关联规则ForruleACsupport=support(AC)=50%confidence=support(AC)/support(A)=66.6%ForCA(50%,100%)TheAprioriprinciple:AnysubsetofafrequentitemsetmustbefrequentMin.support50%Min.confidence50%关联挖掘实例关联挖掘实例3.3.2 典型算法典型算法n典型算法典型算法AIS算法(R.Agrawal等提出)Apriori算法(及变种AprioriTid和AprioriHybrid))SETM算法(M.Houtsma等提出)DHP算法(J.Park等提出)PARTITION算法(A.Savasere等提出)Sampling算法(H.Toivonen提出)FP-growth算法(JiaweiHan提出)3.3.2 典型算法典型算法nAISAIS算法的主要思想算法的主要思想 其主要思想是一边扫描数据库,一边产生候选项集并累计支持度。具体地说,在对数据库进行第k次扫描时,候选项集是由第k-1次扫描所产生的边界集(frontier set)通过增加当前事务中的项得到,同时计算候选项集中元素的支持数,直到某次扫描所产生的边界集为空。 缺点:生成的候选项集太大。3.3.2 典型算法典型算法nAprioriApriori算法的主要思想算法的主要思想 该算法利用了频繁项集所具有的任意频繁项集的子集都是频繁项集的这一性质对数据库进行多次扫描:第一次扫描得到频繁项集的集合L0 ,第k趟扫描前先利用上次扫描的结果项目集Lk-1,产生候选k项集的集合Ck ,然后再通过扫描数据库确定C中每一候选k项集的支持数,最后在该次扫描结束时求出频繁k项集的集合Lk ,算法的终止条件是Ck或Lk为空。 优点:所产生的候选项集比AIS算法少得多,效率较高。事实上,它被视为关联规则挖掘最经典的算法,其他很多算法都是其变种或改进。3.3.2 典型算法典型算法nSETMSETM算法的主要思想算法的主要思想 该算法实际也是AIS算法的变形。SETM把候选集的产生和累计分开,在一个线性存储结构里存储了所有候选集和相应的交易的标识符(TID)。每次扫描结束后,不再读取数据库,而是对TID进行排序并累计各个候选集的支持度。其思想是扫描候选集的编码(TID)来代替扫描数据库,实质上是把数据库中与支持有关的信息单独提取出来,构成一个较小但充分的TID库。这种做法大大减少了数据库访问的时间。 缺点:候选项集过大。3.3.2 典型算法典型算法nDHPDHP算法的主要思想算法的主要思想 该算法利用散列表(hash table)产生候选集,是对Apriori算法的直接改进。在遍历一次数据库得到候选k-项集的支持度,得到频繁k一项集后,DHP算法将每一个事务的可能的(k+1)-项集通过哈希规则形成散列表。散列表的每一栏包括所有通过散列规则映射到该栏中的项集的数目。根据结果的散列表,可以生成一个位向量,当散列表中对应的该栏中的数值大于或者等于最小支持时,对应的位置为1,否则为0。用该向量可以过滤掉下一次生成候选时所不必要的项集:如某候选项在向量中对应位的值为0,则舍弃。这对候选2-项集的产生尤为有效,可以在第二次就大大减小候选集的规模。DHP算法算法n优点 在某些场合,DHP算法的效率比Apriori算法明显提高。3.3.2 典型算法典型算法nPARTITIONPARTITION算法的主要思想算法的主要思想 该算法主要针对大型数据库,包括两部分: (1)将目标数据库分为n个互不相交的子数据库D1,Dn,每个Di(i=1, 2,n)的大小都要能容纳在内存中。然后把每个Di,读入内存并按一般算法发现频繁项集Li。再把所有的Li合并为数据库D的潜在频繁项集PL =Ui Li; (2)计算潜在频繁项集PL在D中的支持度,得出频繁项集L。3.3.2 典型算法典型算法nSamplingSampling算法的主要思想算法的主要思想 对数据库D进行随机抽样得到抽样事务数据库D,先以小于指定的支持度( minsup)挖掘D中的频繁项集L,再在剩余的数据集D-D中继续计算L中各元素的支持数,最后再以minsup求出L。这在大多数情况下就可以求得所有的频繁项集,但是有时会漏掉一些。这时可以对D进行二次扫描以发现漏掉的频繁项集。 优点:多数情况下只需对数据库扫描一次,最坏情况下也只需扫描两次。3.3.3 算法实现算法实现nApriori Apriori 算法的算法的实现 (1)由候选项集(candidate itemset)产生频繁项集(frequent itemset); (2)由频繁项集(frequent itemset)产生强关联规则(strong association rule)。3.3.3 算法实现算法实现nAprioriApriori算法的基本流程算法的基本流程使用逐层搜索的迭代方法,通过对数据库的多次扫描发现所有的频繁项集。在每一趟扫描中只考虑具有同一长度k(即为项集中所含项目的个数)的所有项集。算法的第一次扫描仅仅计算每个项目的具体支持度,以确定长度为1的频繁项集。在后继的每一次扫描中,首先使用在前一次获得的频繁项集Lk-1和Apriori-gen函数产生的候选项集q,接着扫描数据库,计算Ck中候选项的支持度,最后确定候选项集中哪些真正成为频繁项集。重复上述过程直到再也发现不了新的频繁项集为止。DatabaseDScanDC1L1L2C2C2ScanDC3L3ScanDApriori算法实例算法实例设定最小支持度阈值为2交易号交易号项集合项集合T100 I1,I2,I5 T200 I2,I4 T300 I2,I3 T400 I1,I2,I4 T500 I1,I3 T600 I2,I3 T700 I1,I3 T800 I1,I2,I3,I5 T900 I1,I2,I3 设定最小支持度阈值为2扫描D,对每个候选项计数,生成C1:项集项集支持度计数支持度计数I16I27I36I42I52比较候选项支持度计数与最小支持度计数,生成L1:项集项集支持度计数支持度计数I16I27I36I42I52由L1产生候选集C2:项集项集I1,I2I1,I3I1,I4I1,I5I2,I3I2,I4I2,I5I3,I4I3,I5I4,I5再次扫描D,对每个候选项计数,产生L2:项集项集支持度计数支持度计数I1,I24I1,I34I1,I52I2,I34I2,I42I2,I52对L2进行连接&剪枝,产生C3,即最终结果。项集项集I1,I2,I3I1,I2,I53.3.2 典型算法典型算法nApriori Apriori 算法的局限性算法的局限性 由于依赖于候选项集产生频繁项集的理论(Apriori类算法)所开发的算法具有先天的弱点,使得在基于Apriori算法开发的应用没有实质性突破。 Han等提出的一种新的算法理论,用一种压缩的数据结构(FP-tree)存储关联规则挖掘所需的全部数据信息,通过对源数据的两次扫描,将数据信息存到这种结构里,避开了产生候选项集的步骤,极大地减少了数据交换和频繁匹配的开销。这就是所谓无候选项集产生的算法(Frequent Patterns Growth, FP-growth)。3.3.3 算法实现算法实现n改改进的算法的算法FP-growthFP-growth(1)它构造了一种新颖的、紧凑的数据结构FP-tree。它是一种扩展的前缀树结构,存储了关于频繁模式数量的重要信息。(2)开发了基于FP-tree的模式片断成长算法,它从长度为1的频繁模式开始,只检查它的条件模式构建它的条件模式树,并且在这个树上递归地进行挖掘。模式的成长通过联合条件模式树新产生的后缀模式实现。(3)挖掘过程中采用的搜索技术是基于分区的,通过分割再解决的方法,而不是Apriori类算法的自下向上产生频繁模式的集合。3.3.2 典型算法典型算法nFP-growthFP-growth算法的主要思想算法的主要思想 该算法主要是为了克服类Apriori算法的产生候选项集的缺点,通过采用一种新的数据结构FP-tree来达到目的。 优点:只扫描数据库二次,并且不用产生候选项集,提高了效率。FP-growth算法实现交易编号交易编号所有购物项所有购物项(排序后的)频繁项(排序后的)频繁项100f,a,c,d,g,i,m,pf,c,a,m,p200a,b,c,f,l,m,of,c,a,b,m300b,f,h,j,of,b400b,c,k,s,pc,b,p500a,f,c,e,l,p,m,nf,c,a,m,p其中,最小支持度阈值为其中,最小支持度阈值为3 3FP-growth算法实现nullb:1f:3c:1b:1p:1a:2b:1m:1f:2c:2a:3f:4c:3m:2p:23.f,b4.c,b,pf:1c:1m:1p:1a:11.f,c,a,m,p2.f,c,a,b,m5.f,c,a,m,pFP-growthFP-growth算法树的构造算法树的构造FP-growth算法实例生成的FP树节点链性质对任意频繁项ai,顺着ai的节点链,从ai的头开始,可以找到包含ai的所有频繁模式。FP-growth与Apriori的比较DatasetT25I20D10K3.4 预测预测3.4.1概述3.4.2典型算法3.4.3算法实现一方面,预测与分类相似一方面,预测与分类相似首先,构建模型其次,使用模型预测未知值预测的主要方法是回归线性回归和多元回归非线性回归另一方面,预测不同于分类另一方面,预测不同于分类分类预测的是类别,而非连续的数值3.4.1 概述概述3.4.1 概述概述传统的的预测方法方法n趋势外推法n时间序列法n回归分析法等 这些算法的原理简单,理论相对成熟,能用标准的技术来分析模型中的参数。3.4.1 概述概述n趋势外推法外推法 通常用描散点图的方法定性地确定变化趋势,再按照该变化趋势对未来情况作出预测,特点是不对其中的随机成分作统计处理。3.4.1 概述概述n时间序列法序列法 将因变量(预测目标)和自变量(影响预测目标的因素)均看成随机变量。实际问题中,多数预测目标的观测值构成的序列表现为(广义)平稳的随机序列或可以转化为平稳的随机序列。虽然在某一给定时刻预测目标的观测值是随机的,但从整个观测序列看,却呈现出某种随机过程(如平稳随机过程)的特性。随机时间序列方法正是依据这一规律性来建立和估计产生实际序列的随机过程的模型,然后用这些模型进行预测。3.4.1 概述概述n回回归分析法分析法 假定同一个或多个独立变量存在相关关系,寻找相关关系的模型。不同于时间序列法的是:模型的因变量是随机变量,而自变量是可控变量。 分为线性回归和非线性回归。 目前多用多元线性回归模型。3.4.1 概述概述 随着科学技术的迅速发展,预测理论也得到了长足的进步,出现了不少新的研究方法,综合起来主要包括:n人工神经网络(ANN)预测方法n专家系统预测方法n模糊预测方法n小波分析预测方法n优选组合预测方法等3.4.1 概述概述n人工神人工神经网网络(ANN)(ANN)预测方法方法 目前应用最广泛的短期预测方法。它是一种通用的非线性自适应函数估计器,通过对研究目标的历史数据训练,建立起复杂的非线性映射模型。它不依赖于输入变量和预测目标之间明确的表达式,输入变量和预测目标之间的关系通过训练过程来形成,避免了建模过程的困难;另一显著特征是它的自适应算法,在每一时刻都可以选择新的训练样本来估计和调整系统参数,得到预测值。现在多采用误差反向传播(BP)算法和径向基函数(RBF)方法。但是,它的隐层神经元个数不易确定,易陷入局部最优点,需要大量训练样本且训练时间较长。3.4.1 概述概述n专家系家系统预测方法方法 基于知识建立起来的计算机系统,它拥有某个领域内专家们的知识和经验,能像专家们那样运用这些知识,通过推理作出决策。实践证明,专家系统预测不仅需要新技术的支持,同时也需要融合人类自身的经验和智慧。因此,需要专家系统的相关技术。但是,知识获取的“瓶颈”问题妨碍了专家系统的快速开发。3.4.1 概述概述n模糊模糊预测方法方法 建立在模糊数学理论上的一种预测新技术,模糊数学是用数学方法来研究和处理具有“模糊性”的现象。所谓模糊性主要是指有关事物差异的中间过渡中的不分明性,如温度值的“高与低”等,这些模糊现象很难明确划分其界限。3.4.1 概述概述n小波分析小波分析预测方法方法 20世纪数学研究成果中最杰出的代表。它是一种时域频域分析方法,在时域和频域上同时具有良好的局部化性质。3.4.1 概述概述n优选组合合预测方法(两种)方法(两种) 一是指将几种预测方法所得预测结果,选取适当权重进行加权平均; 二是指将几种预测方法进行比较,选择拟合优度最佳或标准离差最小的预测模型作为最优模型进行预测。 组合预测方法是建立在信息利用最大化的基础上,它集结多种单一模型所包含的信息,进行最优组合。因此,在大多数情况下,通过组合预测可以达到改善预测结果的目的。线性回归Y=+X利用实际数据估计参数和对已知值的Y1,Y2,X1,X2,.进行最小平方运算多元回归Y=b0+b1X1+b2X2.很多非线性方程均可以转换为上述的形式Log-linear模型Themulti-waytableofjointprobabilitiesisapproximatedbyaproductoflower-ordertables.Probability:p(a,b,c,d)=abacadbcd3.4.2 典型算法典型算法3.4.2 典型算法典型算法PolynomnPolynomPolynom算法算法一个经典的多元回归算法。其原理如下: 设y为预测目标变量,x1,x2,.xp为p个影响目标的因素。假定它们满足公式:y=a1x1+a2x22+apxpp,则可以根据已有的数据估算出系数a1,a2,.ap的变化,从而作出预测。数据的预测数据的预测类别的预测类别的预测3.5 数据挖掘的可视化数据挖掘的可视化以可视化的方式展示数据挖掘获取的相关知识。例如:散点图和盒图(obtainedfromdescriptivedatamining)决策树关联规则聚类异常点规则SASEnterpriseMiner的散点图关联规则的可视化(MineSet3.0)决策树的可视化(MineSet3.0)聚类的可视化(IntelligentMiner)3.6 数据挖掘的实施数据挖掘的实施一般而言,一个企业实施数据挖掘项目有三种方式可供选择:购买成熟的模型购买一般性数据挖掘系统软件构建数据挖掘系统3.6 数据挖掘的实施数据挖掘的实施n第一种方式实现简单,可以直接应用,但是要求模型所模拟的环境必须和企业的产品、客户以及市场条件相类似。当模型所涉及的环境条件改变的时候,这种模型不能根据环境的变化作出修改和调整。3.6 数据挖掘的实施数据挖掘的实施n第二种方式可以利用数据挖掘系统根据企业自己的数据生成模型。但是,一个通用的数据挖掘系统在对特定行业商业问题的理解上可能需要做很多工作;同时,如何与与企业原有系统自动化集成也是一个需要着重考虑的问题。n第三种方式可以较好地解决与原有系统集成的问题,并可以直接面向特定的商业问题的解决。但是这种方式实现较复杂,项目实施周期长,成本较高。3.6 数据挖掘的实施数据挖掘的实施 当然企业也可以把上述方式结合起来。例如:购买包含模型的数据挖掘软件或购买通用数据挖掘软件系统,然后进行针对本企业特点的二次开发等。数据挖掘系统的典型结构数据挖掘系统的典型结构主要内容主要内容1. 概述概述2. 数据数据仓库与与OLAP技技术3. 数据挖掘技数据挖掘技术4. 数据挖掘在数据挖掘在电信信领域的域的应用用5.数据挖掘工具数据挖掘工具6. 数据挖掘数据挖掘实例例4数据挖掘在电信领域的应用数据挖掘在电信领域的应用4.1CRM与ERP4.2数据挖掘在电信领域的应用4.1 CRM与与ERPnCRMCRM(CustomerRelationshipManagement,客户关系管理),作为一种旨在改善企业与客户之间关系的新型管理机制。CRM系统以数据仓库技术为基础,数据挖掘技术为核心。 4.1 CRM与与ERPnERPERP(EnterpriseResourcePlanning,即企业资源规划),是前几年国内外兴起的一种企业运作管理软件,它的侧重点是对企业内部的业务流程以及企业的资源进行管理。解决的是企业内部各环节的协调问题,如财务、生产、采购和仓储等部门间的协调关系。4.1 CRM与与ERPnERP与CRM两者的关系 同样作为现代企业的管理软件,ERP与CRM在企业运营过程中,处于不同的位置,担任不同的角色。一个面向后台,一个面向前台。一个保证企业生产出更高质量的产品,而另一个帮助企业理顺与客户的关系,向客户提供最好的服务。这是企业在激烈的市场竞争保证胜利的不可或缺的两个环节。4.1 CRM与与ERP 通过ERP与CRM系统的紧密集成,把企业供应商和服务商等都联成一个有机的整体,真正形成一个以客户为核心进行运作的虚拟企业,并最大限度地满足客户需要和最大限度地降低企业成本。CRM的应用 数据挖掘在CRM中的市场营销,业务分析,客户服务等方面都有广泛的应。 例如:发展客户、提升客户价值、挽留客户等。CRM的应用n发展客户 每一个企业都希望能更快地发展新的客户,更多的客户意味着更大的市场占有率和更好的规模效益。数据挖掘技术可以帮助更准确地发现有价值的潜在客户,从而可以显著地降低发展新客户的成本,提高市场拓展的投入产出比(ROI)。CRM的应用 例如,假设一个电信业务提供商利用邮寄宣传材料开拓市场,一份宣传材料的成本是¥1.00。如果漫无目的地随机分发10000份,将有150人成为该公司用户,而其中能给公司带来利润的仅有100人。也就是说投入¥10000,得到了100个有价值的客户。现在采用数据挖掘技术,根据以前随机分发的数据或者新取样500人分发获取数据而后建立模型,根据该模型,发现前面的10000人中只有5000人值得投资,对此5000人邮寄宣传材料后有95人成为客户,其中90人可带来利润。结果是投入¥5500,获得了90个有价值的客户,显著地提高了投入产出比。CRM的应用n挽留客户据一般经验估计,留住一个老客户地成本是发展一个新客户成本的35倍。留住有价值的客户保持利润的有力手段。而在电信行业,客户的频繁换网现象(churn)十分严重,留住客户比其它行业更加困难。数据挖掘在此问题上也有较好的应用。 CRM的应用 要挽留客户首先要找出可能离网的客户,因此数据挖掘解决该问题的第一步即是建立离网客户预测模型。该模型可以利用已离网客户的历史资料(包括个人信息、消费行为等)来获得。第二步当然还得判断该客户是否值得挽留,这也用到预测模型,因为有些客户虽然目前是有微弱价值的但是最终毫无价值,有些客户则可能恰恰相反。CRM的应用n提升客户价值 提升现有客户的价值是提高利润的重要手段。在电信行业,客户价值提升包括交叉销售、增值销售和基本业务价值提升。数据挖掘是发现交叉销售/增值销售机会和分析基本业务价值提升可能性的重要手段。CRM的应用发现交叉销售/增值销售机会涉及到两个模型。第一个模型用来确定哪些用户可以进行推销,哪些用户则不希望被打扰。如果多次对第二类用户进行推销,则可能失去该用户。第二个模型则用来发现对特定的用户推销哪些产品。显然,即使不考虑推销成本,多次向客户推销他并不想要的产品肯定会降低他对该企业的满意度。关联规则可能是第二个模型的重要组成部分。CRM的应用 基本业务价值提升要考虑的重要问题是预测用户在企业采取某种措施后其利润的变化情况。例如假设某个电信运营商采取某特定用户群亲友电话费减半的优惠策略来刺激消费,则必须要求这些用户的消费额增加或者能增加市场占有率公司才可能获得效益。4.2 电信领域的应用电信领域的应用4.2.1客户行为与潜在客户分析4.2.2用户信用度分析4.2.3黑名单、红名单4.2.4优惠策略4.2.5甄别欺诈4.2.6趋势预测4.2 电信领域的应用电信领域的应用n目的 利用成熟的数据挖掘工具或算法,对用户帐务数据、行为数据、基本信息数据,以及各营业点的销售记录等进行分析挖掘,找出各种数据之间的潜在关系,为企业经营者制定销售策略提供科学依据。n数据源 用户帐务数据库、用户行为数据库(话单数据)、用户基本信息库等。4.2.1 用户行为分析用户行为分析 对于企业的某一类或几类产品/业务来说,大致可将其用户分为四类:(1)潜在用户 目前还不是公司任何一项产品/业务的用户,但有使用该产品/业务的潜在趋势,这是市场竞争初期的重要营销对象。(2)增量用户 是公司某项产品或业务的使用者,并且有增加使用量的趋势。 4.2.1 用户行为分析用户行为分析(3)交叉增量用户 是企业某一产品/业务的使用者,并且有使用本公司另一类产品/业务的可能性。(4)挽留客户 目前是公司的某一类或几类产品/业务的使用者,但有终止使用或转向别的产品/业务提供者转移的可能性。 4.2.1 用户行为分析用户行为分析n用户行为分析的基本思想 将用户的行为分为若干类别,对具有某一类行为特征的用户,分析其基本信息,以期找出用户行为和客户基本特征两者之间的若干潜在关系。实现步骤实现步骤n第一步 采用聚类算法对用户行为进行分类,根据得到的类别模型与客户行为信息库对个客户行为进行评分,结果写回客用户行为信息库。n衡量用户行为的主要特征指标包括: 客户ID时段工作日性质-工作日和非工作日消费金额业务类型(重要指长话,市话等通话业务),目的(重要指本地,长途,我网他网等信息)实现步骤实现步骤n第二步 统计分析各类别的行为特性,首先按照各行为类别的利润贡献大小对各类别进行排序。 例如:类别利润计算公式 类别平均利润=(各行为消费金额)/类别行为个数实现步骤实现步骤 类别行为特性按不同主题有多种考察重点,如某一种业务或业务组合在各类别行为中出现的百分比,各行为的时间段分布情况等;这里得到两类类别统计信息表:按类别组织和按各种主题(如业务类型,业务量)组织。4.2.1 用户行为分析用户行为分析主要包括两方面的分析:n群体分析 利用聚类或分类算法,将企业客户根据某种规则分为若干群体。n行为分析(又称倾向建模) 根据客户以前的消费行为,分析某几类有显著特征的行为模式,并据此对客户未来的行为进行预测。4.2.1 用户行为分析用户行为分析 上述两种建模技术均可以被用来提高企业营销目标对象的准确性并提高相应的收益。为达到这个目的,目前有很多的分析工具被应用,如: 交叉报表工具 基于机器学习的数据挖掘工具工具。如 Minset、Integent Miner等 基于统计学的分析工具,如SAS、SPSS; 神经网络 4.2.2 用户信用度分析用户信用度分析 用户信用度等级描述 详细描述用户信用度等级的具体含义。 信用等级分布表示 客户的利润、客户的基本信息和行为分类如时间段、业务类型等的分布表示。类似于客户行为分析。 信用度的相关分析 分析影响用户信用度的因素之间的概率依赖关系、强度及其可信度。这一方面用于预测客户信用度的发展趋势,当发生变化时,对其信用等级进行相应的调整。4.2.2 用户信用度分析用户信用度分析 利用上述分析结果,给出从一个信用度等级到另一个信用度等级变化可能性大的客户。可能决策者主要关心从高等级到低等级(最低等级)和从低等级到最高等级可能性大的用户群。4.2.2 用户信用度分析用户信用度分析根据影响用户信用度的主要因素,对用户的帐务数据进行分类,建立分类模型,并对用户进行评分,给出用户的信用度级别(类别)。 影响用户信用度的主要因素包括:(1)交费的及时度(2)用户的社会性质(3)用户的通话业务量(4)用户申请的业务数量(5)用户申请的业务种类和用户的投诉情况4.2.2 用户信用度分析用户信用度分析n用户信用度分析的实现 系统初装时,没有用户的信用度级别信息,这时采用聚类算法,按照用户的帐务行为信息将其分为若干类。在此基础上,依照每类各指标的统计数据和一定的等级评定规则,将各类的信用度赋于高低级别; 在系统运转过程中,用户(指本系统用户)可能会对用户已有信用度级别提出异议,或加以修改,这样,对做了相应级别修正后的用户数据,采用有监督的分类学习,就会得到更为准确的分类模型,而且这个模型也是不断在更新的。相应的,随着用户信用行为特征的变化,其信用级别也会不断变动。4.2.2 用户信用度分析用户信用度分析 信用度类别分类依据的用户帐务信息数据包括:n 开户平均时长n 欠费次数n 金额(如本月欠费,则为欠费金额,此值为负,如本月不欠费,则为通话费用,此值非负)n 欠费时长n 帐务人社会性质步骤步骤1 用户信用度初始化用户信用度初始化数据抽样数据抽样n抽样的原则 样本尽量具有代表性,且数据量能保证学习耗时不是太多。 例如,可采用一个随机数产生器随机产生要抽取的样本。数据抽样数据抽样步骤步骤2 信用度模型更新信用度模型更新步骤步骤3 用户信用度级别更新用户信用度级别更新步骤步骤4 新开用户信用度设定新开用户信用度设定 用户的信用度级别设定是由用户的帐务信息决定的,而新开用户没有任何帐务记录,故根据已有的信用度模型没法设置其信用度。考虑到有不同帐务行为的用户有不同的基本信息,即某种信用等级的用户具有相似的基本信息,我们可以分析新开户的基本信息,与各个信用等级的用户基本信息做比较,以确定他属于哪个信用级别,分为以下两步:(1)分类模型确定 (2)新开户信用等级评定步骤步骤4 新开用户信用度设定新开用户信用度设定4.2.3 黑名单、红名单黑名单、红名单 n黑名单与红名单管理是在信用度管理的基础上,按照一定的规则,将信用度较高或较低的某些用户列入红名单或黑名单。n根据信用度的评定规则可知,红名单中用户交费及时,消费量大,是电信部门保证利润的最重要客源,也是最应该保持的一部分客户;而黑名单上的用户则是对电信部门利润增长贡献较小或最有可能有欺诈行为倾向的用户。n黑名单与红名单是优惠策略管理和反欺诈管理的重要依据,并且也是电信部门较为关心的重要信息。4.2.4 优惠策略分析优惠策略分析 优惠策略(包括营销优惠策略和话费优惠策略)主要完成:(1)定义优惠规则和优惠方式;(2)用户优惠规则参数化处理;(3)对已有优惠策略的性能分析;(4)优惠套餐的设置;(5)各种优惠和业务、以及其他信息分布关系的展示功能。4.2.4 优惠策略分析优惠策略分析优惠惠规则分分为:n时段段优惠惠 用户可享受国家规定的时段优惠外,系统还应提供有各个公司制定的适用于本地的时段优惠措施n总量量优惠惠 对用户的业务量达到一定的程度后,给予不同的优惠措施。4.2.4 优惠策略分析优惠策略分析n次数次数优惠惠 对用户的通话次数达到一定的数量后,给予不同的优惠措施。n伙伴伙伴电话优惠惠 对用户的通话性质进行区分,对于呼叫某类或某部电话的用户,给予不同的优惠措施。4.2.4 优惠策略分析优惠策略分析优惠方式包括:惠方式包括:n基于客户性质类别的优惠n基于呼叫地区类别的优惠n基于营业地区类别的优惠n基于信用等级的优惠n综合的优惠套餐等4.2.4 优惠策略分析优惠策略分析优惠方式分析惠方式分析n对于各种优惠方式(包括优惠套餐),给出其受益客户的类别、信用度类别分布、欺诈情况和投诉类别分布等。例如,优惠策略的行为类别分布及其柱状图和饼状图等。n新优惠套餐设置分析。给出新的优惠套餐的设置与客户群的分析及利润分析。(优惠套餐的设置参数必须在以前的优惠策略中出现过),分析优惠套餐使用者的其他各项属性的概率,从而给出这种优惠(资费)的客户群体。同时可以查找最优化的优惠设置。4.2.4 优惠策略分析优惠策略分析n优惠策略或优惠套餐潜在客户分析。n优惠策略的性能分析。通过分析优惠策略和业务量和收入之间的关系,给出优惠策略的性能。 4.2.5 甄别欺诈甄别欺诈 当前恶意欠费客户给电信运营商造成了巨大的利润损失,如何减少欺诈行为带来的损失是每一家电信企业所必须面对的问题。在识别欺诈客户,降低经营风险方面数据挖掘已经不少有了成功的应用案例。4.2.5 甄别欺诈甄别欺诈 识别欺诈客户的主要途径: 第一是区分用户的信用度,通过建立用户信用打分模型把用户分成不同的信用度等级,给不同的等级确定不同的月高额限制,超出限额的认为是潜在恶意欠费客户。 第二是建立恶意欠费客户的消费识别模型,如果某一客户的消费模式吻合欺诈消费模式,则认为是潜在恶意欠费客户。4.2.5 甄别欺诈甄别欺诈 甄别欺诈策略分析类似优惠分析,建立在信用度管理的基础之上。n分析防欺诈策略的相关变量:高额话费额度、欠费停机额度和用户具有不同的欠费停机额度等。n指定防欺诈策略n分析信用度、客户的满意程度、高额花费警告额度和停机额度之间的关系。根据分析结果调整用户的基本信息。n分析信用度、客户的满意程度和用户催缴周期、催缴频度之间的关系。4.2.6 预测预测 预测主要指业务预测,是针对电信量发展的短期预测。它建立在对大量数据(业务资料数据、社会基础资料数据、市场调查资料、其他运营者资料数据)统计分析的基础上,通过模型运算、统计分析等数据处理手段,完成对电信业务的业务发展、用户需求数量、用户分布、市场占有率等几方面的预测分析。4.2.6 预测预测 从上面介绍的数据挖掘在电信领域的各种应用可以看出,信用度分析及客户行为分析是其他各种应用的基础。数据挖掘的认识误区数据挖掘的认识误区u挖掘出的结果都是正确正确的 数据挖掘得出的结果一般都是经验性的,它并不是一条经过严格数学证明的定理(事实上数据挖掘得出的规则绝大多数不可证明)。例如数据挖掘号称能通过历史数据的分析来预测客户的行为,而事实上客户自己可能都不明确自己下一步要作什么。挖掘算法并不保证结果的完全正确,挖掘出的结果只具有概率上的意义,只具有参考价值。数据挖掘的认识误区数据挖掘的认识误区u挖掘获得的模型可普遍适用普遍适用 数据挖掘仅仅根据它所处理的数据得出结果,结果的适用范围受限于数据的选择。我们不能保证一个在美国运行得非常成功的银行信用卡客户信用评级模型在中国也同样可信;当然我们也不能保证一个零售业的客户利润分析模型同时适用于电信行业。数据挖掘的认识误区数据挖掘的认识误区u数据挖掘可以完全自完全自动化化 当然数据挖掘可以做到完全的自动化,但是,挖掘结果对商业目标的价值不是挖掘算法所能判断的,用户需要在他们能理解的背景环境中,观察挖掘输出的结果并与之交互。很多时候一个挖掘目标的完成需要多次叠代的挖掘过程才能完成。在一定的意义上,一个半自动的数据挖掘环境可能是更好的。数据挖掘的认识误区数据挖掘的认识误区 数据挖掘是一个工具,而不是魔杖。它不会坐在数据库上一直监视着数据库,然后当发现有意义的模型时给管理者发一封电子邮件。它仍然需要了解用户的业务,理解用户的数据,弄清分析方法。数据挖掘只是帮助专业人士更深入、更容易的分析数据。而无法告知某个模型对企业的实际价值。而且数据挖掘中得到的模型必须在现实生活中进行验证。主要内容主要内容1. 概述概述2. 数据数据仓库与与OLAP技技术3. 数据挖掘技数据挖掘技术4. 数据挖掘在数据挖掘在电信信领域的域的应用用5.数据挖掘工具数据挖掘工具6. 数据挖掘数据挖掘实例例5 数据挖掘工具数据挖掘工具5.1概述5.2几种数据挖掘工具比较5.3典型工具介绍5.3.1DBMiner5.3.2Admocs5.3.3PredictiveCRM5.3.4SAS/EM(EnterpriseMiner)5.3.5Weka5.1 概述概述目前,世界上比较有影响的典型数据挖掘系统包括:nEnterpriseMiner(SAS公司)nIntelligentMiner(IBM公司)nSetMiner(SGI公司)nClementine(SPSS公司)nWarehouseStudio( Sybase公司)nSee5(RuleQuestResearch公司)nCoverStorynEXPLORAnKnowledgeDiscoveryWorkbenchnDBMinernQuest等5.1 概述概述nhttp:/www.datamininglab.com 该网站提供了许多数据挖掘系统和工具的性能测试报告。5.1 概述概述nIBMIntelligentMinerAwiderangeofdataminingalgorithmsScalableminingalgorithmsToolkits:neuralnetworkalgorithms,statisticalmethods,datapreparation,anddatavisualizationtoolsTightintegrationwithIBMsDB2relationaldatabasesystemnSASEnterpriseMinerAvarietyofstatisticalanalysistoolsDatawarehousetoolsandmultipledataminingalgorithmsnMirosoftSQLServer2000IntegrateDBandOLAPwithminingSupportOLEDBforDMstandard5.1 概述概述nSGIMineSetMultipledataminingalgorithmsandadvancedstatisticsAdvancedvisualizationtoolsnClementine(SPSS)Anintegrateddataminingdevelopmentenvironmentforend-usersanddevelopersMultipledataminingalgorithmsandvisualizationtoolsnDBMiner(DBMinerTechnologyInc.)Multipledataminingmodules:discovery-drivenOLAPanalysis,association,classification,andclusteringEfficient,associationandsequential-patternminingfunctions,andvisualclassificationtoolMiningbothrelationaldatabasesanddatawarehouses5.2 几种数据挖掘工具比较几种数据挖掘工具比较产品产品公司公司主页主页版本版本ClementineIntegralSolutions,Ltd.http:/www.isl.co.uk/clem.html4.0DarwinThinkingMachines,Corp.http:/www.think.com/html/products/products.htm3.0.1Enterprise MinerSASInstitutehttp:/www.sas.com/software/components/miner.htmlBetaIntelligent MinerIBMhttp:/www.software.ibm.com/data/iminer/2PRWUnicaTechnologies,Inc.http:/www.unica-usa.com/prodinfo.htm2.1ScenarioCognoshttp:/www.cognos.com/busintell/products/index.html2平台和数据库连接方式的比较平台和数据库连接方式的比较产品产品单机版单机版C/S版版数据源数据源ClementinePC和UNIX无ODBCDarwin无UnixServer/PCClientODBCEnterprise MinerPCUnixServer/PCClient和NTServer/PCClientODBC和NativeDatabaseDriversIntelligent MinerPCUnixServer/PCClientNativeDatabaseDriversPRWPC无ODBCScenarioPC无仅支持数据库文件(Debase、excel、csv等)算法方面的比较算法方面的比较算法算法ClementineDarwinEnterprise MinerIntelligent MinerPRWScenario决策树决策树有有有有无有神经网络神经网络有有有有有无回归分析回归分析有无有有有无Radial Basis Functions无有无有有无最近邻最近邻无无有无有无最近均值最近均值无无无无有无 Kohonen Self-Organizing Maps有无有无无无聚类聚类有无无有有无关联规则关联规则有无无有无无比较与分析比较与分析 在算法参数控制和扩展功能选项方面,对比这些产品可以发现,EnterpriseMiner和PRW对参数控制实现的较好,而IntelligentMiner在这方面较弱。几乎所有的产品都提供对决策树的实数值的处理和图形展示等扩展功能,但只有Clementine和Scenario较好地实现了树的修剪选项功能。此外,神经网络的扩展功能方面也有较大差别。易用性方面的比较易用性方面的比较产品产品数据装载和数据装载和操纵操纵模型模型建立建立模型理模型理解解技术技术支持支持总体总体感觉感觉ClementineDarwinEnterpriseMinerIntelligentMinerPRWScenario可视化方面的比较可视化方面的比较IntelligentMiner、EnterpriseMiner和Scenario都有图形化的树展示,而Clementine和Darwin则提供基于文本的规则说明。此外,对于柱状图、饼图和曲线等这些工具的支持程度也各有不同。挖掘过程自动化的比较挖掘过程自动化的比较产品产品对自动化的支持对自动化的支持Clementine可视化编程和编程语言支持Darwin编程语言支持EnterpriseMiner可视化编程和编程语言支持IntelligentMiner仅提供向导界面,不支持编程PRW有一个实验管理组件,支持宏Scenario自动化支持较弱,很多过程需手工完成小结小结 这六种工具都是非常优秀的数据挖掘工具,但每一种可能适用于不同的环境。IBM的IntelligentMiner在市场上比较领先并有良好的技术支持;SAS的EnterpriseMiner明显地偏向统计(因此更适用于适合统计的环境); 在不清楚那种算法更好的情况下Unica的PRW是较好的选择,Cognos的Scenario则是其数据仓库系列产品的重要组件。如何选择数据挖掘工具如何选择数据挖掘工具n商用数据挖掘系统各不相同不同的数据挖掘功能和方法数据集的类型可能完全不同n多维视图n数据类型关系型的,事务型的,文本的,时间序列,空间的?n系统问题支持一种还是多种操作系统?C/S架构?提供Web接口,且允许输入/输出XML数据?如何选择数据挖掘工具如何选择数据挖掘工具n数据源ASCII文件、文本文件,多个关系型数据源支持ODBC连接(OLEDB,JDBC)?n数据挖掘功能与方法实现多种数据挖掘功能每种功能提供多种实现方法提供更多的数据挖掘功能和实现方法将使用户具有更大的灵活性和更强大的分析能力与数据库或数据仓库的耦合性四种耦合方式:非耦合,松散耦合,半紧密耦合和紧密耦合n理想情况下,数据挖掘系统应该与数据库是紧密耦合的如何选择数据挖掘工具如何选择数据挖掘工具n可伸缩性Row(ordatabasesize)scalabilityColumn(ordimension)scalabilityCurseofdimensionality:itismuchmorechallengingtomakeasystemcolumnscalablethatrowscalablen可视化工具“Apictureisworthathousandwords”Visualizationcategories:datavisualization,miningresultvisualization,miningprocessvisualization,andvisualdataminingn数据挖掘查询语言与图形用户界面Easy-to-useandhigh-qualitygraphicaluserinterfaceEssentialforuser-guided,highlyinteractivedataminingnDBMiner的主要功能Discovery-driven,OLAP-basedmulti-dimensionalanalysisAssociationandfrequentpatternanalysisClassification(decisiontreeanalysis)Clusteranalysis3-Dcubeviewerandanalyzern其他功能OLAPservice,cubeexploration,statisticalanalysisSequentialpatternanalysis(underdevelopment)Visualclassification(underdevelopment)5.3.1 典型工具典型工具DBMinerDBMiner Data and Mining Views (Working Panel)OLAP (Summarization) Display Using MS/Excel 2000Market-Basket-Analysis (Association)Ball graphDisplay of Association Rules in Rule Plane FormDisplay of Decision Tree (Classification Results)Display of Clustering (Segmentation) Results3D Cube BrowserDBMiner的发展的发展nEvolvingfromDBMiner2.0toDBMiner2.5SmoothintegrationofrelationaldatabaseanddatawarehousesystemsSupportMicrosoftOLEDBforDataMiningAddingfastassociationminingandsequentialpatternminingmethodsAddingvisualclassificationmethodsnTowardsRetailMiner,WeblogMiner,WebMiner,GeoMiner,MultiMediaMiner,andDNAMiner相关链接相关链接n访问以下网址可获得DBMiner免费试用(90天)DBMiner2.0isdownloadableatwww.dbminer.com5.3.2 典型工具典型工具Amdocs 在多年前电信行业已经开始利用数据挖掘技术进行网络出错预测等方面的工作,而近年来随着CRM理念的盛行,数据挖掘技术开始在市场分析和决策支持等方面得到广泛应用。市场上更出现了针对电信行业的包含数据挖掘功能的软件产品。比较典型的有Amdocs和SlpInfoware。5.3.2 典型工具典型工具AmdocsAmdocs提供了整个电信运营企业的软件支撑平台。在其ClarifyCRM产品组件中,利用数据挖掘技术支持以下应用: 客户流失管理(churnmanagement) 终身价值分析(lifetime value analysis) 产品分析(product analysis) 欺诈甄别(fraud detection)。 Amdocs产品中的数据分析和数据分析应用曾获得三届KDD杯奖。5.3.3 典型工具典型工具Predictive CRMSlpInfoware开发的PredictiveCRM软件是一个面向电信行业的CRM平台软件,其中应用了大量的数据挖掘和统计学技术。其数据挖掘部分实际上是把SASInstitute、SPSS和UNICA等公司的数据挖掘产品加以二次开发以适应电信行业的需要。数据挖掘在P-CRM中的应用包括客户保持、交叉销售、客户流失管理、欺诈甄别等方面。5.3.4 典型工具典型工具SAS/EM利用SAS软件技术进行数据挖掘可以有三种方式: (1)使用SAS软件模块组合进行数据挖掘 (2)将若干SAS软件模块联结成一个适合需求的综合应用软件 (3)使用SAS数据挖掘的集成软件工具SAS/EM5.3.4 典型工具典型工具SAS/EM SAS/EM是一个图形化界面,菜单驱动的,对用户非常友好且功能强大的数据挖掘集成软件,集成了: 数据获取工具 数据取样工具 数据筛选工具数据变量转换工具 数据挖掘数据库数据挖掘过程 多种形式的回归工具 建立决策树的数据剖分工具 决策树浏览工具人工神经元网络 数据挖掘的评价工具5.3.4 典型工具典型工具SAS/EMSAS/EM数据获取工具数据获取工具 通过对话框指定要使用的数据集的名称,并指定要在数据挖掘中使用的数据变量。变量分为两类:n区间变量(Interval Variable) 是指那些要进行统计处理的变量。对于这样一些变量,在数据输入阶段你就可以指定它们是否要作最大值、最小值、平均值、标准差等的处理。还可给出该变量是否有值的缺漏,缺漏的百分比是多少等。利用这些指定可对输入数据在获取伊始就进行了一次检查,并把结果告诉你,你可初步审视其质量如何。SAS/EM数据获取工具数据获取工具n分类变量(Class Variable) 区间变量以外的变量称之为分类变量。在数据输入阶段将会提供给你每个分类变量共有多少种值可供分类之用。SAS/EM数据取样工具数据取样工具 对获取的数据,可再从中作取样操作。取样的方式是多种多样的。主要包括: 随机取样 等距取样 分层取样 从起始顺序取样 分类取样 SAS/EM数据取样工具数据取样工具n随机取样 在采用随机取样方式时,数据集中的每一组观测值都有相同的被取样的概率。如按10%的比例对一个数据集进行随机取样,则每一组观测值都有10%的机会被取到。n等距取样 如按5%的比例对一个有100组观测值的数据集进行等距取样,则有:100/5=20,等距取样方式是取第20、40、60、80和第100等五组观测值。SAS/EM数据取样工具数据取样工具n分层取样 在这种取样操作时,首先将样本总体分成若干层次(或者说分成若干个子集)。在每个层次中的观测值都具有相同的被选用的概率,但对不同的层次你可设定不同的概率。这样的取样结果可能具有更好的代表性,进而使模型具有更好的拟合精度。n从起始顺序取样 从输入数据集的起始处开始取样。取样的数量可以给定一个百分比,或者就直接给定选取观测值的组数。SAS/EM数据取样工具数据取样工具n分类取样 在前述几种取样方式中,取样的单位都是一组观测值。分类取样的单位是一类观测值。这里的分类是按观测值的某种属性进行区分。如按客户名称分类、按地址区域分类等。显然在同一类中可能会有多组观测值。分类取样的选取方式就是前面所述的几种方式,只是取样以类为单位。SAS/EM数据筛选工具数据筛选工具 通过数据筛选工具可从观测值样本中筛选掉不希望包括进来的观测值。对于分类变量可给定某一类的类值说明此类观测值是要排除于取样范围之外的。对于区间变量可指定其值大于或小于某值时的这些组观测值是要排除于取样范围之外的。通过数据筛选使样本数据更适合数据挖掘的目标。SAS/EM数据变量转换工具数据变量转换工具 利用此工具可将某一个数据进行某种转换操作,然后将转换后的值作为新的变量存放在样本数据中。转换的目的是为了使数据和将来要建立的模型拟合的更好。例如,原来的非线性模型线性化、加强变量的稳定性等。可进行取幂、对数、开方等转换。当然,也可给定一个公式进行转换。SAS/EM建立数据库建立数据库 在进行数据挖掘分析模型的操作之前,要建立一个数据挖掘的数据库(DMDB),其中放置此次要进行操作的数据。因为此后可能要进行许多复杂的数学运算,在这里建立一个专门的数据集可提高工作效率。在处理之前,可对所选取的各个变量预先进行诸如最大、最小、平均、标准差等处理。对一些要按其分类的变量的等级也先放入MetaData之中,以利后继操作。 总之在这个数据库中为数据挖掘建立一个良好的工作环境。SAS/EM为建立决策树的数据剖分工具为建立决策树的数据剖分工具 对数据集进行聚类、建立决策树,是近来数据处理,进行决策支持常用的方法。在SAS/EM中亦支持这一功能。在建立决策树的过程中可有多种数据聚类、剖分的方法可供选择。SAS/EM为建立决策树的数据剖分工具为建立决策树的数据剖分工具图形化界面的交互式操作,可分成六个层:(1)对数据挖掘数据库中选定数据集的操作(2)对数据集中的变量的处理(3)聚类、剖分时的基本选择项(4)聚类、剖分时的进一步操作选择项(5)模型的初步确定(6)结果的评价 SAS/EM决策树浏览工具决策树浏览工具 最后作出来满意的决策树可能是个枝繁叶茂的架构。SAS/EM提供了可视化的浏览工具。这一点很重要,一个复杂的决策树若难以观察,则会影响实施决策的效率,甚至是有效性。决策树浏览工具包括:决策树基本内容和统计值的汇总表决策树的导航浏览器决策树的图形显示决策树的评价图表SAS/EM数据挖掘评价工具数据挖掘评价工具 在SAS/EM的评价工具中,提供了一个通用的数据挖掘评价的架构,可以比较不同的模型效果;预报各种不同类型分析工具的结果。在进行了各种比较和预报的评价之后,将给出一系列标准的图表,供用户进行定量评价。可能用户会有自己独特的评价准则,在SAS/EM的评价工具中,还可以进行客户化的工作,对那些标准的评价图表按你的具体要求进行更改。因此,评价工作可能会更有意义。nRandominfoWekanWaikatoEnvironmentforKnowledgeAnalysisWekanativeNewZealandbirdDevelopedinJavamulti-platformcapabilityUsedforresearch,education,andapplicationshttp:/www.cs.waikato.ac.nz/ml/weka/5.3.5 典型工具典型工具WekaWekaInterfacesnCommand-linenExplorerpreprocessing,attributeselection,learning,visualiationnKnowledgeFlowvisualdesignofKDDprocesscapabilitiesExplorernExperimentertestingandevaluatingmachinelearningalgorithmsnPreprocessnClassifynClusternAssociatenSelectattributenVisualiseWeka的功能的功能PreprocessingnPreprocessingdatacheckingfiltering,e.g.nattribute-based-normalise,discretiseninstance-basedremove,randomiseselecttrainingdataselecttestdataPreprocessingnImportfromfiles:ARFF,CSV,C4.5,binarynImportfromURLoranSQLdatabase(usingJDBC)nPreprocessingfiltersAdding/removingattributesAttributevaluesubstitutionDiscretization(MDL,Kononenko,etc.)Timeseriesfilters(delta,shift)Sampling,randomizationMissingvaluemanagementNormalizationandothernumerictransformationsAttributeSelectionnVeryflexible:arbitrarycombinationofsearchandevaluationmethodsnBothfilteringandwrappingmethodsnSearchmethodsbest-firstgeneticranking.nEvaluationmeasuresReliefFinformationgaingainratio.nDemo:weather_nominal.arffPCP+rankersearchalgorithm 1, rudimentary rules1Roneleveldecisiontreejustusingbestfirst-levelrulesalgorithm 2, statistical modellingNaiveBayes-usespriorprobabilityofclasscombinedwithinstanceprobabilityassumesattributesareindependentalgorithm 3, decision treesID3/C4.5decisiontreeinductioninformationgainorgainratiocalculatedateachnodetodecidewhichbranchtogodownmaximisetheseparationofclassesalgorithm 4, covering rulesrulesfoundtocoverallinstancesofeachclassattribute-valuepairtomaximisetheclassificationrulePRISMmethodalgorithm 5, association ruleslookingforitemsetswithhighcoverageandspecifiedminimumconfidenceworksfornominalvaluesApriorialgorithmalgorithm 6, linear modelsnumericpredictionlinearregressiontominimisedifferencebetweenactualandpredictedvaluesalgorithm 7, instance-based learningEuclideandistanceofattributesetsfoundtocalculatethenearestneighbouralgorithmfilteringk-nearestmatchesClassifyingnClassifyingalgorithmsrudimentary rules1R one level decision tree just using best first-level rulesstatistical modellingNaive Bayes - uses prior probability of class combined with instance probability assumes attributes are independentdecision treesID3 / C4.5 decision tree induction information gain or gain ratio calculated at each node to decide which branch to go down maximise the separation of classescovering rulesrules found to cover all instances of each class attribute-value pair to maximise the classification rule PRISM methodassociation ruleslooking for item sets with high coverage and specified minimum confidence works for nominal values Apriori algorithmlinear modelsnumeric prediction linear regression to minimise difference between actual and predicted valuesinstance-based learningEuclidean distance of attribute sets found to calculate the nearest neighbour algorithm filtering k-nearest matches ClassificationnPredictedattributeiscategoricalnImplementedmethodsNaveBayesdecisiontreesandrulesneuralnetworkssupportvectormachinesinstance-basedclassifiersnDemo:iris.arff,mushroom_simple.arffnEvaluationtestsetcrossvalidation.ClusteringnClusteringestimationmaximisation(EM)simplekmeanscobwebfarthestfirstClusteringnImplementedmethodsk-MeansEMCobwebX-meansFarthestFirstnClusterscanbevisualizedandcomparedto“true”clusters(ifgiven)RegressionnPredictedattributeiscontinuousnImplementedmethods(linearregression)neuralnetworksregressiontreesnDemo:goods.arff,cpu.arffAssociationDiscoverynWorksonlywithdiscreteattributesnImplementedmethodsAPRIORITERTIUSnLimitedcapabilitiesGUHAnDemo:baskets1n.arffProsnextensibilitynfeaturesmethodsKDDphasesnmultimodaluseandinterfacescriptingnfree(GPL)Consndocumentationn(kitchensinksyndrome)AssociationsnAssociationsaprioritertiusSelectattributesnAttributeevaluatore.g.classifiersubsetevaluatorchisquaredattributeevaluatornSearchmethode.g.bestfirstrandomfirstOutputnOutputdependsonwhatmethodsusednRulesnClassesnTrees-visualisednClustersnAssociationsnErrorchecks-visualisedDemonstrationnWekaweatherrelationopenfile/data/weather.arff(numericalandnominaldata)preprocess/colouroutlookplay/attributes|1.5|classify/choose/trees/j48/(classbyplay)/startclassifieroutput/j48prunedtree/visualizetreeweatherrelationopenfile/weatherNominal.arff(nominaldata)preprocess/colouroutlookplay/attributes|1.5|classify/choose/trees/j48/(classbyplay)/startclassifieroutput/j48prunedtree/visualizetreetestoptions/suppliedtestset/set/openfile/weatherNominalTest.arffDemonstrationnWekawBasegeotechnicaldatarelationopenfile/data/wBase-14x773num.arff(numericalandnominaldata)preprocess/colourclass/attributes|1.14|/namesclassify/choose/lazy/lBk/()/startcluster/simpleKmeans/start/visualizeclusterassignmentscluster/EM/start/visualizeclusterassignmentsclassifieroutput/j48prunedtree/visualizetreeData PreparationnDataformatnSpreadsheetfilesnCSVfilesDataformat-headernDataformatfilessavedasFilename.arffarff=attributerelationfileformatnRowsofdataseperatedbycommasnHeaderinformationaboutattributesrelation weather-1attribute outlook sunny, overcast, rainyattribute temperature realattribute humidity realattribute windy TRUE, FALSEattribute play yes, nodata relation name attribute name list of attributes real indicates a number more attributesDataformat-datanDataformat indicates start of data block attribute-values separated by commas missing values indicated by ?datasunny,85,85,FALSE,nosunny,80,90,TRUE,noovercast,83,86,FALSE,yesrainy,70,96,FALSE,yes.sunny,72,95,FALSE,nosunny,69,70,FALSE,yesrainy,75,80,FALSE,yessunny,75,70,?,yesovercast,72,90,TRUE,yesovercast,81,75,FALSE,yesrainy,71,91,TRUE,nodatacanbehundredsorthousandsoflinesanynumberofattributesaccommodatedbut.miningalgorithmsjustaseffectiveonselectedattributes.sodataanalysisandpreparationessential!GeneratingCSVfilenSavespreadsheetfilein relationFile.csvformat(commaseparatedvalue)nOpenWordoranytextprocessornInsert(import)therelationFile.csvfileCarryoutanydataprocessingnSaveinaplaintextformat relationFile.txtnChangefilenametorelationFile.arff商用新业务营销优秀案例商用新业务营销优秀案例基于数据挖掘的基于数据挖掘的数据业务精确营销数据业务精确营销 广东公司广东公司基于数据挖掘的数据业务精确营销基于数据挖掘的数据业务精确营销 案例简介案例简介案例简介案例简介 背景介绍背景介绍背景介绍背景介绍案例介绍案例介绍案例介绍案例介绍 经验总结经验总结效益分析效益分析第一部分第一部分 案例简介案例简介一、案例简介一、案例简介“彩信精品盒彩信精品盒”产品设计及推广产品设计及推广o 营销效率达到原来的2.832.83倍倍o 促进了客户增长,形成规模型彩信业务1 1“彩信生活杂志彩信生活杂志”产品设计及推广产品设计及推广o 营销效率达到原来的2.712.71倍倍o 促进了客户增长,创建彩信业务新亮点2 2彩铃增量销售彩铃增量销售o 营销效率达到原来的2.952.95倍倍o 有效促进了客户数和收入的增长3 3WAPWAP总站栏目推荐总站栏目推荐o 营销效率达到原来的3.563.56倍倍o 促进了WAP总站客户数量的增长4 4手机邮箱推广及沉默客户唤醒手机邮箱推广及沉默客户唤醒o 营销效率达到原来的3.293.29倍倍o 提升了业务使用率,扩大了客户规模5 5百宝箱手机游戏推广百宝箱手机游戏推广o 营销效率达到原来的2.292.29倍倍o 挖掘和培育了手机游戏业务的潜在市场6 6数据业务客户分群模型数据业务客户分群模型彩铃增量销售模型彩铃增量销售模型产品关联性分析模型产品关联性分析模型彩信增量销售模型彩信增量销售模型利用数据挖掘的精确营销概况利用数据挖掘的精确营销概况 一、案例简介一、案例简介利用数据业务技术实施精确营销的利用数据业务技术实施精确营销的5 5大关键步骤:大关键步骤: 数据源数据源分析分析数据集数据集闭环的、自适应的精确营销流程闭环的、自适应的精确营销流程基于数据挖掘基于数据挖掘基于数据挖掘基于数据挖掘需求挖掘需求挖掘产品开发产品开发营销机会营销机会发现发现营销实施营销实施效果分析效果分析一、案例简介一、案例简介精确营销精确营销3 3大创新大创新 根据客户需求根据客户需求开发针对性产品开发针对性产品深入发掘营销机会深入发掘营销机会创建闭环的创建闭环的精确营销流程精确营销流程 完成数据业务的客户分群,实现客户需求的方位洞察; 建立产品关联库,为定位目标客户、实施向上销售/交叉销售、发掘优势渠道提供支撑; 将精确营销的范围拓展到把产品开发。实现产品研发、持续优化、市场策略、整合营销等环节整合为一体化的流程 运用数据挖掘技术发掘产品需求,实现了对客户需求的快速响应第二部分第二部分 背景介绍背景介绍部份精细化营销部份精细化营销部份精细化营销部份精细化营销(现状)(现状)(现状)(现状)粗放式营销粗放式营销粗放式营销粗放式营销二、背景介绍二、背景介绍与深度运营的要求仍有差距与深度运营的要求仍有差距 o数据业务种类多,但聚焦不够; o 对业务进行分析的维度较少;o 缺乏深度的主题分析;o 分析方法和工具不够成熟。 全面精细化营销全面精细化营销全面精细化营销全面精细化营销 “基于数据挖掘技术的精确营销”将逐步成为移动数据业务市场的 主导营销策略。数据业务的营销发展6 6 大大 分分 析析 纬纬 度度产品产品关联分析关联分析客户预警客户预警目标客户目标客户锁定锁定业务特征业务特征分析分析提升数据业务运营水平提升数据业务运营水平二、背景介绍二、背景介绍业务主题业务主题分析分析数据业务数据业务客户分群客户分群对此,我们提出对此,我们提出“基于数据挖掘的精确营销基于数据挖掘的精确营销”第三部分第三部分 精确营销案例介绍精确营销案例介绍三、精确营销案例介绍三、精确营销案例介绍部门分工部门分工省市联动,共建精确营销省市联动,共建精确营销精确营销整体规划精确营销整体规划职责部门职责部门精确营销基础构建精确营销基础构建 CRM数据业务客户分群、产品关联分析、 彩信增量销售、彩铃增量销售模型建设省市场部、省数业中心、省业务支撑中心、广州分公司精确营销实施精确营销实施产品设计与开发广州分公司精确营销实施精确营销实施营销执行与评估广州分公司、客户服务(广州)中心注:以下所有案例均以广州地区的数据为例。注:以下所有案例均以广州地区的数据为例。数据仓库数据仓库效益效益评估评估精确营销实施精确营销实施实施实施方案方案方案方案设计设计发现发现机会机会利用数据挖掘构建精确营销基础利用数据挖掘构建精确营销基础确定确定确定确定目标目标目标目标数据数据数据数据准备准备准备准备建立建立建立建立模型模型模型模型模型模型模型模型检验检验检验检验研究思路研究思路三、精确营销案例介绍三、精确营销案例介绍 利用数据挖掘构建精确营销基础利用数据挖掘构建精确营销基础数据分为数据分为7 7个类型,共个类型,共833833项:项:基本信息基本信息手机号码,手机品牌,手机型号,是否具备GPRS、彩信、KJAVA功能等承载信息承载信息是否使用点对点短信、点对点彩信、非点对点彩信、GPRS等承载方式渠道办理标签渠道办理标签是否通过WEB/网上营业厅、WAP、短信等渠道办理业务业务标签业务标签是否使用点对点/梦网短信、彩铃、点对点/梦网彩信、手机报纸、手机邮箱等内容标签内容标签商务、生活、娱乐、游戏、资讯5大类内容,在这5大类中再进行划分,如,娱乐类再分为娱乐-交友、娱乐-聊天、娱乐-铃声等行业信息行业信息与餐馆酒楼、休闲娱乐、机关团体、金融行业、房地产等各个行业的接触信息数据业务数据业务相对指标相对指标标识客户点对点短信上下行、点对点彩信上下行、WAP流量等的使用量及变化情况三、精确营销案例介绍三、精确营销案例介绍 利用数据挖掘构建精确营销基础利用数据挖掘构建精确营销基础CRM项目建立数据业务客户分群项目建立数据业务客户分群数据说明数据说明数据来源:数据来源:BOSSBOSS系统、经营分析系统、相关业务支撑系统系统、经营分析系统、相关业务支撑系统CRM项目建立数据业务客户分群项目建立数据业务客户分群数据挖掘的发现数据挖掘的发现三、精确营销案例介绍三、精确营销案例介绍 利用数据挖掘构建精确营销基础利用数据挖掘构建精确营销基础全球通品牌的数据业务客户分群结果全球通品牌的数据业务客户分群结果SS1、SS2、SS3,SS5,SS6是数据业务的活跃群;9个群的彩信渗透率、认知度均较低(认知度为通过补充调研获得),要提高彩信用量,需通过宣传提高客户彩信认知度,通过有吸引力的内容培养客户习惯。SS5和SS6对手机邮箱的接受度较其他群高出许多,存在营销机会;各群均与餐馆酒楼、医疗、金融、房地产接触较多(SS1、SS3接触率最高),餐饮指南、健康保健、资讯等内容的业务存在营销机会手机彩票站业务在SS1、SS2、SS5和SS6群的渗透率较其他群高出2到3倍,存在销售机会。已运用于案例已运用于案例5手机邮箱手机邮箱的沉默用户唤醒与推广的沉默用户唤醒与推广已运用于案例已运用于案例2彩信生彩信生活杂志的产品设计活杂志的产品设计oSS1: SS1: 数据业务高空飞行者数据业务高空飞行者oSS2: SS2: 高价值数据业务客户高价值数据业务客户oSS3: SS3: 高价值短信冷漠者高价值短信冷漠者oSS4: SS4: 中间价值短信冷漠者中间价值短信冷漠者oSS5: SS5: 成长中的数据业务客户成长中的数据业务客户oSS6: SS6: 有下滑危险的数据业务客户有下滑危险的数据业务客户oSS7: SS7: 节俭的本地短信依赖者节俭的本地短信依赖者oSS8: SS8: 低价值漫游客户低价值漫游客户oSS9: SS9: 数据业务冷漠客户数据业务冷漠客户动感地带的主要数据业务渗透率均高于全球通;ss1和ss3为主要的数据群,在提升渗透率和用量上具有更大潜力。游戏的整体渗透率较低,比较而言,ss2和ss3的的游戏渗透率明显高于其他群SS1和SS3月均短信条数超过300条,但20元短信套餐比例仅占30,可向10元短信套餐推荐20元短信套餐从梦网彩信的内容来看,图铃类及节日祝福类彩信是客户最感兴趣的点对点彩信的总体渗透率较高。其中,以ss1、ss3的渗透率颇高,但大部分彩信使用次数很低;ss8群的平均用量很高CRM项目建立数据业务客户分群项目建立数据业务客户分群数据挖掘的发现数据挖掘的发现动感地带品牌的数据业务客户分群结果动感地带品牌的数据业务客户分群结果三、精确营销案例介绍三、精确营销案例介绍 利用数据挖掘构建精确营销基础利用数据挖掘构建精确营销基础已运用于案例已运用于案例1彩信精品盒产彩信精品盒产品设计和推广品设计和推广 已运用于案例已运用于案例6手机手机游戏推广游戏推广oSS1:本地数据业务爱好者本地数据业务爱好者oSS2:中间价值短信客户中间价值短信客户oSS3:成长最多的数据业务成长最多的数据业务客户客户oSS4:彩铃业务偏好客户彩铃业务偏好客户oSS5:语音偏好客户语音偏好客户oSS6:高值漫游语音客户高值漫游语音客户oSS7:低值漫游语音客户低值漫游语音客户oSS8:数据业务低价值客户数据业务低价值客户目标业务目标业务彩信、彩铃、点对点短信、手机邮箱 、手机游戏、手机报纸、WAP娱乐、WAP新闻三、精确营销案例介绍三、精确营销案例介绍 利用数据挖掘构建精确营销基础利用数据挖掘构建精确营销基础数据业务的目标客户定位数据业务的目标客户定位产品关联性分析模型产品关联性分析模型说明:LIFT使用业务一的人群中有使用业务二的人数的百分比相对整个分析用户群中使用业务二的人数的百分比所提升的倍数。分分析析纬纬度度承载与业务承载与业务业务与业务业务与业务客户个人客户个人信息与业务信息与业务数据业务数据业务与语音行为与语音行为 模型对客户进行打分,分值越高,模型对客户进行打分,分值越高,成为彩信用户的倾向性越大。成为彩信用户的倾向性越大。三、精确营销案例介绍三、精确营销案例介绍 利用数据挖掘构建精确营销基础利用数据挖掘构建精确营销基础数据业务的目标客户定位数据业务的目标客户定位彩信增量销售模型彩信增量销售模型该模型采用了分类预测类模型中的逻辑回归,分析客户历史消费数据,发掘彩信客户群的群体特征和消费规律,运用这些特征和规律来预测潜在的彩信客户。 在模型选取的458个数据项中,共有6161项项最终成为彩信使用倾向性的打分依据,最关键的数据项列举如下:o 当月当月数据业务使用类型数数据业务使用类型数 o 当月短信对方号码使用彩信客户数当月短信对方号码使用彩信客户数 o 半年内是否使用过彩信半年内是否使用过彩信 o 当月网内主叫时长占比当月网内主叫时长占比 o 当月日间通话次数占比当月日间通话次数占比o 是否使用是否使用GPRSGPRS套餐套餐 数据业务的目标客户定位数据业务的目标客户定位三、精确营销案例介绍三、精确营销案例介绍 利用数据挖掘构建精确营销基础利用数据挖掘构建精确营销基础彩铃增量销售模型彩铃增量销售模型(分类预测模型,与彩信增量原理类似) 在模型选取的296296个个数据项中,共有6868项项最终成为彩铃使用倾向性的打分依据,最关键的数据项列举如下:三个月平均声讯台业务使用次数三个月平均声讯台业务使用次数 、三个月平均音信户动业务使用次数、三个月三个月平均音信户动业务使用次数、三个月平均语音普通业务使用次数平均语音普通业务使用次数 、三个月平均梦网彩信业务使用次数、三个月平均三个月平均梦网彩信业务使用次数、三个月平均网内主叫通话关联号码开通彩铃数、三个月平均日间网内被叫普通通话次数网内主叫通话关联号码开通彩铃数、三个月平均日间网内被叫普通通话次数 数据仓库数据仓库利用数据挖掘构建精确营销基础利用数据挖掘构建精确营销基础精确营销实施精确营销实施三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施确定确定目标目标数据数据准备准备建立建立模型模型模型模型检验检验效益效益效益效益评估评估评估评估实施实施实施实施方案方案方案方案方案方案方案方案设计设计设计设计发现发现发现发现机会机会机会机会研究思路研究思路案例案例1 1: 彩信精品盒,精彩尽在掌握彩信精品盒,精彩尽在掌握-产品及营销创产品及营销创新新 率先推出定制型的祝福、图铃类业务率先推出定制型的祝福、图铃类业务“彩信精品盒彩信精品盒”o 把客户把客户“主动下载主动下载”的模式变为的模式变为“自然定时接收自然定时接收”;o 为客户搭建一个简便有效的产品获取渠道;为客户搭建一个简便有效的产品获取渠道;o 能提醒和促进客户转发祝福彩信。能提醒和促进客户转发祝福彩信。o 动漫、图铃是客户最感兴趣的彩信内容。动漫、图铃是客户最感兴趣的彩信内容。o 彩信的渗透率和认知度低,尚未形成一定规模效应。彩信的渗透率和认知度低,尚未形成一定规模效应。从从CRMCRM项目挖掘潜在需求信息,并据此制定产品开发策略:项目挖掘潜在需求信息,并据此制定产品开发策略: 打造以动漫图铃为主要内容的精品彩信产品,结合打造以动漫图铃为主要内容的精品彩信产品,结合体验式营销提高彩信渗透率体验式营销提高彩信渗透率 三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施产品开发产品开发需求挖掘需求挖掘需求挖掘需求挖掘目标客户定位目标客户定位营销实施营销实施效益分析效益分析目标客户目标客户 四大品牌客户;年龄介于1840岁之间,追求时尚,有祝福、图铃类彩信的需求。业务简介业务简介 彩信精品盒,为您及时放送精挑细选的各大节日祝福彩信让彩信贺卡随手拈来,转发祝福轻松便捷!精美月历、热门铃声、动态屏保、待机彩图等,轮流装扮你的手机,常换常新!让你的个性更张扬!资费、频次资费、频次 包月定制,1元/月(首次订阅客户3天免费试用期)每月发送58条彩信定制方式定制方式 (1)短信(2)互联网(3)WAP 三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施产品开发产品开发目标客户定位目标客户定位营销实施营销实施效益分析效益分析需求挖掘需求挖掘根据客户对彩信内容的偏好,设计了根据客户对彩信内容的偏好,设计了“彩信精品盒彩信精品盒”:案例案例1 1: 彩信精品盒,精彩尽在掌握彩信精品盒,精彩尽在掌握-产品及营销创产品及营销创新新 对目标客户实施精确营销:对目标客户实施精确营销: 体验式营销体验式营销发送彩信内容,供目标客户免费体验业务; 整合营销传播整合营销传播各渠道(自有渠道、社会渠道、媒介传播)同步强力宣传,形成一个立体的营销体系。三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施产品开发产品开发目标客户定位目标客户定位营销实施营销实施效益分析效益分析需求挖掘需求挖掘联系客户数联系客户数销售数销售数成功销售率成功销售率目标客户组目标客户组12423287323.12%随机客户组随机客户组19401598.18%正式推广前,进行营销效果检验:正式推广前,进行营销效果检验:成功销售率为之前的2.83倍倍 (检验时间:(检验时间:xxxx年年3月月6日日15日)日)案例案例1 1: 彩信精品盒,精彩尽在掌握彩信精品盒,精彩尽在掌握-产品及营销创产品及营销创新新 目标客户定位目标客户定位目标客户定位:目标客户定位:从彩信增量销售模型提取出彩信使用倾向性高的客户,该营销活动的目标客户:三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施产品开发产品开发目标客户定位目标客户定位营销实施营销实施效益分析效益分析需求挖掘需求挖掘在确保营销效率后,从在确保营销效率后,从2 2xxxxxx年年3 3月中旬起,对目标客户大规模推广月中旬起,对目标客户大规模推广“彩信精品彩信精品盒盒” ,3 3月至月至7 7月该业务客户数发展情况如下:月该业务客户数发展情况如下:案例案例1 1: 彩信精品盒,精彩尽在掌握彩信精品盒,精彩尽在掌握-产品及营销创产品及营销创新新 302010客客户户数数(万万)0.323.189.4518.2325.7903月月04月月05月月06月月07月月案例案例2 2: 彩信生活杂志,速递时尚资讯彩信生活杂志,速递时尚资讯 - -产品及营销创新产品及营销创新 全球通客户经常接触餐馆酒楼、医疗机构、金融等行业,相关内容的业务存在营销机会;从从CRMCRM项目挖掘客户潜在需求,并据此制定产品开发策略:项目挖掘客户潜在需求,并据此制定产品开发策略: 以彩信为载体,从 “衣食住行” 等最根本的需求出发,为客户提供传递广州本地最新最潮的综合资讯,让客户享受彩信生活的便利和丰富多彩。 根据调研分析中客户感兴趣的资讯类别,“彩信生活杂志” 设立七大主题,将产品打造成为一个跟客户生活息息相关的综合类资讯业务。 三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施产品开发产品开发需求挖掘需求挖掘需求挖掘需求挖掘目标客户定位目标客户定位营销实施营销实施效益分析效益分析业务简介业务简介 “彩信生活杂志”为时尚一族打造的彩信生活宝典,网罗新闻评论、旅游指南、娱乐八卦、美食天地、健康指南、影视资讯、时尚快报等最新最热的流行资讯,日日新鲜!用彩信引领最时尚的生活体验,天天精彩,丰富超值!资费、频次资费、频次 包月定制,10元/月(首次订阅客户3天免费试用期) 每天1条彩信。定制方法定制方法 (1)短信(2)互联网(3)WAP 三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施产品开发产品开发目标客户定位目标客户定位营销实施营销实施效益分析效益分析需求挖掘需求挖掘根据客户对饮食、健康、新闻等方面的需求,设计了根据客户对饮食、健康、新闻等方面的需求,设计了“彩信生活杂志彩信生活杂志”:案例案例2 2: 彩信生活杂志,速递时尚资讯彩信生活杂志,速递时尚资讯 - -产品及营销创新产品及营销创新 目标客户定位:目标客户定位: 根据产品关联性分析模型的分析结果,确定“彩信生活杂志”的目标客户为尚未定制该业务的WAP总站活跃客户:三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施产品开发产品开发目标客户定位目标客户定位营销实施营销实施效益分析效益分析需求挖掘需求挖掘5.675.67倍倍案例案例2 2: 彩信生活杂志,速递时尚资讯彩信生活杂志,速递时尚资讯 - -产品及营销创新产品及营销创新 产品关联性分析模型发现:产品关联性分析模型发现:o WAP WAP总站客户中订购彩信生活杂志的客户比例,是普通客户的总站客户中订购彩信生活杂志的客户比例,是普通客户的5.675.67倍倍WAP总站客户使用彩信生活杂志的概率所有客户定购彩信生活杂志的概率对目标客户实施精确营销:对目标客户实施精确营销: 通过宣传预热和媒介传播,各渠道的同步强力宣传结合品牌营销。 大规模推广之前,进行营销效果检验:大规模推广之前,进行营销效果检验:成功销售率为之前的2.71倍倍三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施产品开发产品开发目标客户定位目标客户定位营销营销实施实施效益分析效益分析需求挖掘需求挖掘联系客户数联系客户数销售数销售数成功销售率成功销售率目标客户组目标客户组14546213714.69%随机客户组随机客户组23151255.42%(检验时间:(检验时间:xxxx年年2月月15日日24日)日)案例案例2 2: 彩信生活杂志,速递时尚资讯彩信生活杂志,速递时尚资讯 - -产品及营销创新产品及营销创新 三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施产品开发产品开发目标客户定位目标客户定位营销实施营销实施效益分析效益分析需求挖掘需求挖掘 在确保营销效率后,从在确保营销效率后,从xxxxxxxx年年3 3月起,对目标客户大规模推广月起,对目标客户大规模推广“彩信生活杂彩信生活杂志志” ,2 2月至月至7 7月该业务客户数发展情况如下:月该业务客户数发展情况如下:案例案例2 2: 彩信生活杂志,速递时尚资讯彩信生活杂志,速递时尚资讯 - -产品及营销创新产品及营销创新 20155客客户户数数(万万)0.252.785.429.0313.0503月月04月月05月月06月月07月月02月月1018.74案例案例3:彩铃增量销售:彩铃增量销售 利用彩铃增量销售模型结果,对彩信高倾向性的客户实施营销推广利用彩铃增量销售模型结果,对彩信高倾向性的客户实施营销推广三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施联系客户数联系客户数销售数销售数成功销售率成功销售率目标客户组目标客户组13986528137.76%随机客户组随机客户组158720312.79%大规模推广之前,进行营销效果检验:大规模推广之前,进行营销效果检验:成功销售率达到之前的2.95倍倍(检验时间:(检验时间:xxxx年年1月月5日日17日)日) 在确保营销效率后,从在确保营销效率后,从2 2月起实施大规模彩铃增量销售月起实施大规模彩铃增量销售 , 2 2月月7 7月用户数发展情况如下:月用户数发展情况如下:500400200客客户户数数(万万)26728132637441303月月04月月05月月06月月07月月02月月300423100案例案例4:WAP总站栏目推荐总站栏目推荐 三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施目标客户定位:目标客户定位: 根据产品关联性分析模型的分析结果,确定“WAP总站音乐频道”的目标客户为3个月内曾购买彩铃歌曲的客户个月内曾购买彩铃歌曲的客户:产品关联性分析模型发现:产品关联性分析模型发现:o曾购买彩信歌曲的客户中访问音乐频道的比例,是普图客户中的曾购买彩信歌曲的客户中访问音乐频道的比例,是普图客户中的2.842.84倍倍联系客户数联系客户数登陆客户数登陆客户数成功推荐率成功推荐率目标客户组目标客户组1923753387717.61%随机客户组随机客户组34791724.95%大规模推广之前,进行营销效果检验:大规模推广之前,进行营销效果检验:成功销售率达到之前的3.56倍倍已从已从3 3月开始实施例行栏目推荐,有效促进了月开始实施例行栏目推荐,有效促进了WAPWAP总站客户的增长。总站客户的增长。(检验时间:(检验时间:xxxx年年2月月20日日24日)日)产品关联性分析模型发现:产品关联性分析模型发现: 梦网新闻天气客户中使用手机邮箱的比例是普通用户的5.835.83倍倍。确定目标客确定目标客户为新闻天气客户中尚未使用手机邮箱的客户户为新闻天气客户中尚未使用手机邮箱的客户。案例案例5:手机邮箱推广及沉默客户唤醒:手机邮箱推广及沉默客户唤醒三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施CRM数据业务客户分群发现:数据业务客户分群发现:全球通群全球通群5 5、6 6、2 2:渗透率和使用比例较高存在手机邮箱需求,存在营销机会存在手机邮箱需求,存在营销机会全球通群全球通群3 3、4 4:定购率高,使用客户较少需激活沉默用户,否则客户有流失危险需激活沉默用户,否则客户有流失危险针对数据挖掘的两大发现,分别制定针对性的营销策略针对数据挖掘的两大发现,分别制定针对性的营销策略 策略一:唤醒沉默用户,培养使用习惯策略一:唤醒沉默用户,培养使用习惯 针对针对CRMCRM全球通群全球通群3 3和群和群4 4中的沉默客户中的沉默客户三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施策略一策略一联系客户数联系客户数销售数销售数成功销售率成功销售率目标客户组目标客户组86391194 13. 82%随机客户组随机客户组572 24 4.20%案例案例5:手机邮箱推广及沉默客户唤醒:手机邮箱推广及沉默客户唤醒策略二:针对目标用户,实施体验式营销推广策略二:针对目标用户,实施体验式营销推广 针对针对CRMCRM全球通群全球通群5 5、群、群6 6、群、群2 2中尚未开通手机邮箱的梦网新闻天气客户中尚未开通手机邮箱的梦网新闻天气客户策略二策略二联系客户数联系客户数原有使用率原有使用率唤醒后使用率唤醒后使用率群群327845 13 41群群437521 11 35 案例案例6:百宝箱手机游戏推广:百宝箱手机游戏推广 手机游戏市场蕴藏着巨大潜力,但潜在市场仍需进一步挖掘和培育手机游戏市场蕴藏着巨大潜力,但潜在市场仍需进一步挖掘和培育三、精确营销案例介绍三、精确营销案例介绍精确营销实施精确营销实施 梦网图铃业务的客户中使用手机游戏的概率是普通用户的15.2615.26倍倍;动感地带品牌中群2和群3的手机游戏渗透率最高。 对目标客户进行百宝箱栏目推荐。 选取动感地带群2和群3的图铃业务客户中尚未使用手机游戏的客户确定为手机游戏的潜在目标客户。 检验结果显示,精确营销的推广成功率达到之前的2.32.3倍倍。第四部分第四部分 效益分析效益分析四、效益分析四、效益分析投资成本投资成本o 全球通品牌的数据业务客户分群:全球通品牌的数据业务客户分群:27.3万o 动感地带品牌的数据业务客户分群:动感地带品牌的数据业务客户分群:22.8万o 彩信增量销售模型:彩信增量销售模型:23.7万o 彩铃增量销售模型:彩铃增量销售模型:19.5万 o 产品关联性分析模型:产品关联性分析模型:11.2万 合计:合计:104.5万万利用数据挖掘构建精确营销基础,成本投入情况如下:利用数据挖掘构建精确营销基础,成本投入情况如下:四、效益分析四、效益分析总体效益总体效益总体效益总体效益总体效益总体效益总体效益总体效益提升营销效率提升营销效率促进收入增长促进收入增长提升客户数量提升客户数量创建彩信业务新亮点创建彩信业务新亮点四、效益分析四、效益分析专项效益分析:营销效率专项效益分析:营销效率 提高了数据业务的开发质量和营销,对节约营销成本、提升客户感知起到重要作用。提高了数据业务的开发质量和营销,对节约营销成本、提升客户感知起到重要作用。彩信精品盒彩信精品盒彩信生活杂志彩信生活杂志彩铃彩铃WAPWAP总站总站手机邮箱手机邮箱手机游戏手机游戏未实施精确营销未实施精确营销8.18%5.42%12.79%4.95%4.20%0.98%实施精确营销实施精确营销23.12%14.69%37.76%17.61%13.82%2.24%营销效率提升倍数营销效率提升倍数2.832.712.953.563.292.29彩铃手机邮箱手机游戏3.292.29WAP总站3.56彩信精品盒实施精确营销与否的营销效率对比实施精确营销与否的营销效率对比彩信生活杂志2.832.714030成功销售率20102. 95实施精确营销前后的收入比较实施精确营销前后的收入比较四、效益分析四、效益分析专项效益分析:收入增长专项效益分析:收入增长增加了数据业务收入,有力地促进了业务收入增加了数据业务收入,有力地促进了业务收入KPIKPI指标的完成。指标的完成。59160652901313285应用型彩信收入增长对比收入增长对比彩铃手机上网24101225061应用型彩信应用型彩信彩铃彩铃手机上网手机上网实施精确营销前实施精确营销前(2006年年1月)月)59万万1606万万3285万万实施精确营销后实施精确营销后(2006年年7月)月)131万万2410万万5290万万收入增长收入增长72万万804万万2005万万收入增长比例收入增长比例122%50%61%彩信彩信彩铃彩铃WAPWAP总站总站实施精确营销前实施精确营销前(2006年年1月)月)77万万280万万99万万实施精确营销后实施精确营销后(2006年年7月)月)158万万423万万271万万增加客户数增加客户数81万万143万万172万万客户增长比例客户增长比例105%51%174%专项效益分析:客户增长专项效益分析:客户增长 促进了彩信、彩信、手机等等业务的的用户增长,降低了彩铃客户的流失促进了彩信、彩信、手机等等业务的的用户增长,降低了彩铃客户的流失率,为重点业务用户数的率,为重点业务用户数的KPI指标完成做出重要贡献。指标完成做出重要贡献。7728027115899彩信客户数增长对比客户数增长对比彩铃WAP总站423实施精确营销前后的客户数比较实施精确营销前后的客户数比较10551174四、效益分析四、效益分析专项效益分析:创建彩信业务新亮点专项效益分析:创建彩信业务新亮点四、效益分析四、效益分析Text Text in herein here丰富了彩信业务内涵丰富了彩信业务内涵丰富了彩信业务内涵丰富了彩信业务内涵, , , ,形成独特的彩信文形成独特的彩信文形成独特的彩信文形成独特的彩信文化化化化积累了客户群体和人气,积累了客户群体和人气,积累了客户群体和人气,积累了客户群体和人气,为彩信发展奠定了良好的基础为彩信发展奠定了良好的基础为彩信发展奠定了良好的基础为彩信发展奠定了良好的基础为确保完成彩信为确保完成彩信KPIKPI指标作出贡献指标作出贡献第五部分第五部分 经验总结与业务构经验总结与业务构想想五五、经验总结和业务构想经验总结和业务构想 发掘产品需求,实现客户需求的快速响应发掘产品需求,实现客户需求的快速响应创建闭环的、自适应的一体化精确营销流程创建闭环的、自适应的一体化精确营销流程深入发掘营销机会,为精确营销实施提供有力支撑深入发掘营销机会,为精确营销实施提供有力支撑精确营销全面融入到数据业务的营销推广精确营销全面融入到数据业务的营销推广基于数据挖掘的数据业务精确营销基于数据挖掘的数据业务精确营销附附 录:相关材料清单录:相关材料清单CRMCRM数据业务客户分群数据业务客户分群 全球通、动感地带客户分群建模过程及结果说明全球通、动感地带客户分群建模过程及结果说明. .pdfpdf彩信增量销售模型彩信增量销售模型 彩信增量销售彩信增量销售_ _挖掘模型设计说明书挖掘模型设计说明书. .docdoc 彩信增量销售彩信增量销售_ _功能需求规格说明书功能需求规格说明书. .docdoc彩铃增量销售模型彩铃增量销售模型 彩铃增量销售彩铃增量销售_ _挖掘模型设计说明书挖掘模型设计说明书. .docdoc 彩铃增量销售彩铃增量销售_ _功能需求规格说明书功能需求规格说明书. .docdoc产品关联性分析模型产品关联性分析模型 产品关联性分析产品关联性分析_ _挖掘模型设计说明书挖掘模型设计说明书. .docdoc 产品关联性分析产品关联性分析_ _功能需求规格说明书功能需求规格说明书. .docdoc 产品关联性分析结果产品关联性分析结果. .xlsxls请集团公司和各兄弟公司批评指正!
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号