业务分析产品分析师 (高级/首席)

如果技术基础设施的限制排除了A/B测试的可能性,并且现有数据受到严重的职位偏差和季节性需求波动的影响,您将如何评估搜索结果中商品排名算法变化对目录深度查看和购买转化率的因果影响?

用 Hintsage AI 助手通过面试

问题回答

历史背景

搜索结果质量评估的问题与观察的根本悖论相关:我们只看到在用户看到的那些位置上的点击,但查看的概率随着排名指数下降。 Joachims等人的经典论文关于position biasRichardson关于examination hypothesis的研究为理解点击不等于相关性奠定了基础。在产品分析的背景下,这导致了需要将用户的真实偏好与界面的伪影分开,特别是当排名算法的变化同时影响到整个用户基础时。

问题陈述

在全局更新搜索引擎时,观察到的指标(CTR查看深度转化率)受到两个混淆因素的影响:文档顺序的变化和其查看概率的变化。在无法将用户分为控制组和测试组的情况下,经典的A/B测试是不可行的,而季节性波动会产生与发布时刻相关的时间趋势。分析师的任务是在数据有限的情况下,隔离出排名的纯粹效果与这些噪声。

详细解决方案

最佳的方法结合了准实验和偏差校正的方法。第一步使用Difference-in-Differences与合成控制:构建历史时期或商品段的加权组合,以最小化指标的预处理预测误差。为校正position bias,使用Inverse Propensity Weighting (IPW),其中propensity scores通过基于过去随机日志的查看位置概率或通过假定Examination-Cascade ModelExpectation-Maximization算法进行评估。此外,针对非线性效果,使用Causal Forests,可以根据商品类别和用户细分对效果进行建模。

生活中的实例

在一个电子商务市场,搜索团队将BM25替换为基于神经网络的BERT-based ranker,以优化利润。发布后两周,每次搜索会话的GMV指标增长了18%,但查看深度下降了25%。业务部门对增长是否与算法相关或与商品促销开始同时发生而感到怀疑,并且担心用户在长期请求的体验降级。

第一个选项考虑通过t-test简单比较发布前后的指标。其优点是迅速且不需要复杂的基础设施。然而缺点显而易见:无法将促销的季节性效果与算法效果分开,忽略了position bias(新的算法可能因为更高收益而将高价商品显示得更高,而不是因为它们更相关),并且未考虑促销期间的整体需求通胀。

第二个选项是使用Interrupted Time Series (ITS)分析,并通过ProphetSARIMA进行季节性分解。这能够考虑趋势和季节性,构建没有发布的预测的指标的反事实值。优点包括统计严谨性和建模自相关的能力。缺点在于对断裂点的敏感性(如果发布是渐进的)、对业务中系数解释的复杂性以及假设趋势线性的问题,在电子商务的促销活动期间常常被打破。

第三个选项是开发商品类别的Synthetic Control Method:创建未受到影响的请求或类别的加权篮子(例如,由于在特定地区的技术限制而未改变算法)作为对照组进行比较。优点在于对利益相关者的视觉直观性和直觉,同时对误差分布形式假设的敏感性较小。缺点包括需要识别具有相似动态的适用对照单元(在全球发布时很复杂)和在选择权重时的过拟合风险。

最终选择了一种混合方法:Diff-in-Diff与类别层面的合成控制,结合IPW校正于展示位置。这使得能够将排名变化的效果与季节性波动分开,并校正因高价商品现在更频繁出现在顶部位置所带来的偏差。选择是因为需要同时考虑数据的时间结构和暴露中的结构性偏差。

最终结果证明,18%的GMV增长中有14%是由算法解释的,其余4%归因于季节性。同时发现,在头部请求(按频率排名前20%)中转化率增长了22%,而在尾部请求中下降了15%,这被平均消费的增长所抵消。这导致决定实施混合方案:对热门请求使用神经网络排名器,对冷门请求使用经典排名器,从而平衡了指标。

候选人常常忽视的事项


如何在没有随机化实验的情况下正确考虑position bias?

在没有特殊随机展示的情况下,评估propensity可以通过Expectation-Maximization算法,假设点击 = examination × relevance。候选人常常只提出将位置作为回归中的特征,但这忽略了位置与相关性之间的非线性互动。正确的方法是使用Click ModelsCascade ModelDBN - Dependent Click Model)来评估examination probability,然后该概率的反比重新加权观察值(IPW)。没有这个,排名效果的评估将在top-heavy结果上产生偏差。


为什么简单比较点击数在算法变化前后即使考虑季节性也会得到偏差的评估?

除了position bias之外,还有探索与利用用户学习的效应。新算法可能会探查(explore)更少,提供更可预测的结果,从而在短期内降低engagement。或者相反,用户可能会适应新的展示结构,改变滚动模式(scrolling behavior),这违反了时间序列分析的平稳假设。候选人常常忽视在Diff-in-Diff中对前期数据进行parallel trends assumption的检查和在聚合中滞后的重要性(由于day-of-week效应,不能逐日比较,至少需要按周聚合)。


如何区分请求-商品匹配改进的效果与顶部展示商品组成变化的效果?

这种区别对于理解对LTV的长期影响至关重要。如果新算法只是将展示偏向于更昂贵的商品(assortment shift),而不是更好地理解用户意图(relevance improvement),那么转化率的增长可能是由于新奇的短期效应。为了划分,需要使用Causal ForestsMeta-learnersS-LearnerT-Learner)与固定的商品效应(product fixed effects),以比较同一商品在不同位置上的表现。 如果效果仅仅是由于顶部商品的组成变化而观察到(例如,预算选项的消失),那么这需要与如果在该商品的固定位置上CTR有所提高的情况不同的产品反应。