当前位置: 首页 > 科技观察

带你从不同角度了解强化学习算法的分类

时间:2023-03-16 22:08:59 科技观察

本文转载自公众号「读书芯」(ID:AI_Discovery)。本文将介绍强化学习算法的分类法,从多个不同的角度学习几种分类法。话不多说,深吸一口气,一起来学习一下RL算法的分类吧!Model-FreeVSModel-BasedModel-FreeVS模型分类[来源:作者,OpenAISpinningUp再创作]RL对算法进行分类的一种方法是询问代理是否可以访问环境模型。换句话说,询问环境是否会响应代理的操作。基于这个观点,RL算法有两个分支:无模型和基于模型。模型RL算法根据学习到的环境模型选择最佳策略。无模型RL算法通过代理的反复测试选择最佳策略。两种算法各有优缺点,如下表所示:Value-basedVSPolicy-based另一种对RL算法进行分类的方法是考虑算法优化的是价值函数还是策略。在深入研究之前,让我们了解策略和价值函数。(1)PolicyPolicyπ是状态s到动作a的映射,其中π(a|s)是在状态s采取动作a的概率。策略可以是确定性的或随机的。假设我们正在玩非常简单的剪刀石头布游戏,其中两个人通过同时执行三个动作(石头/剪刀/布)中的一个来竞争输赢。规则很简单:RockPaperScissorsRockPaperScissors将策略视为迭代RockPaperScissors更大的几率。统一的随机策略是最好的——如果你的选择是完全随机的,那么我不知道要采取什么行动才能获胜。(2)价值函数价值函数是根据对未来回报(回报值)的预测来衡量状态好坏的函数。回报值(Gt)基本上等于“贴现”回报的总和(从时间t开始)。γ∈[0,1]是折扣因子。折扣因子旨在抵消未来收益有几个原因:方便的数学计算打破状态变化图中的无限循环未来收益的高度不确定性(例如股票价格变化)未来收益不能立即受益(例如人们更喜欢Hedonic而不是比十年后)理解了返回值的概念,我们来定义价值函数的数学形式!价值函数有两种数学形式:状态-动作价值函数(Q值)是在时间t的状态-动作组合期望返回值:Q-值和价值函数的区别是动作优势函数(通常称为A-value):现在你知道什么是价值函数和动作状态价值函数了。接下来详细了解RL算法的另一个分支,该分支专注于算法优化的组件。ValueAlgorithmsvs.PolicyAlgorithms[来源:作者,DavidSilverRL课程再创作]ValueRL旨在学习价值/行动价值函数以生成最优策略(即隐式生成最优策略);策略RL旨在使用参数化函数直接学习策略。Actor-CriticRL旨在学习价值函数和政策。下表列出了价值和政策算法的优缺点。价值算法必须选择最大化动作状态价值函数的动作。如果动作空间是非常高维或者连续的,代价会很高,而策略算法是通过直接调整策略的参数来运行的,不需要进行最大化计算。如果处理不当,价值算法会遇到一系列问题(收敛性差/不稳定),而策略算法更稳定并且具有更好的收敛性,因为它们对策略梯度几乎没有增量变化。策略算法可以学习确定性和随机性策略,而价值算法只能学习确定性策略。与价值算法相比,原始策略算法速度较慢且方差较高。价值算法试图选择最大化动作-状态价值函数的动作,这将优化策略(更快的操作,更小的方差),策略算法只需要几个步骤,更新平滑稳定,但在同时它的效率较低,有时会导致较大的方差。策略算法通常收敛于局部最优而不是全局最优。策略和非策略算法另一种对RL算法进行分类的方法是基于策略源分类。可以说策略算法是“边做边学”。也就是说,该算法尝试从π抽样的经验中学习策略π。非策略算法通过“监视”工作。换句话说,该算法试图从μ采样的经验中学习策略π。例如,机器人通过观察人类行为来学习如何操作。