「求职」22道数据分析面试题,涵盖95%常考知识点『AB实验篇-上』

2022-06-30 16:54:42 浏览数 (1)

预计阅读时间:8min

解决痛点:本系列为大家总结了面试中常考的22道AB实验问题,涵盖接近100%知识点,对于准备找工作的你会有很大帮助。

00

序言

AB实验是数据分析面试中避不开的一个话题,小火龙为大家总结了7个大方向的问题,分别为:「实验理解类问题」、「实验设计类问题」、「实验运行类问题」、「实验评估类问题」、「实验放量类问题」、「特殊实验类问题」、「实验概念类问题」,涵盖了绝大多数常考知识点。考虑到篇幅原因,会拆分成上、中、下三篇推给大家。

01

实验理解类问题

题目1:实验有哪些类型?对应的原理是什么?各有何优劣?

考核点:对于单层AB实验、层域AB实验、网络效应实验、MAB实验、Interleaving实验的理解,重点关注AB实验。

难度系数:3星

单层AB实验:最常见实验类型,解决策略迭代因果问题。适用于:单一实验,非系列性。

层域AB实验:针对一系列相似实验,既可以度量单层实验的效果,又可以度量一系列实验整体的效果。适用于:解决多相似实验基线桶策略冲突问题。

网络效应实验「switchback design实验」:通过时间/空间切片,实现AB桶的用户相对独立,核心在于选择合适的切片,以满足样本独立性。适用于:解决双边/三边具有网络效应的市场,用户相互干扰的问题。

MAB实验「Multi−Armed Bandits实验」:MAB核心是实现动态流量分配,在实验过程中实时收集用户的反馈,从而动态分配实验过程中各策略的流量。适用于:实验失败成本较高的场景、对于实效性敏感的场景、需要持续优化的场景。

Interleaving实验:针对排序场景,通过搜索架构调整让用户的一次请求变成对后端两种不同排序策略的请求,同时通过一定的排序机制让用户在无感知的情况下同时看到两种排序结果的混合。适用于:推荐排序策略场景,对于长尾内容评估更友好。

题目2:AB实验整体流程是什么样?你在其中主要负责哪些内容?

考核点:是否了解AB实验的全景,对于数据分析在其中的定位是否有一个清晰的认知。

难度系数:2星

实验一般分为5个阶段,分别为:实验设计阶段、实验运行阶段、实验评估阶段、实验放量阶段、实验归档阶段,数分同学在各个阶段均有涉及,重点在实验评估阶段给予实验结论。

02

实验设计类问题

题目3:AB实验的常规实验单元有哪些?采用何种方式进行分组?

考核点:对于实验对象是否了解?对于实验的分流机制是否知道?

难度系数:2星

实验单元指实验的最小单位,通常有三种:用户、会话(session)、页面,其中用户粒度是最常见的。当用户进入到APP或者进入到某个页面时(具体根据实验策略决定),后端会对用户随机打上属于哪个分桶的标签,标签在实验期是不会改变的。随机方式一般通过哈希算法,而常见的哈希算法方式涵盖:BKDR、MURMUR3、MD5等。

题目4:AB实验选择哪些方面指标进行评估?指标是否越多越好,为什么?

考核点:指标的选择直接影响结论的科学性,考核候选人对于AB实验了解的深度。

难度系数:4星

根据评估方向,一般选择4个方向的指标进行实验评估,如下图:

主要评估「实验自身局部的影响」以及「实验对大盘的影响」。

指标选择不宜过多,当指标过多时,实验犯第一类错误的概率增加,即:实验本身无差别,而误判为有差别。

举个例子

假设犯第一类错误的概率为5%,实验选择3个指标进行评估,则至少有一个指标犯第一类错误的概率为:1-(1-5%)×(1-5%)×(1-5%)=14.2%。

随着指标的增加,这个值会逐步增大,用一个形象的成语描述“言多必失”。

题目5:AB实验需要多少样本量?是否越多越好?如何量化计算?

考核点:样本量直接影响结论是否置信,考核候选人对于AB实验假设检验是否熟悉。

难度系数:5星

样本量不是越多越好,过多样本量会造成实验资源的浪费、影响迭代效率,而过少样本会导致实验不置信,因此科学度量实验样本量,是至关重要的。

