Thompson Sampling for Contextual Bandits with Linear Payoffs(线性收益)

参考论文:
Agrawal S , Goyal N . Thompson Sampling for Contextual Bandits with Linear Payoffs[J]. 2012.

摘要

有关Thompson Sampling理论性能的许多问题仍未解决
本文设计和分析

  • Thompson Sampling algorithm
  • 随机 contextual multi-armed bandit 问题(上下文信息由自适应的adversary提供)
  • 线性收益函数

Introduction

MAB问题主要用于为许多顺序决策问题中固有的勘探/开发权衡建模。

1. contextual MAB

在这个问题中,在每轮T轮中,一个learner会从N个action中选择一个最好的,N个action称为N个arms。

在选择要哪个arms之前,learner会看到与每个arm i相 关联的d维特征向量bi,称为“上下文”。

learner将这些特征向量与她过去使用过的arm的特征向量和reward一起使用,以选择在当前回合中要选择的arm。
随着时间的流逝,learner的目标是收集有关特征向量和reward如何相互关联的足够信息,以便她可以确定地通过观察特征向量来预测哪条arm可能会提供最佳reward。

learner与一类预测变量竞争,其中每个预测变量都接受特征向量并预测哪条arm会获得最佳回报。如果learner可以保证在事后预测中所做的工作与最佳预测者的预测几乎一样(即,regret很低——用于评判该learner(算法)的有效性),那么该learner可以成功地与该类竞争。

pridictor由d为参数μˉ\bar{\mu}μˉ​来定义,然后根据biTμˉb_{i}^{T} \bar{\mu}biT​μˉ​来将arms排序
即:假设有个未知参数μ\muμ,则每个arm对应的reward为biTμˉb_{i}^{T} \bar{\mu}biT​μˉ​,学习者的目标就是学习该未知参数μ\muμ

2. Thompson sampling(TS)

基本思想是:假设每个arm的reward分布的基础参数具有简单的先验分布,并且在每个时间步长,根据该先验分布成为最佳arm的后验概率来选择arm

主要包含以下参数:

  • 一组参数μ\muμ
  • 关于这些参数的先验分布p(μˉ)p(\bar{\mu})p(μˉ​)
  • 过去的观察结果D,由t-1时刻的上下文b,奖励r组成
  • 似然函数P(r∣b,μ~)P(\mathcal{r} |b, \tilde{\mu})P(r∣b,μ~​)
    ,即给定上下文b和参数μ\muμ的情况下得到奖励的概率
  • 后验分布P(μ~∣D)∝P(D∣μ~)P(μ~)P(\tilde{\mu} | \mathcal{D}) \propto P(\mathcal{D} | \tilde{\mu}) P(\tilde{\mu})P(μ~​∣D)∝P(D∣μ~​)P(μ~​),其中P(D∣μ~)P(\mathcal{D} | \tilde{\mu})P(D∣μ~​)是似然函数

在每一轮中,TS根据具有最好参数的后验概率来选择arm。
一种简单的方法是使用后验分布为每个arm生成参数样本,然后选择生成最佳样本的arm。

使用高斯先验高斯似然函数

在本文中,我们使用基于鞅的分析技术(novel martingale-based analysis techniques)来证明TS对具有线性收益函数的随机contextual bandits实现了高概率,接近最优的regret界限。

3.问题设置和算法描述

3.1 问题设置

  • N个arms,每个arm i
  • 时间t
  • 上下文向量biT(t)b_{i}^{T}(t)biT​(t)
  • 要学习的参数μ\muμ
  • 时间t内选择的动作a(t)a(t)a(t)
  • 历史信息Ht−1={a(τ),ra(τ)(τ),bi(τ),i=1,…,N,τ=1,…,t−1}\mathcal{H}_{t-1}=\left\{a(\tau), r_{a(\tau)}(\tau), b_{i}(\tau), i=1, \ldots, N, \tau=1, \ldots, t-1\right\}Ht−1​={a(τ),ra(τ)​(τ),bi​(τ),i=1,…,N,τ=1,…,t−1},包括t-1时刻之前已经选择的arm及其对应的rewards,和t-1时刻观察到的上下文向量bi(τ)b_{i}(\tau)bi​(τ)

给定bi(t)b_{i}(t)bi​(t),时间t内arm i 的奖励是通过平均量biT(t)b_{i}^{T}(t)biT​(t)的(未知)分布生成的,其中
μˉ∈Rd\bar{\mu} \in \mathbb{R}^{d}μˉ​∈Rd是一个固定但未知的参数:

