Learning
VOL. VI · NO. 30 · Mathematics · 01 JAN 1970

多臂老虎机:探索与利用的最优平衡

数学 · 01 JAN 1970 · 10 min read · 2,302 words
· · ·

产品经理的数学课 · 第30讲

多臂老虎机:探索与利用的最优平衡

你有 5 个广告创意,不知道哪个最好。每次只能展示一个,用户点击了才知道效果。应该继续用已知最好的(利用),还是试试其他的(探索)?多臂老虎机算法帮你找到最优平衡。


前言

你管理一个内容推荐系统,有 10 个候选内容:

问题:应该推荐哪个内容?

挑战

  • 你不知道哪个内容的点击率最高
  • 每次推荐一个内容,观察用户点击
  • 你希望尽快找到最优内容,同时不浪费太多流量

这就是「探索-利用困境」(Exploration-Exploitation Tradeoff)

  • 利用:推荐已知点击率最高的内容(短期收益最大)
  • 探索:尝试其他内容(发现可能更好的选项)

多臂老虎机(Multi-Armed Bandit):解决这个困境的算法。


核心概念

什么是多臂老虎机?

单臂老虎机:拉杆子,有概率赢钱。你不知道每个杆子的赢钱概率,想找到最优的。

多臂老虎机:有多个杆子,每个杆子的赢钱概率不同。每次只能拉一个杆子,想最大化总收益。

数学表示

  • 有 K 个臂(选项),每个臂的收益分布不同
  • 每次选择一个臂,观察收益
  • 目标:最大化累积收益

简单策略

1. 纯利用(Greedy):总是选择当前估计最优的臂

  • 优点:短期收益最大
  • 缺点:可能陷入次优臂

2. 纯探索(Uniform):随机选择臂

  • 优点:充分探索所有臂
  • 缺点:浪费太多流量在差的臂上

3. ε-贪婪(ε-Greedy):以概率 ε 随机探索,以概率 1-ε 选择当前最优

  • 平衡探索和利用
  • 但 ε 固定,不随时间调整

UCB 算法(Upper Confidence Bound)

UCB:选择「估计值 + 不确定性」最大的臂。

$$ UCB_i = \hat{\mu}_i + c \sqrt{\frac{\ln t}{n_i}} $$

其中:

  • $\hat{\mu}_i$:臂 i 的平均收益
  • $n_i$:臂 i 被选择的次数
  • $t$:总轮次
  • $c$:探索系数

特点

  • 自动平衡探索和利用
  • 被选择次数少的臂,不确定性高,会被优先探索
  • 随着时间推移,探索逐渐减少

汤普森采样(Thompson Sampling)

汤普森采样:基于贝叶斯思想的随机策略。

步骤

  1. 为每个臂维护一个后验分布(如 Beta 分布)
  2. 从每个臂的后验分布中采样一个值
  3. 选择采样值最大的臂
  4. 观察结果,更新后验分布

特点

  • 自然平衡探索和利用
  • 实现简单
  • 通常表现优于 UCB

在线学习 vs 离线学习

在线学习:每次观察一个结果,立即更新模型

  • 适合:实时决策(如推荐系统)
  • 挑战:需要快速更新

离线学习:收集一批数据,一次性训练模型

  • 适合:离线评估(如 A/B 测试分析)
  • 挑战:不能实时调整

多臂老虎机是在线学习:每次观察一个结果,立即更新对臂的估计。


产品经理的应用

应用场景一:广告创意优化

你有 5 个广告创意,想找到点击率最高的。

汤普森采样过程

轮次选择点击Beta 分布更新
1ABeta(2,1)
2BBeta(1,2)
3ABeta(3,1)
4CBeta(2,1)
5ABeta(3,2)

结果:创意 A 的 Beta 分布 Beta(3,2) 期望 60%,被选择最多。

行动:创意 A 最优,继续使用。

应用场景二:推荐系统内容优化

你有 10 个候选内容,想最大化点击率。

UCB 算法

内容展示次数点击次数点击率UCB 值
11001010%12%
250816%20%
320315%22%

选择:内容 3 的 UCB 值最高(虽然点击率不是最高,但不确定性大,值得探索)。

行动:展示内容 3,观察结果。

应用场景三:定价策略优化

你有 3 种定价策略(99元、129元、159元),想最大化收入。

多臂老虎机

  • 臂 1(99元):转化率高,单价低
  • 臂 2(129元):转化率中,单价中
  • 臂 3(159元):转化率低,单价高

目标:最大化收入 = 转化率 × 单价

汤普森采样:自动探索三种策略,找到收入最高的。

结果:129 元策略收入最高(平衡了转化率和单价)。


