时间片轮播下运力竞争问题探究

社交AB实验中因个体之间存在交互,如果简单通过用户ID分流观测实验, 往往会违背验组和对照组之间不会存在互相干扰(SUTVA假设)的基本假设,而时间片轮转实验 是在时间维度上进行均匀切分,不同的时间片段映射了不同的实验策略,使得所有参与实验的用户在同一时间、同一空间下保持一致的策略,能有效解决多端用户实验场景下的组间干扰和小流量下容易造成分流不均的问题 ,但时间片分流实验也可能存在运力竞争的问题 ,如下场景

  • 当下派单实验是以时间片分流进行的AB实验, 单个时间片为10分钟 ,总轮播周期为1h

  • 但可派订单的完单时长50分位数为53分钟90分位数为93分钟

因此本文希望探讨并回答以时间片分流进行的AB实验的以下几个点:

  1. 同质性检验的原理&步骤
  2. 当下几种时间片大小情况下 以及不同轮播方式下,所需要的实验周期

1. 理论探索:关于时间片长短与运力竞争的关系及供需同质性检验

1. 什么是运力竞争?

即前置时间片匹配了更优质的运力, 在后置时间片时,优势运力并未被释放,导致后置组因该时空下运力有限, 只能匹配弱势运力。进而导致强者更强,夸大实验组和对照组之间的策略效果。

2. 运力竞争对实验的影响

理论来说不影响定性结论,但会影响定量结论

  • 从理论拆解来看,实验组对照组运力竞争存在的前提是实验组和对照组之间存在优势组和劣势组;如果两组之间无明显差别,则两组之间虽然依旧共享运力, 但两者对对方的影响是等同的。
  • 从实际场景来说,小时间片带来的运力竞争影响的是定量结论(即实验组比对照组好多少), 并不影响实验组比对照组更好的定性结论。

3. 时间片长短与运力竞争的影响关系

时间片越长,运力竞争的问题越小

AB实验的基本假设之一是实验组和对照组之间不会存在互相干扰(SUTVA假设),即个体的潜在结果,是不会随其他个体是否接受处理而改变的。

但在时间片分流下 , 因在某个短时间窗口内共享运力上一个时间片可能对下一个时间片造成影响。 因此运力竞争是否存在以及严重程度主要取决于以下两种因素及其比例:

  • 运力被占用的时间(完单时长) M

  • 时间片大小 N

  • 两者的比例关系 M/N

    • 当M/N=1/3 时,后置时间片内后2/3的流量不受前置时间片影响
    • 当M/N=1/2 时,后置时间片内只有后1/2的流量不受前置时间片影响
    • 当M/N=1时, 后置时间片百分百的流量都会受影响

4. 时间片轮播下的Variance vs Bias

时间片越长,variance越大,观测周期就越长

网络实验中

  • bias:来自于因共享运力池/需求池,实验组个体会对对照组个体产生间接影响而带来的干扰
  • variance:来自于更细的随机分流时单位的颗粒度,和由此带来的不均匀性

在时间片轮播下

  • 时间片长度越小,相同时间内的单位集合基数越多,集合间的同质性越好,variance 越小,但运力竞争影响越明显,bias 越大
  • 时间片长度越大, 相同时间内的单位集合基数越少, 集合之间的同质性越小, variance越大; 但相应的随着时间片长度的增大, 运力竞争的影响越小,甚至没有, bias越小

5. 时间片分流实验的供需同质性检验

5.1 前置时间片与后置时间片关系

假设某个实验存在运力竞争,可以将后置时间片的流量情况,按照其前置时间片分组进行分拆:

  • 如果A1与A2 和 B1与B2 之间指标有显著差异, 则可认为前置时间片的分组会影响后置时间片的订单配对效率
  • 如果从运力竞争的角度来看, 对于同一个后置组来讲, 前置时间片如果是弱势组,则配对率会更优
后置时间片分组 前置时间片分组 配对率
对照 对照 A1
对照 实验 A2
实验 对照 B1
实验 实验 B2

