【强化学习】一、强化学习介绍

一、强化学习介绍

1.关于强化学习

强化学习的多面

强化学习在各个领域均有应用,在计算机科学领域有机器学习,在工程领域有最优控制(一种在给定约束条件下使某一性能指标达到最优的控制方法),在数学领域有运筹学,经济领域有有限理性(指个体在决策过程中受到认知能力、信息获取和处理能力等因素的限制,从而无法做出完全理性的决策),在心理学领域有经典条件反射(一种学习过程,通过将原本无关的刺激与自然产生某种反应的刺激联系起来,使得原本无关的刺激也能引发类似的反应),在神经科学领域有奖励系统(一种激励和鼓励个体实现目标的机制)。


机器学习的分支

有监督学习:利用一组已知类别的训练样本调整分类器的参数,使习得的分类器能够对未知样本进行分类或预测

无监督学习:从无标注的数据中学习隐含的结构或模式

强化学习:学习“做什么才能使数值化的收益信号最大化”,是机器通过与环境交互来实现目标的一种计算方法。


强化学习的特点
  • 没有监督数据,只有奖励信号(reward)
  • 奖励信号不一定是实时的,可能存在延迟,比如围棋的输赢可能得到最后才能见分晓
  • 时间是一个重要因素,对于有监督学习,各个样本的要求是独立同分布的,但对于强化学习,各样本存在时间上的关联,并对预测分析起很大作用
  • 智能体(Agent)当前的动作(Action)影响后续接收到的数据

2.强化学习的基本要素

奖励Reward
  • 奖励 R t R_t Rt 是一个反馈信号,是一个标量
  • 反映智能体(Agent)在时间步 t t t工作得如何
  • 智能体的工作就是最大化累计奖励
  • 强化学习主要基于奖励假设(定义:所有问题的目标都可以被描述成最大化期望的累积奖励)

序列决策Sequential Decision Making
  • 目标:选择一定的动作序列以最大化未来的总体奖励
  • 智能体的行为可能是一个很长的动作序列
  • 多数时候奖励是延迟的
  • 宁愿牺牲即时(短期)奖励以获取更多的长期奖励

智能体Agent

【强化学习】一、强化学习介绍_第1张图片

  • 智能体在每个时间步 t t t
    • 接收观测(Observation) O t O_t Ot
    • 接收标量奖励信号 R t R_t Rt
    • 执行动作(Action) A t A_t At
  • 环境:
    • 接收动作 A t A_t At
    • 产生观测 O t + 1 O_{t+1} Ot+1
    • 产生标量奖励信号 R t + 1 R_{t+1} Rt+1

历史(History)与状态(State)
  • 历史是观测、行动和奖励的序列

    H t = O 1 , R 1 , A 1 , O 2 , R 2 , A 2 , . . . , O t − 1 , R t − 1 , A t − 1 , O t , R t H_t=O_1,R_1,A_1,O_2,R_2,A_2,...,O_{t-1},R_{t-1},A_{t-1},O_t,R_t Ht=O1,R1,A1,O2,R2,A2,...,Ot1,Rt1,At1,Ot,Rt

    • 根据这个历史可以决定接下来会发生什么

      智能体选择行动

      环境选择观测及奖励

  • 状态是一种用于确定接下来会发生的事情(行动、观察、奖励)的信息

    • 状态是关于历史的函数 S t = f ( H t ) S_t=f(H_t) St=f(Ht)

环境状态Environment State
  • 环境状态 S t e S_t^e Ste是环境的内部状态
    • 用来确定下一个观测/奖励
  • 环境状态通常对智能体是不可见的
  • 即使 S t e S_t^e Ste可见,大都包含大量不相关的信息

智能体状态Agent State
  • 智能体状态 S t a S_t^a Sta是智能体内部对信息的表达

    • 包括智能体可以使用的、决定未来动作的所有信息
    • 是强化学习算法使用的信息
  • 智能体状态是历史的函数

    S t a = f ( H t ) S_t^a=f(H_t) Sta=f(Ht)

【强化学习】一、强化学习介绍_第2张图片


信息状态Information State

信息状态,也叫马尔可夫状态,Markov State,包含了历史上所有有用的信息。

马尔可夫状态:状态具有马尔可夫性,当且仅当 P [ S t + 1 ∣ S t ] = P [ S t + 1 ∣ S 1 , . . . , S t ] P[S_{t+1}|S_t]=P[S_{t+1}|S_1,...,S_t] P[St+1St]=P[St+1S1,...,St]

给定当前时刻的状态,将来与历史无关,将来只与当前状态相关。


完全可观测的环境Fully Observable Environments

完全可观测:智能体可以直接观察到全部环境状态,比如下围棋棋盘的情况就是完全可观测的
O t = S t a = S t e O_t=S_t^a=S_t^e Ot=Sta=Ste
智能体状态=环境状态=信息状态

正式地说,这是马尔可夫决策过程(MDP)


部分可观测的环境Partially Observable Environments

部分可观测:智能体可以观测到环境的部分,比如打麻将和斗地主,不能看到别人的牌

智能体状态不等于环境状态

正式地说,这是部分可观测马尔可夫决策过程(POMDP)