常见误区

误区一:总是用纯利用策略

「总是推荐点击率最高的内容」

纯利用会陷入次优

  • 可能错过更好的选项
  • 用户可能厌倦(如果总是推荐同一种内容)

必须平衡探索

误区二:ε 固定不变

「ε-贪婪策略用 ε=0.1」

固定 ε 不是最优

  • 初期需要更多探索(ε 大)
  • 后期应该更多利用(ε 小)

应该动态调整 ε(如 ε = 1/t)。

误区三:汤普森采样总是最优

「汤普森采样比 UCB 好」

汤普森采样通常表现好,但:

  • 需要选择合适的先验
  • 在某些情况下 UCB 更好
  • 需要根据具体问题选择

误区四:多臂老虎机能解决所有问题

「任何 A/B 测试都用多臂老虎机」

多臂老虎机适用于

  • 实时决策(如推荐系统)
  • 需要快速学习
  • 选项数量中等

不适用于

  • 离线评估(用 A/B 测试)
  • 选项数量很大(计算成本高)
  • 需要严格的统计显著性(用假设检验)

PM/BA 应用

场景多臂老虎机工具决策价值
广告创意汤普森采样最大化点击率
推荐内容UCB最大化用户参与
定价策略在线学习最大化收入
邮件标题ε-贪婪最大化打开率
落地页多变体测试最大化转化率

课后测验

题目 1

什么是「探索-利用困境」?

A. 应该总是利用已知最优选项
B. 应该总是探索新选项
C. 应该平衡利用已知最优和探索新选项
D. 应该随机选择选项

查看答案与解析

答案:C(应该平衡利用已知最优和探索新选项)

探索-利用困境

  • 利用:选择已知最好的选项(短期收益最大)
  • 探索:尝试其他选项(可能发现更好的)
  • 困境:两者冲突——探索会损失短期收益,利用可能错过更好的

多臂老虎机算法:自动平衡两者,最大化长期收益。

题目 2

你的 UCB 算法显示内容 A 的 UCB 值最高,但点击率不是最高。以下哪种解释最准确?

A. UCB 算法错误
B. 内容 A 被选择次数少,不确定性大,值得探索
C. 应该选择点击率最高的内容
D. 应该随机选择内容

查看答案与解析

答案:B(内容 A 被选择次数少,不确定性大,值得探索)

UCB 值 = 估计值 + 不确定性

  • 估计值:当前点击率
  • 不确定性:被选择次数少,不确定性大

内容 A 的 UCB 值高

  • 可能点击率高(估计值高)
  • 可能点击率中等,但不确定性大(值得探索)

行动:选择内容 A,观察真实点击率。

题目 3

以下哪种情况最适合使用多臂老虎机?

A. 离线评估两个版本的转化率
B. 实时推荐系统,需要快速学习用户偏好
C. 需要严格统计显著性的 A/B 测试
D. 选项数量很大(1000 个)

查看答案与解析

答案:B(实时推荐系统,需要快速学习用户偏好)

多臂老虎机的优势

  • 实时决策:每次观察一个结果,立即更新
  • 快速学习:自动平衡探索和利用
  • 在线学习:不需要离线训练

其他选项

  • A:离线评估用 A/B 测试
  • C:严格统计显著性用假设检验
  • D:选项数量大时计算成本高

本课要点

  1. 探索-利用困境:平衡利用已知最优和探索新选项
  2. ε-贪婪:简单策略,但 ε 固定不变
  3. UCB:选择估计值 + 不确定性最大的臂
  4. 汤普森采样:贝叶斯策略,自动平衡探索和利用
  5. 应用:广告创意、推荐系统、定价策略

延伸阅读

  • Burtini et al., 《A Tutorial on Thompson Sampling》 — 汤普森采样教程
  • Lattimore & Szepesvári, 《Bandit Algorithms》 — 多臂老虎机教材
  • Scott, 《A Modern Bayesian Look at the Multi-Armed Bandit》 — 贝叶斯视角的多臂老虎机

下一步

本课程已结束!🎉

回顾你学到的:

  • 数学基础:集合、逻辑、概率、统计、微积分、线性代数
  • 数据分析方法:描述性统计、假设检验、回归分析、时间序列
  • 决策与优化:成本效益、博弈论、决策树、优化理论
  • 产品应用:A/B 测试、转化率分析、用户分群、定价策略

继续学习

  • 实践项目:用真实数据应用所学知识
  • 工具学习:Python/R/SQL
  • 进阶课程:机器学习、深度学习

恭喜你完成了产品经理的数学课!数学不是终点,而是理解产品和用户的工具。用这些知识做出更好的决策。