需要的前提条件为相对更长的周期,否则时间片的数量会过少

5.2 特定实验供需同质性研究方法

根据历史数据产出 实验组和对照组,通过卡方检验, 对在不同时间序列下的供需曲线 进行拟合度检验,按照自由度和卡方值,判断是否接受原假设,即两种分布是相近的

适用场景:

  • 样本量较小 (大样本下,卡方检验容易变得很敏感, 很容易拒绝原假设)

  • 只适用于频数/ categorical value 的检验, 不适用于比例

5.3 特定实验供需同质性判断依据

通过R2,计算两条曲线的拟合情况,经验初步判断,当R2大于0.99 时,可以认为两条曲线较为接近

适用场景:

  • 适用场景较为丰富, 但对于R2缺少比较好的阈值判断

横坐标

  • 一个大范围内轮播周期顺序

纵坐标

  • 当下时间片的订单量

  • 当下时间片的去重司机数

    派单:当下时间片的去重入参司机数

  • 当下时间片的去重优质司机数

    派单:当下时间片的去重模型筛选后remain司机数

  • 单司比,即上述订单与司机数两个指标相除

5.4 同质性实际案例

5.4.1 中性案例(10分钟时间片)

从实验组和仿真组在多天累计下的每个小时分布来看

  • 订单,即需求层面,两组趋势基本一样 (R2=0.9925)
  • 去重司机数,两组趋势一样(R2=0.9933)
  • 单司比(分母为去重司机数),两组趋势一样(R2=0.9945)
  • remain司机数,即算法过滤后的模型入参司机数,两组在15-20仿真组会低于实验组,即不同质(R2=0.9853)
  • 单司比(分母为renmain司机数),两组在15-20仿真组会高于实验组,即不同质(R2=0.9734)

横轴:每日的轮播周期顺序,此轮播周期为60min,因此横轴等同为小时

补充: 需探究为什么仿真组比实验组的下午remain司机数少?初步怀疑是实验组:仿真组=3:1 带来的影响。

5.4.2 负面案例(10分钟时间片)

实验目的:测试新上的两种策略是否有效?

  • 实验组1: 高单司比的时空下不派低价单
  • 实验组2: 在重排序阶段,对价格进行加权,同时考虑取消率和订单价格

从实验组和仿真组在多天累计下的每个小时分布来看

  • 订单,即需求层面,两组不同质(R2=0.9784)
  • 去重司机数,两组不同质(R2=0.9769)
  • 单司比(分母为去重司机数),两组不同质(R2=0.9748)
  • remain司机数,即算法过滤后的模型入参司机数,两组在15-20仿真组会低于实验组,不同质(R2=0.9709)
  • 单司比(分母为renmain司机数),两组在15-20仿真组会高于实验组,不同质(R2=0.9573)

横轴:每日的轮播周期顺序,此轮播周期为60min,因此横轴等同为小时

不同质的原因探索:

  • 实验周期较短, 且实验周期横跨中秋节前后,存在假节日影响
  • 开的组较多, 6个时间片总共有5组
  • 10分钟时间片本身带来的运力竞争

2. 时间片分流实验周期探索

1. 实验周期评估方式

针对时间片分流实验,我们整合了两种判断周期的方式:

测试后判断: 通过历史实验供需曲线拟合情况判断当下实验是否同质以及多久会同质

对于AB来讲,可以仿照【特定实验供需同质性研究】,通过拉长实验周期,观测实验运行到多久后供需情况上是一致的

优势:误差低,准确性较高,可以观测到运力竞争带来的影响

局限:只能判断历史已经实验过的时间片大小的观测周期,并且受限于实验本身运行的长短所限

测试前预估: 用历史数据切片进行AA仿真,判断AA两组多久配对率差值收敛以及是否置信

  • 对历史数据按照时间片长度进行切片
  • 对所切的时间片进行人工分组,分别为A1和A2;轮播顺序都可以尝试:固定、随机、固定+定时反转
  • 观测不同实验周期下 AA两组配对率差值和置信程度

