博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【RL系列】Multi-Armed Bandit笔记补充(二)
阅读量:5367 次
发布时间:2019-06-15

本文共 919 字,大约阅读时间需要 3 分钟。

本篇的主题是对Upper Conference Bound(UCB)策略进行一个理论上的解释补充,主要探讨UCB方法的由来与相关公式的推导。

UCB是一种动作选择策略,主要用来解决epsilon-greedy在选择时的低效率问题。对于解释UCB的使用机理上,我认为下面这篇文章写的还不错,深入浅出,只不过在公式推导上有一点点问题:

 

我们先来说一说epsilon-greedy策略在选择动作时有什么问题。如果epsilon值较小,例如epsilon = 0.1,那么每次实验都有10%的概率是随机选择动作,如果K值(选择较多)较大的话,这样的选择效率是较低的。为什么说这样的选择效率是较低的,因为在一定的实验次数内,epsilon-greedy只能大概率判断出最优动作,而对于其它动作的收益如何是没办法判断的。举个例子吧,如果说epsilon-greedy策略可以帮你找到最好吃的那家餐厅,那么UCB就可以帮你给餐厅的好吃程度排个序,但UCB的坏处也显而易见,这个排序并非是与真是期望情况严格相符的排序,只是估计而已,所以UCB常用于个性化推送而不适用于寻求最优。

为什么epsilon-greedy策略不能做出排序呢?实际上在实验次数不变的情况下,很有可能某些动作的实验次数不够多,这样很难保证我们由实验统计出的各个动作收益均值与实际的收益均值相吻合。其实在概率统计上,由均值产生的统计概率与真实期望总是会产生一定的差值,这个差值小于一个较小值delta的概率就可以称之为置信度。举个例子,如若置信度为95%时,我们就可以说,有大于95%的可能性,估计的均值与实际的期望之差小于delta,用数学语言描述出来就是,alpha为置信度:

\mathbb{P}\left (\left|\frac{1}{n} \sum_{i=1}^{n} X_i - E(X)\right|<\delta \right) > \alpha \\

 

我们将式子稍稍变换一下形式:

\mathbb{P}\left( -\delta <\frac{\sum (X_i -E(X))}{n} < \delta \right) > \alpha

依据中心极限定理,可知:

\frac{1}{\sqrt{n}}\sum_{i = 1}^{n} (X_i - E(X)) \sim N(0, \sigma^2)

所以有:

\mathbb{P}\left( -\delta \sqrt{n} <\frac{1}{\sqrt{n}} \sum_{i = 1}^n (X_i - \mu) < \delta \sqrt{n}\right) = \int_{-\delta \sqrt{n}}^{\delta \sqrt{n}} \frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{x^2}{2\sigma^2}} dx = \mathbb{erf} \left(\frac{\delta \sqrt{n}}{\sigma \sqrt{2}}\right)

这里的delta与n皆为大于0的数,依据不等式[1], \mathbb{erfc}\left(x \right) < \exp(-x^2)

\mathbb{erf}\left( \frac{\delta \sqrt{n}}{\sigma \sqrt{2}} \right) = 1-\mathbb{erfc}\left( \frac{\delta \sqrt{n}}{\sigma \sqrt{2}} \right) > 1- \exp\left[-\left(\frac{\delta \sqrt{n}}{\sigma \sqrt{2}} \right)^2\right] =1-\exp\left(- \frac{n\delta^2 }{2\sigma^2} \right)

这里我们可以令置信度  \alpha = 1-\exp\left( -\frac{n\delta^2 }{2\sigma^2} \right),即可计算出delta关于alpha的等式:

\delta = \sigma\sqrt{\frac{2\ln\left(\frac{1}{1-\alpha}\right)}{n}}

为了让置信度尽可能的高,在实际运用中,直接令 \frac{1}{1-\alpha} = N,N为实验次数。

所以UCB策略才有如下的形式:

A \approx \max_{a}\left(Q(a) + \sigma\sqrt{\frac{2\ln\left(N\right)}{n}}\right)

参考文献:

转载于:https://www.cnblogs.com/Jinyublog/p/9255646.html

你可能感兴趣的文章
zoj 1232 Adventure of Super Mario
查看>>
组合数学 UVa 11538 Chess Queen
查看>>
Redis常用命令
查看>>
[转载]电脑小绝技
查看>>
thinkphp如何实现伪静态
查看>>
BZOJ 1925: [Sdoi2010]地精部落( dp )
查看>>
Week03-面向对象入门
查看>>
一个控制台程序,模拟机器人对话
查看>>
Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(上篇——纯前端多页面)
查看>>
我的PHP学习之路
查看>>
【题解】luogu p2340 奶牛会展
查看>>
解决响应式布局下兼容性的问题
查看>>
使用DBCP连接池对连接进行管理
查看>>
【洛谷】【堆+模拟】P2278 操作系统
查看>>
hdu3307 欧拉函数
查看>>
Spring Bean InitializingBean和DisposableBean实例
查看>>
[容斥][dp][快速幂] Jzoj P5862 孤独
查看>>
Java基础之字符串匹配大全
查看>>
面向对象
查看>>
lintcode83- Single Number II- midium
查看>>