什么是数据挖掘以及为什么要进行数据挖掘 本书第1版第1章的开场白如下:“马萨诸塞州萨默维尔市,本书作者之一的家乡.......”,接着分别介绍了那座小镇上的两家小商店,以及它们如何形成与客户的学习关系(learning relationship)。其中的一家商店——头发编织店,已经不再给那个小女孩编头发。第1版之后的这些年里,那个小女孩已经长大成人并搬离了小镇,而且她也不再梳着小辫了。而她的父亲作为作者之一,也搬到了附近的剑桥大学。但是,有一件事情并未改变。作者依然是Wine Cask商店的忠实顾客,店中的某些人在1978年首次向他介绍了便宜的阿尔及利亚红酒(Algerian reds),其后是法国葡萄种植区,现在同样是这批人正在帮助他探讨意大利和德国的葡萄酒。 数十载之后,Wine Cask依然还有一位忠实的客户。这种忠诚并非偶然。工作人员了解他们客户的口味以及他们能够接受的价格范围。当客户咨询时,他们不仅根据库存信息,而且还根据累积的客户口味和预算信息进行回答。 Wine Cask的工作人员掌握了许多有关葡萄酒的知识。虽然这些知识是客户选择他们而不选择有大折扣的酒铺的原因之一,但是他们对每一位客户的深入了解才是获得回头客的主要原因。尽管可以在街道对面另开一家酒铺,同时雇佣一批品酒专家,但是要想获得有关客户的同样详尽知识,则需要耗费他们数月或数年时间。 经营有方的小商店会自然地形成与客户之间的学习关系。随着时间的推移,他们对客户的了解会越来越多,从而可以利用这些知识为他们提供更好的服务。结果则皆大欢喜,忠实的顾客和盈利的商店。 不过,拥有数十万或数百万客户的大公司,则不能奢望与每个客户形成密切的私人关系。因此大公司必须依赖于其他方式来形成与客户的学习关系。特别是,他们必须学会充分利用所拥有的大量信息——几乎是每次与客户交互所产生的数据。本书将要介绍的就是可用于将客户数据转换成客户知识的分析技术。 1.1 什么是数据挖掘 虽然有些数据挖掘技术非常新颖,但是数据挖掘本身并非一项新的技术:自从第一台计算机发明以来,人们就一直在计算机上分析数据——而且在此之前的数个世纪里,人们一直在没有计算机的情况下分析数据。多年来,数据挖掘有许多不同的名称,诸如知识发现(knowledge discovery)、商业智能(business intelligence)、预测建模(predictive modeling)以及预测分析(predictive analytics),等等。本书作者所使用的数据挖掘定义是: 数据挖掘是一项探测大量数据以发现有意义的模式(pattern)和规则(rule)的业务流程(business process)。 这个定义包含了好几个组成部分,它们都非常重要。 1.1.1 数据挖掘是一项业务流程 数据挖掘是一项与其他业务流程交互的业务流程。特别是,它是一项没有开始和结束的流程:它一直在进行。数据挖掘以数据作为开始,然后通过分析来启动或激励行动,这些行动反过来又将创建更多需要数据挖掘的数据。 因此,对于那些希望充分利用它们的数据来改善业务的公司而言,不应仅仅把数据挖掘看作是细枝末节。相反,它们的业务策略必须包括收集数据、为长期利益分析数据,并针对分析结果做出行动。 同时,数据挖掘很容易适应为了解市场和客户的其他策略。市场调研、客户小组(customer panel)及其他技术,与数据挖掘和更为广泛的数据分析是兼容的。关键在于要认识到重心是客户,以及不同企业数据之间的共性。 1.1.2 大量的数据 本书作者之一在演讲时经常会询问听众:“多大才是大量的数据?”学生们会给出诸如“处理1000万客户的所有事务”或“TB级的数据”之类的答案。他本人的回答则更为温和——“65 356行”,尽管自从2007年之后微软已经在Excel电子表格中允许超过100万行的数据,但是这个回答依然获得了理解。 诸如Excel之类的工具,对于处理相对较小的数据量具有难以置信的通用性。它允许对每一行或列的值进行多种计算;而透视表(pivot table)对于理解数据和趋势也是惊人的实用;同时图表还提供了强大的数据可视化机制。 在数据挖掘初期(20世纪60年代和20世纪70年代),数据非常稀少。本书所描述的一些技术是在只包含几百个记录的数据集上发展而来的。那时,一个典型的数据集可能是关于蘑菇的一些属性,以及它们是否有毒或可食用。或者,可能是关于车的一些属性,而目标则是估计燃气里程。无论哪种特定的数据集,它们都证明了当时所开发的技术的能力;对于不再适合于电子表格的数据,这些技术依然适用。 由于计算能力易于获得,因此大量的数据不再是一个障碍,而是一个优势。本书所介绍的许多技术在大数据集上比在小数据集上表现得更好——你可以用数据来替代智慧。换句话说,数据挖掘让计算机完成其最擅长的工作——从许许多多的数据中挖掘。反过来,这将让人们完成人类最擅长的工作:提出问题并理解结果。 另一方面,在本书的某些案例研究中仍然使用相对较小的数据规模。其中最小的也许是第13章聚类案例研究中所使用的数据。该案例研究在新英格兰(New England)的几百个城镇中发现人口学上类似的城镇。即使是强大的Excel也不具有实现类似“组合类似的城镇”这样的内置函数。 这就是数据挖掘的切入点。无论目标是发现类似的新英格兰城镇组,还是寻找客户减少的原因,或是整本书中无数的其他目标,数据挖掘技术都可以利用更为简单的桌面工具不再适用的数据。 1.1.3 有意义的模式和规则 在数据挖掘定义中最重要的也许是关于“有意义的模式”这一部分。虽然数据挖掘很有趣,但是帮助提高业务比让挖掘者觉得有趣更为重要。 在许多方面,发现数据的模式并不是非常困难。业务操作有时会生成数据,与此同时必然产生模式。然而,数据挖掘的目标——至少当作者使用该术语时——不是要找到数据的任何模式,而是要发现对业务有益的模式。 这意味着需要发现帮助日常业务操作的模式。考虑一个呼叫中心的应用程序,其目标是指定客户的颜色。“绿色”意味着非常好,因为呼叫者是一个有价值的客户,值得付出使其保持快乐;“黄色”则是给出警告,因为该客户也许是有价值的,但是存在一些风险迹象;而“红色”意味着不给客户任何特殊的待遇,因为该客户非常危险。发现模式也可能意味着把保留活动(retention campaign)的目标定位为最有可能流失的客户。这意味着优化客户获取(customer acquisition),既考虑客户数量上的短期收益,同时也考虑客户价值的中期和长期收益。 逐渐地,公司将围绕数据挖掘发展业务模型——尽管他们可能不使用这个词。本书作者所供职的一家公司帮助零售商在Web上推荐商品;这家公司仅当Web购物者单击其推荐商品时获到报酬。这只是一个例子。有些公司聚合来自不同来源的数据,将数据汇合在一起以获得客户的更完整的形象。一些公司,如LinkedIn,使用某些人提供的信息向其他人提供优质服务——当招聘负责人为其开放的工作岗位找到合适的候选人时,每个人都将受益。在所有这些情况下,目标都是向最有可能需要他们的人提供直接的产品和服务,使得每个人参与的购买和销售过程更为有效。 1.1.4 数据挖掘和客户关系管理 本书不是介绍通用的数据挖掘技术,而是特定于客户关系管理系统(customer relationship management)的数据挖掘。各种规模的公司都必须学会模仿小规模的、面向服务的公司所一直擅长的工作——与其客户创建一对一的关系。客户关系管理是许多文章、书籍以及会议所讨论的一个广泛主题。从引导-追踪(lead-tracking)软件,到活动管理软件(campaign management software),再到呼叫中心软件等,都被标记为客户关系管理工具。本书的重点则更窄一些——数据挖掘在通过提高公司与其客户形成学习关系的能力,从而改善客户关系管理时可以发挥的作用。 在各行各业中,高瞻远瞩的公司的目标都是理解每个客户,并通过利用这种理解,使得客户与他们(而不是与竞争对手)做生意更加容易,也更加有利可图。这些公司同样都学习分析每个客户的价值,从而清楚哪些客户值得投资和努力来保留,哪些则允许流失。重心从广泛的市场领域到个人客户的转变要求整个企业的变化,尤其在营销、销售和客户支持等方面更是如此。 围绕客户关系构建业务对大多数公司而言是一个革命性的变化。传统上,银行的重心是维持存钱和借钱的利差;电话公司聚焦于通过网络连接电话;而保险公司则集中在处理索赔要求、管理投资以及维持其赔付率(loss ratio)。把一个以产品为中心的企业转变成以客户为中心的企业的代价超过了数据挖掘。假设数据挖掘的结果建议为一个特定客户提供一个小装饰(widget)而不是一个小发明(gizmo),但是如果经理的奖金取决于小发明本季度销售的数量而不是小装饰的数量(即便后者更为有利可图或者收获长期盈利更多的客户),那么数据挖掘的结果也将会被忽略。 从狭义上讲,数据挖掘是工具和技术的集合。它是用来支持以客户为中心的企业的几种必要技术之一。从广义上讲,数据挖掘是一种态度,即业务行动应该基于学习、知情的决定比不知情的决定要好,以及度量结果对业务有益等。数据挖掘也是一个应用分析工具和技术的过程和方法论(methodology)。若要使数据挖掘发挥作用,则对分析型客户关系管理(CRM)的其他需求也必须到位。公司为了与其客户形成学习关系,必须能够: ● 注意客户正在做的事情。 ● 记录它和客户随着时间推移所做的事情。 ● 从记录的内容中学习。 ● 根据学到的内容采取行动,从而使客户的收益更高。 虽然本书的重点是第3项——从以往发生的事情中学习,但是学习不能在真空中进行。必须存在事务处理系统捕获客户交互,数据仓库存储历史的客户行为信息,数据挖掘把历史数据转换成未来的行动计划,以及一个客户关系战略把这些计划付诸实施。 数据挖掘,重复一下之前的定义,是一项探测大量数据以发现有意义的模式和规则的业务流程。本书假设数据挖掘的目标是,使得一家公司能够通过更好地理解客户来改进其市场、销售和客户支持操作。然而,需要记住的是,本书所描述的数据挖掘技术和工具同样也适用于不同的领域,诸如执法、射电天文学、医学以及工业过程控制等。 1.2 为什么是现在 大多数的数据挖掘技术,至少作为学术算法,已经存在了数十年(最古老的生存分析实际上可追溯到数世纪之前)。数据挖掘已经形成一个大的流行趋势,自从20世纪90年代以来得到了急剧增长。这是由几个方面的因素所形成的: ● 数据正在产生。 ● 数据正存储于数据仓库中。 ● 计算能力能够承受。 ● 对客户关系管理的兴趣非常强烈。 ● 商业的数据挖掘软件产品已经形成。 这些因素的结合意味着数据挖掘越来越成为业务策略的基础。Google不是第一个搜索引擎,但是它是第一个将复杂的搜索算法与基于点击收益(click-through revenue)最大化的业务模型相结合的搜索引擎。几乎在每个业务领域,公司都会发现它们拥有许多信息——订阅者、Web访问者、托运人的信息以及支付模式、呼叫模式、朋友和邻居等信息。公司越来越多地转向数据分析以利用他们的信息。 1.2.1 数据正在产生 数据挖掘在大数据量可用时将体现其最大的价值。事实上,大多数数据挖掘算法在构建和训练模型时往往需要较大的数据量。 本书的潜在主题之一就是到处存在大量可用的数据。这对于拥有客户的公司(以及客户是其全部的公司)而言尤为正确。一个人浏览网站时会在一天内产生几十KB的数据。将其乘以百万的客户和潜在客户,数据量将快速超过单个电子表格的大小。 Web不是产生大量数据的唯一制造者。电话公司和信用卡公司是第一批使用TB级大小的数据库的公司,在20世纪90年代末这是一个异常大的数据库规模。那个时代已经过去了。虽然有可用的、规模巨大的数据,但是如何使之产生价值呢? 1.2.2 数据正存在于数据仓库中 公司不仅正在产生大量的数据,而且其往往越来越多地从产生它们的业务账单、预约、索赔过程以及订单输入系统中被提取出来,然后输入到数据仓库中成为企业内存的一部分。 数据仓库是数据挖掘故事中如此重要的一部分,因此第17章将专门讨论这个话题。数据仓库以一个共同的格式汇集许多不同来源的数据,该格式具有一致的关键字和字段定义。业务系统旨在快速地向终端用户提供结果,他们可能是网站的客户或者是正在工作的员工。这些系统旨在完成手头的任务,而不是为了保持干净、一致的数据以进行分析。而另一方面,数据仓库是为决策支持而专门设计的,它将简化数据挖掘者的工作。 1.2.3 计算能力能够承受 数据挖掘算法通常需要多次遍历规模巨大的数据,同时许多算法也是计算密集型的。磁盘、内存、处理能力和网络带宽等价格的持续急剧下降,已把曾经昂贵的、仅在几个政府资助的实验室中使用的技术推向一般业务。 1.2.4 对客户关系管理的兴趣非常强烈 在各行各业中,公司已经认识到他们的客户是业务的中心,而客户信息则是他们的关键资产。 1. 每个业务都是服务业务 处于服务行业的公司,信息将赋予其竞争优势。这就是为什么连锁饭店会记录你首选无烟的房间,而租车公司会记录你喜欢的车的类型。此外,传统上认为自身不是服务提供者的公司也开始从不同的角度来思考。汽车经销商是出售汽车还是运输工具?如果是后者,那么每当你自己的车在商店里时,经销商就为你提供一辆替代车是合理的,许多经销商现在就是这么做的。 即使是日用商品也可以通过服务得到加强。一家家庭供热石油公司如果能够监视你的使用情况,并在你需要更多的石油时向你提供石油,那么相比一家公司期望你在油箱枯竭和管道冻结前记得打电话来安排你的订单,它销售的产品更好。对于信用卡公司、长途运输公司、航空公司以及所有类型的零售商而言,服务竞争通常会与价格竞争一样多或更多。 2. 信息即产品 许多公司发现他们拥有的客户信息不仅对自己有价值,而且对其他人同样有价值。一家具有忠诚卡方案的超市有一些消费者包装食品行业会喜欢的信息——关于谁在购买哪些产品的知识。信用卡公司有一些航空公司想要了解的信息——谁在买大量的机票。超市和信用卡公司都处于知识经纪人的位置。超市可以通过打印优惠券向消费者包装食品公司索取更高的收费,此时超市会承诺通过向适当的购物者打印适当的优惠券获得更高的回报率。信用卡公司可以向航空公司收费,其目标是为经常旅行、但乘坐其他航空公司航班的人提供频繁的飞行积分。 Google了解人们正在Web上寻找什么。它在出售赞助商链接(以及其他事物)时利用这种知识。保险公司会为确保某人在搜索“汽车保险”时,为其提供它们站点的链接而支付相应的费用。金融企业将支付赞助商链接,从而当有人搜索诸如“抵押贷款再融资”之类的短语时显示其链接。 事实上,任何收集了宝贵数据的公司都能够成为一个信息代理。Cedar Rapids Gazette利用其在爱荷华州东部22个县中的优势地位,为本地企业提供直接的市场服务。报纸使用它自身的讣告页面和结婚通告来保持其营销数据库的流通。 1.2.5 商业的数据挖掘软件产品变得可用 新的算法首先出现在学术刊物上并且在会议中引发讨论的时间,与在商业软件中纳入这些算法从而变得可用的时间之间总会存在时间差。在首批产品初始可用的时间以及它们获得广泛接受的时间之间,也存在另一个时间差。对于数据挖掘而言,具备广泛可用性和被广泛接受的时期已经来临。 本书所讨论的许多技术都是起源于统计、人工智能或机器学习等领域。在大学和政府实验室中经过数年之后,一项新的技术就会被商业部门中一些早期的采用者开始启用。在新技术演化之时,软件通常会向勇敢的用户提供源代码,他们愿意通过FTP来获取它、对它进行编译,并通过阅读作者的博士论文来了解如何使用它。只有在几个先驱成功地应用一项新技术之后,它才开始在真正的产品中出现,包括用户手册、帮助热线以及培训课程等。 现在,新技术正在开发之中;然而,其中许多工作也是用于扩展和改进现有的技术。本书讨论的所有技术在商业和开放源代码软件产品中均存在,尽管没有一款单一的产品把它们全部囊括。 1.3 数据挖掘人员的技能 谁能成为一名数据挖掘人员(data miner)?答案不是每个人,因为这需要一些特殊的技能。一个好的数据挖掘人员需要有数字技能,并且对统计有一些基本的了解(更强的统计知识总会有用)。第4章和第6章介绍了数据挖掘所需的许多关键统计概念。对Excel有很好的了解也非常有用,因为它是商业世界中主要的电子表格。诸如Excel之类的电子表格对分析少量的数据并且向广大读者展示结果非常有用。 当然,熟悉数据挖掘技术是成为数据挖掘人员的关键。本书的大部分内容是专门讨论各种技术。了解技术本身很重要;更重要的是了解它们何时有用以及如何有用。与技术细节同样重要的或许是数据挖掘技术的启蒙。尽管许多技术都很复杂,但是它们往往都是基于一个非常容易理解的基础。这些技术并非魔术。即便没有在数学或统计方面的博士学位,你不能准确地解释它们如何得到答案,但是理解它们还是可能的。这些技术比魔术更好,因为它们有用而且可以帮助解决实际问题。 对一名数据挖掘人员而言,另一项非常重要的技能实际上是一种态度:不畏惧为了得到结果可能需要处理的大数据量和复杂的过程。处理大型数据集、数据仓库以及分析沙箱是数据挖掘成功的关键。 最后,数据挖掘不仅仅产生技术结果。例如,除了在计算机中移位之外,数据挖掘模型不会真正做任何其他事情。结果必须用来帮助人们(或者帮助越来越自动化的流程)做出更明智的决定。产生技术结果只是数据挖掘过程第一步的结束。能够与其他人一起工作、交流结果,并认识到真正的需求是作为一名好的数据挖掘人员至关重要的技能。贯穿本书的是许多商业上下文中的数据挖掘实例,它们分布在下两章和专门讨论每项技术的章节中。数据挖掘是一个基于数据的学习过程,如下一节所描述的,一位好的数据挖掘人员必须对新思想持开放态度。 1.4 数据挖掘的良性循环 在19世纪初期,纺织厂是工业成功故事。这些纺织厂在英格兰和新英格兰境内的河流沿岸不断增长的村庄和城市中涌现,以便充分地利用水电。水在水轮上运转,从而驱动纺纱、针织和编织机器。一个世纪以来,工业革命的象征是水倒在为纺织机器提供动力的轮子上。 商业世界已经发生了改变。老式的磨房小镇现在已成为独特的历史文物。河流沿岸长长的工厂建筑现在是仓库、购物中心、艺术家工作室以及其他各式各样的商店。甚至制造公司在服务上产生的价值通常也比在商品上更多。作者曾被领先的国际水泥制造商——Cemex——的一次广告宣传活动所吸引,它把混凝土作为服务来展示。该广告的重心不在于水泥质量、价格或可用性,而是在一条河流上画了一座桥,并出售“水泥”是一项服务的想法,该服务连接着桥梁之间的人。混凝土作为服务?欢迎来到21世纪。 世界已经改变。获得电气和机械的力量不再是商业成功的标准。对于大众市场的产品而言,客户交互的数据是新的水力;知识驱动着服务经济以及许多制造业经济的涡轮,因为服务与制造之间的界限越来越模糊。来自数据的信息使得能够通过以客户为目标集中销售和营销方面的努力,通过解决客户的实际需要改进产品设计,通过了解和预测客户喜好增强资源分配。 数据是许多核心业务流程的心脏。它是由业务系统中的事务所产生,无论何种工业——例如零售、电信、制造、保健、实用工具、交通运输、保险、信用卡和金融服务等。大量的内部数据拥有许多外部来源,包括零售客户的人口、生活方式以及信用信息;业务客户的信贷、金融和市场信息;以及各种规模社区的人口统计信息。数据挖掘承诺找到隐藏在磁盘或计算机内存中所有这些数十亿或数万亿比特数据中的有趣模式。仅仅发现模式是不够的。你必须响应这些模式,针对它们执行相应的动作,最终把数据转化为信息,信息转化为行动,行动转化为价值。简而言之,这就是数据挖掘的良性循环。 为了实现这一承诺,需要把数据挖掘变成一个基本的业务流程,以纳入到其他的流程,包括营销、销售、客户支持、产品设计和存货控制等。良性循环把数据挖掘放在更大的业务范围内,重心从发现机制转移到基于发现的行动上。本书强调数据挖掘的可操作结果(此处所指的“可操作(actionable)”不应与它在法律领域的定义所混淆,在法律领域中,它意味着某项行动具有合法行动的基础)。 营销方面的文献使数据挖掘看上去很容易。仅仅应用由学术界成熟理论创建的自动算法,如神经网络、决策树与遗传算法,你就会收获极大的成功。虽然算法很重要,但是数据挖掘解决方案不仅仅只是一组强大的技术和数据结构。这些技术必须应用于正确的问题,针对正确的数据。数据挖掘的良性循环是一个迭代的学习过程,其构建在随时间推移产生的结果之上。成功使用数据将把企业从反应类型(reactive)转化为主动类型(proactive)。这就是数据挖掘的良性循环,作者使用它从本书稍后所描述的技术中获取最大收益。在解释数据挖掘的良性循环之前,先看一个数据挖掘在实践中的案例研究。 1.5 业务数据挖掘的案例研究 从前,有一家银行存在业务问题:一项特定的业务——房屋净值信贷额度,未能吸引到足够好的客户。银行可以选择几种不同的方式来解决这个问题。 例如,该银行可以降低房屋净值贷款的利率。这将招揽更多的顾客,并在利润率较低的费用下增加市场份额。现有的客户可能会转移到更低的利率,从而进一步压缩利润。更糟糕的是,假设初始利率具有合理的竞争力,降低利率可能会带来最坏的客户——不忠诚。竞争对手可以以稍微好一点的条件轻松地引诱他们离开。补充内容“赚钱或亏损”讨论了保持忠实客户的问题。 赚钱或亏损 房屋净值贷款会通过支付贷款的利息为银行创造收益,但有时公司需要应付快速亏损服务。 举一个例子,富达投资(Fidelity Investments)曾经一度停止了其账单支付服务,因为该项服务一直在亏损。但是最后的分析使之得以保存,因为分析发现Fidelity最忠实和最有利可图的客户会使用该项服务。虽然该项服务亏损,但是Fidelity在这些客户的其他账户上赚得更多的钱。毕竟,信任金融机构并愿意支付账单的客户对该机构的信任级别也非常高。削减这种增值服务可能会无意中导致最好的客户到别处寻求更好的服务,从而无意中加剧收益率问题。 即使是如房屋净值贷款之类的产品也给某些银行出了一个难题。拥有自己的房子并且有一大笔信用卡债务的客户,往往是适合房屋净值信用额度的好的候选者。这对客户很合适,因为贷款额度通常比原来的信用卡具有更低的利率。银行应该鼓励客户把他们的债务从信用卡转换为家庭净值贷款吗? 答案似乎比看上去更为复杂。在短期内,这样的转换对客户而言很合适,但对银行而言很糟糕:客户支付更少的利息意味着银行获得更少的收益。在银行内部,这样的转换也会引起问题。信用卡组可能已经很努力地工作来获得会每个月支付利息的客户。这个组并不想失去自己的优质客户。 另一方面而言,转换用户可能会构建一个终生的关系,包括许多汽车贷款、抵押贷款与投资产品等。当重点是客户时,长期的观点有时更为重要,而且它可能会与短期目标冲突。 在这个特定实例中的银行是美国银行(Bank of America,BofA),经过几次直接邮寄活动产生失望的结果之后,它非常渴望扩展其家庭净值贷款的投资组合。美国全国消费者资产组(National Consumer Assets Group,NCAG)决定使用数据挖掘来解决问题,因此引入数据挖掘的良性循环。(作者要感谢研究这个问题的Lounette Dyer、Larry Flynn和Jerry Modes,以及允许我们使用美国银行案例研究材料的Larry Scroggins)。 1.5.1 识别美国银行的业务挑战 为了向客户营销家庭净值贷款,美国银行需要更加努力。基于常识和商务顾问的信息,得出了以下的一些结论: ● 有上大学年龄孩子的人会想要利用家庭净值贷款来支付学费。 ● 收入高但不稳定的人想要使用家庭净值来平滑他们收入中的波峰和波谷。 这些见解可能为真或者为假。不过,家庭净值贷款额度产品的营销行业反映了这种关于潜在客户的观点,正如电话营销所拟定的名单一样。这些见解导致了前面所提及的令人失望的结果。 1.5.2 应用数据挖掘 美国银行与Hyperparallel(一个数据挖掘工具供应商,后来被Yahoo!收购)的数据挖掘顾问一道,利用一系列的数据挖掘技术来解决这个问题。它并不缺乏数据。多年以来,美国银行已经在一个大型关系数据库中存储了其数百万零售客户的数据,该数据库位于Teradata公司一个强大的并行计算机之上。对来自42个记录系统的数据进行清理、转换、对齐,然后输入企业数据仓库。通过该系统,美国银行可以看到每个客户与银行保持的所有关系。 这一历史数据库是真正的名副其实——一些记录甚至可追溯到1914年!最近的客户记录中有大约250个字段,其中包括人口统计字段,如收入、小孩数量和家庭类型,以及内部数据等。将这些客户属性合并为一个客户签名,然后使用Hyperparallel的数据挖掘工具对其进行分析。 决策树(Decision Tree,第7章讨论的一种技术)派生出的规则将现有的银行客户分类成可能或不太可能响应家庭净值贷款的客户。决策树,在数以万计获得以及未获得该产品的客户实例上进行训练,最终的学习规则将给出他们之间的区别。发现这些规则之后,结果模型将用来向每个待预测记录添加另一个属性。这个属性,作为“家庭净值贷款额度标志的预测”标志,由数据挖掘模型生成。 接下来,序列化的模式发现技术(例如第15章在介绍购物篮分析和序列化模式分析时所描述的技术)可用来确定客户何时最有可能想要一笔这种类型的贷款。这种分析的目标是要发现过去在成功的贷款之前经常出现的一系列事件。 最后,聚类技术(见第13章)用来自动地把具有相似属性的客户分组。此时,该工具会找到14个客户群集(cluster),其中许多群集似乎并不令人特别感兴趣。不过,这14个群集中的其中一个群集具有两个有趣的属性: ● 该客户群集中39%的人同时有企业账户和个人账户。 ● 这个群集中超过25%的客户被决策树分类为家庭净值贷款的可能响应者。 此结果提示好奇的数据挖掘人员,人们可能是使用家庭净值贷款来创业。 1.5.3 对结果采取行动 根据这个新的结论,家庭净值贷款额度的业务单位(NCAG)与零售银行业务部(Retail Banking Division)一起,执行银行在这种情况下该做的事情:他们提交与客户交谈的市场调研提案。美国银行将发布一项银行分支机构的调查,以找出基层实际正在发生的事情,这种发布每年会有四次。利用数据挖掘获得的知识,该银行需要把一个问题添加到该列表中:“贷款的收益是否用于启动公司?”数据挖掘研究的结果是针对内部调查的一个问题。 调查结果证实了由数据挖掘所引发的怀疑。最后,NCAG修改了活动的广告语,从“利用房屋价值送你的孩子上大学”到更具煽动性的“现在房子是空的,使用你的净资产做你一直想做的事”。 顺便提一下,市场调研和数据挖掘常常用于类似的结果——更好地理解客户。虽然市场调研很强大,但是它也有一些缺点: ● 响应者可能不是整体人口的代表。也就是说,响应者集合可能带有偏向性,特别是会偏向于作为过去营销努力的目标的组(从而形成所谓的机会主义样例(opportunistic sample))。 ● 客户(特别是不满意的客户和前客户)没什么理由是有益的或者诚实的。 ● 任何给定的操作可能是各种原因积累的结果。银行客户可能会因为各种原因而流失,比如一个银行分支被关闭,银行退还了一次支票,以及他们必须在自动取款机上等太久等。虽然序列往往更为重要,但是市场调研也许只能发现近似的原因。 尽管有这些缺点,但是与客户和前客户交谈提供了任何其他方式不能提供的见解。美国银行的这个例子表明这两种方法是兼容的。 提示:当针对现有客户进行市场调研时,使用数据挖掘来考虑对他们已有的了解是一个好主意。 1.5.4 度量数据挖掘的影响 作为营销活动采用更好广告语的结果,家庭净值贷款活动的响应率从0.7%增加至7%。该集团副总裁Dave McDonald说,数据挖掘对银行零售环节的战略影响是不折不扣地将银行从大规模营销机构转换为学习机构。“我们想要达到不断执行营销方案的目的——不只是季度邮件,而是在统一基础之上的方案。”他预见到一个闭环的营销过程:业务数据作为快速分析过程的数据源,该分析过程将创建执行和测试的方案,这又将产生更多的数据以更新该过程。总之,这将形成数据挖掘的良性循环。 1.6 良性循环的步骤 美国银行的例子显示了实践中的数据挖掘良性循环。图1-1显示了4个阶段: 图1-1 数据挖掘良性循环的重心在于业务的结果,而不只是利用先进的技术 (1) 识别业务机会。 (2) 挖掘数据将其转换为可操作的信息。 (3) 根据信息采取行动。 (4) 度量结果。 根据这些步骤的提示,成功的关键是把数据挖掘合并到业务流程,并能够促进数据挖掘人员和使用结果的业务用户之间的通信。 1.6.1 识别业务机会 数据挖掘的良性循环首先识别合适的业务机会。遗憾的是,有许多很好的统计师和主管分析师的工作基本上都是浪费,因为他们解决的是对业务没有帮助的问题。优秀的数据挖掘人员希望避免这种情况。 为避免浪费分析工作,首先应愿意针对结果采取行动。许多正常的业务流程都很适合数据挖掘: ● 规划新的产品介绍 ● 计划直接营销活动 ● 理解客户的流失/波动 ● 评价营销测试的结果 ● 分配营销预算以吸引最有利可图的客户 这些都是数据挖掘可以提高现有业务工作的实例,允许业务经理做出更明智的决定——如定位不同的目标群,更改广告语等。 为了避免浪费分析工作,度量所采取的行动影响,从而判断数据挖掘工作本身的价值也非常重要。正如George Santayana所说(在他所有的引述中,通常只有其中的最后一句被记住): 进步,远不在于改变,而在于记忆力。即便改变是绝对的,但是仍有未改进之处以及没有可能改进的方向:如果经验不会保留,则像野蛮人一样,永远保持幼年。那些不吸取教训的人,注定要重蹈覆辙。 在数据挖掘方面,这也同样适用:如果不能度量挖掘数据的结果,那么不能在以往的工作中学习,从而不存在良性循环。 度量过去的努力和有关业务的特设问题同时启示了数据挖掘的机会: ● 什么类型的客户会响应过去的活动? ● 最好的客户住在哪里? ● 在自动柜员机前漫长的等待是客户流失的原因吗? ● 有利可图的客户会使用客户支持吗? ● 哪些产品应该通过Clorox漂白来升级? 与业务专家面谈是另一个好的开始方式。因为在业务方面的人员可能不熟悉数据挖掘,因此他们可能不了解如何针对结果采取行动。通过解释数据挖掘对企业的价值,这种面谈为双向沟通提供了一个讨论会。 本书的作者之一曾参加了在电信公司的一系列会议,讨论分析呼叫详细记录(每一个客户完成的呼叫记录)的价值。在其中一次会议中,与会者缓慢地了解到这可能有用。然后,一位同事指出隐藏在数据里面的信息是客户在家中使用传真机(在第16章介绍链接分析时详细讨论该结果项目)。这种看法引发了与会者的思考。传真机的使用将会是人是否在家中工作的一个好的指标。对于在家工作的人群,该公司已经根据他们的需要量身定制了产品。然而,如果没有理解数据和技术的人的激励,那么这个营销团队永远不会考虑通过搜索数据来发现在家工作的人群。连接技术和业务突出了一个非常宝贵的机会。 提示:当与业务用户讨论数据挖掘的机会时,确保重心在业务问题而不是技术和算法。让我们的技术专家专注于技术,同时让业务专家专注于业务。 1.6.2 将数据转换为信息 数据挖掘——本书的重点——是将数据转换成可操作的结果。成功的关键在于使得数据在业务中具有意义,而不是使用特定的算法或工具。许多缺陷降低了使用数据挖掘结果的能力: ● 坏的数据格式,例如在客户地址中不包括邮政编码。 ● 混乱的数据字段,例如交货日期在一个系统称为“计划交付日期”,而在另一个系统中称为“实际交付日期”。 ● 功能缺乏,例如呼叫中心应用程序不允许基于每个客户进行注解。 ● 法律影响,如拒绝贷款时必须提供法律依据(而且“我的神经网络告诉我如此”是不可接受的)。 ● 组织因素,因为一些业务组不愿改变他们的行动,特别是在没有奖励的情况下。 ● 不及时,因为结果可能来得太晚而不再适合采取行动。 不同形式、不同格式以及来自多个系统的数据,如图1-2所示。确定适当的数据源并把它们整合在一起是成功的关键因素。每个数据挖掘项目都有数据的问题:不一致的系统、跨数据库的表的键不匹配、记录每隔几个月就会覆盖等。抱怨数据是不做任何事的首要借口。第17、18、19章讨论了有关数据的各种问题,首先是数据仓库,然后介绍如何转换成适合数据挖掘的格式。真正的问题是“现有数据能做什么?”这就是本书后续所描述的各项技术的落脚点。 在已经获得了一个强大的服务器和一个数据挖掘的软件包之后,一家无线通信公司曾想过整合一个数据挖掘组。在后期阶段,该公司联系作者来帮助其研究数据挖掘的机会。其中一个机会非常明显。客户流失的一个关键因素是过度呼叫(overcall):新的客户在第一个月使用的分钟数超出了他们的费用计划。当第一次的账单送达时——有时会在第二个月的中间,客户会了解过度使用。到那时候,与第一个月一样,客户已经在第二个月产生了一个很大的账单,从而更加不快乐。遗憾的是,客户服务组还要等待相同的账单周期之后才能检测出过度使用,没有时间来主动反应。 图1-2 数据从来就不干净,它来自内部和外部的不同形式、不同来源 然而,新生的数据挖掘组拥有资源,而且已经鉴别和调查了适当的数据源。采用一些相当简单的程序,该小组能够在这些客户第一次过度呼叫时把他们标识出来。使用这个信息,客户服务中心能够联系处于风险中的客户,并在第一个账单失效之前把他们移到适当的账单计划中。这个简单的系统获得了重大胜利,展示了数据挖掘的优点。只需拥有一个数据挖掘组——具有技能、硬件、软件以及访问能力——就是把合适的触发器结合起来以保存处于风险中的客户的有利因素。 1.6.3 根据信息采取行动 采取行动是数据挖掘良性循环的目的。正如之前已经提到的,可以采取多种形式的行动。数据挖掘将使得业务决策更为明智。随着时间的推进,更明智的决定会导致更好的结果。 有时,“行动”只不过是做曾经做过的事情——但是此时行动将具有更大(或更少)的信心。即便如此,它也是数据挖掘的成功,因为减少担忧的程度也是一件好事。 更典型地,采取的行动一般会基于正在进行的业务: ● 当客户在线出现时,把结果合并到自动推荐系统。 ● 通过直接邮寄、电子邮件、电话推销等向客户和潜在客户发送信息;使用数据挖掘,不同的信息可能会发送给不同的人。 ● 优先客户服务。 ● 调整库存水平。 数据挖掘的结果必须提交给可以接触客户和影响客户关系的业务流程。 1.6.4 度量结果 我们已经强调过了度量结果的重要性,虽然这个阶段在良性循环中最有可能被忽视。虽然度量并持续改进的价值得到了广泛承认,但是依然没有得到足够的注意,因为它不会立即产生投资回报。没有人回头去检查实际结果与计划相匹配的程度的业务案例会有多少?个人通过比较和学习,通过问为什么计划会匹配或不匹配实际的结果,以及通过愿意学习早期的假设何时以及如何发生错误,从而改进自身的工作。对个人有效同样也适用于企业。 通常,需要基于金融度量来评价营销工作——这些度量非常重要。然而,还需要评价建模工作。考虑一个大型加拿大银行曾经发生的事情,该银行计划向其客户交叉销售投资账户。这个营销信息遍布整个银行:在电视和收音机的广告里、在各分行的海报上、打印在ATM收据背后的信息中,在为客户提供客户服务时的信息里,等等。客户不会错过这些信息。 不过,这个故事是关于一个不同的渠道——直接邮寄。数据挖掘的一项工作是识别最有可能对一项投资活动做出响应的客户。营销活动旨在针对可能会做出响应的客户。不过,在当前情况下,该银行包括一个特别的对照组:本组预计会响应良好,但未收到直接邮寄。(补充内容“数据挖掘和营销测试”更详细地讨论了这一思想)。对于直接邮寄的经理而言,把潜在的响应者晾在一边的行动具有相当大的争议。数据挖掘人员的解释是:“我们认为这一组将会做出响应,但是不与他们任何人联系,以便留出一部分让我们可以从这个测试中学习”。 相对于不与一些好的客户联系的代价,学到的知识是相当值得的。对于在投资账户提议中得分较高的客户,无论他们是否接受提议,都有相同比例的客户会开设账户。事实上,该模型确实会找到将开设账户的客户。然而,营销测试同时还发现营销传播是多余的。给定所有其他的营销工作,并不需要这个特别的直接邮递活动。 当开始识别业务问题时,是开始考虑度量的时机。如何才能度量结果?一家公司在发出优惠券鼓励销售其产品时,无疑将度量优惠券的赎回率(redemption rate)。但是无论如何,优惠券的买回者可能已经购买了产品。另一个适当的度量是考虑在特定的商店或者地区的销售增长,其中增长是与特定的营销工作相关联。这些度量可能很难完成,因为它们需要更详细的销售信息。然而,如果目标是要增加销售,那么需要一种直接或间接的方式对其进行度量。否则,营销工作可能都是“慷慨激昂,却毫无意义”。 数据挖掘和营销测试 营销测试是分析营销的一个重要部分,数据挖掘同样如此。这两者常常相互补充,营销测试是了解数据挖掘工作是否有效的重要部分。当使用数据挖掘进行营销处置时,通常应该测试两件事情。第一,营销信息是否有效?第二,数据挖掘模型是否有效? 其中的关键在于聪明地使用对照组来分析这两个因素。在实践中,存在4个潜在的组: ● 目标组(Target Group):接受处置,且具有指示响应的模型评分。 ● 控制组(Control Group):接受处置,且随机或基于较低的模型评分进行选择。 ● 对照组(Holdout Group):不接受处置,且随机或基于较低的模型评分进行选择。 ● 模型化对照组(Modeled Holdout Group):不接受处置,且具有指示响应的模型评分。 这四个组如下图所示: 这四个组可用于度量信息和模型工作的有效性 这四个组的响应将会提供有用的信息。使用这些组建模称为增量响应建模(incremental response modeling),第5章将对其进行更详细的讨论。 在加拿大银行学习到直接邮递工作没有必要的示例中,模型化对照组的响应率与目标组的一样。这表明该项工作不会产生效果。目标组和控制组之间的差异可度量建模是否有效。 下面的图表是另一个银行的例子,其使用这些图表来度量活动的有效性。下面这张图是来自银行的实际图: 这张图清晰地显示了响应的区别,以确定处置以及建模是否起作用 头两栏显示目标组比控制组具有更高的响应率,表明建模正在起作用。第二个两栏显示控制组比对照组具有更高的响应率,表明营销处理在起作用。 仅仅度量这四个组只是度量数据挖掘有效性的开始。例如,模型评分往往会分成等分。在这种情况下,为了确定该模型正在起作用,包含来自活动中所有等分的一个样本非常重要。当然,工作中将包含顶部等分中的每个样本(因为这会实现业务目标)。对于更低层的等分,只需包含一个样本。样本应该足够大,以确定等分是否真的起作用——当使用模型时这相当重要。第4章解释了用于确定这些测试的合适大小所需的相关统计背景知识。 可能在营销干预发生数周或数月之后生成的标准报告中会包含摘要。即使拥有信息,营销经理可能也不具备从这种报告中收集重要发现的技术技能。了解保留客户的影响意味着需要在更长的时间里跟踪已有的营销工作。精心设计的报告应用程序对营销组和营销分析师的帮助会很大。然而,对某些问题而言需要更多的详细信息。 将每个营销工作看作一个小的业务案例是一个好主意。比较期望与实际的结果使得能够识别出在下一轮良性循环中可利用的数据挖掘机会。你常常会太忙于投入精力处理下一个问题而不能度量当前工作的有效性。这是个错误。不管成功与否,每次数据挖掘工作都会带来可应用到未来工作的经验。问题是度量什么以及如何应用该度量方法,使之为将来使用提供最好的输入。 作为示例,让我们以有针对性地获取活动需要度量什么作为开始。标准化的度量是响应率:本活动所针对的人群中有多少人会真正响应?这使得在数据表中会存在很多信息。对于使用模型评分(其中高得分意味着响应的可能性更高)的客户获取工作,一些有未来价值的问题示例包括: ● 该活动是否抵达(reach)并带来有利可图的客户? ● 得分更高的模型评分会表明更高的响应率吗? ● 这些客户是被保留还是可预期? ● 本活动所抵达的最忠实客户的特征是什么? ● 新获得的顾客会购买额外的产品吗? ● 一些信息或优惠会比其他的更有效吗? ● 活动所抵达的客户可通过其他备用渠道抵达吗? 所有这些度量会为在未来做出更明智的决定提供信息。通过学习,数据挖掘将连接过去与未来的行动。 较为特殊的是度量客户生存期价值(lifetime customer value)。顾名思义,这是对客户在他的整个关系过程中(或者在未来的某个固定的时期,如接下来的两年)所体现价值的一种估计。在某些行业,为了估计客户生存期价值,已经发展出非常复杂的模型。即使没有复杂的模型,短期的估计(如一个月后、六个月和一年之后的价值)也可证明是相当有用的。下一章将更详细地讨论客户价值。 1.7 良性循环上下文中的数据挖掘 考虑美国的一家大型电信公司。该公司有数百万客户,它拥有位于中央办公室的数百或数千个交换机,其通常是位于多个时区中多个不同的州。每个交换机可以同时处理数千起电话——包括诸如呼叫等待、会议呼叫、呼叫转移、声音邮件与数字服务等高级要求。作为曾经开发过的最复杂的计算设备,交换机可以由少数几个制造商来提供。一个典型的电话公司会从每个供应商处获得几个交换机的多个版本。其中,每个交换机会在每次呼叫和尝试呼叫中提供大量的、具有自己格式的数据卷——每天会产生10 GB以上的卷。此外,每个州都有自己影响行业的规定,更不用说联邦法律和条例的改变会更为频繁。为了添加困惑度,该公司向其客户提供了成千上万的不同账单计划,其客户包括从偶尔的住宅用户到《财富》前100的公司。 这个公司—— 或任何拥有大量数据和大量客户的类似公司——会如何管理其负责收益的账单流程?答案很简单:要非常仔细!公司已经开发了处理标准操作的详细过程;他们拥有政策和程序。这些过程很可靠。即使业务重组、数据库管理员在度假、计算机临时崩溃,甚至即使法律法规发生了变化、交换机已经升级或者飓风袭击,账单都将会发给客户。如果企业可以管理的流程与每个月针对数以百万计的普通客户、企业客户和政府客户的精确账单一样复杂,那么显然把数据挖掘与决策过程相结合会非常容易。确实如此吗? 在设计和实现业务相关的关键任务应用程序方面,大公司拥有数十年的经验。然而,数据挖掘不同于典型的业务系统(如表1-1所示)。在运行成功的业务系统时所需的技能并不一定能保证成功的数据挖掘。 表1-1 数据挖掘不同于典型的操作业务流程 典型的业务系统 数据挖掘系统 在历史数据上操作和报告 对历史数据的分析通常应用于大多数当前数据以确定未来的行动 可预测的和周期性的工作流,通常与日历关联 不可预测的工作流,其取决于企业和市场的需求 专注于单个项目(item),每次一个(干草堆里的一根针) 每次专注于一个更大的组,试图了解整个干草堆 限制使用企业范围的数据 数据越多,结果越好(通常而言) 重点是经营范围(如账户、区域、产品代码以及使用时间等),而非客户 重点是可操作的实体、产品、客户与销售区域 响应时间通常以秒/毫秒(对于交互式系统而言)为单位度量,但是等待报告需要数周/数月 迭代过程的响应时间通常以分钟或小时为单位度量 数据记录系统 数据的拷贝 叙述性和重复性 创造性 通过数据挖掘解决的问题不同于业务问题—— 数据挖掘系统不寻求完全复制以前的结果。事实上,复制以前的工作会导致灾难性的结果。这可能会导致反复向相同的目标客户进行营销活动。你不想通过分析数据了解到一大群客户符合之前活动中联系的客户的剖析(profile)。数据挖掘过程需要考虑这些问题,与典型的业务系统想要反复复制相同的结果不同—— 比如是否完成了一个电话、寄汇票、授权信用购买、跟踪库存或其他无数的日常业务。 数据挖掘是创造性的过程。数据包含许多明显的相关性,它们毫无用处或者仅仅表示当前的业务策略。例如,分析一个大型零售商的数据表明购买维修合同的人也很可能会购买大型家用电器。除非零售商要分析电器维修合同的销售有效性,否则这种信息比无用更糟,因为考虑的维修合同仅仅与大型设备一起销售。花费数百万美元的硬件、软件以及数据挖掘人员成本,最后只发现这样的结果实在是在浪费资源,若把它们应用于业务的其他地方或许会更好。分析师必须理解业务的价值是什么,以及如何合理安排数据以挖掘出金块(nugget)。 数据挖掘的结果会随着时间推移而变化。随着时间的流逝,模型将会过期而渐渐降低其用处。原因之一是数据在快速地衰老。同样,市场和客户也在快速地变化。 数据挖掘为其他可能需要更改的过程提供反馈。在商业世界中所做出的决定经常影响当前过程以及与客户的交互。通常,观察数据可以发现业务系统的缺陷,以及应该加以修正以便提高未来客户理解的不完善之处。 1.8 经验教训 数据挖掘是客户关系管理系统的重要组成部分。客户关系管理系统的目标是要尽可能地重新构建与客户的密切学习关系,它们往往为经营有方的小企业所享有。公司与客户的交互会产生大量的数据。数据最初是由事务处理系统捕获,如自动柜员机、电话交换机的记录以及超市的扫描仪文件等。然后可以对数据收集、清洗,并对其进行汇总以包含在一个客户数据仓库中。一个精心设计的客户数据仓库将包含客户交互的历史记录,它们会成为公司的记忆。数据挖掘工具可应用于该历史记录以学习客户的信息,从而使得公司未来向客户提供更好的服务。本章给出了几个数据挖掘商业应用程序的示例,诸如更好的优惠券定位、推荐、交叉销售、客户保留以及信贷风险降低等。 数据挖掘本身就是在大量的数据中找到有用的模式和规则的过程。为了获得成功,数据挖掘必须成为大的业务流程的一个组成部分,即数据挖掘的良性循环。 数据挖掘的良性循环将利用数据的力量,并把它转化为可执行的业务结果。正如水曾经推动轮子转动以驱动整个工厂中的机器一样,必须将数据收集起来,并在整个企业中传播以产生价值。如果数据是这个比喻中的水,那么数据挖掘就是那个轮子,而良性循环将把数据力量传播到所有的业务流程。 数据挖掘的良性循环是一个基于客户数据的学习过程。它首先识别适合数据挖掘的业务机会。最好的业务机会是那些将要执行的行动。如果没有执行,则从了解客户中获得的收益会很少或没有价值。度量行动的结果也非常重要。这样就完成了整个良性循环的循环,并且经常会给出进一步的数据挖掘机会。 下一章将考虑在客户上下文中的数据挖掘,首先介绍客户生存周期,接下来是良性循环在执行中的几个例子。