转载:E&E

2019-07-13  本文已影响0人  shudaxu

Exploration and Exploitation(探索与开发)是计算广告和推荐系统里常见的一个问题,在数学领域也被称为多臂赌博机问题(multi-armed bandit problem), 最早是从赌场上演化而来。

1. 问题复现

有一个赌徒在一排老虎机面前决定拉动其中某一个老虎机的臂(arm),用以期望获取的收益最高。当他在拉老虎机臂的时候,他并不知道哪一个老虎机赢钱的机率是最大的,以及他手头只有有限的money,

每玩一次都是有成本的,会损失一部分的本金。那么为了收益最高这个目标,该执行什么样的策略?

对应计算广告里的问题:假设资源池有若干广告(或若干类item),怎么知道该给每个用户展示哪个(类),从而获得最大的点击?是每次都挑效果最好那个么?那么新广告如何才有出头之日?

2. 名词解释

Exploitation: 开发利用, 选择执行目前已知最好的item,也就是回报概率最大的item

Exploration: 探索,探索发现潜在可能回报率更高的item

3. 评估指标

多臂(arm)问题里有一个概念叫做累计遗憾(regret),公式如下:

image.png

这里 t 表示轮数,at* 表示第t轮最优的那个arm, r表示回报

每次都会计算当前选择的arm获取的收益与最优arm期望最大收益之间的差距,把每次差距累加起来就是总的遗憾。

对应同样的问题,采用不同bandit算法来进行实验相同的次数,那么看哪个算法的总regret增长最慢,那么哪个算法的效果就是比较好的。

4. Bandit算法介绍

4.1 Epsilon-Greedy算法

4.1.1 算法过程描述

这里epsilon的值可以控制对exploit和explore的偏好程度,每次决策以概率ε去勘探Exploration,1-ε的概率来开发Exploitation,基于选择的item及回报,更新item的回报期望。

4.1.2 优点

4.1.3 缺点

4.2 UCB算法(Upper Confidence Bound 置信区间上界)

4.2.1 算法过程描述

4.2.2 优点

4.2.3 缺点

4.3 Thompson sampling算法

4.3.1 算法过程描述

4.3.2 优点

5. 效果比对

image.png

从图中可以看到随机的方法效果,随机来选差的很明显,E-Greedy下降了不少,

UCB比E-Greedy要好一些,Thompson取样的方法来做开始的时候要差但是长期来看会好一些。

整体效果来说,随机 < E-Greedy方法 < UCB <= Thompson Sampling

6. Bandit算法跟AB Test的比较

6.1 标准的AB Test通常包含以下两个方面

6.2 AB Test可能会存在的问题

6.3 Bandit算法相比优点

上一篇 下一篇

猜你喜欢

热点阅读