多臂赌博机,multi-armed bandit problem(2):
来源:互联网 发布:常用的有限元软件 编辑:程序博客网 时间:2024/05/29 15:37
感觉多臂赌博机方面的中文文献很少,偶尔碰到,记录一下,方便其它人学习。感谢原作者:http://mlyixi.byethost32.com/blog/?cat=35
这一节我们来了解下多臂赌博机问题的提出和理论基础,最后讨论下UCB系列策略.当然,这里的多臂赌博机问题是随机式的. 随机式多臂赌博机的问题描述就不在这里重复了,可以参考上一节
理论
问题的证明
Lai & Robbins在1985年论证了对于某些特定的分布(只有一个实参的分布),存在有策略使得它的累积遗憾的期望服从
当然他们也提出了一些针对特定分布的策略,虽然结果较好(对数增长的常数项较小),但是由于计算复杂度和特定分布的限制,并不具有较好的实用性.
改进
为了克服上面的缺点, Agrawal提出了基于采样平均值作为上部信心指数(upper confidence index)
的多臂赌博机策略,它将各臂采样平均值的某些函数作为该臂优越性的指标,然后总选取最优越的臂. 同时证明结果显示它们同样服从对数增长,只不过对数增长的常数项较大了些.
UCB策略
UCB1
该策略已经在上一节讨论过了,这里只列举下算法.
UCB1算法:
在前K K轮,每臂各选择一次,
在t=K,K+1... t=K,K+1...轮:
- 选择指数
Ii Ii最大的臂,其中Ii=x¯i+2logtni−−−−√ Ii=x¯i+2logtni,其中x¯i x¯i是均值,ni ni是臂i i当前累积被选择的次数- 记录获得的奖励,并更新
x¯i x¯i和ni ni
UCB2
UCB2算法
在前K K轮,每臂各选择一次,并置ri=0 ri=0
- 选出指数
Ii Ii最大的臂,其中Ii=x¯<em>i+a</em>n,ri Ii=x¯<em>i+a</em>n,ri,其中, 其中an,ri=(1+α)ln(en/τ(r))2τ(r)−−−−−−−−−−−−−−−−√ an,ri=(1+α)ln(en/τ(r))2τ(r)τ(r)=⌈(1+α)r⌉ τ(r)=⌈(1+α)r⌉- 选择该臂
τ(ri+1)−τ(ri) τ(ri+1)−τ(ri)次ri++ ri++定理: 如果
n≥max12Δ2i n≥max12Δi2,则总的遗憾期望不超过∑i:μi<μ∗((1+α)(1+4α)ln(2eΔ2in)2Δi+cαΔi) ∑i:μi<μ∗((1+α)(1+4α)ln(2eΔi2n)2Δi+cαΔi)
e-Greedy策略
在多臂赌博机问题中贪婪算法并不适用,但是,可以改良一下,如Sutton &Barto在1998年提出的
一个好的改良叫做
定义参数
ϵn−greedy ϵn−greedy算法
在前K K轮,每臂各选择一次,
- 以
1−ϵn 1−ϵn的概率选择最大的采样均值的臂,而以ϵn ϵn的概率去随机选择臂.- 更新
ϵn ϵn
虽然该方法在仿真中能得到很好的结果,但实际情况是各臂期望不可知,无法确定较好的
一般来说,如果
UCB1-NORMAL
UCB1-NORMAL算法
1. 如果有臂被选择的次数少于⌈8logn⌉ ⌈8logn⌉,那么就选择该臂
2. 否则,选择指数Ii Ii最大的臂,其中Ii=x¯i+16(qi−nix¯2i)ln(n−1)(ni−1)(ni)−−−−−−−−−−−−√ Ii=x¯i+16(qi−nix¯i2)ln(n−1)(ni−1)(ni), 其中qi=∑x2i qi=∑xi2
3. 更新x¯i x¯i和qi qi定理
UCB1-NORMAL算法下总的遗憾期望不超过256logn(∑i:μi<μ∗σ2iΔi)+(1+π22+8lnn)(∑i=1KΔi) 256logn(∑i:μi<μ∗σi2Δi)+(1+π22+8lnn)(∑i=1KΔi)
好了,这样就列举完了UCB基本算法了.当然,还有很多变种,留待以后补充. 但其实,各UCB算法的差异并不足够大.
- 多臂赌博机,multi-armed bandit problem(2):
- 多臂赌博机,multi-armed bandit problem(1):
- 多臂赌博机,multi-armed bandit problem(3):
- 多臂强盗(multi-armed bandit)问题探究
- 多臂强盗(multi-armed bandit)问题探究-续
- 多臂强盗(multi-armed bandit)问题探究-续2
- Multi-armed Bandit Experiments
- n-armed bandit problem
- n-armed bandit problem
- n-armed bandit problem
- N-armed bandit problem
- bandit, 多臂赌博机中的探索-利用模型
- n-armed bandit notes_e-greedy
- 强化学习导论(Reinforcement Learning: An Introduction)读书笔记(二):多臂赌博机(Multi-arm Bandits)
- n-armed bandit greedy-e 算法
- n-armed bandit _ ucb1 algorithm
- Reforcement Learning ---- Multi-armed Bandits
- 增强学习 | 多臂赌博机模型
- 线上bug重现方法之一(捌点钟学院)
- 继承AFHTTPSessionManager出现的_OBJC_CLASS错误解决
- jquery 扩展编写及时更新
- 多线程编程浅析(1)——概述
- 内核链表
- 多臂赌博机,multi-armed bandit problem(2):
- UBA的录音在线播放
- QT连接SQL Server数据库,并查询显示其中的数据
- 【自动化运维】初识腾讯蓝鲸!
- MVP模式与MVC模式
- s:set标签的用法
- kali syn flood 简单尝试
- Web资源认证原理
- mac下显示/隐藏文件