机器学习面试:双重差分法(DID)

假设我们有一个广告方案P,没有经过ABTest直接在在一些城市放量了,怎么来判断这个广告的有效性(gmv)呢?能不能直接比较投放广告的城市和没有投放广告的城市之间gmv的差值呢
Δ g m v = a v g ( 投放广告城市的 g m v ) − a v g ( 没有投放广告城市的 g m v ) \Delta_{gmv}=avg(投放广告城市的gmv)-avg(没有投放广告城市的gmv) Δgmv=avg(投放广告城市的gmv)avg(没有投放广告城市的gmv)

这样可以得到两类城市之间gmv的差值。这样其实有个问题,万一投放活动的城市本身gmv就高呢?比如北京和杭州,两者之间存在天然的差别,直接这么比较肯定不合理。因此我们就想能不能观察两期,第一期是没有投放活动之前,第二期是投放活动之后

杭州(未投放)北京(投放)组间差异
投放活动前154
投放活动后2.55.53
组内变化1.50.5-1

这里可以看到对于没有投放广告的杭州,他的一个自然变化是上涨了1.5,但是对于投放广告的北京,反而只上涨了0.5,这个一个不幸的消息,广告反而抑制了gmv的增长在这里插入图片描述
是不是感觉很奇怪,苦思冥想的策略怎么就没有效果呢?真的是这个样子吗?其实不然,北京的gmv已经非常高了,要想再提高非常的困难,反观杭州,gmv的起点非常底,上涨的空间很大,即使什么都不做gmv都上涨了很高。所以在这样的对比是非常的不合理的。(想一想,同样可以找到很多自然上涨不如北京的城市,比如自身就是搞gmv的上海市)。这里最关键的一点是,北京和杭州的自然上涨趋势是不一致的

在这里插入图片描述
假设咱们有一个平行世界,在咱们的世界中,北京投放了广告,平行世界中没有投放广告,可以看到,红色的线是北京自然增长的,咱们的活动是有效的。也可以看到北京和杭州的自然增长趋势非常的不同。
所以这就要求咱们在做对比的时候,选择的对照组一定要跟实验组有相同的增长趋势,怎么找到这样的城市呢?可以通过聚类或者一些其他的规则。比如都有较高的gmv,城市体量差不多,运营时间相差不多等等,通过这些特征我们可以把一些城市给聚集起来,认为他们是一类,未来有相同的增长趋势。
上面依然不是正常的AA测试,为什么这么说呢?假如咱们找到了上海,深圳,广州这三个城市跟北京是相似的。并且这三个城市都没有进行投放,再假设上海增幅是0.1,深圳增幅是0.15,广州增幅是0.2,如果选择了上海,广告的增益就是0.4(0.5-01),深圳是0.35,广州是0.3,为了证明广告的效果好,我肯定直接选择跟上海对比,这就很值得品味了。

DID数学公式

我们假设Pi=1表示在这个城市投放了广告,Pi=0表示没有投放广告。
Δ = E ( Y ∣ P i = 1 ) − E ( Y ∣ P i = 0 ) \Delta=E(Y|Pi=1)-E(Y|Pi=0) Δ=E(YPi=1)E(YPi=0)

P=0P=1组间差异
T = 0 T=0 T=0 α \alpha α α + γ \alpha + \gamma α+γ γ \gamma γ
T = 1 T=1 T=1 α + β \alpha+\beta α+β α + β + γ + δ \alpha + \beta + \gamma + \delta α+β+γ+δ γ + δ \gamma + \delta γ+δ
组内变化 β \beta β β + δ \beta+\delta β+δ δ \delta δ
Y i t = α P i + β T + γ ( P i ∗ T ) + δ i t Y_{it}=\alpha P_i+\beta T + \gamma (P_i * T)+\delta_{it} Yit=αPi+βT+γ(PiT)+δit
  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值