发布于 2026-01-06 2 阅读
0

多臂老虎机:自适应测试实用指南 DEV 的全球展示挑战赛,由 Mux 呈现:展示你的项目!

多臂老虎机:自适应测试实用指南

由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!

我既是数学家,又是产品经理,还是创业爱好者、数据顾问和全球市场专家——我一直认为多臂老虎机(MAB)在测试和优化策略方面具有颠覆性潜力,但它通常只停留在纸面上,因为它被认为过于复杂,或者企业只是犹豫不决。目前为止,我已经成功地在不同的项目中应用了多臂老虎机,今天我想分享这些经验,重点介绍一个来自游戏行业的有趣案例。

了解多臂老虎机

让我来探讨两个相关但又不同的概念:多臂老虎机作为数值决策算法,以及多臂老虎机测试作为A/B测试的替代方案。前者类似于传统的测试方法,而后者则是一种使这一切成为可能的基本算法。

想象一下,你身处赌场,站在一排提供不同奖励的老虎机前。这是一个经典的难题:你是应该出于贪婪而选择看起来奖励最高的那台,还是应该出于探索精神而尝试其他机器,希望能找到更好的?

这个赌场比喻完美地阐释了多臂老虎机的基本原理。每个“臂”都会返回我们想要最大化或最小化的值,而这些值总体上会随时间推移形成某种分布。难点在于如何在平衡数据收集、探索与收益最大化、利用的同时,准确地构建这些分布。

数学基础

多臂算法 (MAB) 解决的是奖励随时间推移的优化问题。从数学角度来说,理想情况下,应该立即确定每个臂的最佳分配,然后将剩余时间集中用于从该臂获取奖励。或许最具体的实现方式是 ε-贪婪算法,它用一条简单的规则将这一概念具体化:以 0.9 的概率利用表现最佳的臂;以 0.1 的概率探索所有其他臂。

然而,ε-贪婪策略有两个很大的缺点:

  • 解决方案不稳定:使用固定的 epsilon 值进行调整很困难,并且性能可能会因微小的变化而发生很大的变化。
  • 适应性差: ε-贪婪算法在非平稳系统中适应性较差,因为系统中臂的分布会随时间变化;它需要更长的时间才能收敛到新的最优状态。

单抗体测试与 A/B 测试:详细比较

传统A/B测试

传统的A/B测试方法是将受众群体固定划分,在测试期结束后分析各项指标,然后将表现最佳的版本推广到所有受众。这种方法虽然简单,但效率可能不高。

单克隆抗体检测

A/B 测试从规模相同的受众群体开始,而 MAB 则会根据性能指标动态调整每个群体的规模。此外,MAB 不会等待所有用户都看到效果最佳的版本,而是在向 95% 的用户展示该版本后停止测试,保留 5% 的用户用于探索性测试。

更重要的是,探索和利用之间的平衡程度决定了收敛时间,即 MAB 达到理想状态所需的时间。此外,MAB 测试需要动态用户重新分配的基础设施。因此,它并不适用于所有测试场景。

图片描述

MAB 的主要优势

  • 实时适应:在动态环境中,MAB 的优势尤为突出。例如,当流量质量波动时,比如 A 方案连续两周表现更佳,之后 B 方案取而代之,MAB 会自动调整流量分配比例。
  • 降低机会成本和停机时间:对于规模较小的公司或非常重要的测试而言,某些 A/B 测试组表现平庸可能会严重影响月度指标。MAB 通过快速降低表现不佳版本的流量来降低这种风险。

局限性和注意事项

尽管MAB具有诸多优势,但它也存在一些明显的不足:

  • 实现复杂性:技术、概念以及数学上的复杂性会增加出错的可能性。
  • 适用范围有限:某些场景,例如测试需要多天交互的客户支持系统或出租车司机的绩效,并不适合快速重新分配。

最佳使用场景

在以下情况下,单克隆抗体可能非常有效:

  • 电子商务动态定价:像亚马逊这样的公司使用 MAB 算法,根据客户行为、需求和竞争对手的定价进行实时价格调整。
  • 媒体购买和流量分配:广告竞价和市场状况的潜在变化使得 MAB 非常适合跨媒体来源的动态学习和实时预算分配。
  • 游戏货币化:非常适合针对不同玩家群体优化游戏内购买和定价策略。

实际应用:游戏开发案例研究

想象一下,有一款太空农场游戏,它似乎在营销方面做得非常出色,但却仍然未能成功。挑战在于:如何在不简单地全面提价的情况下提升玩家终身价值——因为全面提价无疑会赶走玩家,降低留存率。

挑战

这款游戏包含多种盈利模式:游戏内商店和活动优惠、战斗通行证订阅等等。由于玩家群体众多,盈利模式的复杂性体现在方方面面,既要兼顾用户留存,又要优化收益,同时还要考虑到大部分玩家都是新玩家。

解决方案:自适应价格优化

我们开发了一种基于汤普森采样的多臂老虎机系统,以贝叶斯方法解决了多臂老虎机问题。其工作原理如下:

  • 初始化先验信念:对价格的每个变体的回报保持非信息先验分布,通常是 Beta 分布。
  • 行动选择:从每个分布中抽取奖励值,并选择值最高的选项。
  • 观察奖励:收集有关所选变体的实际性能数据。
  • 更新分布:根据观察到的结果对概率分布进行贝叶斯更新。

实施过程

  1. 基于价格弹性曲线分析优化可能性
  2. 与游戏设计师合作制定细分策略
  3. 实施行为跟踪
  4. 部署 MAB 进行动态价格优化

图片描述

情境增强

我们通过补充与用户行为相关的额外上下文信息,进一步提升了系统的性能,这些信息包括:

  • 与游戏中的事件(万圣节、圣诞节等)相关的购买模式
  • 与历史报价的互动
  • 玩家生命周期阶段

这些上下文信息将提高系统预测的质量、收敛速度,并减少遗憾——即次优选择的机会成本。

图片描述

结果与表现

生产环境的实施在100天内取得了优异的成果,并出现了以下里程碑事件:

  • 初步稳定期在30天内出现。
  • 成功适应了多次交通质量变化
  • 保持稳定的客户流失率
  • 与之前的固定价格版本相比,ARPU 提高了 20%。
  • 无需人工干预,即可针对不同流量来源自动优化

图片描述

关键要点和最佳实践

  • 测试时长:在适当情况下,MAB 的收敛速度可以比 A/B 测试快 2-3 倍。
  • 用例选择:对于简单的测试(例如按钮颜色变化),在实现 MAB 时应避免过度设计。应根据具体需求和潜在收益选择工具。
  • 合成测试:在生产部署之前,对模拟预期在线情况的合成示例进行大量回测。
  • 简单与复杂:尽管多属性决策(MAB)确实有很多复杂的变体,但有时更简单的方法效果更好。我们应该始终考虑额外的复杂性是否真的能满足特定需求。

结论

如果实施得当,多臂老虎机算法(MAB)是一种极其强大的优化技术。成功的关键在于了解它的能力范围和局限性,选择合适的应用问题,并在实现复杂度之间找到平衡。复杂的数学原理固然强大,但也要​​求在实施过程中格外谨慎,以免犯下代价高昂的错误。
并非所有测试都需要MAB的复杂度,但在动态环境和需要实时优化的情况下,MAB相比传统测试方法具有显著优势。

文章来源:https://dev.to/pzapolskii/multi-armed-bandits-a-practical-guide-to-adaptive-testing-1n7g