火山引擎 VeDI:如何高效使用 A/B 实验,优化 APP 推荐系统
更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群
在移动互联网飞速发展的时代,用户规模和网络信息量呈现出爆炸式增长,信息过载加大了用户选择的难度,这样的背景下,推荐系统应运而生,为用户提供个性化的内容推荐。推荐系统在不断迭代中,其算法、策略、特征、功能和用户界面时常得到更新和优化,其中推荐算法的调整尤为关键。然而,由于深度学习模型的广泛应用,推荐算法调整后的用户体验和效果难以通过经验直接判断。
为了更准确地评估和优化推荐系统,A/B 实验成为了一个不可或缺的工具。A/B 实验能够量化各项指标的变化,从而对推荐系统的效果进行科学评估,并为后续的优化提供数据支持。本文将以火山引擎数智平台 VeDI 旗下的 A/B 测试平台(DataTester)为例,介绍字节跳动如何使用其能力,持续实现推荐系统的精准优化。
在推荐系统优化探索过程中,不同算法叠加不同的策略或功能效果,要通过实验参数做功能组合的 A/B 实验,是找到最优策略的最高效的方式,合理的实验平台及实验配置设计,可以达到几乎不新增加开发工作量的效果。以火山引擎 A/B 测试 DataTester 为例,它目前支持 Number、String、Boolean、Json 类型的实验参数配置,帮助用户直接实现推荐系统策略的不同维度的 A/B 实验。
以短视频 APP 电商推荐场景为例,假设商品内容展示的时机不同,会对用户的视频消费时长和电商 GMV 产生影响,针对此策略的 A/B 实验可以如下设计:
对照组:视频开始播放时立即展示商品卡片
实验组 1:视频播放 5 秒后展示商品卡片
实验组 2:视频播放 10 秒后展示商品卡片
在上述实验中,火山引擎 DataTester 可以支持通过实验参数的调整,直接实现对照组、实验组 1、实验组 2 的分组。通过在代码中解析参数并实现视频播放 x 秒后展示商品卡片,即可完成实验。若后续要新增如“视频播放 8 秒后展示商品卡片”的实验效果,也无需修改代码,仅需要继续增加一个新实验参数的实验即可。在此基础上,可以创建几十组甚至更多组不同参数值的实验,并取得最优策略,而过程中几乎无需耗费额外的开发人力。
需要注意的是,由于实验参数是一个功能控制配置,因此在进行 A/B 实验参数设计的时候需要避免一个误区:不要按实验设计的维度来设计实验参数,而要按照功能控制的维度进行实验设计。这一点在移动端 APP 实验中尤为重要,因为 APP 产品通常发版周期长,变更频率低,而有了功能控制维度的实验参数,就可以在不发版的情况下,随时开启多组不同参数的 A/B 实验,筛选最优参数组合在线上生效。
火山引擎 DataTester 作为火山引擎数智平台 VeDI 旗下的核心产品,源于字节跳动长期的技术和业务沉淀。目前,DataTester 已经服务了上百家企业,包括美的、得到、博西家电、乐刻健身等知名品牌。这些企业在业务环节中得益于 DataTester 的科学决策支持,实现了业务的持续增长和优化。
点击跳转DataTester了解更多
版权声明: 本文为 InfoQ 作者【字节跳动数据平台】的原创文章。
原文链接:【http://xie.infoq.cn/article/e47cd5fbae63e1809bf8b30c9】。文章转载请联系作者。
评论