如何将机器学习与灵敏性分析相结合来制定业务策略?
作者头像
  • 悦普达
  • 2019-12-17 16:44:30 6

企业在制定商业策略时,经常借助机器学习(ML)来辅助决策。然而,在大多数情况下,机器学习系统提供的预测和业务决策仍需要人类的直觉来进行最终判断。

本文将展示如何将机器学习与灵敏性分析相结合,以制定数据驱动的商业策略。本文主要探讨客户流失问题,同时涵盖了在应用基于机器学习的分析时常见的挑战。这些挑战包括处理不完整和不平衡的数据、选择模型以及评估这些选择对潜在影响的量化。

具体来说,我利用机器学习识别出可能流失的客户,然后结合方案分析,提出定量和定性的建议。这样,企业可以根据这些结果制定相应的战略和战术决策,以减少未来的客户流失。这一案例展示了数据科学实践中常见的几个问题,如: - 信噪比较低,导致特征与流失率之间的关系不够明确; - 数据集高度不平衡(90%的客户并未流失); - 使用概率预测和调整,以最小化对客户流失问题过度投资的风险。

整个解决方案可以在Amazon SageMaker中实现,也可以在Amazon EC2上单独部署。

在这个场景中,我考虑了一家提供多种产品的虚拟公司。我们将这两种主要产品分别命名为产品A和产品B。尽管我对这家公司的产品和客户信息知之甚少,但该公司最近发现客户流失现象有所增加。数据集包含了数千名客户的各种属性信息,这些信息在几个月内收集和整理而成。有些客户已经流失,有些尚未流失。通过特定的客户列表,我们可以预测每个人流失的可能性。在此过程中,我们试图回答几个关键问题:我们能否构建一个可靠的客户流失预测模型?哪些变量可以解释客户流失的可能性?公司可以采取哪些策略来减少客户流失?

本文将介绍以下步骤,以创建减少客户流失的策略:

1. 数据探索和特征工程

首先,我将展示如何通过查看各个输入特征与客户流失标签之间的简单关联来探索客户数据。此外,我还将研究特征之间的关联(称为互相关或协方差)。这有助于做出算法决策,特别是确定哪些特征需要衍生、修改或删除。

2. 构建机器学习模型

接下来,我构建了多个机器学习算法,包括自动特征选择,并结合了多个模型以提高性能。

3. 评估和完善机器学习模型

在第三部分,我测试了不同模型的性能。从中,我确定了一种决策机制,可以将高估客户流失数量的风险降至最低。

4. 将机器学习应用于业务策略

最后,在第四部分,我将使用机器学习的结果来了解影响客户流失的因素,进行特征选择,并量化评估这些选择对客户流失率的影响。通过执行灵敏性分析,我调整了一些在现实生活中可控的因素(如折扣率),并预测了针对这些因素的不同值所对应的客户流失率的变化。所有预测都基于第三部分中确定的最佳机器学习模型。

数据探索与特征工程

在开发机器学习模型的过程中,经常会遇到一些关键问题,包括数据中的共线和低方差特征、异常值的存在以及数据缺失的问题。本节将介绍如何使用Amazon SageMaker在Python 3.4中处理这些问题。(我还在Amazon EC2实例上通过深度学习AMI评估了独立代码,两种方法都可以使用。)

带有时间戳的数据在某些目标中可能包含重要的模式。我将这些目标分为每日、每周和每月的细分,从而开发出新的特征来说明目标的动态特性。

接着,我研究了原始特征和新特征之间每个简单的单一关联和关联度量。我还研究了特征与客户流失标签之间的相关性。

对于低方差特征(即当流失标签变化时几乎不改变的特征),可以通过使用边际相关性和Hamming/Jaccard距离来处理,如下表所示。Hamming/Jaccard距离是一种专门用于二元结果的相似性度量。这些指标提供了一个视角,即每个特征对客户流失提供了多少信息。

去除低方差特征是一个好习惯,因为无论要预测什么,它们都不会发生显著变化。因此,它们的存在无助于分析,实际上还会降低学习过程的效率。

下表显示了特征与客户流失之间的最高相关性和二进制差异。仅显示了48个原始特征和衍生特征中最重要的特征。“过滤”列包含在处理异常值和缺失值后获得的结果。

上表的主要结论是,三个销售渠道似乎与客户流失呈反比关系,且与客户流失的大多数边际相关性较低(≤0.1)。使用过滤器处理异常值和缺失值会改善边际相关性的统计显著性。上表右侧的列描述了这种效果。

共线特征的问题可以通过计算所有特征之间的协方差矩阵来解决,如下图所示。该矩阵提供了识别某些特征冗余度的新视角。去除冗余特征是一个好习惯,因为它们会导致偏差并增加计算量,从而降低学习过程的效率。

上图左侧显示了一些特征(如价格和某些预测目标)具有共线性,其中ρ> 0.95。在设计下一部分中描述的机器学习模型时,我保留了其中一个特征,这给我留下了约30个特征,如上图右侧所示。

缺失和异常数据的问题通常通过经验规则来处理,例如在缺少某些记录数据值或它们超过样本标准差的三倍时删除观察值(客户)。

由于数据缺失是一种常见问题,您可以使用样本或总体的均值或中位数来估算缺失值,作为删除观察值的替代方案。这就是我在这里所做的:我删除了缺失超过40%的特征,并将剩余每个特征的缺失值替换为中位数。读者应注意,一种更高级的、基于理论的缺失数据填补方法是训练一个基于其他特征的监督学习模型,但这可能需要大量工作,因此在此不予讨论。当我在数据中遇到异常值时,我删除了那些数值超过均值六倍标准差的客户。总共删除了16096个观察结果中的140个(0.5的值对应一个类别,而p值小于0.05被视为显著)。

    本文来源:图灵汇
责任编辑: : 悦普达
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
灵敏性制定结合机器策略业务分析如何学习
    下一篇