3.智能体组成

强化学习智能体由下述三个组件中的一个或多个组成:

  • 策略(Policy):智能体的行为函数。输入为状态,输出为行动决策
  • 价值函数(Value function):评估每个状态或行动有多好
  • 模型(Model):智能体对环境的表示,是智能体眼里的环境

策略

策略是学习智能体在特定时间的行为方式

  • 是从状态到行动的映射
  • 确定性策略(Deterministic Policy): a = π ( s ) a=\pi(s) a=π(s)
  • 随机策略(Stochastic Policy): π ( a ∣ s ) = P ( A t = a ∣ S t = s ) \pi(a|s)=P(A_t=a|S_t=s) π(as)=P(At=aSt=s),这个输出每个动作的概率值,并不会指定某个动作

随即策略示例:

【强化学习】一、强化学习介绍_第3张图片

智能体能看见附近格子的信息,如果智能体停在灰色格子上,两个方块上的状态是一样的

采用确定性策略,如中间图所示,可能会学到在灰色方块上向左走,如果智能体在左边的灰色方块上,他永远都不可能通关游戏

采用随机策略,如最右图所示,便可以在任意格子上有概率地通关游戏


价值函数

价值函数是对于未来累积奖励的预测

  • 用于评估在给定的策略下状态的好坏
  • 可用于选择动作

V π ( s ) = E π [ R t + 1 + γ R t + 2 + γ 2 R t + 3 + . . . ∣ S t = s ] V_\pi(s)=\mathbb{E}_\pi[R_{t+1}+\gamma R_{t+2}+\gamma ^2R_{t+3}+...|S_t=s] Vπ(s)=Eπ[Rt+1+γRt+2+γ2Rt+3+...∣St=s]

其中, s s s是状态, π \pi π是智能体, γ \gamma γ是一个系数,越未来的数据,赋予的权重越小


模型

模型用于模拟环境的行为,建模环境的动态特征

解决下列两个问题:

  • 状态转移概率:用来预测环境的下一个状态

P s s ′ a = P [ S t + 1 = s ′ ∣ S t = s , A t = a ] \mathcal{P}_{s s^{\prime}}^a=\mathbb{P}\left[S_{t+1}=s^{\prime} \mid S_t=s, A_t=a\right] Pssa=P[St+1=sSt=s,At=a]

  • 奖励:预测环境给出的下一个即时奖励

R s a = E [ R t + 1 ∣ S t = s , A t = a ] \mathcal{R}_s^a=\mathbb{E}\left[ R_{t+1} \mid S_t=s, A_t=a\right] Rsa=E[Rt+1St=s,At=a]

环境真实的运行机制通常不称为模型,而称为环境动力学

模型并不能立即给我们一个好的策略


4.智能体分类

基于策略的更新与学习方法,强化学习方法可分为:

  • 基于价值函数,必须有价值才有策略
  • 基于直接策略搜索,不在乎内部过程,只关注一端到一端每一步怎么做
  • 基于执行者-评论者(Actor-Critic),将前二者结合

根据强化学习算法是否依赖模型,强化学习方法可分为:

  • 基于模型的强化学习算法
  • 无模型的强化学习算法

根据环境返回的回报函数是否已知,强化学习方法可分为:

  • 正向强化学习算法
  • 逆向强化学习算法:从专家的示例中学习回报函数

5.强化学习问题

学习与规划

序列决策中的两个基础问题:

  • 强化学习
    • 环境初始未知
    • 智能体不断与环境交互
    • 智能体提升它的策略
  • 规划
    • 环境模型已知
    • 智能体根据Model进行计算(不进行额外的交互)
    • 智能体提升它的策略

强化学习示例:

【强化学习】一、强化学习介绍_第4张图片

游戏内在运行机制未知,直接与游戏交互,操作摇杆,观测到画面及分数

规划示例:

【强化学习】一、强化学习介绍_第5张图片

游戏内在运行机制已知;如果在状态s采取了动作a接下的状态与分数全部可知;在大脑里找到最优策略(不与环境交互):基于树的搜索策略


探索和利用

强化学习类似于一个试错的学习

智能体从其与环境的交互中发现一个好的策略

在试错的过程中不会损失太多奖励

探索会发现有关环境的更多信息,有选择地放弃某些奖励

利用已知信息来最大化回报,强调开发利用已有的信息

探索和利用是决策时需要平衡的两个方面

例子:饭店选择,利用:去最喜欢的饭店,探索:去一个新的饭店


预测与控制

预测:评估未来,策略已经给定

控制:最大化未来,找到最优的策略


5.参考资料

强化学习基础 北京邮电大学 鲁鹏 强化学习基础 (本科生课程) 北京邮电大学 鲁鹏_哔哩哔哩_bilibili

深度强化学习 台湾大学 李宏毅 DRL Lecture 1_ Policy Gradient (Review)_哔哩哔哩_bilibili

蘑菇书EasyRL datawhalechina/easy-rl: 强化学习中文教程(蘑菇书),在线阅读地址:https://datawhalechina.github.io/easy-rl/

你可能感兴趣的:(强化学习,深度学习,机器学习)