强化学习入门系列一VS强化学习的基本概念

强化学习的基本概念

1. 强化学习的算法步骤:

  1. 首先,智能体通过执行行为与环境进行交互。
  2. 智能体执行一个行为之后,从一个状态转移到另一个状态
  3. 然后,智能体将会根据所执行的行为获得相应的奖励。
  4. 根据获得的奖励,智能体会知晓该行为是好是坏。
  5. 如果行为是好的,即如果智能体得到正面奖励,那么将会倾向于执行该行为,否则智能体将会尝试执行其他行为来获得正面奖励。因此,该方法本质上是一个试错学习的过程。
    在这里插入图片描述

2. 强化学习和其他机器学习范式的不同

在监督学习中,机器(智能体)从具有标记的输入|输出训练数据集中学习。目的是使得模型对其学习进行外推和推广,从而能够很好适用于未知数据。在此,需要有一个对环境具备完备知识基础的外部监督者,来监督智能体完成该任务。

在无监督学习中,将提供一个仅有一组输入训练数据的模型,通过模型来学习确定输入数据中的隐藏模式。通常普遍会误认为强化学习是一种无监督学习,其实并非如此。在无监督学习中,通过模型来学习隐藏的结构,而在强化学习中,通过最大化奖励来学习模型。假设想要向用户推荐新电影。无监督学习会通过分析用户观看过的类似电影来推荐,而强化学习则不断接收来自用户的反馈信息,了解其偏好电影,并在此基础上构建一个知识库,来推荐一部新电影。

另外还有一种称为半监督的学习,其本质上是监督学习和无监督学习的结合。该方法涉及数据和未标记数据的函数估计,而强化学习的本质上智能体与其环境之间的交互。所以,强化学习与其他所有机器学习的范式完全不同。

3. 强化学习的要素

a. 智能体

智能体是指进行智能决策的软件程序,在强化学习中通常是学习者。智能体通过与环境交互来执行行为,并根据其行为来获得奖励,比如说超级马里奥在视频游戏中的动作行为。

b. 策略函数

策略定义了智能体在环境中的行为。智能体决定执行何种行为取决于策略。假设从家到办公室之间存在不同的路径,其中有些路径很短,而有些路径相对很长。这些路径可以称为策略,因为代表了为达到目标而选择执行的行为。策略通常用符号 π π π 表示。策略也可以是查找表形式或者复杂的搜索过程。

c. 值函数

值函数表示智能体在某一特定状态下的程度。这与策略有关,通常用 v ( s ) v(s) v(s)表示。值函数等价于智能体从开始状态开始所获得的总的期望奖励。值函数有多种形式。最优值函数是与其他值函数相比,所有状态下具有最大值的一种值函数。同理,最优策略是指具有最优值函数的策略。

d. 模型

模型是指智能体对环境的表示。学习可以分为基于模型的学习和无模型学习两种类型,在基于模型的学习中,智能体利用先前学习到的信息来完成任务,而在无模型学习中,智能体仅是通过试错经验来执行正确行为。假设想要更快地从家到办公室。在基于模型的学习中,只需利用先前学习的经验(地图)来快速地到达办公室,而在无模型学习中,不会使用之前的经验,而是尝试所有不同的路线,并从中选择较快的一种。

4. 强化学习的环境类型

与智能体交互的所有内容都称为环境。环境是指外部世界,包括除智能体之外的一切事物。环境有不同类型:

(1)确定性环境

如果根据当前状态就可以知道相应的结果,那么就称为确定性环境。例如,在国际象棋中,会知道移动每个棋子侯的确切结果。

(2)随机性环境

如果不能根据当前状态来去确定相应的结果,那么这种环境就称为随机性环境。在这种环境中,会存在较大程度的不确定性。例如,在掷骰子时永远不知道会出现什么数字。

(3)完全可观测环境

如果智能体在任何时候都能确定系统的状态,那么久称为完全可观测环境。例如,在国际象棋中,系统的状态,即棋盘上所有棋子的位置,都是可以获得的。因此,棋手可以做出最优决策。

(4)部分可观测环境

如果智能体无法在任何时候都能确定系统的状态,那么就称为部分可观测环境。例如,在玩扑克时,不知道对手的牌。

(5)离散环境