假设:

  • 随着周期的拉长,A1A2两组配对率差值应该是逐渐收敛并接近于0
  • 从结果反推过程, 如果配对率上没有差异,可以反推出过程(外部环境、第三方因素)上基本没有差异

优势:可以判断未曾实验的时间片大小

局限:因为使用的历史数据进行AA,无法模拟出在这个时间片大小的情况下运力竞争的情况

2. 不同时间片大小所需实验周期探索

一般来讲一个实验需要观测多久要考虑以下几个因素:

  • 为了避免周期效应, 至少1~2周
  • 样本量大小:经验来说, 如果是看订单量的话, 需看万级及以上
  • 如果是做时间片轮播 ,则需要考虑时间片大小情况(本section重点讨论问题)

我们以历史数据进行AA仿真实验, 测试了7种时间片大小(10分钟/30分钟/1小时/2小时/3小时/6小时/24小时) 后得出结论:

2.1 【小时间片】

轮播顺序的随机和反转在小时间片上可以降低variance,增加同质性。 因此固定顺序轮播+隔天反转 更适用于小时间片(单个时间片小于一小时),AA两组配对率差值可以更快的收敛+稳定

  • 10min: 固定和反转效果都不错,但随机波动较大;
  • 30min: 反转和随机效果都不错, 但反转会相对更稳定

2.2 【大时间片】

单个时间片越大,时间片数越少, 一天内各时间片之间同质性越差,因此固定顺序轮播不适用于大时间片轮播 (1、2、3、6hr等),容易天然有偏; 固定顺序轮播+隔天反转相对更好

  • 1hr: 反转可以更快稳定,但随着观测天数变多,随机效果更好
  • 2hr、3hr: 反转效果更好, 猜测是天数*片数的组合较少,因此随机效果不好
  • 6hr:反转和随机效果差不多, 但后续不建议使用时间片大小为6hr的实验,无论累计多少天,三种轮播下效果都不好

初步看下来,不太建议时间片长度为2-6hr

2.3 【隔天实验】

相较来说,天与天之间的同质性 >> 大时间片之间的同质性,因此固定顺序轮播更适用于隔天实验,约在数据累计24天后AA两组无显著差异

初步看下来, 当时间片是2小时及以上时,即使拉到多天后,AA两组之间配对率依旧有显著差异。 因此当个时间片长度最好不超过2小时(排除隔天实验)

分时间片观测长周期下不同方式的AA配对率差值变化情况:

  • 分时间片来看
  • 单个时间片为10分钟、30分钟、一小时

  • 单个时间片为2hr、3hr、6hr、24hr

隔天实验这里和其他不同,横坐标的1表示累计2天,20表示观测周期累积到40天

总结

时间片分流实验下的运力竞争理论上不影响实验定性结论 ,但会影响定量结论,放大优势组和劣势组之间的策略增益 ;为了更好的降低定量影响,需综合考虑时间片长短轮播方式 等维度设计合理实验周期,保障实验分流同质性的同时,降低运力竞争影响

相关推荐
宅小海1 小时前
scala String
大数据·开发语言·scala
小白的白是白痴的白1 小时前
11.17 Scala练习:梦想清单管理
大数据
java1234_小锋2 小时前
Elasticsearch是如何实现Master选举的?
大数据·elasticsearch·搜索引擎
Swift社区2 小时前
LeetCode - #139 单词拆分
算法·leetcode·职场和发展
Kent_J_Truman2 小时前
greater<>() 、less<>()及运算符 < 重载在排序和堆中的使用
算法
IT 青年3 小时前
数据结构 (1)基本概念和术语
数据结构·算法
Dong雨3 小时前
力扣hot100-->栈/单调栈
算法·leetcode·职场和发展
SoraLuna3 小时前
「Mac玩转仓颉内测版24」基础篇4 - 浮点类型详解
开发语言·算法·macos·cangjie
liujjjiyun4 小时前
小R的随机播放顺序
数据结构·c++·算法
¥ 多多¥4 小时前
c++中mystring运算符重载
开发语言·c++·算法