强化学习的基本结构如下图
图1 强化学习annotated:a.标注的
监督学习:
输入数据是i.i.d(独立同分布),数据间无关联。已知结果。强化学习:
输入数据是时序性的。未立刻得到反馈,(奖励延时),需要自己尝试。Trail and error exploration exploration 做新的尝试,使得Agent未来能做出更好的决策(尝试新餐馆)exploitation 在以往经验中选择当下最好的决策(选择最喜欢的餐馆) 之前的决策会影响环境。rollout:分布式训练
在agent与env的交互中产生了决策序列(a series of actions):
目标:max总奖励action可能会有长期的影响reward可能会有延迟近期与远期reward的权衡(trade-off)决策序列补充上env的部分,即称为历史(History): H t = O 1 , R 1 , A 1 , . . . , A T − 1 , O t , R t H_t=O_1,R_1,A_1,...,A_{T-1},O_t,R_t Ht=O1,R1,A1,...,AT−1,Ot,Rt 其中,H(history),O(observation),A(action),R(reward).
状态是历史的函数,即 S t = f ( H t ) S_t=f(H_t) St=f(Ht) 环境的状态 S t e = f e ( H t ) S_t^e=f^e(H_t) Ste=fe(Ht)
智能体的状态 S t a = f a ( H t ) S_t^a=f^a(H_t) Sta=fa(Ht)
当 O t = S t a = S t e O_t=S_t^a=S_t^e Ot=Sta=Ste时,称系统完全可观测(Fully Observability),反之称为不完全可观测(Partial observability),不完全观测的系统产生的不完全可观测的马尔科夫决策过程(partially observable Markov decision process)。
Policy:智能体的行为模型,f:O/S->A
随机型: π ( a ∣ s ) = P [ A t = a ∣ S t = s ] \pi(a|s)=P[A_t=a|S_t=s] π(a∣s)=P[At=a∣St=s]
确定型: a ∗ = a r g max a π ( a ∣ s ) a^*=arg\max_a \pi(a|s) a∗=argmaxaπ(a∣s)
Value function:折扣后的未来奖励的加和
折扣因子(discount factor): γ \gamma γ
V π ( s ) = E π ( G t ∣ S t = s ) = E π ( ∑ k = 0 inf γ k R t + k + 1 ∣ S t = s ) , f o r a l l s ∈ S V_\pi(s)=\mathbb{E}_\pi(G_t|S_t=s)=\mathbb{E}_\pi(\sum_{k=0}^{\inf}\gamma^kR_{t+k+1}|S_t=s), for\,all\,s\in S Vπ(s)=Eπ(Gt∣St=s)=Eπ(k=0∑infγkRt+k+1∣St=s),foralls∈S
q π ( s ) = E π ( G t ∣ S t = s , A t = a ) = E π ( ∑ k = 0 inf γ k R t + k + 1 ∣ S t = s , A t = a ) , f o r a l l s ∈ S q_\pi(s)=\mathbb{E}_\pi(G_t|S_t=s,A_t=a)=\mathbb{E}_\pi(\sum_{k=0}^{\inf}\gamma^kR_{t+k+1}|S_t=s,A_t=a), for\,all\,s\in S qπ(s)=Eπ(Gt∣St=s,At=a)=Eπ(k=0∑infγkRt+k+1∣St=s,At=a),foralls∈S
式(6)为Q-function(比V-func多一个变量a)。
Model:环境的模型
预测下个状态 P s s ′ a = P [ S t + 1 = s ′ ∣ S t = s , A t = a ] P_{ss'}^a=P[S_{t+1}=s'|S_t=s,A_t=a] Pss′a=P[St+1=s′∣St=s,At=a] 预测下个奖励 P s a = E [ R t + 1 ∣ S t = s , A t = a ] P_{s}^a=\mathbb{E}[R_{t+1}|S_t=s,A_t=a] Psa=E[Rt+1∣St=s,At=a]
基于Agent的学习
Value-Based Agent:显式学习价值函数,隐式学习策略函数
Policy-Based Agent:显式学习策略函数,不学习价值函数
Actor-Critic Agent:显式学习价值函数和策略函数的组合
基于是否有model
Model-Based:显式学习状态转移模型,可能会学习策略/价值函数
Model-Free:不学习状态转移模型,直接学习策略/价值函数
可总结为如下图:
图3 强化学习分类答:agent与env交互,env生成state,agent观测state为observation,决定action。见上图1。
强化学习相对于监督学习为什么训练会更加困难?(强化学习的特征)答:[^1]
强化学习处理的多是序列数据,其很难像监督学习的样本一样满足IID(独立同分布)条件。
强化学习有奖励的延迟(Delay Reward),即在Agent的action作用在Environment中时,Environment对于Agent的State的奖励的延迟(Delayed Reward),使得反馈不及时。
相比于监督学习有正确的label,可以通过其修正自己的预测,强化学习相当于一个“试错”的过程,其完全根据Environment的“反馈”更新对自己最有利的Action。
强化学习的基本特征有哪些?答:
强化学习输入数据的是时序性的强化学习未能得到即时反馈,有奖励的延迟(Delay Reward)exploration vs exploitation之前的决策会影响环境 近几年强化学习发展迅速的原因?答:深度学习的突破,并应用于强化学习中作为特征提取器(自动提取特征)。
状态和观测有什么关系?答:状态(state)是对世界的完整描述,不会隐藏世界的信息。观测(observation)是对状态的部分描述,可能会遗漏一些信息。
对于一个强化学习 Agent,它由什么组成?答:policy,value,model.
根据强化学习 Agent 的不同,我们可以将其分为哪几类?答:可见上图3。
基于策略迭代和基于价值迭代的强化学习方法有什么区别?答:策略迭代其实更符合我们人的决策,而价值迭代则更易进行训练,价值迭代是策略迭代的升级。
有模型(model-based)学习和免模型(model-free)学习有什么区别?答:model-based是与虚拟环境的交互学习,model-free是在现实环境中的交互学习。
强化学习的通俗理解答:通过agent与env的交互,学习到policy,而policy的学习牵涉到value function/q function的最优化。
[^1]参考