阅读 60

推荐算法改版前的AB测试 实验设计

一 实验背景及目的

1.1 实验背景

某商城,搭建了以个性化推荐系统为核心的“猜你喜欢”功能。功能上线后,发现推荐的准确率(用户进入物品详情页定义为判断真正的正样本)较低。对此,数据分析师优化了推荐模型。

1.2 实验目的

在新的推荐模型上线前,进行AB测试,以此判断新模型是否能够显著提升推荐的准确率。

二 AB测试说明及测试流程

2.1 AB测试定义

AB测试是为明确某个问题,制作两个(A/B)或多个(A/B/n)版本,在同一时间维度,分别让组成成分相同(相似)的访客群组(目标人群)随机的访问这些版本,收集各群组的用户体验数据和业务数据,最后分析、评估出最好版本,正式采用。

2.2 AB测试的特点

 先验性: A/B测试能够先于上线,得出结论。不再需要先将版本发布,再通过数据验证效果,从而一定程度上减少改版带来的风险

 并行性: A/B测试是将两个或以上的方案同时在线试验,这样做的好处在于保证了每个版本对应的时间环境、数据环境保持一致,便于更加科学客观地对比优劣。

 科学性: 如果能保证流量分配的科学性,将相似特征的用户均匀的分配到试验组中,就可以避免出现数据偏差,使得试验的结果更有代表性。

2.3 应用场景

 产品UI

不同行业的产品需要不同的风格,同时还要与企业的品牌相得益彰。利用A/B 测试优化UI能给用户带来更好的交互体验和视觉感受。

 文案内容

顾名思义是指用户阅读到的文字内容。小到图片配文和按钮文字,大到文章标题甚至版块主题。这些部分都可以尝试变换文案内容,测试不同方案的数据效果。

 页面布局

有些时候,可能根本不需要对产品的UI或是文案内容作出调整,只是在布局排版上的改变,就可以出现增长的效果。

 产品功能

想给产品增加一个新功能,可是很难确定是否能达到用户的预期,如果盲目上线,可能会造成一些损失。使用A/B 测试,对你的用户真正负责。 例如,社交类产品在付费查看照片的新功能正式上线前,需要进行A/B 测试,以验证功能的使用情况和效果。

 算法/算法

包括基于内容的推荐算法(根据用户的历史记录推荐相似内容)、基于协同过滤的推荐算法(根据有相似兴趣用户的行为推荐相关内容)、基于关联规则的推荐算法(根据商品/内容本身的相关性给用户推荐)。算法优化迭代前,需要真实的数据进行测试。

2.4 实验流程


三、实验设计

3.1假设检验的基本概念

统计假设:是对总体参数(包括总体均值μ等)的具体数值所作的陈述。

原假设:是试验者想收集证据予以反对的假设 ,又称“零假设”,记为 H0

备择假设:也称“研究假设”,是试验者想收集证据予以支持的假设,记为 H1

双侧检验与单侧检验:如果备择假设没有特定的方向性,并含有符号“=”,这样的称为双侧检验。如果备择假设具有特定的方向性,并含有符号 “>” 或 “<” 的假设检验,称为单侧检验。

临界值:是指在原假设为真的条件下,样本数据拒绝原假设这样一个事件发生的概率。

第 I 类错误(弃真错误):原假设为真时拒绝原假设;第 I 类错误的概率记为 α(alpha)。

·第 II 类错误(取伪错误):原假设为假时未拒绝原假设。第 II 类错误的概率记为 β(Beta)。

3.2 实验原理说明

先认定原假设成立,然后在事先给定的显著性水平下,构造一个小概率事件。根据抽样结果观察小概率事件是否发生。若小概率事件发生,则拒绝原假设,否则接受原假设

3.3 实验流程设计

(1) 提出假设

本次AB测试,目的是希望提升猜你喜欢功能的推荐效果。所以选取推荐系统的准确率,作为优化指标。

准确率表示预测为正的样本中,真正的正样本的比例。公式如下


R(u)是根据用户在训练集上的行为给用户作出的推荐列表,而T(u)是用户在测试集上的行为列表。最简单的例子:例如推荐系统给用户推荐了10件物品,用户进入物品详情页定义为判断真正的正样本的行为,用户进入了其中3件物品的详情页。则此时准确率=3/10=30%

假设我们认为,如果新的推荐算法,比原推荐算法,显著高于5%以上,则可将新推荐算法发布至生产环境。此时我们可以得到假设:

原假设H0:π2-π1≤5%

备择假设H1:π2-π1>5%

(2)确定显著性水平α

本次实验中,α 值设定 0.05(5%),这是假设检验中最常用的小概率标准值。表示原假设为真时, 拒绝原假设的概率

(3)确定临界值

临界值是显著性水平对应的标准正态分布的分位数。显著性水平0.05的情况下,单侧检验对应的标准正态分布的分位数是1.645,双侧检验的标准正态分布的分位数为1.96

(4)收集实验数据,得出结论

由样本值求得检验统计量的优化指标的数值。若观察值在拒绝域内,则拒绝原假设H0,否则接受原假设H1

四 开始测试并分析数据

定义新推荐算法的准确率为π1,新推荐算法的准确率为π2。

Ho:π1-π2≤5%

H1:π1-π2>5%

实验目标人群:从进入商城,且使用了“为你推荐”功能的用户流量(UV)中,随机抽取5%,作为实验目标人群。其中的50%为实验组,50%为对照组

实验时间:1周

假设检验方式:

不同的AB测试场景,适用于不同的检验方式,如上图所示。

本次AB测试,由于两个推荐系统版本是独立的,且样本数足够大,认为满足正态分布。根据HO、H1的假设,可判断本次检验为两个独立样本的总体均值的单侧检验,且总体方差未知,需要用样本方差代替总体方差。此时计算统计量公式为

显著性水平:0.05

临界值:在显著性水平为0.05时,单侧检验的临界值Zα为1.645

实验数据(为方便计算):实验一周后,有10000用户,使用新推荐算法,准确率的平均值为41%,标准差为20%。有10000用户,使用原推荐算法,准确率的平均值为35%,标准差为10%。此时新算法的准确率定义为x,则x的平均值=41%,原算法的推荐率定义为y,则y的平均值=35%

计算检验统计量:

检验结果:统计量Z=4.4722,临界值Zα=1.645.由于统计量的值大于临界值而落入拒绝域内,所以拒绝原假设H0,认为新推荐算法的准确率,比原推荐算法显著高出5%,新算法可发布至生产环境。

作者:16哥

原文链接:https://www.jianshu.com/p/fc9828692ba0

文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