探索与利用
一、序列决策任务中的基本问题
探索和利用
基于目前策略获取已知最优收益还是尝试不同的决策
- Exploitation执行能够获得已知最优收益的决策
利用现在已知的认知,选择当前最好策略 - Exploration尝试更多可能的决策,不一定会是最优收益
当前的最好策略不一定最优,通过探索找到可能的更优策略
π ( 当前策略 ) ≠ π ∗ ( 最优策略 ) \pi(当前策略)\neq\pi^{*}(最优策略) π(当前策略)=π∗(最优策略)
探索过程中策略和价值函数的变化情况(可能发现更好的策略):
ε
t
=
{
π
t
i
∣
i
=
1
,
…
,
n
}
→
探索
ε
t
+
1
=
{
π
t
i
∣
i
=
1
,
…
,
n
}
∪
{
π
e
j
∣
j
=
1
,
…
,
m
}
\varepsilon_{t} = \{\pi^{i}_{t} | i=1,\dots,n\} \xrightarrow[]{探索} \varepsilon_{t+1} = \{\pi^{i}_{t} | i=1,\dots,n\}\cup \{\pi^{j}_{e}|j=1,\dots,m\}
εt={πti∣i=1,…,n}探索εt+1={πti∣i=1,…,n}∪{πej∣j=1,…,m}
∃ V ∗ ( ⋅ ∣ π t i ∼ ε t ) ≤ V ∗ ( ⋅ ∣ π t + 1 i ∼ ε t + 1 ) π t + 1 i ∼ { π e i ∣ i = 1 , … , m } \exist{V^{*}}(\cdot|\pi^{i}_{t}\sim\varepsilon_{t})\leq V^{*}(\cdot|\pi^{i}_{t+1}\sim\varepsilon_{t+1}) \qquad \pi^{i}_{t+1}\sim\{\pi^{i}_{e}|i=1,\dots,m\} ∃V∗(⋅∣πti∼εt)≤V∗(⋅∣πt+1i∼εt+1)πt+1i∼{πei∣i=1,…,m}
例子:餐厅吃饭(探索和利用的关系)
- 总是选择自己熟悉的餐厅,即利用当前的最优策略(Exploitation)
- 偶尔选择自己没有去过的餐厅,对其他策略的探索(Exploration)
二、策略探索的一些原则
- 朴素方法(Naive Exploration)
添加策略噪声 ϵ − g r e e d y \epsilon-greedy ϵ−greedy - 积极初始化(Optimistic Initialization)
给价值函数较高的初始化 - 基于不确定性的度量(Uncertainty Measurement)
尝试具有不确定收益的策略,可能带来更高的收益 - 概率匹配(Probability Matching)
基于概率选择最佳策略 - 状态搜索(State Searching)
探索后续状态可能带来更高收益的策略
三、多臂老虎机
多臂老虎机的定义
多臂老虎机(Multi-arm Bandit)问题的形式化描述
⟨
A
,
R
⟩
\left\langle \mathcal{A},\mathcal{R} \right\rangle
⟨A,R⟩
动作集合:
a
i
∈
A
,
i
=
1
,
…
,
K
a^{i}\in\mathcal{A},i=1,\dots,K
ai∈A,i=1,…,K
收益(反馈)函数分布:
R
(
r
∣
a
i
)
=
P
(
r
∣
a
i
)
\mathcal{R}(r|a^{i})=\mathbb{P}(r|a^{i})
R(r∣ai)=P(r∣ai)
最大化累积时间的收益:
max
∑
t
=
1
T
r
t
,
r
t
∼
R
(
⋅
∣
a
)
\max\sum^{T}_{t=1}{r_{t},r_{t}\sim\mathcal{R(\cdot|a)}}
maxt=1∑Trt,rt∼R(⋅∣a)
收益估计
期望收益和采样次数的关系:
Q
n
(
a
i
)
=
r
1
+
r
2
+
⋯
+
r
n
−
1
n
−
1
Q_{n}(a^{i})=\frac{r_{1}+r_{2}+\cdots+r_{n-1}}{n-1}
Qn(ai)=n−1r1+r2+⋯+rn−1
缺点:每次更新的空间复杂度是
O
(
n
)
O(n)
O(n)
增量实现:
Q
n
+
1
(
a
i
)
:
=
1
n
∑
i
=
1
n
r
i
=
1
n
(
r
n
+
n
−
1
n
−
1
∑
i
=
1
n
−
1
r
i
)
=
1
n
r
n
+
n
−
1
n
Q
n
=
Q
n
+
1
n
(
r
n
−
Q
n
)
Q_{n+1}(a^{i}):=\frac{1}{n}\sum^{n}_{i=1}r_{i}=\frac{1}{n}\left(r_{n}+\frac{n-1}{n-1}\sum^{n-1}_{i=1}{r_{i}}\right)=\frac{1}{n}r_{n}+\frac{n-1}{n}Q_{n}=Q_{n}+\frac{1}{n}(r_{n}-Q_{n})
Qn+1(ai):=n1i=1∑nri=n1(rn+n−1n−1i=1∑n−1ri)=n1rn+nn−1Qn=Qn+n1(rn−Qn)
误差项:
Δ
n
i
\Delta^{i}_{n}
Δni
空间复杂度:
O
(
1
)
O(1)
O(1)
算法:多臂老虎机
- 初始化: Q ( a i ) : = c i , N ( a i ) = 0 , i = 1 , … , n Q(a^{i}):=c^{i},N(a^{i})=0,i=1,\dots,n Q(ai):=ci,N(ai)=0,i=1,…,n
- 主循环
t
=
1
:
T
t=1:T
t=1:T
- 利用策略 π \pi π 选取某个动作 a a a
- 获取收益: r t = B a n d i t ( a ) r_{t}=Bandit(a) rt=Bandit(a)
- 更新计数器: N ( a ) : = N ( a ) + 1 N(a):=N(a)+1 N(a):=N(a)+1
- 更新估值: Q ( a ) : = Q ( a ) + 1 N ( a ) [ r t − Q ( a ) ] Q(a):=Q(a)+\frac{1}{N(a)}[r_{t}-Q(a)] Q(a):=Q(a)+N(a)1[rt−Q(a)]
Regret函数
决策的期望收益:
Q
(
a
i
)
=
E
r
∼
P
(
r
∣
a
i
)
[
r
∣
a
i
]
Q(a^{i})=\mathbb{E}_{r\sim\mathbb{P}(r|a^{i})}[r|a^{i}]
Q(ai)=Er∼P(r∣ai)[r∣ai]
最优收益:
Q
∗
=
m
a
x
a
i
∈
A
Q
(
a
i
)
Q^{*}=\mathop{max}\limits_{a^{i}\in\mathcal{A}}Q(a^{i})
Q∗=ai∈AmaxQ(ai)
决策与最优决策的收益差:
R
(
a
i
)
=
Q
∗
−
Q
(
a
i
)
R(a^{i})=Q^{*}-Q(a^{i})
R(ai)=Q∗−Q(ai)
Total Regret 函数:
σ
R
=
E
a
∼
π
[
∑
t
=
1
T
R
(
a
t
i
)
]
\sigma_{R}=\mathbb{E}_{a\sim\pi}[\sum^{T}_{t=1}{R(a^{i}_{t})}]
σR=Ea∼π[t=1∑TR(ati)]
等价性:
min
σ
R
=
max
E
a
∼
π
[
∑
t
=
1
T
Q
(
a
t
i
)
]
\min\sigma_{R}=\max\mathbb{E}_{a\sim\pi}[\sum^{T}_{t=1}Q(a^{i}_{t})]
minσR=maxEa∼π[t=1∑TQ(ati)]
随着时间推移,单步regret越来越小
如果一直探索新策略:
σ
R
∝
T
⋅
R
\sigma_{R}\propto T \cdot R
σR∝T⋅R ,total regret将线性递增,无法收敛
如果一直不探索新策略:
σ
R
∝
T
⋅
R
\sigma_{R} \propto T \cdot R
σR∝T⋅R ,total regret将线性递增
是否存在一个方法具有次线性(sublinear)收敛保证的regret?
下届(Lai & Robbins)
使用
Δ
a
=
Q
∗
−
Q
(
a
)
\Delta_{a}=Q^{*}-Q(a)
Δa=Q∗−Q(a) 和反馈函数分布相似性:
D
K
L
(
R
(
r
∣
a
)
∣
∣
R
∗
(
r
∣
a
)
)
D_{KL}(\mathcal{R}(r|a)||\mathcal{R}^{*}(r|a))
DKL(R(r∣a)∣∣R∗(r∣a)) 描述
lim
T
→
∞
σ
R
≥
log
T
∑
a
∣
Δ
a
>
0
Δ
a
D
K
L
(
R
(
r
∣
a
)
∥
R
∗
(
r
∣
a
)
)
\lim\limits_{T\rightarrow\infty}{\sigma_{R}\geq\log{T}\sum\limits_{a|\Delta_{a}>0}{\frac{\Delta_{a}}{D_{KL}(\mathcal{R}(r|a)\Vert\mathcal{R}^{*}(r|a))}}}
T→∞limσR≥logTa∣Δa>0∑DKL(R(r∣a)∥R∗(r∣a))Δa
以
O
(
log
T
)
O(\log{T})
O(logT)的速度收敛
四、策略探索的方法
贪心策略和 ϵ − g r e e d y \epsilon-greedy ϵ−greedy 策略
-
贪心策略
Q ( a i ) = 1 N ( a i ) ∑ t = 1 T r t ⋅ 1 ( a t = a i ) Q(a^{i})=\frac{1}{N(a^{i})}\sum^{T}_{t=1}{r_{t}\cdot 1(a_{t}=a^{i})} Q(ai)=N(ai)1t=1∑Trt⋅1(at=ai)
a ∗ = arg max a i Q ( a i ) a^{*}=\arg\max\limits_{a^{i}}Q(a^{i}) a∗=argaimaxQ(ai)
σ R ∝ T ⋅ [ Q ( a i ) − Q ∗ ] \sigma_{R}\propto T\cdot [Q(a^{i})-Q^{*}] σR∝T⋅[Q(ai)−Q∗]
线性增长的Total Regret
-
ϵ − g r e e d y \epsilon-greedy ϵ−greedy策略
a t = { arg max a Q ( a ) 1 − ϵ U ( 0 , ∣ A ∣ ) ϵ a_{t} = \begin{cases} {\arg\max\limits_{a}Q(a)} & {1-\epsilon}\\ {\quad U(0,|\mathcal{A}|)} & {\quad\epsilon} \end{cases} at={argamaxQ(a)U(0,∣A∣)1−ϵϵ常量 ϵ \epsilon ϵ保证total regret满足
σ R ≥ ϵ ∣ A ∣ ∑ a ∈ A Δ a \sigma_{R}\geq\frac{\epsilon}{\left|\mathcal{A}\right|}\sum\limits_{a\in\mathcal{A}}\Delta_{a} σR≥∣A∣ϵa∈A∑Δa
Total Regret仍然是线性递增的,只是增长率比贪心策略小 -
衰减贪心策略
ϵ − g r e e d y \epsilon-greedy ϵ−greedy 的变种, ϵ \epsilon ϵ 随着时间衰减
理论上对数渐进收敛
一种可能的衰减方式:c ≥ 0 , d = min a ∣ Δ a > 0 Δ a , ϵ t = min { 1 , c ∣ A ∣ d 2 t } c\geq0,\qquad d=\min\limits_{a|\Delta_{a}>0}{\Delta_{a}},\qquad \epsilon_{t}=\min\left\{1,\frac{c|\mathcal{A}|}{d^{2}t}\right\} c≥0,d=a∣Δa>0minΔa,ϵt=min{1,d2tc∣A∣}
缺点:很难找到合适的衰减规划
不同 ϵ − g r e e d y 策略对比 \epsilon-greedy策略对比 ϵ−greedy策略对比
- Total Regret
- 平均收益
积极初始化
给
Q
(
a
i
)
Q(a^{i})
Q(ai) 一个较高的初始化值
增量式蒙特卡洛估计更新
Q
(
a
i
)
Q(a^{i})
Q(ai)
Q ( a i ) : = Q ( a i ) + 1 N ( a i ) ( r t − Q ( a i ) ) Q(a^{i}):=Q(a^{i})+\frac{1}{N(a^{i})}(r_{t}-Q(a^{i})) Q(ai):=Q(ai)+N(ai)1(rt−Q(ai))
有偏估计,但是随着采样增加,这个偏差带来的影响会越来越小
但是仍然可能陷入局部最优,可能会出现最优策略估计的过低而一直无法被选择的情况
显式地考虑动作的价值分布
考虑以上三个动作的价值分布,平衡探索和利用,选择哪个动作?
- 显式地鼓励不确定性
- 直接根据分布采样来选择
基于不确定性测度
不确定性越大的
Q
(
a
i
)
Q(a^{i})
Q(ai),越具有探索的价值,有可能会是最好的策略
一个经验性指导:
- N ( a ) N(a) N(a)大, U ( a ) U(a) U(a)小
- N ( a ) N(a) N(a)小, U ( a ) U(a) U(a)大
策略
π : a = arg max a ∈ A Q ^ ( a ) + U ^ ( a ) \pi:a=\arg\max\limits_{a\in\mathcal{A}}{\hat{Q}(a)+\hat{U}(a)} π:a=arga∈AmaxQ^(a)+U^(a)
也称为UCB:上置信界法(Upper Confidence Bounds)
UCB:上置信界
Hoeffding不等式:
P [ E [ x ] > x ˉ t + u ] ≤ e − 2 t u 2 f o r x ∈ [ 0 , 1 ] \mathbb{P}[\mathbb{E}[x]>\bar{x}_{t}+u]\leq e^{-2tu^{2}}\quad for \quad x\in[0,1] P[E[x]>xˉt+u]≤e−2tu2forx∈[0,1]
为每一个动作收益估值估计一个上置信界:
U
^
(
a
)
\hat{U}(a)
U^(a)
显然有:
Q
t
(
a
)
≤
Q
^
t
(
a
)
+
U
^
t
(
a
)
Q_{t}(a)\leq\hat{Q}_{t}(a)+\hat{U}_{t}(a)
Qt(a)≤Q^t(a)+U^t(a)以一个概率
p
p
p不成立(Hoeffding不等式)
依据以下原则挑选进行决策:
a = arg max a ∈ A Q ^ t ( a ) + U ^ t ( a ) a=\arg\max\limits_{a\in\mathcal{A}}{\hat{Q}_{t}(a)+\hat{U}_{t}(a)} a=arga∈AmaxQ^t(a)+U^t(a)
e − 2 N t ( a ) U t ( a ) 2 = p ⟶ U ^ t ( a ) = − log p 2 N t ( a ) e^{-2N_{t}(a)U_{t}(a)^{2}}=p\longrightarrow\hat{U}_{t}(a)=\sqrt{-\frac{\log{p}}{2N_{t}(a)}} e−2Nt(a)Ut(a)2=p⟶U^t(a)=−2Nt(a)logp
收敛性:
lim t → ∞ σ R ≤ 8 log t ∑ a ∣ Δ a > 0 Δ a \lim\limits_{t\rightarrow\infty}{\sigma_{R}}\leq 8\log{t}\sum\limits_{a|\Delta_{a}>0}\Delta_{a} t→∞limσR≤8logta∣Δa>0∑Δa
Thompson Sampling方法
想法:根据每个动作成为最优的概率来选择动作
p
(
a
)
=
∫
∏
[
E
p
(
Q
(
a
)
)
[
Q
(
a
;
θ
)
]
=
max
a
′
∈
A
E
p
(
Q
(
a
′
)
)
(
Q
(
a
′
;
θ
)
)
]
d
θ
p(a)=\int{\prod[\mathbb{E}_{p(Q(a))}[Q(a;\theta)]=\max\limits_{a'\in\mathcal{A}}{\mathbb{E}_{p(Q(a'))}(Q(a';\theta))}]d\theta}
p(a)=∫∏[Ep(Q(a))[Q(a;θ)]=a′∈AmaxEp(Q(a′))(Q(a′;θ))]dθ
实现:根据当前每个动作
a
i
a_{i}
ai的价值概率分布
p
(
Q
(
a
i
)
)
p(Q(a_{i}))
p(Q(ai))来采样到其价值
Q
(
a
i
)
Q(a_{i})
Q(ai),选择价值最大的动作
实验:K-arm多臂老虎机,用Beta分布建模每个arm的成功率,初始化成功率分布为Beat(1,1)
B e t a ( x ; α , β ) ∝ x α − 1 ( 1 − x ) β − 1 Beta(x;\alpha,\beta)\propto x^{\alpha-1}(1-x)^{\beta-1} Beta(x;α,β)∝xα−1(1−x)β−1
Thompson Sampling和UCB的实验对比
- K-arms
- The best arm has reward probability of 0.5
- K-1 other arms have the reward probability of 0.5 − ϵ 0.5-\epsilon 0.5−ϵ
- Asymptotic lower bound(Lai & Robbins)
五、探索与利用总结
- 探索和利用是强化学习的trial-and-error中的必备技术
- 多播老虎机可以被看成是无状态(state-less)强化学习
只需要关注对每个动作的认知,没有环境给的状态 - 多臂老虎机是研究探索与利用技术理论的最佳环境
- 理论的渐进最优regret为 O ( log T ) O(\log{T}) O(logT)
- ϵ − g r e e d y \epsilon-greedy ϵ−greedy、UCB和Thompson Sampling方法在多臂老虎机任务中十分常用,在强化学习的探索中也十分常用,最常见的是 ϵ − g r e e d y \epsilon-greedy ϵ−greedy
六、常见问题
Epsilon greedy在强化学习中得到了很广泛的应用,但是作为更加有效的方法,Thompson Sampling和UCB更多地只出现在Multi-Arm Bandit中,在强化学习中很少看到,是什么导致的这一现象呢?
- Epsilon greedy在RL里面是做探索的方法。其实RL领域也有不少其他的做探索的方法,只是专门在做探索,所以就不仅仅是UCB或者TS这种MAB的经典方法了。
- 例如,在树结构博弈里面UCB叫UCT(Upper Confidence bounds applied to Trees)
- Epsilon greedy用的多而UCB、Thompson Sampling等方法用的少,我觉得主要是因为RL的大部分value function都是点估计,也就是说 V ( s ) V(s) V(s)和 Q ( s , a ) Q(s,a) Q(s,a)都是给出一个数值。
如何理解积极初始化的Q是一个有偏估计,但是这个偏差带来的影响会随着采样增加而降低。
- Q是有偏估计是因为本页讨论的积极初始化方法为了加强探索给了所有的 Q ( a ) Q(a) Q(a)一个较高的初始值(这样没有探索过action的就有较高Q值,会优先被选择),这样的Q相对于真实的Q分布显然是有偏的。
- 而随着采样的增加和增量式蒙特卡洛更新,每个 Q ( a i ) Q(a^{i}) Q(ai)的过高初始值会逐渐收敛到采样到的奖励 r t r_{t} rt的平均值,这个过高初始值带来的偏差也就慢慢降低了。