文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

AB实验的采样分流技术演进以及Sutva假设与现实挑战

2024-11-29 20:05

关注

实验文化在互联网公司越来越普及,AB实验作为业务决策的辅助工具,可以精准区分策略效果的随机波动与显著增长。此外AB实验还可以评估策略的因果关系,举一个生活中的例子,退烧的时候往往会出汗,那么退烧和出汗的因果关系是什么, 是不是发烧之后我们应该穿更多衣服捂汗?通过 AB实验,我们可以发现退烧是因,出汗是果, 所以发烧捂汗的做法是不对的。在互联网产品中,类似的问题很常见, AB实验可以给决策者更清晰的因果链路, 从而让产品经理或者业务决策者更全局的视角,更准的决策。

一、采样分流技术的发展

传统AB实验,在实验开始前分好AB组用户,同时生效策略。例如医学实验, 实验开始前招募志愿者,然后分为AB两组。互联网实验的区别:A组实时采样1%的用户, B组同样实时采样1%的用户, 然后启动实验,AB组的命中实验的用户会陆续进入实验,第一天实验组可能来了 0.2% 的用户,随着实验时间增加,实验用户量逐渐接近 1%,这里和传统的医学实验不一样。

我们把互联网产品的用户看做一个有限个数的总体,从这个总体中,随机无放回的采样得到AB组用户,一种简单的工程实现:将大盘用户随机Shuffle一次,然后按照比例取出 AB组用户。但这样的采样在工程化的时候比较复杂,因为每次启动实验,我们都需要对大盘用户做一次Shuffle。进一步优化,我们可以选择一个密码学Hash函数实时采样, 因为密码学Hash函数可以保证任意两个用户ID的Hash Value是独立的, 这个性质等价于随机采样。当实验比较多的时候,我们发现这种hash模拟随机采样的分流方式还是有一个问题:用户是有记忆性的, 上一个实验的效果会延续到新的实验,我们通过二次Hash来解决这个问题。除 Hash 采样之外,再介绍一种更复杂的完美随机分流策略,基于有限域(galois field)理论,我们给出一种完美随机方案《Orthogonal Traffic Assignment in Online Overlapping A/B Tests》。

二、指标计算评估的发展

在互联网业务大量使用 AB实验之前, 数据分析师使用业务 BI 报表给老板汇报数据, BI报表数据往往是某一天,大盘用户的行为数据,例如某天所有用户的访问时长除以当天的总人数,得到人均访问时长。

AB 实验初期,产品经理或者数据分析同学有之前的固定思维,一个实验运行 7 天,他们会把每一天的用户访问时间加起来作为分子,再除把每一天进入实验的用户加起来(不去重)作为分母,计算“人均访问时长”,这个指标和 BI 报表的指标是口径一致的。用这个指标口径做实验,通过 jackknife/bootstrap 估计方差做统计推断。但是这样的口径是不科学的,举一个例子:在BI业务报表中,产品经理一般使用的是非聚合指标,例如看连续两天报告,人均浏点击次数=(第一天点击次数+第二天点击次数)/ (第一天用户数+第二天用户数),这里用户数在两天内没有做去重聚合。在AB实验中,这样定义指标有明显缺陷。例如,A组和B组假设在第一天都进入了10个用户,A组的策略非参糟糕,留存是0, 第二天没有用户访问,B组策略比较好,留存是100%, 第二天这10个人都又分别点击了一次,我们如果使用BI报表中的非聚合口径计算指标,A组的人均点击=(10+0)/(10+0) = 1 , B组的人均点击=(10+10)/(10+10)=1 , A组指标=B组指标,我们得出AB组策略没有差异,显然是一个错误的结论。在AB实验中,正确的指标定义是:人均浏点击次数=(第一天点击次数+第二天点击次数)/ (去重(第一天用户数+第二天用户数)), 新口径下,A组指标=10/10=1 , B组指标=20/10=2 , 可以看出B组策略显著好于A组。

