写点什么

如何使用机器学习,预测客户流失率,轻松实现客户精准维护

  • 2024-12-11
    上海
  • 本文字数:2234 字

    阅读完需:约 7 分钟

本文以 Altair 的企业级人工智能和数据分析平台 RapidMiner 作为主要工具,分享机器学习模型具体案例。


01、案例说明


最经典的机器学习模型,就是监督学习(Supervised Learning)中的分类模型。


本文使用的是一个电信公司的案例,通过客户的基本资料和一些简单的互动信息,建立一个模型,以预测哪些客户有较高的可能性流失,从而进行补救。


因为研究显示得到一个新客户的成本是维持一个老客户的 7 倍,并且通过和老客户维持良好的关系之后,有更多的机会得到老客户的推荐而产生新客户,所以对于任何的企业,掌握客户何时可能会流失,而及早的提出补救做法,对于企业是非常必要和关键的,这个流程如下图所示:



02、数据资料


首先我们分析数据,共有 9990 笔的数据。包括了客户所使用的电信种类、客户年纪、客户开始时间、联络记录、以及客户的平均账单金额。这边所使用的流失指标,可能是通过其他模型或是人工的方式给予标识,我们使用这个作为我们的指标,来预测客户的流失可能性。


03、操作流程


Step1 读入数据

这里使用了一个简单的读入数据的算子,但是不要先急着开始做数据的模型,应该先对数据做一个全面的了解,包括数据的质量(有没有缺失?合不合理?)、种类(多项式?整数?)以及关联性等等,如下图所示:



通过这个观察,我们就可以看到一些简单的问题。流失指标并不能作为一个分类的目标值,而其目标必须是一个二项式(Binomial)的数值,所以这个部分需要在数据整理之中进行处理,或者是有些人的年纪是 1 岁,这个可能是录入的错误,这个时候要做判断哪些是合理的数据或不是,从而进行处理。


同时也应该做一些简单的数据分析,大概理解数据的基本性质,这样可以更有效地对模型进行一个直观的判断。通常都是对于数据进行直观的图形了解,要使用何种图形则可以依照不同的目的来了解。例如我们可以通过对于不同属性和目标值的关系,大概掌握一些特性,如下图所示:



但是这个只是一个分法,其真正的作用,是在之后到第二阶段,我们将其和心理特征解惑之后,就可以看出其强大的能力。


通过这个图形我们就可以发现数据里面的一些性质,可以很清楚的看得出来流失的机会和账单金额只有一定关系,这个就给你一个基本的信息,而在最后的模型之中,这个特质必须被反应出来。


在这个数据理解的过程中,如果发现属性和属性之间,或是属性和目标值之间的关联性,更应该进行关联性分析(也有算子来做这个处理)。如果关联系数太大,则要考虑是否应该将其排除,避免模型的效率低下或是模型的偏差。


Step2 数据整理

在这个步骤,我们基本上就处理之前所提到的问题。首先第一个是告诉系统何者是目标值(ChunIndicator);第二个是为了要决定哪些客户有流失的机会,我们将流失指标值从实数的数值属性转换为二项式数值的属性。在这个操作里面,注意到这个是通过人工的判断,将 0 到 0.5 的数值作为客户不会转换的标准,超过 0.5 就认为客户有可能会流失,把它标识为可能流失客户。如果更有信心,这个数值也可以定成其他的标准,如下图所示:



这个步骤就是我们一般典型的所谓 ETL 的过程。当然还可以有很多别的操作,让数据变得更为有效和模型更为准确,在这个里面我们就不个别叙述。


Step3: 模型建立/检验

这里我们使用的是交叉检验的子程序,如果打开可以看到其中的操作过程。如同前面讲过,交叉检验是将数据分为数个等份(系统缺省值是 10),利用不同的数据抽样,对于模型进行更严格的校准,所以这个是通常在 RM 模型建立中会最为常用的方式,如下图所示:


这里需要特别注意的是,因为在原始数据中流失的客户与不会流失的客户比例事实上是不平衡的(21:9969),也就是说单方面的比例远远大于另外一方,这个对于最后的结果,会造成一定的模型偏差,所以在这边我们做了一个抽样的方式,将结果分为 2 个较为平衡的数据,来进行模型的建立。特别注意的是,因为这个抽样的算子是在交叉检验的模型里面,所以每一次的数据数量只有原来的 1/10,而在通过抽样之后,因为指定目标值的(1:0.02)比例,所以可以看得出来比 1/10 的数据量还要再减少。大家可以仔细的研究一下其中的数目,会给大家更有深入的理解,如下图所示:



之后的操作就比较直观,通过使用决策树的方式建立模型。右边的部分则是使用这个模型来对其测试的数据(原来的 1/10)进行检验,并且将检验的结果输出。请注意这边的算子,必须使用正确的算子(Binomial)这样才不会造成错误。


04、结果说明


最后的结果是三个图,第一个是混淆矩阵,这个告诉我们模型的准确度以及相关资料,其整体的准确度很高(98.52%+/-0.58%),是一个非常好的结果。


另外一个是决策树模型本身,这边可以检验在之前数据理解的步骤中,我们观察到账单和流失的关系,的确是表现在其第一个节点,所以我们对于这个模型也是比较有信心的。第三个是检验的结果一并输出,这样可以理解混淆矩阵的来源 (计算方式),三张图如下所示:


混淆矩阵验


​决策树模型本身


​检验的结果


以这个案例,我们就可以建立一个很清楚的模型来判断客户的可能流失程度。



Altair 是计算智能领域的全球领导者之一,在仿真、高性能计算 (HPC) 和人工智能等领域提供软件和云解决方案。Altair 能使跨越广泛行业的企业们在连接的世界中更高效地竞争,并创造更可持续的未来。Altair 服务于 16000 多家全球企业,应用行业包括汽车、消费电子、航空航天、能源、机车车辆、造船、国防军工、金融、零售等。

欲了解更多信息,欢迎访问公众号:Altair 澳汰尔

如您对 企业级人工智能和数据分析平台 Altair RapidMiner 感兴趣,欢迎点击链接免费申请部分软件试用。

用户头像

Altair 带您走进数据分析的世界-RapidMiner 2024-05-27 加入

Altair 是计算科学和人工智能领域的全球领导者之一, Altair RapidMiner在数据分析和人工智能 (AI) 领域提供软件和云解决方案,致力于帮助企业快速提升数据分析效率,创造数据价值。

评论

发布
暂无评论
如何使用机器学习,预测客户流失率,轻松实现客户精准维护_人工智能_Altair RapidMiner_InfoQ写作社区