如果从一个状态转移到另一个状态后只能有一个有限的行为状态,那么就称为离散环境。例如,在国际象棋中,只能有移动棋子后的有限集。

(6)连续环境

如果从一个状态转移到另一个状态可以有无限的行为状态,那么就称为连续环境。例如,从出发地到目的地的旅行中可以有多条路线。

(7)情景和非情景环境

情景环境也称为非序贯环境。在情景环境中,智能体的当前行为不会影响将来的行为,而在非情景环境中,智能体的当前行为会影响今后的行为,也称为序贯环境。也就是说,智能体在情景环境中执行独立的任务,而在非情景环境中,所有智能体的行为都是相关的。

(8)单智能体和多智能体环境

单智能体环境中只能有一个智能体,而多智能体中可以存在多个智能体。在执行复杂任务时,常用多智能体环境。在完全不同的环境中,有不同的智能体执行。不同环境下的智能体可以相互通信。多智能体环境大多是随机的,因为其具有较大程度的不确定性。

5. 强化学习的平台

OpenAI Gym是一个用于构建、评估和比较强化学习算法的工具包。可以兼容TensorFlow、Theano、keras等任何框架下所编写的算法。该工具包简单易懂,无需对智能体的结构进行假设,并对所有强化学习任务提供了接口。

OpenAI Universe是OpenAI Gym的扩展,提供了在从简单到实时复杂的各种环境下训练和评估智能体的功能。可以无限访问许多游戏环境。利用Universe,任何程序都可以转换为一个Gym环境,而无需访问程序内部、源代码或者API,这是因为Universe是通过一个计算远程桌面的虚拟网络来自动启动程序的。

DeepMind Lab是基于AI智能体的另一个优秀的研究平台,提供了丰富的模拟环境,可作为运行多种强化学习算法的实验平台。同时它具有高度的可定制化和可拓展性,可视化内容十分丰富,且具有科幻风格和逼真效果。

此外,还有RL-Glue、Project Malmo、VizDoom等平台,因为没有尝试过这些,所以不再具体介绍。

6.强化学习的入门例子

Gym的安装教程可以自行百度。可参考这个链接:三大操作系统中的环境配置方法 安装好后,通过

from gym import envs
print(envs.registry.all())

查看支持环境。
结果如下:

dict_values([EnvSpec(KangarooNoFrameskip-v4), EnvSpec(SkiingDeterministic-v0), EnvSpec(ChopperCommand-ramNoFrameskip-v0), EnvSpec(NameThisGame-ramDeterministic-v4), EnvSpec(Gopher-ramNoFrameskip-v4), EnvSpec(MontezumaRevenge-ramNoFrameskip-v0), EnvSpec(Skiing-ramDeterministic-v0), EnvSpec(Pooyan-ramNoFrameskip-v4), EnvSpec(ChopperCommand-ramDeterministic-v0), EnvSpec(Assault-ramNoFrameskip-v4), EnvSpec(ZaxxonNoFrameskip-v4), EnvSpec(JourneyEscape-ram-v0), EnvSpec(BankHeist-v4), EnvSpec(Gravitar-ramNoFrameskip-v0), EnvSpec(Berzerk-ramNoFrameskip-v0), EnvSpec(Pong-ram-v0), EnvSpec(DemonAttackNoFrameskip-v4), EnvSpec(BankHeist-v0), EnvSpec(AtlantisNoFrameskip-v0), EnvSpec(MsPacmanNoFrameskip-v0), EnvSpec(Bowling-v0), EnvSpec(ElevatorAction-v4), EnvSpec(Breakout-ramDeterministic-v4), EnvSpec(FishingDerbyDeterministic-v4), EnvSpec(BipedalWalkerHardcore-v2), EnvSpec(KungFuMaster-ramDeterministic-v0), EnvSpec(DemonAttackDeterministic-v4), EnvSpec(CentipedeDeterministic-v0), EnvSpec(TimePilot-ramDeterministic-v4), EnvSpec(SeaquestDeterministic-v4), EnvSpec(SkiingNoFrameskip-v0), EnvSpec(MountainCarContinuous-v0), EnvSpec(BattleZone-v4), EnvSpec(Krull-ramDeterministic-v4), EnvSpec(GravitarDetermin
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值