开篇:润墨网以专业的文秘视角,为您筛选了一篇电信客户细分中基于聚类算法的数据挖掘技术研究范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
摘 要: 结合市场细分和数据挖掘技术等相关理论,针对电信行业客户细分领域存在的问题,以某市电信公司提供的二十多万客户数据作为研究对象,基于CRISP?DM数据挖掘模型,通过数据挖掘工具中提供的K?means聚类算法完成对电信市场客户准确、有效的聚类细分,为管理和营销人员初步提供了制定管理或营销计划的依据。在完成客户细分模型的基础上,设计和实现了电信客户细分系统,并编码实现该系统功能的主要模块,将客户细分的整个流程通过自动化的过程描述出来。
关键词: 数据挖掘; 客户细分; SPSSModeler; K?means算法
中图分类号: TN911?34; TM417 文献标识码: A 文章编号: 1004?373X(2016)15?0095?04
Abstract: According to the market segmentation, data mining technology and correlation theories, and aiming at the problem existing in customer classification field of telecom industry, more than 200 000 customers′ data provided by the telecom company of a certain city is taken as the research object. On the basis of CRISP?DM data mining model, the K?means clustering algorithm in data mining tool is used for achievement of accurate and effective clustering classification of the telecom customers, which provides a basis of making a preliminary management plan or marketing plan for the management and marketing staff. On the basis of the customer classification model, the telecom customer classification system was designed and implemented, and the main module of the system function was realized with encoding. The whole process of customer classification is described by means of automation process.
Keywords: data mining; customer classification; SPSSModeler; K?means algorithm
目前,通信信息产业迅速发展,移动通信已经成为国内最具发展潜力和活力的支柱产业[1]。随着手机、电脑的普及以及无线物联网技术的应用,通信行业的高速发展不断地改善人类的生活方式,技术和市场的创新为提供商产生了丰厚的利润,同时也带来了激烈的市场竞争。WAP,GPRS,3G等信息技术在描述美好前景的同时,更是加剧了电信市场的竞争,对电信运营商提出了更加严酷的要求[2]。
1 关于CRISP?DM数据挖掘模型
目前,许多数据挖掘系统的开发商为其用户提出了应用数据挖掘技术的过程参考模型。例如CRISP?DM,作为目前业界权威的标准流程方法,提供了一个数据挖掘项目生命周期的全面描述。CRISP?DM数据模型流程标准把数据挖掘划分为6个阶段:分别为商业和数据理解、数据准备、数据处理、模型建立和评估以及部署结果,通过上述6个阶段最终构成一个统一的循环周期[3]。CRISP?DM模型在实际应用过程中,数据处理、准备和建模以及评估是一个多次修正、重复调整、回馈和完善的过程,不是简单的单向运作。CRISP?DM数据挖掘模型阐述了整个项目的工作流程[4]。
2 基于CRISP?DM的电信客户细分模型
2.1 电信客户细分的需求分析
具有足够可靠的数据源是进行数据挖掘的必要前提。课题中,某市级电信公司的计费账务系统为本次数据挖掘研究提供了真实、可信的数据。
(1) 客户账单汇总信息表:描述电信运营商为其客户定期进行费用汇总得到的费用结算数据,见表1。
(3) 客户通话详单信息表:描述电信客户详细的通话信息,包括主(被)叫、主(被)叫号码、通话起始时间、通话终止时间等。
(4) 测试卡用户表 :描述电信测试卡用户的信息。
在数据挖掘建立客户细分模型的过程中,使用一台PC机同时作为数据挖掘的服务器和客户端,数据库使用Oracle,建模软件使用IBMSPSSModeler,并使用辅助工具IBMDataStage。
2.2 数据收集与宽表设计
(1) 数据的收集
对客户的消费行为特征数据进行聚类分析,将消费行为相似的人群聚为一类[5]。结合电信运营商提供的原始数据,研究的主要数据内容由多方面数据组成:语音网内通话信息、客户账户和账单信息、语音网间通话信息、短信网内使用信息、短信网间使用信息、IP电话使用信息、其他业务使用信息、客户通话详细信息、客户套餐使用信息、客户拨打10000和10001热线信息、测试卡用户信息[6]。
(2) 宽表的设计
本次客户细分根据细分主题需要,确定与客户行为特征有关的属性(通话行为、短信、数据业务使用情况等)作为细分变量。最重要的挖掘数据是电信客户2013年1月~7月的客户消费行为数据。在ETL过程中,利用辅助软件IBMDataStage将账单汇总信息表数据生成客户行为属性宽表view_srv_mobileamount_hor_t,作为细分模型的主要输入样本数据,生成的宽表数据中每一个“用户ID”字段和“计费月份”字段对应一条记录。
2.3 数据信息预处理
从不同的系统和渠道中获取数据挖掘所需的大量原始真实信息数据[7]。由于受到人为或物理因素等的影响,为了给数据挖掘算法提供准确、干净、更有针对性的数据,必须对数据进行预处理。
(1) 原始数据中缺失值处理
对于原始数据中出现缺失值数据的情况,进行如下方法处理:元组数据舍弃;人工填写空缺值;使用一个全局常量填充缺失值;采用类似样本组平均值代替给定元组;使用近似值填入空缺值。
由于本次客户细分的原始数据不存在缺失值问题,在实际的数据准备过程中没有进行缺失值的处理。
(2) 过期、无效信息处理
实际过程中会因为业务问题在原始数据的采集过程中收录了过期、无效的数据信息,因此需要将无效和过期数据过滤掉。选择正常数据,保证数据的有效性。将view_srv_mobileamount_hor_t_mg表与cmn_userphone_ info表通过“用户ID”字段关联合并,依次过滤掉“今年开通用户当月数据”、“今年停机用户当月及停机后数据”和“今年开通今年停机用户数据”,生成新的view_srv_mobileamount_hor_ t_mg_f表。
(3) 异常数据处理
在样本数据中存在少量的测试卡用户,这些测试卡用户的行为不能代表普通用户的行为,也会对细分结果形成噪音,需过滤。如图1所示,将view_srv_mobileamount_hor_t_mg_f表与“测试卡USER_ID02”表通过“用户ID”字段关联合并,过滤掉测试卡用户,生成新的view_srv_mobileamount_hor_t_mg_ff表。
(4) 构建数据
对view_srv_mobileamount_hor_t表的数据进行分析,发现有不少字段存在全部为0值,或者几乎全部为0值[8]。这些字段属于无效字段或者极少有效(这里取0.1%)的字段,不适合作为细分变量,需要对其进行过滤舍弃。对view_srv_mobileamount_ hor_t表中722个字段进行“去除无效项目”和“去除极少有效项目”处理之后,剩余232个有效字段输出到新表view_srv_mobileamount_hor_t_mg中。如图2所示。
2.4 K?means聚类算法建立模型
通过采用数据挖掘工具SPSSModeler中的K?means聚类算法进行相关建模工作,针对前期得到电信公司的计费账务系统的正常组用户数据,输入到K?means聚类算法模型中[9]。K?means算法流程如图3所示。为避免数据变量直接输入后对结果产生影响,防止自然语言无法描述客户群组特性,基于系统聚类质量平均轮廓值的考量,本文通过分箱聚类的方法完成客户细分模型的建立。
3 电信客户细分系统的设计与实现
3.1 系统概述
本系统在实现上主要采用Client/Sever模式。本系统基于电信客户CRISP?DM细分模型,将相应的CRISP?DM数据准备、建立模型和结果统一部署起来,将客户细分流程通过计算机半自动化描述出来。在Windows系统下,采用SQLServer2005作为后台数据库,采用Microsoft Visual Studio 2005作为前台应用开发工具,数据库连接采用ADO技术。设计和实现操作简单、性能可靠、界面友好的电信客户细分系统。
3.2 系统的功能结构设计
本文采用软件设计的概念和原理,设计了电信客户细分系统的功能,为系统的实现做好前期准备。根据系统的需求分析,基于之前得到的电信客户细分模型,将客户细分的整个流程通过自动化的过程描述出来。系统功能结构图如图4所示。
3.3 系统主要模块的实现
(1) 数据库的连接
本系统采用ADO技术访问SQLServer数据库。VisualC++应用ADO接口访问SQLServer,首先要引入ADO库文件,用直接引入符号“#import”引入ADO库文件;接着,需要提供COM环境,即初始化COM库环境。在MFC应用程序里,一个简单又比较好的方法就是在应用程序类的InitInstance()成员函数里使用AfxOleInit()初始化COM库环境;采用Connection对象的Open方法连接数据[10]。
(2) 登陆窗体的设计
在窗体上布置两个文本框以及“Login”和“Exit”按钮,文本框用来输入用户名和密码。为了提高系统的安全性,用户只有使用合法的用户名、密码和用户权限才能进入到系统主界面,否则,系统提示错误,不能正常登陆。并且,系统会通过判别登陆用户的权限,显示不同的功能按钮。
(3) 系统主窗体的设计
为系统开发友好的用户界面,对主窗体进行窗口分割,按照系统需求分割成三部分,分别用不同的FormView进行填充。CTitleFormView,CMenuFormView,CClientFormView均继承于CFormView,用来填充主窗体的三个部分。
(4) 系统管理模块
系统管理模块由用户删除、用户添加、用户修改密码、日志管理等功能组成。
用户权限说明:为保证系统的安全,系统中为普通用户和管理员设置了不同的使用和操作权限,其中普通用户的权限有限,只能修改自己的密码,系统管理员拥有添加、删除普通用户和管理员的权限,而普通用户没有创建和删除任何用户的权限。同时,系统管理员有查看和删除日志的权限,而普通用户没有。
添加新的用户,添加之前会对用户名是否存在以及操作权限进行判断。删除用户,删除之前同样会对用户名是否存在以及操作权限进行判断。修改用户密码,修改之前会对密码匹配以及操作权限进行判断。
(5) 客户细分模块的设计
客户细分模块主要包括“数据准备”、“建立模型”、“评估”功能。客户细分功能模块利用数据挖掘算法,借助后台数据挖掘工具,通过对电信客户消费行为进行分析,建立客户细分模型。实现该模块中的数据源是电信运营商提供的原始数据,经过简单的转置形成本系统所需要的数据格式。客户细分模块以新生成的数据为基础,经过数据准备、数据挖掘和评估操作,生成最终的分组数据。
用户权限说明:该模块只有系统管理员的权限才能操作,普通用户不能进行客户细分的功能操作。
依据之前所做的客户细分工作,此次客户细分的流程主要包括:原始数据项目区分;过滤当月开卡和停机用户;过滤测试卡用户;生成语音业务数据;生成非语音业务数据;生成费用数据;生成最终的聚类数据;数据挖掘建立聚类模型;聚类分组合并;生成最终聚类分组。
(6) 细分结果模块的设计
细分结果模块主要完成对客户细分结果的描述,便于管理员和用户直观地看到客户分组结果以及查询电信个人客户分类结果。细分结果运行效果图如图5所示。
该模块显示聚类各分组的基本信息、分组客户的套餐信息以及客户指标对比信息。用户还可以对某一个电信客户进行查询,了解该客户的具体分组情况以及相应的营销策略。
3.4 系统测试
系统测试作为系统开发过程中必不可少的一个环节,其目的是测试开发系统的主要功能与性能是否与需求分析中的一致。本次在完成系统开发和配置之后,主要做的测试任务有:
(1) 测试系统的正常运行情况。主要任务是检测程序代码的编写是否规范,代码是否具有可读性和易维护性。
(2) 测试系统的排错能力。主要任务是输入不合理的数据,检测系统的排错能力。
(3) 测试系统的运行速度和稳定性。主要任务是通过测试保证系统能够在长时间稳定运行。
首先,对系统各个功能模块进行功能测试,反复测试、调整和修改之后,对系统进行总体测试。最终,测试的结果表明系统的各个功能都基本达到设计需求,各个功能模块运行正常无误。
4 结 论
在客户细分理论和数据挖掘理论研究的基础上,系统地研究了数据挖掘技术在电信客户细分领域的应用和实现。在理论上为数据挖掘的具体应用打下了基础,同时,结合某市电信公司提供的原始数据,参照数据挖掘CRISP?DM标准,使用数据挖掘聚类分析中的K?means算法,应用数据挖掘工具SPSSModeler尝试建立了电信客户细分模型,并在该模型的基础上设计和实现了电信客户细分系统。
参考文献
[1] HO T K, HULL J J, SRIHARI S N. Decision combination in multiple classifier systems [J]. IEEE transactions on pattern analysis and machine intelligence, 1994, 16(1): 66?75.
[2] 陈明亮.客户关系管理基础理论体系框架探讨[J].管理工程学报,2012,20(4):36?41.
[3] 罗纪宁.市场细分研究综述:回顾与展望[J].山东大学学报(哲学社会科学版),2010(6):44?48.
[4] KIM J, WEI S, RUYS H. Segmenting the market of west Australian senior tourists using an artificial neural network [J]. Tourism management, 2003, 24(1): 25?34.
[5] 郭秋萍,余建国,刘双红.企业数据挖掘理论与实践[M].郑州:黄河水利出版社,2010:12?14.
[6] 廖里,余英泽.数据挖掘和数据仓库及其在电信业中的应用[J].重庆邮电学院学报,2013,37(4):31?34.
[7] 李益强,漆晨曦.基于数据挖掘的电信客户细分研究分析[J].广东通信技术,2013:12?15.
[8] 周世兵,徐振源,唐旭清.K?means算法最佳聚类数确定方法[J].计算机应用,2010,30(8):145?148.
[9] XIANG P S. Survey of clustering algorithm [J]. Journal of Southwest University for Nationalities, 2009(3): 145?178.
[10] 宋才华,王永才,蓝源娟,等.基于数据挖掘的电力行业客户细分模型分析[J].现代电子技术,2014,37(14):21?23.