推荐系统的Exploration Exploitation 问题

简介

k-摇臂赌博机, k-armed bandit.
一个经典的模型. 这种赌博机有k个摇臂, 玩家投一个游戏币以后可以按下任意一个摇臂, 每个摇臂以一定的概率吐出硬币, 作为奖赏. 但这个概率玩家并不知道. 玩家的目标是通过一定的策略获得最大化的累积奖赏.

  • 探索
    exploration-only.
    将所有的机会均分给每个摇臂, 根据每个摇臂各自的吐硬币频率, 去近似它的吐硬币概率.
  • 利用
    exploitation-only. 根据已有的结论, 每次都选择最稳妥的方案.

用途

  • 用在个性化推荐中, 帮助用户探索新偏好, 不然推荐来推荐去都是差不多的东西.
  • 用在非个性化的热门推荐中, 不能每次都挑效果最好的那一批, 也要给新内容有出头之日的机会.

策略及变种

Epsilon-Greedy

因为尝试次数有限(游戏币有限), 所以探索利用是相矛盾的.$\epsilon 贪 心 算 法 对 二 者 进 行 折 中 , 每 次 尝 试 时 , 以 贪心算法对二者进行折中, 每次尝试时, 以 ,,\epsilon $的概率从k个摇臂中随机选一个进行探索, 以 1 − ϵ 1-\epsilon 1ϵ的概率选择已知吐硬币概率最大的摇臂进行利用.

Upper Confidence Bound

UCB, Upper Confidence Bound, 上界置信区间.
公式见下面. 基本思想是: 综合考虑一个臂的平均收益和上界置信区间,上界置信区间即 收益稳定性.

  • 公式一
    x j ˉ + 2 ln ⁡ n n j \bar {x_j}+\sqrt{\frac {2\ln n}{n_j}} xjˉ+nj2lnn
    where $\bar {x_j} $ is 第j个摇臂的平均收益; n j n_j nj is 当前为止第j个摇臂的选择次数; n n n is 当前为止总的选择次数.

  • 公式二
    推荐系统的Exploration Exploitation 问题_第1张图片
    where μ ^ i ( t ) \hat\mu_i(t) μ^i(t)表示第i个臂目前为止的平均收益, T i ( t ) T_i(t) Ti(t)表示第i个臂目前为止的选中次数, f(t)表示对次数的考虑, 一般 f ( t ) = t f(t)=t f(t)=t.
    figure 公式盗图, 来自参考[2].

汤普森采样

见参考[3].
把item的点击率用beta分布来描述, 不断根据后验反馈来修正分布密度函数中的 α , β \alpha,\beta α,β参数.

Collaborative Filtering Bandits

见参考[4].

参考

  1. lectures/ucb1.pdf
  2. the-upper-confidence-bound-algorithm
  3. 推荐系统EE问题与Bandit算法
  4. Collaborative Filtering Bandits
  5. Exploitation and Exploration in a Performance based Contextual Advertising System
  6. paper,A Contextual-Bandit Approach to Personalized News Article Recommendation
  7. paper,Exploitation and Exploration in a Performance based Contextual Advertising System
  8. paper,Unbiased Offline Evaluation of Contextual-bandit-based News Article Recommendation Algorithms

你可能感兴趣的:(推荐系统)