数据挖掘的一般步骤如下:
①理解数据和数据的来源(understanding)。②获取相关知识与技术(acquisition)。③整合与检查数据(integrationandchecking)。④去除错误或不一致的数据(datacleaning)。
⑤建立模型和假设(modelandhypothesisdevelopment)。⑥实际数据挖掘工作(datamining)。
⑦测试和验证挖掘结果(testingandverification)。⑧解释和应用(interpretationanduse)。
(2)数据挖掘算法数据挖掘技术常见和应用最广泛的算法和模型包括:决策树、神经网络、基因算法、贝叶斯分类、期望值最大化方法等。本系统采用决策树细分客户资源。利用样本数据库,通过对客户的所在商圈、购买频度、购买数量、购买时间等因素的分析,建立客户分类模型,从中提取分类规则,发现某群客户的主要特征,然后利用这个模型对收集到的新客户数据进行分析。
决策树算法是一种逼近离散函数值的方法。它是一种典型的分类方法,以自顶向下的递归方式构造,对数据进行处理。理想的决策树分为3种:叶节点数最少、叶子节点深度最小、叶节点数最少而且叶子节点深度最小。决策树的好坏,不仅影响了分类的效率,而且影响了分类的准确率。
ID3算法的核心是:在决策树各级结点上选择属性时,用信息增益(informationgain)作为属性的选择标准,以使得在每一个非叶结点进行测试时,能获得关于被测试记录最大的类别信息[28]。由该属性的不同取值建立分支,再对各分支的子集递归调用该方法建立决策树结点的分支,直到所有子集仅包含同一类别的数据为止。最后得到一棵决策树,它可以用来对新的样本进行分类。(3)统计分析的数据
本系统的基础数据为超市的购物营销积分记录,其中包括客户顾客和非客户顾客。顾客的基本资料和营销积分记录是进行统计分析的基础。在Mysq数据库中,建立一张数据表,用于存放顾客的购物营销积分记录,表名为purchase,通过前台POS机可以获得此数据。
purchase表中包括字段:客户卡号:没有客户卡的顾客,客户卡号为0;交易小票号:顾
客一次购物记录即产生交易票号(顾客购物的交易代码是唯一的),购物金额:这次购物所花费的费用。商品折扣:根据客户卡类型可以享受折扣或是依旧超市促销活动的具体折扣情况设置折扣。如果没有折扣销售,记录为0,如果进行了折扣销售,则记录为相应的折扣值。
purchase表的主键为小票号和客户卡号。
根据客户分析目标,需要从基本的购物数据表中选出所有的“客户卡号”字段不为零的交易记录,即持卡客户的购物营销积分记录。在分析客户顾客购物记录时,需要定义能够描
39
述该客户在这段时间购物特征的变量,不但需要知道客户在何时购物以及所购买的商品,而且需要了解客户的光顾频率和购物的平均营销积分额等信息。在对数据进行预处理的时候,需要进行对缺失值的处理、对数据的一致性进行检查。但在缺失值的处理中,缺失值所占的比例都比较小,可以根据表中的字段来推导具体的缺失值。将数据预处理后的数据转化成数据挖掘算法可以接受的形式,并产生衍生变量。根据每个客户的购物记录,产生表6-1所示的变量:统计变量总购物次数总购物数量总营销积分金额备注记录该客户光顾的商城的总次数记录该客户购买商品的总数记录该客户购物营销积分的总金额数衍生变量购物频率单次购物数量备注用总购物次数来表示,数值越大,表明购物频率越高记录该客户每次的平均购物数量,等于总购物数量除以总购物次数,以此来衡量客户购物篮的大小购物平均价格记录该客户每次所购商品的平均价格,等于总营销积分金额除以总购物数量表6-1数据挖掘过程设计的变量根据客户顾客营销积分额、购物频率、单次购物数量和购物平均价格,这三个综合指标进行排序,并划分为三个区段,区间一占客户总数的20%,区间二占客户总数的40%,区间三占客户总数的40%,从而把客户分为三类:区间一的为高价值客户、区间二的为高潜力客户和区间三的为低价值客户。(4)构建决策树运用IBMDB2IntelligentMiner的决策树方法对数据进行挖掘分析。根据客户对超市销售额的贡献把客户分为高价值客户和低价值客户。不同类别的客户对应有不同的特征规则,根据不同客户类型得出相应的特征规则,高价值客户的特征规则如下图所示,设定概率大于72%的特征规则为有效规则。规则编号购物频率单次购物数量购物平均价格支持数表6-2数据挖掘结果一2/34-43二33169三33133四332/381五21345六232/338七21264八132/354九22351十3122140根据表6-2的统计分析,可以认为企业的高价值客户就是那些频繁光顾、平均购物数量多以及购买商品平均价格高的客户,但是如果仅根据区分不同类别客户,将显得非常粗糙,而且会遗漏很多高价值客户。对其进行细分,高价值客户主要包括以下几类,如表6-3所示:类别123表6-3数据挖掘结果光顾频率3-56-346-34单次购物数量15-4040-9040-90购买商品的平均价格10-2010-2010-202、超市不同门店客户商圈分析超市不同门店客户商圈分析主要用于统计、分析在本店入会的客户所处商圈分布情况及销售额情况,如图6-7所示。图6-7查询统计页面6.1.5系统设置模块该模块功能包括系统员对商品折扣,客户卡积分进行设置,以及该系统的使用者对自己的登陆名和密码进行修改的操作,如图6-8所示。图6-8系统设置页面6.2系统测试广义的系统测试涵盖在系统分析、系统设计和程序设计3个阶段,在系统分析阶段,测试的主要工作是确认,即确认评估即将开发的应用系统是否正确无误、是否可行和有价值;系统设计阶段,测试的主要工作是验证,即验证系统开发的每个阶段、每个步骤的结构是否正确无误、是否与各阶段的要求或期望一致;最后的程序设计阶段是对代码的测试,可以广泛利用已有的结构化测试技术进行测试[29]。6.2.1系统测试内容常用的软件测试方法有白盒和黑盒测试。黑盒测试也称功能测试,它是通过测试用例来检测每个功能是否能正常使用。本系统采用黑盒的测试方法。在测试过程中主要是为了测试以下几个方面:(1)是否有数据结构错误或外部信息例如数据文件访问错误(2)复杂运算的时间是否能够接受;正常运行的最大并发用户数量(3)在接口上输入数据是否能正确的接受,并且能否输出正确的数据结果(4)检查系统实现的功能是否全面、是否有不正确或遗漏的功能(5)是否有初始化功能或终止性错误。本系统主要测试的功能模块如下表6-4所示:41序号12345678910111213模块功能登录系统测试结果登录模块退出系统客户积分信息客户管理模块客户卡开通客户退卡客户修改折扣设置系统设置模块积分设置密码设置查询统计查询统计(按客户等级ABC)查询统计(按商圈)客户营销积分客户营销积分信息录入客户营销积分信息查询表6-4系统测试模块6.2.2系统测试方案由于客户卡管理信息系统实现模式为C/S结构模式,基于此基础上,在测试时对测试环境准备则分为C端(客户端)和S端(服务端)环境的准备,具体的要求如下表6-5所示:型号服务器端IBM配置处理器:3.2GHz/800MHz硬盘:最大148G光驱:48X网卡:集成101000以太网客户端PC机CPU:3.2GHz/4.8GHz内存:512M/1G硬盘:80G/30G光驱:52X网卡:10/100以太网表6-5系统客户端和服务端测试方案Windows7360安全浏览器操作系统、应用软件Windows7Tomcat6.0Mysql本系统的测试工作采用了自动化测试工具LoadRunner。系统测试主要进行了性能测试和配置测试,性能测试借助于工具完成,各功能的测试由人工来完成。测试工具简单描述如下:LoadRunner属于Mercury公司的产品,脚本生成器:录制调试脚本用的。场景控制器:用脚42本生成场景、执行场景,并在场景执行时进行监控。结果分析器:场景结束后将监控的指标整理成图表展现给用户。6.3系统用例设计设计测试用例需要有清晰的设计思路,对要测试什么,按照什么顺序测试,覆盖哪些需求做到心中有数。测试用例设计要求测试用例编写者对被测试软件的设计、功能规格说明、用户试用场景以及程序/模块结构有比较透彻的理解。6.3.1性能测试用例性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。根据客户卡信息管理系统,设计了以下测试用例:(1)并发测试并发测试的过程是逐渐增加负载,在同一时间点,支持多个不同的操作。LoadRunner中提供IP伪装,集合点,配合虚拟用户的设计,以及在多台电脑上设置,可以比较好的模拟真实的并发。如表6-6所示。用例名称用例描述前提条件一秒内并发XX用户登录系统输入数据终端满足系统最低要求无一秒内并发10、20、50、100…用户登录系统,并持续步骤加压到最大允许并发用户数;查看页面响应速度;查看Tomcatserver和客户端CPU负载、内存使用希望结果用户能正常登录系统,且响应速度不超过规定的3秒;Tomcatserver和客户端CPU负载、内存使用没有查过限制表6-6用户登录并发测试的用例设计(2)配置测试配置测试是系统使用不同的配置(硬件资源、网络、应用服务器和数据库)执行相同的操作来获得性能数据,其目的是性能调优,用例设计如表6-7所示。用例名称用例描述前提条件用户在不同网速下登录系统输入数据无无限制用户网络速度为8KB/s—16MB/s;步骤用户登录系统;43