夜雨聆风学习资料网

ARTICLE · 993017

《神经网络与深度学习通识版》第七章习题选2

《神经网络与深度学习通识版》第七章习题选2

第4,5,6题。

第四题:

“值函数派(如 DQN)和策略派(如 Policy Gradient)代表了两种解题思路,评估每一步的价值还是直接学一条好策略.请分析它们各自适合什么动作空间;再思考:为什么连续动作(如机器人控制)常常更适合策略梯度或演员-评论员方法?”

对于离散动作空间,也就是那种动作数量有限的环境,可以在神经网络的输出端给出针对每个动作的Q函数值,然后从这些值中选择最大的,并且取对应的a作为下一个动作选择。这就是题目中所说的值函数派的处理方式。

但是,对于连续空间来说,动作的取值是无穷多个,没法用有限数量的输出单元和其一一对应,也就不可能从状态对应的Q函数值出发来计算动作。通常是转而输出马尔可夫决策过程(MDP)五元素中的策略,其中θ表示神经网络中的参数。实际的动作可以从这个策略分布中抽样得出。

其实,在值函数类型的网络中,即便是在输出端用各种替代方式来表达Q(a|s)的分布,还是要面临网络训练过程中对下一状态的最大动作价值函数的计算困难,原因还是上面提到的连续空间中动作a无法枚举的问题。

对于本章分出的三类强化学习网络,也就是值函数类型、策略梯度类型和演员-评论员类型(实际就是将两者结合),要详细说明其特点需要不少篇幅,不过题目中要求思考主要还是策略梯度方法和演员-评论员方法更适合连续动作空间这件事情。

这主要是说这两种模型在策略网络的输出端,只需要对策略分布进行采样就能够适应各种维度的连续动作空间,并且在训练过程中所需要的梯度信息,也是来自于策略分布,并且还可以通过多种高斯/熵方法进行梯度优化。

还有一点需要注意的是,在策略网络计算策略梯度的过程中,以及在演员-评论员网络更新评价网络时,要么是通过数学方法,将动作价值函数转换为状态价值,要么是通过蒙特卡洛模拟,从策略中采用动作后计算动作价值,这是一个处理细节问题,也是题目结论成立的前提。

第五题:

“演员-评论员(Actor-Critic)架构把两派合流,请用‘歌手与评委’或‘学生与老师’的比喻讲清它的工作机制,并指出这个设计为什么比纯策略梯度更稳、比纯值函数更灵活.”

这一题是彻底突出演员-评论员方法的优势地位,还是要反复对比三种类型强化学习网络。

按照本章总结的强化学习的主要难点和演员-评论员模型的主要设计思想,可以知道:智能体是通过从环境中得到奖励反馈来指导自己改进对动作价值或者策略分布的估计的,但是环境给出的奖励通常要等到全部动作序列执行完成之后才能给出,对于智能体来说,到底是哪一个动作更好,哪一个动作更差,存在一个信用分配的难题。

当使用演员-评论员模型的时候,演员网络根据状态给出动作策略或者确定性动作,评论员网络根据状态和动作给出动作状态价值,然后演员网络马上就可以利用这个输出来计算策略梯度,进行参数优化。如果要用题目中的歌手,学生来进行比喻的话,和纯策略梯度模型的很大差异就在这里。

纯策略梯度方式,基本模型需要对输出的策略或者确定性动作进行蒙特卡洛模拟,得到一个完整的轨迹,相当于歌手要唱完整整一首歌,或者是学生要等到期末考试,才能够根据观众的鼓掌声或者是考卷成绩判断自己演出/学习的过程是好是坏,这样造成的后果自然是不能及时调整各种疏忽,也就是题目中所说的缺少稳定性。

而当有评论家网络存在的时候,演员网络的参数更新不完全依赖于环境给出的终极评价,当然在公式中总是可以写上每个状态对应的即时奖励,但是在强化学习以及真实世界场景中,奖励反馈总是稀疏的。通过对评论家网络的同步训练,演员网络可以得到及时的提醒,相当于评委对歌手的每句歌词都有打分,或者教师对学生每堂课都进行了课前测和课后测,那么自然改进的效率会更高,也就是说提高了训练的稳定性。

当然,这里的描述是完全定性的,甚至连定性都不算,毕竟采用了类比的方式。但是用这种形象的方式来类比,确实有助于理解强化学习的很多概念,否则的话,这个领域中各种术语简直就像是绕口令一般。

也只有通过这种形象化理解入门后,才能够继续深入讨论模型实现的细节,实际上GRPO常常被归类为纯策略梯度方法(本章只说这是PPO的重要改进),当然有其特别的设计的出发点和优点。

题目中还要求讨论和值函数方法的对比。这里提到的灵活,主要的理解还是针对动作的枚举问题。这一点在前一题中已经提到过,值函数方法在输出端和训练过程中,都需要对动作状态价值进行比较,甚至取最大值,这是势必需要对动作本身进行枚举,但这在很多场合中是做不到的。而评论家网络计算时主要依据演员网络的当前输出、历史输出、更新输出,不需要进行动作枚举。

第六题:

“PPO的核心创新是限制每次更新的幅度.请解释这为什么能稳定训练;再思考:为什么RL训练比监督学习更容易崩溃?这和奖励信号的稀疏性、噪声、非平稳性有什么关系?”

这个问题的答案看来比较标准,虽然可以说得很形象,但是如果没有实际的体验,就没法体会背后的问题重点。

首先,最需要强调的,还是强化学习的数据分布和监督学习的差异。本章已经在一开始就明确,强化学习的方式是不断地试错,依靠环境给出的奖励和惩罚来调整行动策略,最终找到优化的方案。而监督学习的样本数据中,每一个都有明确的标识,不考虑标识本身错误的情况,那么样本所提供的模型优化方向本质上是明确的。

但是,在强化学习中所有的动作都是智能体自己尝试给出的,而环境给出的反馈常常要等到很长的动作序列的结尾才有,这就是反复提及的稀疏性。环境本身在和智能体交互过程中也是在不断改变,因此其所反馈的奖励信号,不仅很稀疏,而且自然带有随机性和噪声。正是由于智能体不断探索,以及环境随之不断动态改变,使得整个学习过程和监督学习场景下的固定数据集完全不同,整个训练目标是不稳定的。

这时,在实际训练过程中,暴露出的问题就是训练梯度值(参数的改变方向和幅度)常常波动剧烈,很大原因就是很长序列中不同时间步的参数改变方向大,并且被最终的奖励信号所放大,形成恶性循环。

由于优化的策略在全部的空间中是极少,在探索过程中有错误策略时,下一步状态可能更差,在没有最终反馈的情况下,会造成错误梯度放大的情况。

PPO的核心思想就是限制新旧策略在同一个状态下的差异度,防止出现上面提到的过度偏差,用强制剪裁的方式来限制参数变化的平稳度。

相关学习资料