数据运营系列(二):如何用合成控制法判断策略实施效果

数据运营系列(二):如何用合成控制法判断策略实施效果1.合成控制法合成控制法最开始是经济学家用来研究评估某个政策实施在某国家或地区的效果,原理即是反事实框架,假想该地区没有受政策干预会怎样,并与事实上受到干预的结果做对比。二者之差即为“…

大家好,又见面了,我是你们的朋友全栈君。

1. 合成控制法

合成控制法最开始是经济学家用来研究评估某个政策实施在某国家或地区的效果,原理即是反事实框架,假想该地区没有受政策干预会怎样,并与事实上受到干预的结果做对比。二者之差即为“处理效应”。这里D为干预变量,X为解释变量,Y为被解释变量。因此合成控制法需要估计处理效应ATT: 

数据运营系列(二):如何用合成控制法判断策略实施效果

那么如何求解未受政策干预的结果呢?常用的解决方法就是寻找适当的控制组,即从其他相似的地区来组合成一个新的地区,新地区和实际受干预的地区一致。比如,要评估仅在A市实施的某政策效果,用其他城市(B市、C市、D市)进行适当的线性组合构成A市的控制组,即合成的A市 ,最后比较这个合成的A市和真实的A市在某一结果指标上的差别。

作为因果推断方法之一,合成控制法的特点主要是原理简单、并且结果合理有说服力,可视化强。

2. 策略实施效果评估

比如某一业务线一直用户规模稳健上升,为实现快速用户增长,在经费有限的情况下,运营方决定尝试在2019年10月北京这一地区投放某一广告持续一个月,如果效果显著,再统一推广到全国各地。那么这里如何评估效果?这一广告是否需要推广到全国?像这样的场景又无法使用AB testing等实验方法,那么从数据驱动运营的角度分析,观察研究比较适用于该场景分析,这里选用合成控制法,该方法能更好地将结果可视化为运营人员呈现。假设该业务的销售情况基本不随季节有较大变动。

数据集说明:

  • time:时间变量,年月

  • area:地区

  • age15to24:年龄在15到24岁的用户比例

  • male:男性用户比例

  • tenant:租房用户比例

  • income:人均收入

  • sale_amount:人均购买量

  • user_amount:用户渗透率

合成控制法的流程: 

  • 确定结果变量,这里以用户渗透率为预测变量

  • 确定预测变量,这里包括age15to24(年龄在15到24岁的用户比例,年轻人为用户目标对象)、male(男性用户比例,男性为目标用户)、tenant(租房用户比例,租房者为目标用户)、income(人均收入)、sale_amount(人均产品购买量)

  • 确定用于合成对照组的个体,这里将其他城市作为合成对照组的个体

  • 确定权重,通常算法是最小化预测均方误差

  • 检验拟合,即干预前一段时间内控制组和干预组因变量是否接近

  • 检验安慰剂效应

  • 检验稳健性

分析结果:

通过合成控制法分析结果发现,用于拟合北京市的城市由上海市、重庆市和广东省组成,权重占比分别为0.54,0.32和0.14。其余城市权重为0。进一步考察北京市与合成北京市的预测变量是否接近。

表1 预测变量均值比较

变量 北京市 合成北京市
age15to24 0.207 0.191
male 0.502 0.511
tenant 0.445 0.432
income 0.661 0.661
sale_amount 0.428 0.427

在表1中,比较了实际的北京市和合成的北京市的预测变量均十分接近,故合成北京市可以很好地复制北京市的市场特征。然后比较二者的结果变量上的差异:

数据运营系列(二):如何用合成控制法判断策略实施效果

图1 合成控制法分析结果

上图显示了北京市和合成北京市在2019年1月-2020年3月期间的用户渗透率。高程度的拟合表明,在广告实施之前,合成北京市的用户渗透率与真实北京市几乎重合,表明合成北京市可以很好地作为北京市的反事实替身。上图表明广告实施对用户渗透率有很大影响,这种效应随着时间的推移而增强。我们的结果表明,对于整个2019年10月到2020年3月期间的用户渗透率提高了近20%,但对比自然增长效果,广告带来的用户渗透率幅度不大,比如在2020年1月提高了近3.6%。广告所带来的用户增长只占18%(3.6%/20%),单从数据层面的来看,效果并不明显,因此不建议推广。

3. 学习资料

PPT推荐:合成控制法(Synthetic Control Method)(附PPT免费公开)

视频资料:合成控制法视频资源(一)

点击“在看”可收藏随时查看↘↘↘

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/134588.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 操作系统面试题目(linux系统基础面试题)

    文章目录操作系统简介篇解释一下什么是操作系统操作系统的主要功能软件访问硬件的几种方式解释一下操作系统的主要目的是什么操作系统的种类有哪些为什么Linux系统下的应用程序不能直接在Windows下运行操作系统结构单体系统分层系统微内核客户-服务器模式为什么称为陷入内核什么是用户态和内核态用户态和内核态是如何切换的?什么是内核什么是实时系统Linux操作系统的启动过程进程和线程篇多处理系统的优势什么是进程和进程表什么是线程,线程和进程的区别什么是上下文切换使用多线程的好处是什么进程终止的方式进程的终止

  • app怎么模拟弱网测试(应用最多的工具箱app)

    1.弱网模拟工具1.1. iOS平台,通过自带的开发者选项》NetworkLinkCondition,即可简单的模拟各种速度的网络情况:1.2通过抓包工具,设置延迟,进行模拟不同的网络情况,比如常用的fiddler,charles:1.2.1fiddler操作:自定义延迟 》开启网络模拟即可,如图:1.2.2Charles操作:

  • ebpf教程_宝马F底盘编程

    ebpf教程_宝马F底盘编程eBPF入门之编程•Feiskyhttps://feisky.xyz/posts/2021-01-29-ebpf-program/目录BCClibbpf-bootstrap内核源码小结eBPF提供了强大的跟踪、探测以及高效内核网络等功能,但由于其接口处于操作系统底层,新手入门起来还是有很大难度,特别是如何编写eBPF程序是入门的一大难点。本文将介绍一些常用的eBPF编程框架。BCC上篇文章介绍的BCC其实就提供了对eBPF的封装,前端提供Python

  • Yii2 Call to a member function validateCsrfToken() on string

    Yii2 Call to a member function validateCsrfToken() on string

  • 国家标准《电子计算机机房设计规范》(GB50174-93)_计算机机房建设标准规范

    国家标准《电子计算机机房设计规范》(GB50174-93)_计算机机房建设标准规范dgtool:GB50174-2008电子计算机机房设计规范目次1总则(1)2术语(2)3机房分级与性能要求(6)3.1机房分级(6)3.2性能要求(6)4机房位置及设备布置(7)4.1机房位置选择(7)4.2机房组成(7)4.3设备布置(8)5环境要求(9)5.1温度、相对湿度及空气含尘浓度(9)5.2噪声、电磁干扰、振动及静电(9)6建筑与结构(1o)6.1一般规定(1o)6.2人流、物…

  • scrt远程连接工具怎么切换窗口

    scrt远程连接工具怎么切换窗口scrt远程连接工具怎么切换窗口

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号