强化学习的模型


前言

B站学习龙强老师强化学习相关视频后的总结笔记,视频链接:https://www.bilibili.com/video/BV1hq4y1n7aU?p=1


一、强化学习是什么?

根据维基百科对强化学习的定义:Reinforcement learning (RL) is an area of machine learning inspired by behaviorist psychology, concerned with how software agents ought to take actions in an environment so as to maximize some notion of cumulative reward. (强化学习是机器学习领域之一,受到行为心理学的启发,主要关注智能体如何在环境中采取不同的行动,以最大限度地提高累积奖励。)

强化学习主要由智能体(Agent)、环境(Environment)、状态(State)、动作(Action)、奖励(Reward)组成。智能体执行了某个动作后,环境将会转换到一个新的状态,对于该新的状态环境会给出奖励信号(正奖励或者负奖励)。随后,智能体根据新的状态和环境反馈的奖励,按照一定的策略执行新的动作。上述过程为智能体和环境通过状态、动作、奖励进行交互的方式。

智能体通过强化学习,可以知道自己在什么状态下,应该采取什么样的动作使得自身获得最大奖励。由于智能体与环境的交互方式与人类与环境的交互方式类似,可以认为强化学习是一套通用的学习框架,可用来解决通用人工智能的问题。因此强化学习也被称为通用人工智能的机器学习方法。
强化学习是一种无标签的学习,通过奖励函数来判断在确定状态下执行某一动作的好坏,学习过程就是通过奖励信号来改变执行动作的策略,最终结果就是形成一个使奖励最大的策略。


二、基本模型

1.基本框架

强化学习框图

智能体(Agent):强化学习的本体,作为学习者或者决策者,类比人的大脑。
环境(Environment):智能体以外的一切,主要是状态的集合,类比人的身体以及周围的自然环境。
状态(state):一个表示环境的数据,状态集则是环境中所有可能的状态。
动作(action):智能体可以做出的动作,动作测试智能体可以做出的所有动作。类比人类的大脑发出的向身体发出的指令。
奖励(Reward):智能体在执行一个动作后,获得的反馈信息,可以是正奖励,也可以是负奖励(惩罚)。
策略(Policy):环境状态到动作的映射称为策略,即智能体处在某一状态下,执行何种动作
目标:强化学习的目标是自动寻找在连续时间序列里的最优策略,这里的最优策略通常指使得长期累计奖励最大化的策略。强化学习实际上是智能体在与环境进行交互的过程中,学会最佳决策序列。

2.学习过程

  1. 智能体感知环境状态;
  2. 智能体根据某种策略选择动作;
  3. 动作作用于环境导致环境状态变化(环境转移);
  4. 同时,环境向智能体发出一个反馈信号。

三.马尔科夫决策过程(Markov Decision Process. MDP)

1.马尔科夫性质

在时间步t+1时,环境的反馈仅取决于上一时间步t的状态s以及动作a,与时间步t-1以及t-1步之前的时间步都没有关联性。
马尔科夫性是一种为了简化问题而做的假设。我们的强化学习就是基于这一假设来进行学习过程的,任何不符合该假设的问题都不太适合采用强化学习的方法来解决。

2.MDP的基本组成部分

状态集合 S = { s 1 , s 2 , s 3 , … , s m } S =\lbrace s_1,s_2,s_3,\text{\textellipsis},s_m \rbrace S={s1,s2,s3,,sm}
为了区分表述:
s i , i = 1 , 2 , 3 , … , m s_i,i=1,2,3,\text{\textellipsis},m si,i=1,2,3,,m(这里的 s i s_i si指的是状态集合中任意一个状态)
s t , t = 1 , 2 , 3 , … , T s_t,t=1,2,3,\text{\textellipsis},T st,t=1,2,3,,T(这里的 t t t指的时间序列, s t s_t st指的是 t t t时刻的状态)

动作集合 A = { a 1 , a 2 , a 3 , … , a n } A =\lbrace a_1,a_2,a_3,\text{\textellipsis},a_n \rbrace A={a1,a2,a3,,an} 表述方式同上
( A ∣ s i ) (A|s_i) (Asi)表示状态 s i s_i si下所有合法的动作 a a a的集合