E[ri(t)∣{bi(t)}i=1N,Ht−1]=E[ri(t)∣bi(t)]=bi(t)Tμ\mathbb{E}\left[r_{i}(t) |\left\{b_{i}(t)\right\}_{i=1}^{N}, \mathcal{H}_{t-1}\right]=\mathbb{E}\left[r_{i}(t) | b_{i}(t)\right]=b_{i}(t)^{T} \muE[ri​(t)∣{bi​(t)}i=1N​,Ht−1​]=E[ri​(t)∣bi​(t)]=bi​(t)Tμ

  • 时间t内最优的arma∗(t)a^*(t)a∗(t),a∗(t)=argmaxibi(t)Tμa^*(t)=argmax_ib_i(t)^T\mua∗(t)=argmaxi​bi​(t)Tμ
  • Δi(t)\Delta_i(t)Δi​(t) 为时间t时最优arm和arm i的平均reward之间的差值:

Δi(t)=ba∗(t)(t)Tμ−bi(t)Tμ\Delta_i(t)=b_{a^*(t)}(t)^T\mu-b_i(t)^T\muΔi​(t)=ba∗(t)​(t)Tμ−bi​(t)Tμ
则时间t内的regret定义为:

regret(t)=Δa(t)(t)regret(t)=\Delta_{a(t)}(t)regret(t)=Δa(t)​(t)
regret(t)=ra∗(t)(t)−ra(t)(t)regret(t)=r_{a^*(t)}(t)-r_{a(t)}(t)regret(t)=ra∗(t)​(t)−ra(t)​(t)
算法的目标是最小化时间T内总的regret

且假设(对所有t和i):

∥bi(t)∥≤1,∥μ∥≤1,and Δi(t)≤1\left\|b_{i}(t)\right\| \leq 1,\|\mu\| \leq 1, \text { and } \Delta_{i}(t) \leq 1∥bi​(t)∥≤1,∥μ∥≤1, and Δi​(t)≤1
使得regret界限无标度。

3.2 Thompson Sampling 算法

使用高斯似然函数高斯先验设计汤普森采样算法。

更精确地,假设在给定上下文bi(t)b_{i}(t)bi​(t)和参数μ\muμ的情况下,在时间t处:

  • ri(t)r_i(t)ri​(t)的似然由高斯分布N(bi(t)Tμ,v2)\mathcal{N}\left(b_{i}(t)^{T} \mu, v^{2}\right)N(bi​(t)Tμ,v2)的概率密度函数给出。(v是给定的值)

令:

B(t)=Id+∑τ=1t−1ba(τ)(τ)ba(τ)(τ)Tμ^(t)=B(t)−1(∑τ=1t−1ba(τ)(τ)ra(τ)(τ))\begin{aligned} B(t) &=I_{d}+\sum_{\tau=1}^{t-1} b_{a(\tau)}(\tau) b_{a(\tau)}(\tau)^{T} \\ \hat{\mu}(t) &=B(t)^{-1}\left(\sum_{\tau=1}^{t-1} b_{a(\tau)}(\tau) r_{a(\tau)}(\tau)\right) \end{aligned}B(t)μ^​(t)​=Id​+τ=1∑t−1​ba(τ)​(τ)ba(τ)​(τ)T=B(t)−1(τ=1∑t−1​ba(τ)​(τ)ra(τ)​(τ))​

  • μ\muμ 的先验分布服从~N(μ^(t),v2B(t)−1)\mathcal{N}\left(\hat\mu(t) , v^{2}B(t)^{-1}\right)N(μ^​(t),v2B(t)−1),则TS算法需要从N(μ^(t),v2B(t)−1)\mathcal{N}\left(\hat\mu(t) , v^{2}B(t)^{-1}\right)N(μ^​(t),v2B(t)−1)分布中采样,得到采样值μ~(t)\tilde{\mu}(t)μ~​(t);μ^(t)\hat{\mu}(t)μ^​(t)是要学习的参数μ\muμ在时间t内的均值
  • 则t+1时刻的后验分布可根据Pr(μ~∣ri(t))∝Pr(ri(t)∣μ~)P(μ~)Pr(\tilde{\mu} | r_i(t)) \propto Pr(r_i(t) | \tilde{\mu}) P(\tilde{\mu})Pr(μ~​∣ri​(t))∝Pr(ri​(t)∣μ~​)P(μ~​)计算得出。

1)算法一


是对每个时间t内的所有arm,从所给分布采样整体的参数miu
然后再对每个arm i 求reward:bi(t)Tμ~(t)b_i(t)^T\tilde{\mu}(t)bi​(t)Tμ~​(t)

2)算法二


是在每个时隙t内,针对每个arm t 直接根据奖励的分布采样得到每个arm的奖励采样值。

3)算法三


首先所有上下文向量以及要学习的参数都是独立于每个arm i的,有新的定义:

