营销增益模型实战-Uplift Model原理及应用

营销增益模型实战-Uplift Model原理及应用

一句话总结Uplift Model:是使用用户分群的方法对用户进行精细化运营的一种手段

<一>、什么是提升模型 - Uplift Model

传统的倾向性模型 propensity model 用来解决以下问题:

  • 客户将来有多大可能购买?


而更先进的提升模型 Uplift Model 则用来回答以下更重要的问题:

  • 广告是否促使用户产生了消费意愿?
  • 有没有把钱浪费在广告上给那些已经打算从我这里购买的客户?
  • 广告是否使某些人购买的意愿降低(负面影响)?

换句话说,经典倾向模型(和大多数机器学习算法)在给定特征(x)的情况下预测目标(y)。提升模型目的在解决给定特征(x)的治疗(t)对目标(y)的影响。

通常使用四个客户群来解释提升模型(Siegel 2011):

Uplift Model将用户分为以下四个类型:

  1. 不管是否看广告都会买什么的人(Sure Things)
  2. 仅在有广告的情况下才购买的人(Persuadables)
  3. 无论如何都不买的人(Lost Causes)
  4. 本来买,但是看了广告后不买的人(Sleeping Dogs)

倾向性模型预测了用户转化的可能性。 提升模型可进一步细分用户,使得广告及策略精准的作用在Persuadables部分用户上,提升策略的效率及ROI


<二>、Uplift模型的应用场景

如何将其应用于任何业务部门或行业?

政治运动:

提升模型已被用来识别那些政治立场摇摆不定的选民(Stedman 2013)。通过利用提升模型,政治营销可以避免推送给对立方的支持者,而只专注于Persuadables部分。

新的治疗方案:

Uplift Model不仅能评估整个治疗组和对照组的结果,还可以了解治疗对不同组的不同影响,及影响的具体差异。

交叉销售:

因为预算有限,有些人可能不需要或想要其他产品。并且假设他们不希望对整个客户群进行交叉销售。这时公司可以使用Uplift 模型精确的筛选用户群,进行更精准的交叉销售广告活动。

留存:

公司希望与将要流失并保存他们的客户接触,但他们不希望在与的活跃期发送营销内容骚扰客户,只专注于高流失风险的客户群,这时就可以使用Uplift模型

用户体验测试:

公司想了解网站或应用程序的更改是否导致了预期的结果。


<三>、Uplift模型常见实现方式

在快速发展中,Uplift形成了三种主要的实现方式

传统倾向模型

这实际上不是Uplift模型,但由于它是解决Uplift问题的经典方法,因此需要包括在内。该算法通常是类似于逻辑回归的分类器。这些算法输出0到1的概率,用于对受众进行分类。然后选择一个阈值(可能为.70或更高)作为用户分群的临界值。

Uplift模型

此方法可以直接对治疗效果进行建模。它要求对随机森林这样的算法进行重新设计,以实现特征选择,超参数调整,并适合解决给定(x)的(t)对(y)的影响等功能。但是目前Scikit-learn里的随即森林无法实现上述功能。需要使用软件包R for Up和Python CausalML来实现对应的提升树。

元学习

Meta-learners是对经典Uplift模型的魔改产物。在这个领域又有很多基于不同算法的技术,通常是用于提升Uplift模型的准确性和性能。

<四>、提升模型的当前挑战

1、数据的真实性

在Uplift模型中,没有真实的对照组,因为个人既看不见又看不见广告。所以我们只能使用因果推理可以模拟未发生的情况

由于没有真实的对照组,因此我们很难衡量真实的效果。通常我们只能通过对比预测值与实际值来检查模型的预测效果。

为了尽可能模拟对照组,我们可以生成合成数据,这种数据的优势在于,可以更清晰地评估不同的技术的效果。但是,合成数据毕竟不是真实数据,还是可能存在较大的误差

2、没有专门为Uplift模型设计的算法包

目前的算法包虽然可以直接使用,但速度慢,定制性差

3、Uplift技术在业界缺乏共识

由于Uplift模型还未被广泛使用,业界对于该技术的定义混乱,每个领域甚至每个公司都会有自己的魔改版本,甚至连该方法的名称都没有得到统一,举几个常见的例子:

  • Estimating heterogeneous treatment effects (Example)
  • Incremental response modeling (Example)
  • Net scoring (Example)
  • True response modeling (Example)

推荐使用的Packages:

CasualML: Uplift Modeling Python Package by Uber

Pylift Uplift Meta-learner Python Package

R Uplift Package

Opossum: a Python package to create synthetic uplift datasets


参考:

towardsdatascience.com/

medium.com/@Minyus86/ca

发布于 2021-02-07 00:43