计算方式均采用正态分布的假设检验方式,检验统计量使用T统计量或者Z统计量。但不同类型指标的计算方式略有不同,划分为「均值类指标:如人均时长」、「用户比例类指标:如UCTR」、「比率类指标:如CTR」。详细的计算方式,这里不再展开,会在后面的『AB详解系列』进行分享,下面简单附上计算公式:

【均值类指标】

【用户比例类指标】

【比率类指标】

题目6:AB实验周期如何选择?需要考虑哪些因素?过长或者过短会有什么影响?

考核点:同样本量考核题,这两道题一般是打包在一起的。

难度系数:4星

实验周期选择需要考虑三方面因素:

其一:考虑最小样本量。实验周期内累计样本量,需要大于最小样本量要求。

其二:考虑周末效应。一般产品周中和周末用户行为表现会存在差异,因此实验至少需要运行完整一周。

其三:考虑新奇效应。重点针对老用户,改版会对用户产生非持久性的行为驱动,这段时期的数据是缺乏置信度的,因此需要适当拉长实验周期。

在考虑以上因素的前提下,制定实验周期,时间过长会导致实验迭代的效率,而时间过短会导致实验的不置信。

03

实验运行类问题

题目7:AA空跑实验是什么?目的是什么?如何评估AA实验是否通过?

考核点:考察候选人对于AA实验的理解。

难度系数:4星

AA空跑实验是在AB实验上线前进行的,其原理是在即将上线的AB实验分桶中,均不采取任何新策略,验证分桶是否存在显著性差异。目的是验证分桶在自然情况下是一致的,保证AB实验的差异是由新策略所带来的。

AA实验的数据,可以采用「空跑一段时间」或「回溯过往时间」两种方式,建议采用后者,可以缩短实验周期,提升效率。

AB实验的核心是假设检验,因此评估AA实验是否通过,也是通过假设检验方式(T检验/Z检验),计算对应的p值,是否拒绝原假设(AA分桶是否有显著差异)。同最小样本量计算方式一样,不同类型指标计算方式存在一定差异。

题目8:AA实验出现显著差异,可能是什么原因?如何解决?

考核点:考察候选人对于AA实验的理解,以及在遇到指标差异显著时的解决方案。

难度系数:5星

AA实验由于是在相同策略下进行的,因此分桶指标差异理论上是不显著的。但如果某些指标差异较大,出现显著情况,则可能有以下几点原因:

原因1:下线实验惯性所导致

出现原因:当分桶流量不足时,新分桶配置的流量恰巧是之前实验释放的流量,导致用户有偏,引起AA波动较大。

解决方案:hash分桶数量提升,尽可能将用户打散。

原因2:打标上报异常所导致

出现原因:该原因是AA存在差异最可能的原因,由于SDK调用方式不当、上报错误所引起的用户非完全随机。

解决方案:对实验进行样本均衡性检验,提早发现用户不平的问题。

原因3:碰到小概率事件所导致

出现原因:目前小流量实验一般显著性水平设置为5%,即:100个实验当中,大约有5个实验在AA实验过程中会出现指标显著的情况。

解决方案:如果业务流量足够,可以将显著性水平下降为1%或0.5%(微软建议0.01%),通过空跑期判断实验桶和对照桶是否有显著差异,并在AB上线之前,为实验桶和对照桶分配差异较小的流量。

原因4:多重检验问题所导致

出现原因:同「第四道面试题」,指标数量越多,检验的次数就越多,至少有一个指标显著的概率就越高。

解决方案:重点关注与本次实验最为密切的指标,是否出现显著性结果。

原因5:极端用户所导致

出现原因:各个产品,均存在某些极端的高销用户,例如:电商行业的土豪用户。这类用户的消费情况远远高于一般用户,而量级又很小,很难均匀的分配到分桶当中,导致干扰分桶的均衡性。

解决方案:有两种解决方式。其一:设置实验黑名单,将该类用户直接加入黑名单当中,不参与实验分桶;其二:根据百分比截断用户,对于指标值大于95%/98%的用户给予剔除。

题目9:AA实验如何判断样本量是否均衡?一般不均衡造成的原因是什么?

考核点:考察候选人对于AA实验的理解,是否了解开展实验的前提条件。

难度系数:4星

AA实验样本量不均衡,指观测到的流量比例不符合预期配置的流量比例。可通过卡方检验的方式评估比例是否符合预期。

造成样本量不均衡的原因,90%以上由于实验配置或上报阶段的问题所导致。

以上就是本期的内容分享

0 人点赞