指标的长期效果预测,AB 实验的指标结果代表实验期间对策略效果的评估,但是产品负责人或者老板更需要得到一个长期效果,策略对全年 OKR的贡献。我们在这篇文章中有详细的分析如何评估长期效果《Estimating Causal Effects of Long-Term Treatments》(EC'23)   

三、AB实验统计推断的发展

Sutva (Stable Unit Treatment Value Assumption)假设直观的理解:在 AB实验中,给 B组用户一个策略,B组用户的不会把策略效应溢出到 A组;

1.Sutva 假设成立时:

固定样本假设推断, 我们在实验开始前,确定 Power 和业务检验精度,计算出实验所需要的样本量,然后启动实验。这是一个理想实验设计,在采样分流技术中有提到,互联网实验中,用户是陆续进入实验,所以这种固定样本实验有一些问题:

更复杂的场景,产品经理想对某一组 UI做实验,例如一个按钮的颜色也形状和文案三个维度,每个维度有 4 个选择,那么总共有 4*4*4=64 个策略,同时做这 64 个策略对比,这几乎是一件不可能完成的任务。再例如,我们做一个模型超参实验,超参数的取值在实数域,我们不可能通过 AB实验枚举实数域进行实验。这里引入新的Multi-armed Bandit/Bayesian optimization 实验方案。

2.Sutva 假设不成立时:

固定关系的干扰:

举一个例子,在社交场景做实验,实验策略可以通过已知好友关系传播,我们做一个 50%vs50% 的实验,实验组中的用户通过好友关系,把实验策略分享到对照组的用户,结果实验组和对照组都受到策略影响, 我们实验的统计量(实验组用户均值-对照组用户均值)检测不到差异。这个例子中, AB 组之间的干扰都来源于已知的关系传导,我们可以在随机采样的时候,考虑关系图,进行图采样,得到两个隔离的 AB 组进行实验。另外一种处理思路是,因为传导关系已知,我们可以通过定义一个可以表达传导效应的新统计量进行实验;最后一种思路是建模,我们通过模型预测数传导效应进行实验。我们最近完成的一些文章:

《Optimized Covariance Design for AB Test on Social Network under Interference》(NeurIPS'24)

《Unbiased Estimation for Total Treatment Effect Under Interference Using Aggregated Dyadic Data》(MitCoDE'23)

《Ego Group Partition: A Novel Framework for Improving Ego Experiments in Social Networks》(MitCoDE'23)

非固定关系的干扰:

举一个例子,在主播实验中,我们对 B组主播给一些激励策略,那么 B 组主播的直播间会有更好的指标。因为 B组主播抢夺了原本进入 A 组主播的用户。如果我们把这个策略全量上线之后,不存在 A 组策略的主播,也就不存在“抢夺”效应。所以在实验过程中我们看到的 B 组效果好,可能是被高估的。这类场景比较复杂,因为非固定关系有很多不同的情况,大多来自推荐系统的策略和产品自身的传导效应,还有外部因素的干预等。我们对于这种情况的实验 case by case 分析,通过因果推断、结构化模型、强化学习等一系列方法评估实验效果,可以进一步阅读我们最近完成的文章:《Estimating Treatment Effects under Recommender Interference: A Structured Neural Networks》(EC'24)  

四、AB实验当前遇到的难点与挑战

随着业务越来越广的应用AB实验, 我们面临一些新的挑战:大数据量的挑战,实验数量快速增加,如何更快、更准、更稳的提供计算支持。相关工作我们整理发表在 VLDB'24 : 《Large-Scale Metric Computation in Online Controlled Experiment Platform 》

算法方向,复杂业务系统中 Sutva 不成立时,如何更准的支持实验,例如搜索系统、推荐系统、广告系统中。实验结果如何更准确的反应业务大盘,以及更准的评估实验长期收益。最后是很多不能做实验的场景,我们如何把因果推断技术标准化和效果评估做好,助力业务提供增长。我们开源了一套基于 Olap 引擎分的布式计算因果推断库,解决非标准化AB实验评估问题。《Fast-Causal-Inference: a Causal Inference Tool at Scale》(MitCoDE'23)

来源:DataFunTalk内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