字节跳动以数据驱动的文化闻名,同时运行着数千个A/B测试。这道题考察候选人对实验基础设施、流量分配、指标计算和保证可靠产品决策所需统计严谨性的理解。
定义实验生命周期:创建、流量分配、监控、分析和决策,配合角色权限控制。
讲解流量分配:基于哈希的用户分桶、正交层隔离以及互斥组管理冲突实验。
描述指标计算流水线:实时事件采集、预聚合指标计算、带多重检验校正的统计分析。
覆盖高级功能:有害实验的自动停止规则、贝叶斯分析加速决策、实验间交互检测。
我会围绕四个核心组件来搭建平台。第一,实验管理服务处理实验的增删改查,包含流量比例、定向规则和指标定义等参数。第二,流量分配引擎用用户ID的一致性哈希分桶,按正交层组织,使互不冲突的实验可以共享用户而不产生干扰,每个产品界面有自己的层级栈。第三,数据流水线通过流式平台采集事件,采用Lambda架构近实时计算实验指标——流式处理提供快速信号,批处理保证最终分析的准确性。指标包括均值、比率和分位数,使用Delta方法估计方差。第四,分析引擎计算p值、置信区间和效应量,用Bonferroni或FDR校正多重比较。我会增加序贯检验支持提前停止、自动护栏指标在关键KPI下降时暂停实验,以及实验交互检测器标记并发实验之间的干扰。
重点介绍正交层流量分配——这是字节能同时运行数千个实验的关键创新。
讨论统计陷阱,如偷看问题以及序贯检验如何解决。
提到组织层面:平台如何让各团队都能自主做实验,推动实验民主化。
使用正交层并配合独立哈希函数,确保每层的流量分配统计独立。对可能交互的实验放在同一层做互斥,或使用交互检测算法监控跨实验影响。
使用CUPED等方差缩减技术、分层抽样和触发分析聚焦受影响用户。对于长期指标,采用经过历史相关性验证的替代指标。