状态转移概率 P s a ( s ′ ) Psa(s\\') Psa(s),状态在 s s s下采取动作 a a a,状态转移到 s ′ s\\' s的概率
P s a : S ∗ A ∗ S → [ 0 , 1 ] Psa:S*A*S\rightarrow[0,1] Psa:SAS[0,1]

奖励函数
R s a : S ∗ A → R ( 实数 ) Rsa:S*A\rightarrow R(实数) Rsa:SAR(实数) R s a ( s , a ) Rsa(s,a) Rsa(s,a)在状态 s s s下执行动作 a a a得到的奖励
R s a s : S ∗ A ∗ S → R ( 实数 ) Rsas:S*A*S\rightarrow R(实数) Rsas:SASR(实数),
R s a s ( s , a , s ′ ) Rsas(s,a,s\\') Rsas(s,a,s)在状态 s s s下执行动作 a a a转移到状态 s ′ s\\' s时得到的奖励

策略函数
π : S ∗ A → [ 0 , 1 ] \pi:S*A\rightarrow[0,1] π:SA[0,1]
π ( a ∣ s ) \pi(a|s) π(as):在状态 s s s的前提下,执行动作 a a a的概率
π ( a ∣ s ) = { 1 或 0 确定性策略  [ 0 , 1 ] 随机性策略 \pi(a|s)=\begin{cases} 1 或 0 &\text{确定性策略 } \\ [0,1] &\text{随机性策略} \end{cases} π(as)={10[0,1]确定性策略 随机性策略

折扣因子 γ ∈ [ 0 , 1 ] \gamma\isin[0,1] γ[0,1]

  • γ = 0 \gamma=0 γ=0:贪婪法,价值只由当前演示奖励决定
  • γ = 1 \gamma=1 γ=1:所有后续奖励和当前奖励同等重要
  • γ ∈ ( 0 , 1 ) \gamma\isin(0,1) γ(0,1):当前延时奖励的权重比后续奖励的权重大

马尔科夫决策过程可以用一个五元组来表示:
M D P ( S , A , P s a , R s a , γ ) MDP(S,A,Psa,Rsa,\gamma) MDP(S,A,Psa,Rsa,γ)

3.MDP的基本流程

No
Yes
初始化MDP,π
是否终止
选择动作at
反馈奖励 rt+1
状态转移st+1
t=t+1
Stop

产生一个状态-动作-奖励序列:
s 0 , a 0 , r 1 → s 1 , a 1 , r 2 → s 2 , a 2 , r 3 → s 3 , a 3 , r 4 … s t , a t , r t + 1 → … s T − 1 , a T − 1 , r T → s T ( 终止状态 ) s_0,a_0,r_1 \rightarrow s_1,a_1,r_2 \rightarrow s_2,a_2,r_3 \rightarrow s_3,a_3,r_4 \dots s_t,a_t,r_{t+1}\rightarrow\dots s_{T-1},a_{T-1},r_T\rightarrow s_T(终止状态) s0,a0,r1s1,a1,r2s2,a2,r3s3,a3,r4st,at,rt+1sT1,aT1,rTsT(终止状态)
当我们要解决的问题符合马尔科夫假设(状态的转移只与上一步执行的动作有关),那么强化学习的训练过程就可以用MDP决策过程来表述,一次完整的训练过程就可以形成一个完整的MDP序列(达到终止状态)。
策略就是从大量的完整MDP序列中学习(优化)到的
在这里我们重新回到强化学习的目标:自动寻找在连续时间序列里的最优策略,这里的最优策略通常指使得长期累计奖励最大化的策略。换句话说,策略是由长期累计奖励来判断好坏的。
累计奖励(Total Payoff)
G t = r t + 1 + γ r t + 2 + γ 2 r r + 3 + ⋯ + γ T − t − 1 r T G_t=r_{t+1}+\gamma r_{t+2}+\mathop{\gamma}^2r_{r+3}+\dots+\mathop{\gamma}^{T-t-1}r_T Gt=rt+1+γrt+2+γ2rr+3++γTt1rT

现在我们可以简单理解MDP流程:先初始化策略函数,一般是随机生成 π 0 \pi_0 π0,并且随机初始状态 s 0 s_0 s0,通过 π 0 \pi_0 π0来选择相应的动作 a 0 a_0 a0,这样不断执行得到一条完整的马尔科夫链( s 0 , a 0 , r 1 → s 1 , a 1 , r 2 → s 2 , a 2 , r 3 → s 3 , a 3 , r 4 … s t , a t , r t + 1 → … s T − 1 , a T − 1 , r T → s T ( 终止状态 ) s_0,a_0,r_1 \rightarrow s_1,a_1,r_2 \rightarrow s_2,a_2,r_3 \rightarrow s_3,a_3,r_4 \dots s_t,a_t,r_{t+1}\rightarrow\dots s_{T-1},a_{T-1},r_T\rightarrow s_T(终止状态) s0,a0,r1s1,a1,r2s2,a2,r3s3,a3,r4st,at,rt+1sT1,aT1,rTsT(终止状态))通过这个序列我们就可以计算出在状态 s 0 s_0 s0下选择动作 a 0 a_0 a0转移到 s 1 s_1 s1这个策略产生的累计奖励 G G G,通过这个G就可以评价这个策略的好坏,然后更新策略,至于具体如何评价策略,如何更新策略,在下一篇博客继续。


四、基于模型和免模型的强化学习

1.模型

模型是指对环境建模,具体指状态转移概率函数和奖励函数

2.基于模型的强化学习(Model-Based)

智能体知道在任何状态下执行任何动作所获得的回报,即 R ( s , a ) R(s,a) R(s,a)已知。可以直接使用动态规划法来求解最优策略,这种采取对环境进行建模的强化学习方法就是Model-Based强化学习。
若奖励函数和状态转移函数未知,我们就可以用特定的方法(比如神经网络或者物理机理)对它们进行模拟建模。

3.免模型的强化学习(Model-Free)

其实,不需要对环境进行建模我们就可以找到最优策略,最优策略对应的是最大累计奖励,所以我们可以通过直接求解最大累计奖励,然后再根据最大累计奖励来求解最优策略,这种方法就叫做Model-Free强化学,典型的方法有QlearningSarsa


model-free只能在一次行动之后静静得等待现实世界给的反馈然后再取材行动,而model-base可以采用想象力预判接下来发生的所有情况,然后根据这些想象的情况选择最好的那种,并根据这种情况来采取下一步的策略。

总结

强化学习的本质就是通过大量的马尔科夫链来计算长期累计奖励并根据这个奖励来更新策略。

强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一。它主要用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。强化学习的特点在于没有监督数据,只有奖励信号。 强化学习的常见模型是标准的马尔可夫决策过程(Markov Decision Process, MDP)。按给定条件,强化学习可分为基于模式的强化学习(model-based RL)和无模式强化学习(model-free RL),以及主动强化学习(active RL)和被动强化学习(passive RL)。强化学习的变体包括逆向强化学习、阶层强化学习和部分可观测系统的强化学习。求解强化学习问题所使用的算法可分为策略搜索算法和值函数(value function)算法两类。 强化学习理论受到行为主义心理学启发,侧重在线学习并试图在探索-利用(exploration-exploitation)间保持平衡。不同于监督学习和非监督学习,强化学习不要求预先给定任何数据,而是通过接收环境对动作的奖励(反馈)获得学习信息并更新模型参数。强化学习问题在信息论、博弈论、自动控制等领域有得到讨论,被用于解释有限理性条件下的平衡态、设计推荐系统和机器人交互系统。一些复杂的强化学习算法在一定程度上具备解决复杂问题的通用智能,可以在围棋和电子游戏中达到人类水平。 强化学习在工程领域的应用也相当广泛。例如,Facebook提出了开源强化学习平台Horizon,该平台利用强化学习来优化大规模生产系统。在医疗保健领域,RL系统能够为患者提供治疗策略,该系统能够利用以往的经验找到最优的策略,而无需生物系统的数学模型等先验信息,这使得基于RL的系统具有更广泛的适用性。 总的来说,强化学习是一种通过智能体与环境交互,以最大化累积奖励为目标的学习过程。它在许多领域都展现出了强大的应用潜力。
好的,关于强化学习基本框架,我可以为您提供以下的介绍和解释。 1. 强化学习是什么? 简单来说,强化学习(Reinforcement Learning)是一种人工智能学习方式,它通过对环境的交互实现智能决策。与传统的监督学习不同,强化学习模型是通过尝试不断优化状态与行为之间的关联,从而找到一个最优的行为策略。 2. 强化学习的基本元素 强化学习的基本元素包括环境、状态、动作、回报和策略。环境是指学习系统所处的场景和背景,状态是指当前状态的具体描述,动作是指智能体可以执行的行动,回报是指每个动作的优劣程度,策略是指选择最优动作的决策方法。 3. 强化学习的基本流程 强化学习的基本流程包括观察当前状态、选择动作、获得回报并更新策略,不断迭代,直到找到最优的策略。具体来说,智能体会根据当前状态选择相应的动作,执行后会得到一个奖赏,并根据奖赏区分动作的好坏。根据不同策略评估函数的不同,在执行完动作后,智能体会以某种方式计算出一个目标值。进一步,智能体会调整打分规则,继续执行动作,这个过程不断重复。 4. 强化学习的算法 强化学习有很多经典算法如:Q-learning,SARSA,Actor-Critic等等。它们基本上都是基于Bellman等价式的。Bellman等价式是强化学习中最基本的等式,用于描述奖励的计算方式,并被广泛应用于所有基于值的方法中。模型非参数化指的是模型需要使用经验数据来进行训练。在训练过程中,智能体会从经验中不断地学习,并尝试找到最优的策略。 以上就是关于强化学习基本框架的基本介绍和解释,如果您有其他问题欢迎随时提出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值