文章目录
问题描述
问题描述如下:
算法的目标是最大化累计奖励,基于三个假设:
- 奖励的设定遵循
bandit feedback
。也就是说算法只能观测到所选择动作的奖励。 - 对于每个动作 a a a,都有一个奖励分布 D a \mathcal{D}_{a} Da与之对应,每次这个动作 a a a被选中,反馈的奖励将会从这个分布中进行采样,并返回给算法。
- 奖励有界 [ 0 , 1 ] [0,1] [0,1]。
往往在实际过程中更多考虑奖励均值向量(mean reward vector
)
μ
∈
[
0
,
1
]
K
\mu \in [0,1]^{K}
μ∈[0,1]K,其中
μ
(
a
)
=
E
[
D
a
]
\mu(a)=\mathbb{E}\left[\mathcal{D}_{a}\right]
μ(a)=E[Da]。当然最简单的就是伯努利分布(Bernoulli distribution
),或者称之为0-1分布。
所有的arms
集合定义为
A
\mathcal{A}
A,最优均值奖励定义为:
μ
∗
:
=
max
a
∈
A
μ
(
a
)
\mu^{*}:=\max _{a \in \mathcal{A}} \mu(a)
μ∗:=maxa∈Aμ(a)。任意一个动作均值奖励与最好的动作均值奖励的差表示为:
Δ
(
a
)
:
=
μ
∗
−
μ
(
a
)
\Delta(a):=\mu^{*}-\mu(a)
Δ(a):=μ∗−μ(a)。
悔憾值(Regret
):可用于衡量算法表现好坏的一个指标。就是用假设能拿到的最多的累计奖励减去已经拿到的累计奖励。定义为如下形式:
R ( T ) = μ ∗ ⋅ T − ∑ t = 1 T μ ( a t ) R(T)=\mu^{*} \cdot T-\sum_{t=1}^{T} \mu\left(a_{t}\right) R(T)=μ∗⋅T−t=1∑Tμ(at)
被称作在
T
T
T 回合(round
)的悔憾值。由于动作
a
t
a_{t}
at经常会变,是个随机变量,因此
R
(
T
)
R(T)
R(T)也是个随机变量,我们通常考虑expected regret
E
[
R
(
T
)
]
\mathbb{E}[R(T)]
E[R(T)]。
备注:术语:由于悔憾值的定义值整个回合(sum all rounds
),所以有时我们也将其称之为cumulative regret
。有时为了区别
R
(
T
)
R(T)
R(T) 和
E
[
R
(
T
)
]
\mathbb{E}[R(T)]
E[R(T)],分别将其称为realized regret
和expected regret
。文献中
R
(
T
)
R(T)
R(T)的值有时候也被称为pseudo-regret
。
Uniform exploration
那我们如何来求解上述的这样一个问题呢?一种简单地办法就是先随机选择,之后依据随机选则得到的结果确定哪一个arms
具有较高的奖励分布,通常也将这种算法称之为Explore-first
算法。
定义每个动作
a
a
a的平均奖励为
μ
ˉ
(
a
)
\bar{\mu}(a)
μˉ(a),期望平均奖励能够尽可能接近真实的期望奖励(true expected rewards
)。也就是
∣
μ
ˉ
(
a
)
−
μ
(
a
)
∣
|\bar{\mu}(a)-\mu(a)|
∣μˉ(a)−μ(a)∣的值尽可能小。定义置信半径(confidence radius
)
r
(
a
)
=
2
l
o
g
T
N
r(a)=\sqrt{\frac{2logT}{N}}
r(a)=N2logT (T表示the time horizon
),使用霍夫丁不等式Hoeffding inequality
可以得到:
Pr { ∣ μ ˉ ( a ) − μ ( a ) ∣ ≤ r ( a ) } ≥ 1 − 2 T 4 \operatorname{Pr}\{|\bar{\mu}(a)-\mu(a)| \leq r(a)\} \geq 1-\frac{2}{T^{4}} Pr{∣μˉ(a)−μ(a)∣≤r(a)}≥1−T42
因此可以看出来,奖励平均与真实期望偏离会比较小。上述公式可直接由下面不等式推导得到:
霍夫丁不等式(英语:Hoeffding’s inequality)适用于有界的随机变量。设有两两独立的一系列随机变量 X 1 , … , X n {\displaystyle X_{1},\dots ,X_{n}\!} X1,…,Xn。假设对所有的 1 ≤ i ≤ n {\displaystyle 1\leq i\leq n} 1≤i≤n, X i X i {\displaystyle X_{i}} X_{i} XiXi都是几乎有界的变量,即满足: P ( X i ∈ [ a i , b i ] ) = 1. {\displaystyle \mathbb {P} (X_{i}\in [a_{i},b_{i}])=1.\!} P(Xi∈[ai,bi])=1.。
那么这 n n n个随机变量的经验期望:
X ‾ = X 1 + ⋯ + X n n {\displaystyle {\overline {X}}={\frac {X_{1}+\cdots +X_{n}}{n}}} X=nX1+⋯+Xn
满足以下的不等式:
P ( X ‾ − E [ X ‾ ] ≥ t ) ≤ exp ( − 2 t 2 n 2 ∑ i = 1 n ( b i − a i ) 2 ) , {\displaystyle \mathbb {P} ({\overline {X}}-\mathbb {E} [{\overline {X}}]\geq t)\leq \exp \left(-{\frac {2t^{2}n^{2}}{\sum _{i=1}^{n}(b_{i}-a_{i})^{2}}}\right),\!} P(X−E[X]≥t)≤exp(−∑i=1n(bi−ai)22t2n2),
P ( ∣ X ‾ − E [ X ‾ ] ∣ ≥ t ) ≤ 2 exp ( − 2 t 2 n 2 ∑ i = 1 n ( b i − a i ) 2 ) , {\displaystyle \mathbb {P} (|{\overline {X}}-\mathbb {E} [{\overline {X}}]|\geq t)\leq 2\exp \left(-{\frac {2t^{2}n^{2}}{\sum _{i=1}^{n}(b_{i}-a_{i})^{2}}}\right),\!} P(∣X−E[X]∣≥t)≤2exp(−∑i=1n(bi−ai)22t2n2),
其证明可参考链接如下:http://web.eecs.umich.edu/~cscott/past_courses/eecs598w14/notes/03_hoeffding.pdf
定义clean event
,(我的理解是:
T
4
T^{4}
T4 比较大,上述概率接近于1)。
Uniform exploration的Bound (k=2)
假定一种情况
K
=
2
K=2
K=2 arms,考虑clean event
的情况,best arm
是
a
∗
a^{*}
a∗,如果算法选择了其它 arm
a
≠
a
∗
a \neq a^{*}
a=a∗,那一定是因为平均奖励比
a
∗
a^{*}
a∗要更好,或者说
u
ˉ
(
a
)
>
μ
ˉ
(
a
∗
)
\bar{u}(a) > \bar{\mu}(a^{*})
uˉ(a)>μˉ(a∗)。由于是clean event
,所以有:
μ ( a ) + r ( a ) ≥ μ ˉ ( a ) > μ ˉ ( a ∗ ) ≥ μ ( a ∗ ) − r ( a ∗ ) \mu(a)+r(a) \geq \bar{\mu}(a)>\bar{\mu}\left(a^{*}\right) \geq \mu\left(a^{*}\right)-r\left(a^{*}\right) μ(a)+r(a)≥μˉ(a)>μˉ(a∗)≥μ(a∗)−r(a∗)
重新整理一下,可得:
μ ( a ∗ ) − μ ( a ) ≤ r ( a ) + r ( a ∗ ) = O ( log T N ) \mu\left(a^{*}\right)-\mu(a) \leq r(a)+r\left(a^{*}\right)=O(\sqrt{\frac{\log T}{N}}) μ(a∗)−μ(a)≤r(a)+r(a∗)=O(NlogT)
因此如果每个回合选择利用(exploitation
),最多会有
O
(
log
T
N
)
O(\sqrt{\frac{\log T}{N}})
O(NlogT)级别的后悔程度,选择探索(exploration
)的话,最大后悔程度为1。因此对于两个arm
的情况,对于每个arm
来说,可以将其分为两部分,
N
N
N步的exploration
和
T
−
2
N
T-2N
T−2N步的exploitation
。因此其regret
的upper bound
可表示为:
R ( T ) ≤ N + O ( log T N × ( T − 2 N ) ) ≤ N + O ( log T N × T ) \begin{aligned} R(T) & \leq N+O(\sqrt{\frac{\log T}{N}} \times(T-2 N)) \\ & \leq N+O(\sqrt{\frac{\log T}{N}} \times T) \end{aligned} R(T)≤N+O(NlogT×(T−2N))≤N+O(NlogT×T)
因此我们可以改变
N
N
N 使得上述公式右端项尽可能小,这样regret
的上界也就会随之变小。那如何来求极值呢?发现一项单调递增,一项单调递减,令其两项相等即可得到
N
=
T
2
/
3
(
log
T
)
1
/
3
N = T^{2 / 3}(\log T)^{1 / 3}
N=T2/3(logT)1/3 (
N
N
N大概要取到
T
2
/
3
T^{2/3}
T2/3,耗时较大)。有:
R ( T ) ≤ O ( T 2 / 3 ( log T ) 1 / 3 ) R(T) \leq O\left(T^{2 / 3}(\log T)^{1 / 3}\right) R(T)≤O(T2/3(logT)1/3)
为了证明理论的完整性,我们现在考虑一下bad event
的情况,其发生概率(
1
/
T
4
1/T^{4}
1/T4),因此可以忽略不记,如下所示:
E [ R ( T ) ] = E [ R ( T ) ∣ clean event ] × Pr [ clean event ] + E [ R ( T ) ∣ bad event ] × Pr [ bad event ] ≤ E [ R ( T ) ∣ clean event ] + T × O ( T − 4 ) ≤ O ( log T × T 2 / 3 ) \begin{aligned} \mathbb{E}[R(T)] &=\mathbb{E}[R(T) | \text { clean event }] \times \operatorname{Pr}[\text { clean event }]+\mathbb{E}[R(T) | \text { bad event }] \times \operatorname{Pr}[\text { bad event }] \\ & \leq \mathbb{E}[R(T) | \text { clean event }]+T \times O\left(T^{-4}\right) \\ & \leq O\left(\sqrt{\log T} \times T^{2 / 3}\right) \end{aligned} E[R(T)]=E[R(T)∣ clean event ]×Pr[ clean event ]+E[R(T)∣ bad event ]×Pr[ bad event ]≤E[R(T)∣ clean event ]+T×O(T−4)≤O(logT×T2/3)
Uniform exploration的Bound (K>2)
更进一步,证明
K
>
2
K > 2
K>2 的情况,现在的upper-bounded
如下所示:
R
(
T
)
≤
N
K
+
O
(
log
T
N
×
T
)
\begin{aligned} R(T) \leq NK+O(\sqrt{\frac{\log T}{N}} \times T) \end{aligned}
R(T)≤NK+O(NlogT×T)。同理计算此时
N
=
(
T
/
K
)
2
/
3
O
(
log
T
)
1
/
3
N = (T/K)^{2 / 3}O(\log T)^{1 / 3}
N=(T/K)2/3O(logT)1/3。
Theorem 1.3. Explore-first
achieves regret
E
[
R
(
T
)
]
≤
T
2
/
3
×
O
(
K
log
T
)
1
/
3
\mathbb{E}[R(T)] \leq T^{2 / 3} \times O(K \log T)^{1 / 3}
E[R(T)]≤T2/3×O(KlogT)1/3。
Explore-first
的方法性能损失比较大,由此有epsilon-greedy
算法:
如果假设探索的概率(exploration probability
)
ϵ
t
∼
t
−
1
/
3
\epsilon_{t} \sim t^{-1 / 3}
ϵt∼t−1/3,此时探索的阶数是
t
2
/
3
t^{2/3}
t2/3,会和Explore-first探索的阶次一样。
Adaptive exploration
exploration-first
和epsilon-greedy
都不会说依据历史的奖励反馈信息来自适应调整贪婪策略,这一节主要来对比一下二者。一个很自然的想法是当我们发现了一个好的arm
,或者说能获得更多奖励的arm
,我们就将之前的抛弃,选择这个更好的arm
。还是考虑
K
=
2
K=2
K=2的情况,那如何定义一个arm
的好坏就成了问题的关键。
t
t
t 是回合数,
n
t
(
a
)
n_{t}(a)
nt(a) 为arm
a
a
a在
t
t
t round内被选中的次数,
u
ˉ
t
(
a
)
\bar{u}_{t}(a)
uˉt(a) 是arm
a
到目前
t
t
t round
的平均奖励,基于Hoeffding Inequality
有:
Pr [ ∣ μ ˉ t ( a ) − μ ( a ) ∣ ≤ r t ( a ) ] ≥ 1 − 2 T 4 \operatorname{Pr}\left[\left|\bar{\mu}_{t}(a)-\mu(a)\right| \leq r_{t}(a)\right] \geq 1-\frac{2}{T^{4}} Pr[∣μˉt(a)−μ(a)∣≤rt(a)]≥1−T42
其中
r
t
(
a
)
=
2
l
o
g
T
n
t
(
a
)
r_{t}(a) = \sqrt{\frac{2logT}{n_{t(a)}}}
rt(a)=nt(a)2logT,被称作confidence radius
。
n
t
n_{t}
nt可能会基于arm a过去所获得的奖励信息,因此arm a上的采样并不需要独立分布。
对每个arm a,想象有一个reward tape
:是一个
1
×
T
1 \times T
1×T的表格,其中的每个cell
独立地从
D
a
\mathcal{D}_{a}
Da中采样,如下图所示:
第
j
j
j个格子储存我们第
j
j
j 次选择这个arm所观察到的reward,记为
v
j
(
a
)
v_{j}(a)
vj(a)。同样,记
v
ˉ
j
(
a
)
\bar{v}_{j}(a)
vˉj(a)为前j个格子的平均值。基于Hoeffding Inequality
有:
∀ j Pr ( ∣ v ˉ j ( a ) − μ ( a ) ∣ ≤ r t ( a ) ) ≥ 1 − 2 T 4 \forall j \quad \operatorname{Pr}\left(\left|\bar{v}_{j}(a)-\mu(a)\right| \leq r_{t}(a)\right) \geq 1-\frac{2}{T^{4}} ∀jPr(∣vˉj(a)−μ(a)∣≤rt(a))≥1−T42
再将所有的arm
考虑进来,有:
上述公式(1.6)其实是clean event
的一个分析。由此可以得到在round
t
t
t下arm
a
a
a 的upper/lower confidence bounds
:
U C B t ( a ) = μ ˉ t ( a ) + r t ( a ) L C B t ( a ) = μ ˉ t ( a ) − r t ( a ) \begin{array}{l} \mathrm{UCB}_{t}(a)=\bar{\mu}_{t}(a)+r_{t}(a) \\ \mathrm{LCB}_{t}(a)=\bar{\mu}_{t}(a)-r_{t}(a) \end{array} UCBt(a)=μˉt(a)+rt(a)LCBt(a)=μˉt(a)−rt(a)
[
L
C
B
t
(
a
)
;
U
C
B
t
(
a
)
]
[\mathrm{LCB}_{t}(a); \mathrm{UCB}_{t}(a)]
[LCBt(a);UCBt(a)]区间被称作置信区间(confidence interval
)。知道了这样一个区间就相当于知道了一个arm期望奖励大概的范围,当某个arm
的UCB
比另外一个arm
的LCB
还要低的时候,就可以抛弃这个arm
了,也就完成了对arm
好坏的一个定义。
Successive Elimination algorithm(k=2)
基于上述思想,介绍Successive Elimination
算法。
在假定clean event
的情况下,产生一个disqualified
(不合格)的arm
,会累计多少regret
?
当
t
t
t到达了last round
,还没有到达终止条件,也就是两个arms
的置信间隔具有重叠,有:
Δ : = ∣ μ ( a ) − μ ( a ′ ) ∣ ≤ 2 ( r t ( a ) + r t ( a ′ ) ) \Delta:=\left|\mu(a)-\mu\left(a^{\prime}\right)\right| \leq 2\left(r_{t}(a)+r_{t}\left(a^{\prime}\right)\right) Δ:=∣μ(a)−μ(a′)∣≤2(rt(a)+rt(a′))
由于算法开始是交替选择两个arm
,因此有
n
t
(
a
)
=
t
2
n_{t}(a)=\frac{t}{2}
nt(a)=2t,可以得到:
Δ ≤ 2 ( r t ( a ) + r t ( a ′ ) ) ≤ 4 2 log T ⌊ t / 2 ⌋ = O ( log T t ) \Delta \leq 2\left(r_{t}(a)+r_{t}\left(a^{\prime}\right)\right) \leq 4 \sqrt{\frac{2 \log T}{\lfloor t / 2\rfloor}}=O(\sqrt{\frac{\log T}{t}}) Δ≤2(rt(a)+rt(a′))≤4⌊t/2⌋2logT=O(tlogT)
直到round
t
t
t 整个的累计regret
可表示为:
R ( t ) ≤ Δ × t ≤ O ( t ⋅ log T t ) = O ( t log T ) R(t) \leq \Delta \times t \leq O(t \cdot \sqrt{\frac{\log T}{t}})=O(\sqrt{t \log T}) R(t)≤Δ×t≤O(t⋅tlogT)=O(tlogT)
可以发现这种算法的regret bound
t
\sqrt{t}
t要强于之前的贪心算法
T
2
/
3
T^{2/3}
T2/3了。为了分析更加完整,考虑bad event
的情况如下所示:
Successive Elimination algorithm(k >2)
将其扩展到
K
>
2
K >2
K>2的情形,得到Successive Elimination
算法:
现在对这个算法做一个简要分析,
K
=
2
K=2
K=2 arm
,bad event
的情况仍是不考虑。假定最优arm
为
a
∗
a^{*}
a∗,对于任意一个arm
a
a
a有
μ
(
a
)
<
μ
(
a
∗
)
\mu(a) < \mu(a^{*})
μ(a)<μ(a∗)。如果我们没有抛弃这个arm
,那么其置信区间和最优的arm
的置信区间是重合的:
Δ ( a ) : = μ ( a ∗ ) − μ ( a ) ≤ 2 ( r t ( a ∗ ) + r t ( a ) ) = O ( r t ( a ) ) \Delta(a):=\mu\left(a^{*}\right)-\mu(a) \leq 2\left(r_{t}\left(a^{*}\right)+r_{t}(a)\right)=O\left(r_{t}(a)\right) Δ(a):=μ(a∗)−μ(a)≤2(rt(a∗)+rt(a))=O(rt(a))
即arm
a
a
a的mean reward
和最好的mean reward
的差距。最后一个等式能够成立的原因在于
n
t
(
a
)
n_{t}(a)
nt(a)和
n
t
(
a
∗
)
n_{t}(a^{*})
nt(a∗)其最多差1(算法是交替选择action
)。由于arm
a
a
a 没有play
过,因此
n
t
(
a
)
=
n
T
(
a
)
n_{t}(a)=n_{T}(a)
nt(a)=nT(a),因此有
r
t
(
a
)
=
r
T
(
a
)
r_{t}(a)=r_{T}(a)
rt(a)=rT(a) ,可以得到:
上述公式的直观理解就是某个arm
被选择了很多次,却没有被抛弃,就说明这个arm
不会太差。之后的分析都基于这个公式。
arm
a
a
a在round
t
t
t处的regret
定义为
R
(
t
;
a
)
R(t;a)
R(t;a),
Δ
(
a
)
\Delta(a)
Δ(a)表示为对每个played
的arm
,依据公式(1.7)得到以下上界:
R ( t ; a ) = n t ( a ) ⋅ Δ ( a ) ≤ n t ( a ) ⋅ O ( log T / n t ( a ) ) = O ( n t ( a ) log T ) R(t ; a)=n_{t}(a) \cdot \Delta(a) \leq n_{t}(a) \cdot O(\sqrt{\log T / n_{t}(a)})=O(\sqrt{n_{t}(a) \log T}) R(t;a)=nt(a)⋅Δ(a)≤nt(a)⋅O(logT/nt(a))=O(nt(a)logT)
将上述等式的关系带入公式(1.8)得到
R ( t ) ≤ O ( K t log T ) R(t) \leq O(\sqrt{K t \log T}) R(t)≤O(KtlogT)
基于公式(1.7)可以得到另一个regret bound
,将公式(1.7)稍作变形可得:
n
T
(
a
)
≤
O
(
log
T
[
Δ
(
a
)
]
2
)
n_{T}(a) \leq O\left(\frac{\log T}{[\Delta(a)]^{2}}\right)
nT(a)≤O([Δ(a)]2logT),这个公式的理解就是一个很差的arm
不会被played很多次。对每个arm
a
∈
A
a \in \mathcal{A}
a∈A,有:
R ( T ; a ) = Δ ( a ) ⋅ n T ( a ) ≤ Δ ( a ) ⋅ O ( log T [ Δ ( a ) ] 2 ) = O ( log T Δ ( a ) ) R(T ; a)=\Delta(a) \cdot n_{T}(a) \leq \Delta(a) \cdot O\left(\frac{\log T}{[\Delta(a)]^{2}}\right)=O\left(\frac{\log T}{\Delta(a)}\right) R(T;a)=Δ(a)⋅nT(a)≤Δ(a)⋅O([Δ(a)]2logT)=O(Δ(a)logT)
对所有的arm
a
∈
A
+
a \in \mathcal{A^{+}}
a∈A+,有:
R ( T ) ≤ O ( log T ) [ ∑ a ∈ A + 1 Δ ( a ) ] R(T) \leq O(\log T)\left[\sum_{a \in \mathcal{A}^{+}} \frac{1}{\Delta(a)}\right] R(T)≤O(logT)[a∈A+∑Δ(a)1]
因此得到了另一个下界:
可以看到adaptive exploration
与non-adaptive exploration
相比较,adaptive exploration
是一个对数悔憾界(logarithmic regret bounds)。
Optimism under uncertainty
考虑另一种自适应探索(adaptive exploration)的方法,不确定性下最优求解(optimism under uncertainty),假设每个arm
都尽可能地好,选择其中最优的那个,这个算法叫做UCB1
:
Arm
被选中是由于有大的UCB
值,而其由两部分组成,一个是
u
ˉ
t
(
a
)
\bar{u}_{t}(a)
uˉt(a)很大,说明其reward
很大,另一个是confidence radius
r
t
(
a
)
r_{t}(a)
rt(a)很大,说明其值得探索,或者说探索不充分。将其组合在UCB
公式中能够平衡其二者的关系。
UCB
类算法相比贪心算法最大的优势,它的每步都在随着获得的reward
反馈动态调整自己的策略,这个特性我们将在之后的RL
算法中更加频繁的看到。