电信客户流失影响因素与预测分析
一、 引言
目前电信运营商面临着激烈的市场竞争。对电信运营商来说,客户即生命,如何保持现有客户是企业客户管理的重中之重。因此,电信运营商拥有的客户越多,作为主要成本的前期投资就会越大,企业的利润也就越大。客户资源对于电信运营商来说其意义不言而喻,电信运营商之间的竞争实际上就是对客户资源的竞争。可以说,未来的电信行业,得客户者得天下。?
当今电信市场竞争激烈,运营商每月客户流失率在1%~3%,挽留将要流失客户,降低客户流失率是近年来热门的研究领域。而数据挖掘技术是解决这一问题的有效途径,本文使用IBM Spss Clementine(IBN SPSS Modeler)进行数据挖掘与分析,深入了解电信客户流失的关键,以对该类客户的行为特性进行预警分析,采取针对性的措施改善客户关系,避免客户流失或者挽留客户。
二、 问题分析
根据已有的结果——流失客户(在数据中直接有判别数据有没有流失的字段churn),寻他
们流失的原因,即流失客户的特征。通过数据处理,统合数据,根据以前拥有的客户流失数据建立基本属性、服务属性和客户消费数据与客户流失可能性的数据模型,出其潜在的关系,分析出客户流失的因素,计算出客户流失的可能性,预测客户是否流失的可能性。
对于客户的基本数据、客户行为数据及消费数据,进行数据挖掘,研究已流失客户数据,从中出先前未知的、对企业决策有潜在价值的知识和规则,发掘潜在流失客户,让企业适时把握住市场及客户动态,掌握客户流失的规律。
三、 算法简介
3.1分类分析
分类就是出一个类别的概念描述,它代表了这类数据的整体信息,即该类的内涵描述,并用这种描述来构建模型,一般用规则或决策树模式表示。分类是数据挖掘的主要方法,分类模型能很好地拟合训练样本集中属性集与类别之间的关系,也可以预测一个新样本属于哪一类。分类技术已经在很多领域得到成功应用,如医疗诊断,客户流失预测,信用度分析,客户分和侦测。常见的分类方法有贝叶斯分类(Bayesian),神经网络(neural networ
ks),遗传算法(genetic algorithms)和决策树分类器(decision trees)。在这些分类方法中,决策树分类器在大规模的数据挖掘环境中已经获得了最为广泛的应用。
3.2决策树演算法
决策树演算法是在进行数据挖掘时经常使用的分类和预测方法。
一个决策树的架构,是由三个部分所组成:叶节点 (Leaf Node)、决策节点 (Decision nodes) 以及分支 。决策树演算法的基本原理为:通过演算法中所规定的分类条件对于整体数据进行分类,产生一个决策节点,并持续依照演算法规则分类,直到数据无法再分类为止。
3.3决策树演算法的比较
决策树演算法依据其演算原理以及可适用分析数据类型的不同延伸出多种决策树演算法。在 IBM SPSS Modeler 中,主要提供了四种常用的决策树演算法供使用者选择,分别为:C5.0、CHAID、QUEST 以及 C&R Tree 四种。使用者可依据数据类型以及分析需求的不同,选择适当的决策树演算法进行分析。虽然不同的决策树演算法有各自适用的数据类型以及演算架构等差异,但概括来说,决策树的主要原理均为通过演算法所定义的规则,对数据
进行分类,以建立决策树。鉴于篇幅所限,以下部分将会针对这四类决策树演算法进行简单的介绍和比较,而详细演算法原理将不会在本文中详述。
3.4决策树的几大优点
第一, 与神经网络和贝叶斯分类器相比,决策树提供非常直观的描述,这种描述易于被吸收,转化为标准的数据库查询
第二, 训练神经网络模型时要花费大量的时间,要进行大量的重复操作,与之相比决策树效率要高很多,适合于大的训练集。
第三, 决策树生成算法除了训练集中包含的信息外不需要附加的信息(即领域知识或类标签以前的分布情况)。
第四, 决策树有着可比的或更高的准确率。
在使用决策树演算法进行分析之前,首要工作就是选择适当的演算法。一般来说,会根据所要分析数据的特性以及数据型态等选择初步的演算法。接下来再通过比较初步筛选的决策树分析出来的结果,选择最适合的决策树演算法。
四、 实验与分析
4.1 数据准备
数据来源:电信客户流失数据.sav(共有8个字段,1000个记录)
数据有8个字段,其中包含一些客户个人信息,例如年龄、教育程度、退休、性别和客户类别,?还包含一些客户使用电信服务信息(有附加服务、基本服务、上网服务和所有服务)以及客户的上网月数,(这里老师我不会把sav格式转换成xlsx格式的,所以用的还是原来的那个1000个记录的,(但是我把样本抽样选择了前200了,由于我用前200的样本数据进行数据挖掘,发现挖掘出来的结果完全失去了真实性,与现实不符合,所以我还是将数据样本量改成了1000了,为了保证我做出数据挖掘预测结果的真实性)因为我不能将数据修改,所以下面我使用了分区将数据分为训练,测试以及验证,为了展示预测数据的结果)
以下为部分数据的截图:
4.2 参数设置
目标变量表示了数据挖掘的目标,在客户流失分析中目标变量通常为客户流失状态(churn)。
输入变量用于在建模时作为自变量寻与目标变量之间的关联。我们主要从客户种类信息,客户在网月数信息,客户基本信息(年龄,性别,教育水平,家庭人数等),客户的工作年限信息,客户的退休信息这几方面选取输入变量。
4.3 挖掘过程
4.3.1 读取数据
SPSS Modeler 中需要根据数据档案格式,来选择不同的源节点读取数据。本篇文章中我们使用的数据档案格式为 .sav 档,因此我们将使用Statistics文件节点。在节点设定方面,文件标签下我们先读入数据“电信客户流失数据.sav”,接着勾选读取名称和标签以及读取数据和标签。(以下为读取数据截图)
4.3.2 数据类型定义
为了产生决策树模型,我需要在数据建模前就定义好各栏位的角,也就是加入字段选项下的「类型」节点。将类型节点拉入串流后,我会先点选读取值按钮,接着设定角。是否流失(churn)是我最后预测的目标,因此先将其角设定为“目标”,余下的栏位则是要设定为“输入”。
4.3.3数据分区
为了在训练出模型后能够分析模型准确度,在此我加入字段选项下的分区节点,将数据分为 50%训练数据、40%测试数据以及10%验证数据。在分区节点的编辑页中,点选预览可发现每笔数据已经多出了一个栏位「分区」,栏位中的值被随机归类为「1_训练」、「2_测试」以及「3_验证」,让决策树节点可判别是否要使用此资料做为训练数据,测试数据以及验证数据。在完成资料分区后,我已经完成数据准备,可以套用决策树模型节点了。
4.3.4 决策树节点设定
SPSS Modeler 共提供四种决策树节点建模,包括 C5.0、C&R 树、Quest 和 CHAID。考量到数据特性以及我希望提供的决策树具有多元分类法,因此我将建立 C5.0 和 CHAID 两种分类模型。
(1)C5.0 节点设定
将 C5.0 节点与类型节点连结后,我将于此节点编辑页面中的模型标签下设定相关的变数。以下为各变数的详细介绍,此定义来自SPSS Modeler 15 Modeling Nodes 文件。
使用分区数据:如果定义了分区字段,则此选项可确保仅训练分区的数据用于构建模型。
为每个分割构建模型:给指定为分割字段的输入字段的每个可能值构建一个单独模型。
输出类型:在此指定希望结果模型块是决策树还是规则集。
组符号:如果选中此选项,C5.0 将试图组合输出字段中具有相似样式的符号值。如果未选中此选项,C5.0 将为用于分割父节点的符号字段的每个值创建一个子节点。
使用 boosting:C5.0 算法有一个特殊的方法用于提高其准确率,称为 boosting。它的工作原理是在序列中构建多个模型。第一个模型按常规方式进行构建。构建第二个模型时,将焦点集中于由第一个模型误分类的记录。构建第三个模型时,将焦点集中于第二个模型的错误,依此类推。最后,通过将整个模型集应用到观测值,并使用加权投票过程将单独的预测
组合为一个总预测来分类观测值。推进可以显着提高 C5.0 模型的准确性,但也需要更长的训练时间。通过试验次数选项可以控制在推进模型过程中使用的模型数目。
交互验证:如果选中此选项,C5.0 将使用一组模型(根据训练数据的子集构建)来估计某个模型(根据全部数据集构建)的准确性。
专家模式- 修剪严重性: 确定对决策树或规则集的修剪程度。增加该值可获得一个更简洁的小型树。减小该值可获得一个更精确的树。
专家模式- 每个子分支的最小记录数:可使用子组的大小限制树的任何分支中的分割数。仅当两个或多个生成的子分支中至少包含从训练集合得到的这一最小记录数时,才可分割树的分支。默认值为 2。
(以下为创建C5.0节点的截图)
(2)CHAID 节点设定
将 CHAID 节点与分区节点连结后,我将于此节点编辑页面中的模型标签下设定相关的变数。
由于 CHAID 节点设定较多,介绍一些变数。此定义来自“SPSS Modeler 15 Modeling Nodes 文件”。
最大树深度:指定根节点以下的最大级数(递归分割样本的次数)。
电信上网时间查询修剪树以防止过拟合:修剪包括删除对于树的精确性没有显着贡献的底层分割。修剪有助于简化树,使树更容易被理解,在某些情况下还可提高广义性。
停止规则:设置最小分支大小可阻止通过分割创建非常小的子组。如果节点(父)中要分割的记录数小于指定值,则父分支中的最小记录数 将阻止进行分割。如果由分割创建的任意分支(子)中的记录数小于指定值,则 子分支中的最小记录数 将阻止进行分割。
(以下为创建CHAID节点的截图)
(3)C&R树节点设定
将 C&R树 节点与分区节点连结后,我将于此节点编辑页面中的模型标签下设定相关的变数。由于 C&R树节点设定较多,介绍一些变数。此定义来自“SPSS Modeler 15 Modeling Nodes 文件”。
修剪树以防止过拟合:修剪包括删除对于树的精确性没有显着贡献的底层分割。修剪有 助于简化树,使树更容易被理解,在某些情况下还可提高广义性。如果需要完整的未经 修剪的树,请保持此项处于未选中状态。 ?
大风险差值(标准误):通过此选项可指定更自由的修剪规则。标准误规则使算法 能够选择简单的树,该树的风险评估接近于(但也可能大于)风险小的子树 的风险评估。此值表示在风险评估中已修剪树和风险小的树之间所允许的风险 评估差异大小。例如,如果指定 2,则将选择其风险评估(2 × 标准误)大于完 整树的风险评估的树。
大代用项:代用项是用于处理缺失值的方法。对于树中的每个分割,算法都会对 与选定的分割字段相似的输入字段进行识别。这些被识别的字段就是该分割的代用 项。当必须对某个记录进行分类,但此记录中的分割字段中具有缺失值时,可以使用 代用项字段的值填补此分割。增加此设置将可以更加灵活地处理缺失值,但也会导致 内存使用量和训练时间增加。
(以下为创建C&R树节点的截图)
4.4 结果展示
生成决策树模型
决策树节点设定完成后,点击主工具列的运行当前流前即可看到三个决策树模型的产生。双击决策树模型则可看到模型结果,而我们最主要要观察的是模型标签及查看器标签下的内容。模型标签内容如图所示,左栏位使用文字树状展开,表现每一阶层的分类状况及目标变数的模式;右栏位则是整体模型预测变量的重要性比较。我也将会根据变量重要性调整模型设定、变数选择,持续的训练出较佳的模型。查看器标签则是将一样的决策树结果用树状图的方式展现。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论