概述
感觉多臂赌博机方面的中文文献很少,偶尔碰到,记录一下,方便其它人学习。感谢原作者:http://mlyixi.byethost32.com/blog/?cat=35
在上两节我们讨论的UCB系列算法面对的情况是静态的,即各臂的分布参数不会改变,于是我们就"乐观地面对不确定性"--根据采样平均值尽快地确定那个最好的臂.
但是在现实世界中收益结构是更复杂的,非静态的.特别是当它涉及到竞争的场景,如股票交易.我们称之为对抗模式多臂赌博机(adversarial bandit)
问题
数学化的问题描述可以参考第一节.
但是对于奖励矢量,有些异同:
- 它和静态时一样,必须是预先固定的.
- 各臂奖励期望随着轮数是变化的(准确地说是没有期望,或者说期望被对手动了手脚)
这时我们可以思考这种情况:对手能否总把参与者下一次的收益设为零?
定义
回想之前的UCB策略形成过程,我们的目标是尽快地选择那个期望最大的臂,并计算其与期望最大臂实际给出的奖励的差值作为遗憾.
现在我们的目标更复杂了:我们知道臂的统计参数是变化的!!! 我们显然不能指望选择总选择那个采样平均最大的臂了.
所以这里的策略也应该改变: 它是一种选择序列,虽然UCB最终也是给出一个序列,但是那个序列最终是收敛
的,而现在的序列是不收敛
的.
定义:策略序列和收益
策略A给定一个选择序列 j⃗ =(j1,…,jt) j→=(j1,…,jt),在t轮后总的收益是
GA(t)=Gj⃗ (t)=∑stXjs(s) GA(t)=Gj→(t)=∑stXjs(s)
那么我们用什么来作为理想状态呢? 当然是我们知道全部的奖励结果时.但是显然, 这是的遗憾太强了, 想想看,我们在静态时(UCB)都没这么做.
所以我们需要定义一个弱的遗憾,类似于UCB(同一个作者提出的嘛),我们定义理想状态是那个最佳单操作,即那些最蠢的操作里面最好的那个操作(总选择一个臂).
定义:弱遗憾 RA(T) RA(T)为:
RA(T)=Gmax(T)−GA(T)=(max∑t=1TXi(t))−(GA(T)) RA(T)=Gmax(T)−GA(T)=(max∑t=1TXi(t))−(GA(T))
EXP3
为什么叫EXP3? 因为是Exponential-weight algorithm for Exploration and Exploitation的缩写,指的是勘探和开发的指数权重算法.
EXP3算法
设置 γ∈[0,1] γ∈[0,1],初始化权重因子 ωi(1)=1,i=1,…,K ωi(1)=1,i=1,…,K
每一轮 t t:
- pi(t)=(1−γ)ωi(t)∑Kj=1ωj(t)+γK pi(t)=(1−γ)ωi(t)∑j=1Kωj(t)+γK
- 根据 pi(t) pi(t)的分布随机生成 it it作为下一次选择的臂
- 定义估计量 X^(t)=Xit(t)/pit(t) X^(t)=Xit(t)/pit(t)
- 更新选中臂的权重因子 ωit(t+1)=ωit(t)exp(γX^it(t)/K) ωit(t+1)=ωit(t)exp(γX^it(t)/K), 其它臂 ωj(t+1)=ωj(t) ωj(t+1)=ωj(t)
那么它的弱遗憾是对数增长的:
定理
对于EXP算法,在任意的轮数 T T下,其遗憾的期望满足
RA(T)≤(e−1)γGmax(T)+KlnKγ RA(T)≤(e−1)γGmax(T)+KlnKγ
证明从略.
这里问题来了,我们应该怎么选择 γ γ呢?
推论
如果 Gmax(T)≤g Gmax(T)≤g,则 γ=min(1,KlnK(e−1)g−−−−−√)
最后
以上就是活泼奇迹为你收集整理的多臂赌博机,multi-armed bandit problem(3): 问题 定义 EXP3的全部内容,希望文章能够帮你解决多臂赌博机,multi-armed bandit problem(3): 问题 定义 EXP3所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复