作者 | Jeremy Curuksu编译 | CDA数据分析师
数不清的企业通常使用机器学习(ML)来辅助决策。但是,在大多数情况下,机器学习系统做出的预测和业务决策仍然需要人类用户的直觉来做出判断。
在本文中,我将展示如何将ML与灵敏性分析结合起来以开发数据驱动的业务策略。这篇文章重点关注客户流失,同时涵盖了使用基于ML的分析时经常出现的问题。这些问题包括处理不完整和不平衡的数据,推导模型选择以及定量评估这些选择的潜在影响方面的困难。
具体来说,我使用ML识别可能流失的客户,然后将特征重要性与方案分析结合使用以得出定量和定性的建议。然后,组织可以使用结果来做出适当的战略和战术决策,以减少未来的客户流失。该用例说明了数据科学实践中出现的几个常见问题,例如:
端到端实施代码可在Amazon SageMaker中使用,也可以在Amazon EC2上独立使用。
在这种用例中,我考虑一家提供不同类型产品的虚构公司。我将其两个主要产品称为产品A和B。我仅了解有关该公司产品和客户的部分信息。该公司最近发现客户流失有所增加。数据集包含有关数以千计的客户的不同属性的信息,这些信息是在几个月内收集和分类的。这些客户中有一些已经流失了,有些还没有。通过使用特定客户列表,我将预测任何一个人流失的可能性。在此过程中,我尝试回答几个问题:我们能否创建一个可靠的客户流失预测模型?哪些变量可以解释客户流失的可能性?公司可以采取哪些策略来减少客户流失?
这篇文章将介绍使用ML模型创建减少客户流失策略的以下步骤:
1. 探索数据和设计新功能
我首先介绍如何通过查看各个输入要素与客户流失标签之间的简单关联来探索客户数据。我还研究了特征之间的关联(称为互相关或协方差)。这使我能够做出算法决策,尤其是确定那些特征需要派生,更改或删除。
2. 开发一组ML模型
然后,我建立了多个机器学习算法,包括自动特征选择,并结合了多个模型来提高性能。
3. 评估和完善ML模型的性能
在第三部分中,我测试了我开发的不同模型的性能。从这里,我确定了一种决策机制,该机制可以将高估客户流失数量的风险降到最低。
4. 将ML模型应用于业务策略设计
最后,在第四部分中,我将使用ML结果来了解影响客户流失的因素,得出特征选择并量化评估这些选择对客户流失率的影响。我通过执行灵敏性分析来做到这一点,在该分析中,我修改了在现实生活中可以控制的一些因素(例如折现率),并预测了针对该控制因素的不同值预期的客户流失率的相应降低幅度。所有预测都将使用第3节中确定的最佳ML模型进行。
在ML模型开发期间经常出现问题的关键问题包括输入数据中共线和低方差特征的存在,离群值的存在以及数据的丢失(缺少特征和某些特征的值)。本节介绍如何使用Amazon SageMaker处理Python 3.4中的每个问题。(我还通过深度学习AMI在Amazon EC2实例上评估了独立代码。两者都可用。)
这种带有时间戳的数据可以在某些指标内包含重要的模式。我将这些指标分为每日,每周和每月的细分,这使我能够开发新功能来说明指标的动态性质。
然后,我研究原始特征和新特征之间每个简单的一对一(也称为边际)关联和关联度量。我还研究了特征与客户流失标签之间的相关性。(请参见下图)。
可以通过使用边际相关和Hamming / Jaccard距离来处理低方差特征(当流失标签更改时不会显着变化的特征),如下表所示。Hamming / Jaccard距离是专门为二进制结果设计的相似性度量。这些措施提供了一个观点,即每个特征对客户流失提供了多大程度的信息。
删除低方差特征是个好习惯,因为无论是要预测什么,它们都不会发生明显变化。因此,它们的存在不能帮助进行分析,并且实际上会使学习过程效率降低。
下表显示了特征和客户流失之间的最高相关性和二进制差异。48个原始特征和派生特征中仅显示最重要的特征。“ Filtered“列包含对异常值和缺失值进行数据过滤时获得的结果。
上表的主要结论是,三个销售渠道似乎与客户流失成反比,并且与客户流失的大多数边际相关性很小(≤0.1)。对异常值和缺失值应用过滤器会改善边际相关的统计显着性。上表的右列描述了这种效果。
共线特征的问题可以通过计算所有特征之间的协方差矩阵来解决,如下图所示。该矩阵为判断某些特征具有的冗余量提供了新的角度。删除冗余特征是一个好习惯,因为它们会产生偏差并需要更多的计算量,这会使学习过程效率降低。
上图中的左图表示某些特征(例如价格和某些预测指标)是共线的,其中ρ> 0.95。设计下一节中描述的ML模型时,我只保留了其中的一个,这给了我留下了大约30个特征,如上图中的右图所示。
缺失和异常数据的问题通常通过经验规则来处理,例如在缺少某些记录数据值或它们超过样本标准差的三倍时删除观察值(客户)。
由于数据缺失是一种常见的问题,你可以使用样本或总体的均值或中位数来估算缺失值,作为删除观测值的替代方案。那就是我在这里所做的:我删除了缺失超过40%以上的特征,并将剩下每个特征的缺失值替换为中位数。读者应注意,一种更高级的,最佳实践的缺失数据填补方法是训练一种基于其他特征的监督学习模型,但是这可能需要大量的工作,因此在此不做介绍。当我在数据中遇到异常值时,我删除了那些数值超过均值六倍标准差的客户。总共删除了16096个观察结果中的140个(<1%)。
在本节中,我将开发和组合多个ML模型以利用多种ML算法的功能。集成建模还可以使用整个数据集中的信息,即使流失标签的分布高度不平衡,如以下流程图所示。
作为删除低方差特征的一种很好的做法,我通过应用一个快速简单的方差过滤器进一步将特征空间限制为最重要的特征。此过滤器会删除对95%的客户不显示差异的特征。为了根据特征对客户流失的综合影响(而不是边际影响)筛选特征,我使用了带有逐步回归的网格搜索,进行了基于ML的特征选择。请参阅下一节的详细信息。
在实现ML模型之前,我将数据随机分为两组,并确定了30%的测试集。就像在下一节中讨论的那样,我还在70%/30%拆分的基础上使用了10倍交叉验证。K-folding是一个迭代周期,可以对K个评估的平均性能进行平均,每个测试都针对单独的K%保留数据集。
分别训练了三种ML算法(逻辑回归,支持向量机和随机森林),然后将它们组合在一起,如前面的流程图所示。集成方法在文献中称为”软投票”,因为它采用了不同模型的平均概率并将其用于客户分类(在前面的流程图中也可以看到)。
客户流失率仅占数据的10%;因此,数据集是不平衡的。我测试了两种解决类别不平衡的方法。
对于这两种方法,在测试集上考虑实际情况而保持类的不平衡来评估模型性能。
在本节中,我测试了上一节中开发的不同模型的性能。然后,我确定了一种决策机制,该机制最大程度地降低了高估可能流失的客户数量的风险(称为误报率)。
在ML性能评估中经常使用所谓的接收算子特性(ROC)曲线来补充列联表。当更改概率阈值以推断正类别和负类别(在此项目中,分别为流失类和非流失类)时,ROC曲线提供了准确性的不变度量。它涉及绘制所有准确的阳性预测(真阳性)与假阳性的图表。请参阅下表。
默认情况下,将对不同ML模型预测的概率进行校准,以使p> 0.5的值对应一个类别,而p <0.5的值对应另一类别。此阈值是一个超参数,可以对其进行微调以最大程度地减少一类的错误分类。这是以增加另一种错误分类为代价的,这会影响不同性能指标的准确性和精确度。相比之下,ROC曲线下的面积是性能的不变度量,在任何阈值下都保持不变。
下表描述了使用稀有类9倍训练总体的不同ML模型的性能。您可以看到随机森林具有最佳性能,并且9倍总体的综合性更好,ROC AUC得分为0.68。这个模型是表现最好的。
下图描述了整体最佳模型的表现(9倍总体的随机森林模型)以及对精度和误差的优化。当使用概率阈值0.5时,最好的结果可以准确预测69%的流失客户。
查看ROC曲线,您可以看到同一模型可以准确预测30%的客户流失,而将非流失客户预测为流失客户的概率为10%。使用网格搜索,我发现阈值为p = 0.56。如果您想最大程度地减少高估会流失客户数量的风险(例如,由于我们为保留这些客户而进行的活动可能会成本很高),则可能要使用此模型。
在本节中,我将使用我开发的ML模型来更好地理解影响客户流失的因素,得出减少流失的特征选择,并评估这些选择可能对流失率产生的影响。
考虑到特征对客户流失的综合影响,我使用了逐步逻辑回归来评估特征的重要性。如下图所示,回归确定了12个关键特征。当我在回归模型中包含这12个特征时,预测得分最高。
在这12个因素中,净利润率,产品A和产品B的预计购买量以及多个产品客户的指标是最容易引起客户流失的特征。减少客户流失的因素包括三个销售渠道,一个营销活动,折扣价值,总体订购额,客户忠诚度以及购买的产品总数。
因此,向最易流失的客户提供折扣似乎是一种简单有效的策略。当然还有其他战略手段,包括增强A和B以外的产品,销售渠道1-3,营销活动和长期合同之间的协同作用。根据数据,利用这些手段可能会减少客户流失。
最后,我使用了灵敏性分析:我对ML模型确定为可能流失的客户应用了高达40%的折扣,然后重新运行该模型以评估合并了折扣后预计会有多少客户流失。
当我将模型的p阈值设置为0.6以使损失最小化至10%时,我的分析预测20%的折扣会减少25%的客户流失。假设在此阈值下的真阳率约为30%,这个分析表明采用20%的折扣方法可以消除至少8%的客户流失。有关详细信息,请参见下图。折扣策略是遇到客户流失的企业可以考虑采取的缓解问题的简单的第一步。
在这篇文章中,我演示了如何执行以下操作:
在这个特定的用例中,我开发了一个模型,该模型可以识别30%可能流失的客户,而将假正率限制为10%。这项研究支持在服务和销售渠道之间建立协同作用以保留更多客户的基础上,部署提供折扣的短期策略和制定长期战略的有效性。
数据分析咨询请扫描二维码
CDA数据分析师在中国航信高科技产业园进行了面向测试度量的数据分析培训课程,培训人数近2 ...
2024-05-01CDA数据分析师走进深圳迈瑞生物医疗电子股份有限公司,在迈瑞总部展开了为期两天的培训,本次课程参训人员线上及线下近百人, ...
2024-05-01CDA数据分析师在合肥市对合肥阳光新能源科技有限公司开展了为期8天的企业内训。 合肥阳光新能源科技 ...
2024-05-01CDA数据分析师走进海尔大学,进行了《数据治理与数据中台建设的道与术》专题培训,培训现场爆满,近百人参加了此次培训。 ...
2024-05-01在中国银行苏州分行培训中心开始数据分析师培训,此次培训课程共10天内容,包括Excel、MySQL、概率论与数理统计、SPSS等内容, ...
2024-05-01从实际的业务需求出发,结合行业的典型应用特点,围绕实际的商业问题,探讨数据挖掘、机器学习模型在金融领域的应用,包括获客、信用评分、细分画像、交叉销售、反欺诈、违规识别、时序预测、运筹优化、流程挖掘九个方面,形成 ...
2024-05-01本次培训课程为线上+线下的模式,由于学员编程能力不一、部分学员没有编程基础,故提供统计学、python基 ...
2024-05-01华夏银行信用卡中心-机器学习培训 1、课程亮点 取材于业界一流企业和顶级咨询公司的行业实践;已经被证明是人人 ...
2024-05-01主 题:数据中台建设及数据分析应用主题分享 1. 数据中台市场洞察 2. 主流数据中台产品比较 3. 某企业数据中 ...
2024-05-01围绕“数据驱动”战略,全力打造我行 300 人数字化人才梯队,着力培养数字化管理人才、大数据专业团队 ...
2024-05-01在当今数据驱动的商业环境中,数据分析成为了企业决策的重要依据。通过对大量数据的收集、处理和分析,企业能够更好地理解市场 ...
2024-04-29在人工智能(AI)的世界里,提示词(Prompt)是一种强大的工具,它能够引导AI按照用户的需求产生特定的输出。本文将深入探讨AI ...
2024-04-29CDA立足未来职场,拓展前沿视野——对外经贸大学保险学院举办“三全育人大讲堂”分享行业最新动态。 ...
2024-04-294月2日,CDA数据分析师创始发起人兼协会理事长赵坚毅博士受邀在浙江万里学院举办了一场以“数字化能力在职场中的作用” ...
2024-04-29随机森林(Random Forests)现在机器学习中比较火的一个算法,是一种基于Bagging的集成学习方法,能够很好地处理分类和回归的问 ...
2022-12-23方差分析是数据分析中常用的一种统计分析方法,接下来让我们简单了解一下方差分析的基本思想和原理吧。 方差分析(Analysis ...
2022-12-23来源:关于数据分析与可视化 关于streamlit-aggrid 数据排序 表格样式的调整 数据 ...
2022-08-03作者:麦叔 定义 「把上面晦涩的概念汇成一句话就是:」 ❝ 回调函数就是一个被作为参 ...
2022-08-03现今,高学历人群日益增多,物以稀为贵的高学历光环淡去。无论本科生还是研究生,甚至博士生,求职竞争力都大不如前,就业压力越来越大。
2022-06-01某家企业10个人面试,有9个本科生……如何脱颖而出,除得体的举止和良好的沟通力外,证书成重要筹码,这也是很多人考证的关键所在。
2022-04-14