即不同的arm会有不同的参数μ\muμ,该算法会为每个arm i 的均值μi(t)\mu_i(t)μi​(t)和Bi(t)B_i(t)Bi​(t)维持单独的估计。

论文笔记——Thompson Sampling for Contextual Bandits with Linear Payoffs(线性收益)相关推荐

  1. 论文笔记《Knowledge Enhanced Contextual Word Representations》

    Motivition 作者的出发点有几个: 尽管BERT这种预训练模型取得了state-of-art的成绩.但是.因为他们没有包含真实世界的实体,所以导致这些模型也很难覆盖真实世界的知识. 没有实体没 ...

  2. 论文笔记:Nonlinear Dimensionality Reduction by Locally Linear Embedding

    一.基本信息 论文题目:<Nonlinear Dimensionality Reduction by Locally Linear Embedding > 发表时间:Science  20 ...

  3. 【论文笔记】Revisiting graph based collaborative Filtering:一种线性残差图图卷积网络方法

    Revisiting Graph based Collaborative Filtering:A Linear Residual Graph Convolutional Network Approac ...

  4. 【实践】基于强化学习的 Contextual Bandits 算法在推荐场景中的应用

    文章作者:杨梦月.张露露 内容来源:滴滴科技合作 出品平台:DataFunTalk 导读:本文是对滴滴 AI Labs 和中科院大学联合提出的 WWW 2020 Research Track 的 Or ...

  5. Introduction to Multi-Armed Bandits——04 Thompson Sampling[2]

    Introduction to Multi-Armed Bandits--04 Thompson Sampling[2] 参考资料 Russo D J, Van Roy B, Kazerouni A, ...

  6. 论文笔记【A Comprehensive Study of Deep Video Action Recognition】

    论文链接:A Comprehensive Study of Deep Video Action Recognition 目录 A Comprehensive Study of Deep Video A ...

  7. Bypassing the Monster: A Faster and Simpler Optimal Algorithm for Contextual Bandits under Realizabi

    摘要 我们考虑可实现性假设下的一般(随机)上下文老虎机问题,即预期奖励,作为上下文和动作的函数,属于一般函数类 F.我们设计了一种快速简单的算法,可以实现统计上最优的后悔 在所有 T 轮中,只有 O( ...

  8. Deep Learning论文笔记之(七)深度网络高层特征可视化

    Deep Learning论文笔记之(七)深度网络高层特征可视化 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文,但老感 ...

  9. Deep Learning论文笔记之(五)CNN卷积神经网络代码理解

    Deep Learning论文笔记之(五)CNN卷积神经网络代码理解 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文,但 ...

  10. 论文笔记:PRIN: Pointwise Rotation-Invariant Networks

    PRIN: Pointwise Rotation-Invariant Networks 1.四个问题 要解决什么问题? 使用特殊结构的神经网络来提取具有旋转不变性的点云特征. 用了什么方法解决? 提出 ...

最新文章

  1. ASP.NET MVC 的 WebGrid 的 6 个重要技巧 【已翻译100%】
  2. linux笔记本不关机直接合上,笔记本电脑不关机直接合上行吗
  3. Java SE 12扩展Switch语句/表达式完整指南
  4. (蓝桥杯)2018JAVA B组 日志分析
  5. 【Python】 Python 基础
  6. Astro Panel Pro for Mac - ps天文景观插件 支持ps2021
  7. Netty堆外内存泄露排查与总结 1
  8. Element-UI-的登录页面_改进---Element-UI工作笔记006
  9. /usr/include/pcap/pcap.h源码
  10. [QT入门篇]编程基础知识
  11. 佩戴十字架项链有什么特殊含义?
  12. Power Query For Excel数据处理利器
  13. 酷睿i9 12900HX性能怎么样 i912900hx相当于桌面什么cpu
  14. 一文理清集成运算放大器 ---- 总结篇
  15. FlashFXP绿色版
  16. android流光字体实现,CSS实现字体流光/高光滑动
  17. 企鹅号快速赚钱方法?企鹅号收益情况?
  18. 数据集处理(三)——打乱数据集
  19. 一文看懂WebRTC媒体服务器
  20. C语言指针类型的意义

热门文章

  1. Minecraft Mod 开发:目录
  2. 深入浅出TensorFlow2函数——tf.data.Dataset.padded_batch
  3. c语言中以只读方式打开,C 中如何以只读方式打开文件
  4. 36. linux系统日志在哪里看
  5. 视频教程-Unity5入门及进阶项目实战 星际迷航-Unity3D
  6. Codeforces Round #609 (Div. 2) C. Long Beautiful Integer
  7. 如何出一幅具有三维立体显示的地形示意图
  8. SpringMVC整合activiti Modeler
  9. png转bmp,png批量转成bmp
  10. 利用计算机打字教学设计,“第7课 玩打字游戏”教学设计