强化学习、增强学习、RL、Reinforcement Learning、无监督学习 by 研三笔记

目录

  • 笔者的话
  • 分类
  • 一些重要的概念
  • Qlearning 和saras区别
  • 先抽象再具体再抽象
  • 分类
  • 概念

笔者的话

学不会,趁早放弃吧!
开个小玩笑,哈哈。
弄懂,优缺点、特点、研究对象、应用对象、分类、基本原理、应用举例。

分类

看书先看目录,这个是奇迹重要的!学东西也一样,掌握一样东西的分类是非常非常重要的!能够加深对整体框架的理解。还不多说,且听老夫娓娓道来。
强化学习算法按照agent分类,可以分为下面几类:
关注最优策略(Policy based)
关注最优奖励总和(Value based)
关注每一步的最优行动(Action based)
至于什么是agent,下回分解。
强化学习、增强学习、RL、Reinforcement Learning、无监督学习 by 研三笔记_第1张图片

强化学习、增强学习、RL、Reinforcement Learning、无监督学习 by 研三笔记_第2张图片
参考博客,下面的一段话堪称屁精…精辟,把分类问题讲得一清二楚。
强化学习、增强学习、RL、Reinforcement Learning、无监督学习 by 研三笔记_第3张图片

“ 如上图所示,强化学习根据以策略为中心还是以值函数最优可以分为两大类,策略优化 方法和动态规划方法。其中策略优化方法又分为进化算法和策略梯度方法;动态规划方法分为策略迭代算法和值迭代算法。策略迭代算法和值迭代算法可以用广义策略迭代方法进行统一描述。另外,强化学习算法根据策略是否是随机的,分为确定性策略强化学习和随机性策略强化学习。根据转移概率是否已知可以分为基于模型的强化学习和无模型的强化学习算法。另外,强化学习算法中的回报函数r十分关键,根据回报函数是否已知,可以分为强化学习和逆向强化学习。逆向强化学习是根据专家演示将回报函数学习出来。”

一些重要的概念

(1)规则(policy)

Policy定义了agents在特定的时间特定的环境下的行为方式,可以视为是从环境状态到行为的映射,常用 π \piπ 来表示。policy 可以分为两类:
在这里插入图片描述
(2)奖励信号(a reward signal)

Reward就是一个标量值,是每个 time step 中环境根据 agent 的行为返回给 agent 的信号,reward 定义了在该情景下执行该行为的好坏,agent 可以根据 reward 来调整自己的 policy,常用 R RR 来表示。

(3)值函数(value function)

Reward定义的是立即的收益,而value function定义的是长期的收益,它可以看作是累计的 reward,常用 v vv 来表示。

(4)环境模型(a model of the environment)

整个 Agent 和 Environment 交互的过程可以用下图来表示:
根据上面的原理,其实我们可以得到,强化学习关键要素:agent(智能体),reward(奖励),action(行为),state(状态),environment(环境)。

agent:主要涉及到:策略(Policy),价值函数(Value Function)和模型(Model)。Policy,可以理解为行动指南,让agent执行什么动作,在数学上可以理解为从状态state到动作action的映射,可分为确定性策略(Deterministic policy)和随机性策略(Stochastic policy),前者是指在某特定状态下执行某个特定动作,后者是根据概率来执行某个动作。Value Function,对未来总Reward的一个预测。Model,一个对环境的认知框架,可以预测采取动作后的下一个状态是什么,很多情况下是没有模型的,agent只能通过与环境互动来提升策略。
state:可以细分为三种,Environment State,Agent State和Information State。Environment State是agent所处环境包含的信息,简单理解就是很多特征数据,也包含了无用的数据。Agent State是输入给agent的信息,也就是特征数据。Information State是一个概念,即当前状态包含了对未来预测所需要的有用信息,过去信息对未来预测不重要,该状态就满足马尔科夫性(Markov Property)。Environment State,Agent State都可以是Markov Property。
environment:可以分为完全可观测环境(Fully Observable Environment)和部分可观测环境(Partially Observable Environment)。Fully Observable Environment就是agent了解了整个环境,显然是一个理想情况。Partially Observable Environment是agent了解部分环境的情况,剩下的需要靠agent去探索。

Qlearning 和saras区别

从表格我们知道,Qlearning是off-policy,而Saras是on-policy。 对于Saras,当agent处于状态s时,根据当前Q网络以及一定的策略来选取动作a,进而观测到下一步状态s’,并再次根据当前Q网络及相同的策略选择动作a’,而Qlearning则是,根据当前Q网络计算出下一步采取哪个动作会得到maxQ值,并用这个Q值作为当前状态动作对Q值的目标,简单来说,Saras是agent处于新状态s’,就知道要采取行动a’,并且执行了,行动的选择根据策略,Q值的计算是根据动作a’,而Qlearning是agent处于新状态s’,只能知道采取哪个行动可以得到maxQ,并没有采取对应行动,它是根据当前Q和策略来采取行动的。在后面我们会做详细分析。

先抽象再具体再抽象

###############################

分类

  • Agent的分类,从采取的方法上可以分为Value Based,Policy Based 和Actor。
  • 从是否含有模型上Agent又可分为Model Free 和Model Based。

概念

Agent 的终极目标就是尽可能的最大化整个过程的累计奖励(cumulative reward),所以很多时候要把目光放长远一点,不要捡个芝麻丢个西瓜,要明白曲线救国也不是不可以的。

你可能感兴趣的:(综合,人工智能,算法)