一、强化学习基础
1.强化学习
1.1强化学习和监督学习区别:
强化学习是说如何让智能体在复杂不确定的环境下获得最大化的奖励。
与监督学习的不同之点在于:
- 监督学习可以获得即时的反馈而强化学习只能获得延迟奖励
- 监督学习的样本没有关联性,是独立的,同时即时获得奖励;而强化学习观测数据存在时间关联性,且无法获得即时反馈,
- 监督学习的上限取决于人类的表现;而强化学习是在延迟奖励的情况下,通过不断学习试错去获得最多的奖励,潜力巨大
强化学习的特征在于:
自我试错探索、延迟奖励、很难维持智能体稳步提升
1.2强化学习历史及应用
最初的强化学习称为标准强化学习,过程较为繁琐,需要先提取特征,然后分类;而神经网络整合了这两步,大大优化了每一个阶段,省去了特征工程的过程,结合深度学习和强化学习,因此称为深度强化学习。
应用方面随着算力的大大增加以及更多的GPU,大大减少了试错尝试所需的时间,再加上神经网络所带来的端到端训练,在深度学习和强化学习的基础上,带来了一个强大的决策网络,使得智能体可以实现穿衣服、拧魔方等行为
2.序列决策
2.1环境与奖励
智能体和环境交互后会获得奖励,而在这个过程中会产生大量观测,从这些观测中获得最大化奖励的决策正是智能体所要学习的。
在此过程中获得的奖励是一种反馈信号,用于反馈智能体在做某个决策时的表现如何,同时不同环境,奖励不同。
2.2序列决策
在一个强化学习环境里面,智能体的目的就是选取一系列的动作来最大化奖励,但因为延迟奖励,现在采取的某一步决策可能无法及时获得反馈,所以这些选取的动作必须有长期的影响。
而在与环境交互的过程中,针对每个观测都会有一个动作对应,同时获得一个奖励,所以历史就是观测、动作、奖励的序列。
智能体在采取当前动作的时候会依赖于它之前得到的历史,所以我们可以把整个游戏的状态看成关于这个历史的函数。
学习和规划是序列决策的两个基本问题
2.3观测与状态的区别
状态是对世界的完整描述,不会隐藏世界的信息。
观测是对状态的部分描述,可能会遗漏一些信息
2.3.1完全可观测
当智能体的状态与环境的状态等价的时候,即当智能体能够观察到环境的所有状态时,我们称这个环境是完全可观测的,在这种情况下面,强化学习通常被建模成一个马尔可夫决策过程的问题。
2.3.2部分可观测
当智能体只能看到部分的观测,我们称这个环境是部分可观测的,在这种情况下,强化学习通常被建模成部分可观测马尔可夫决策过程的问题。
2.3.3部分可观测马尔可夫决策过程
部分可观测马尔可夫决策过程是马尔可夫决策过程的一种泛化,部分可观测马尔可夫决策过程依然具有马尔可夫性质,但是假设智能体无法感知环境的状态,只能知道部分观测值。
3.动作空间:有效动作的集合
3.1离散动作空间
动作数量有限,例如角度只有东南西北。
3.2连续动作空间
动作是实值的向量,例如360度任意角度。
4.强化学习智能体的组成成分和类型
4.1组成成分
4.1.1策略:智能体的动作模型,实质是函数
随机性策略:π函数,输入状态,输出概率。概率就是智能体将要采取的动作的概率。优点很多,如:更好的探索环境、动作多样性。
确定性策略:智能体直接采取最有可能的动作。缺点就是动作容易被预测。
4.1.2价值函数:价值函数的值是对未来奖励的预测,用来评估状态的好坏
4.1.3模型:决定下一步的状态
下一步的状态取决于当前的状态以及当前采取的动作,由状态转移概率和奖励函数两个部分组成。
4.2类型
4.2.1基于价值、基于策略
基于策略:智能体制定一套策略,并按照这个策略行动,强化学习算法直接优化策略来获得最大化的奖励。适合用于动作集合规模大且连续的场景。
基于价值:不制定一个策略,而是维护一个价值函数,以此来获得最大化的奖励。缺点在于不适合离散、不连续的环境。
结合基于价值和基于策略的智能体称为演员·评论员智能体,同时学了价值函数和策略,通过交互来获得最佳的动作。
4.2.2有模型、免模型
有模型:直接估计状态的转移,在虚拟世界中进行建立和决策,要求较为苛刻,需要知道马尔可夫决策过程四元组中的所有元素,且状态集合和动作集合在有限步数内是有限集。在数据匮乏的情况下,可以采取有模型强化学习,同时还可在虚拟世界中预测将要发生的事,并采取对自己最有利的策略。
免模型:通过学习价值函数和策略函数来决策,直接在真实环境中进行反复迭代来获得最优策略。免模型强化学习属于数据驱动型,需要大量数据支持,同时也只能一步一步采取策略,等待真实世界的反馈。即便如此,目前大部分都采用了免模型强化学习,因为免模型强化学习更简单、拥有直观且有丰富的开源资料,且在目前的强化学习研究中,大部分情况下环境都是静态的、可描述的,使用大量的样本进行训练就能获得较好的效果。
5.探索和利用
探索和利用是强化学习的两个核心问题,探索是通过试错来获得最佳策略,利用是直接通过已知的的来获得更多奖励,事实上,探索和利用这两者是矛盾的,因为尝试次数有限,加强了一方则自然会削弱另一方,这就是强化学习所面临的探索-利用窘境。显然,想要累积奖励最大,则必须在探索与利用之间达成较好的折中。