网站建设后期费用,关键词优化助手,外贸seo,wordpress插件 flyzoo1. 前言
#xff08;1#xff09;PPO的优点
PPO#xff08;Proximal Policy Optimization#xff09;算法相比其他强化学习方法有几个显著优点#xff1a;
稳定性和鲁棒性#xff1a;PPO通过限制策略更新的幅度来避免训练过程中的大幅波动#xff0c;这增加了算法的稳…1. 前言
1PPO的优点
PPOProximal Policy Optimization算法相比其他强化学习方法有几个显著优点
稳定性和鲁棒性PPO通过限制策略更新的幅度来避免训练过程中的大幅波动这增加了算法的稳定性和鲁棒性。这是通过引入一个被称为“信任区域”的概念来实现的它限制了新策略与旧策略之间的偏离程度。简单的实现与其他需要复杂计算的强化学习算法如TRPO相比PPO简化了这些计算使得实现起来更为简单同时保持了相似的性能这使得它在实践中更受欢迎。样本效率PPO在使用每个数据样本方面比一些其他算法更有效它可以在每次迭代中重复利用数据从而提高样本的使用效率。适用性广PPO被证明在连续动作空间的多种环境中有效这意味着它适用于各种任务包括机器人控制和游戏等。超参数调整容易PPO相对于其他算法来说对超参数的选择不那么敏感这降低了调整参数的难度。高性能PPO在多个基准测试和任务中显示出了优秀的性能包括与其他先进的RL算法相比。 2策略梯度的优点
处理连续动作空间 策略梯度非常适合于连续动作空间的问题。例如如果你在控制一个机器人的臂它的动作是连续的角度变化策略梯度方法可以学习在任何给定状态下应该施加什么样的扭矩。更好的探索机制策略梯度方法通常会有更好的探索机制因为它们可以在选择动作时采取随机性。这种随机性使智能体有可能探索到新的、可能更好的动作。适合非马尔可夫决策过程策略梯度方法可以在非马尔可夫非完全可观测的环境中工作得很好因为它们不需要像值函数方法那样严格地依赖于状态的马尔可夫性质。 2. 学习资料
2.1 Hung-yi Lee李宏毅RL course
Machine Learning 2017 (Hung-yi Lee, NTU) 23-123-3
3. 常见术语
PPOProximal Policy Optimization近端策略优化
Imitation Learning模仿学习 GPT4-AllTools模仿学习是一种让机器通过观察和复制专家行为来学习特定任务的技术。就像是当我们小时候学习骑自行车或做饭时观察父母的动作并尝试效仿他们一样。 行动者评论家ActorCritic
在机器学习的强化学习任务中行动者负责做决定并采取行动而评论家则评估这些行动并指导行动者如何调整策略以做得更好。通过这种合作行动者学会更好地完成任务。
4. RL面临的挑战
奖励延迟Reward Delay
Reward Delay 是指在行为和由该行为引起的奖励之间存在时间延迟。这种延迟使得学习过程复杂化因为学习算法需要能够将行为与可能在很长一段时间后才出现的结果联系起来。 李宏毅老师用 Space Invader 讲解 Reward Delay 但是如果machine只知道開火以後就得到reward它最後learn出來的結果它只會瘋狂開火對它來說往左移、往右移沒有任何reward它不想做Reward delay In space invader, only “fire” obtains rewardAlthough the moving before “fire” is importantIn Go playing, it may be better to sacrifice immediate reward to gain more long-term reward 5. 常见概念
5.1 基本流程
5.1.1 Sample函数探索行动的策略
Sample函数在训练过程中对应着“样本增广”的作用
5.1.2 Gradient Ascent Note如果比赛胜利的话就从参数上提升此次动作序列sequence出现的概率 θ \theta θ。 θ new ← θ old η ∇ R ˉ θ o l d \theta^{\text {new}} \leftarrow \theta^{\text {old }}\eta \nabla \bar{R}_{\theta^{old}} θnew←θold η∇Rˉθold ∇ R ˉ θ ≈ 1 N ∑ n 1 N R ( τ n ) ∇ log P ( τ n ∣ θ ) 1 N ∑ n 1 N R ( τ n ) ∑ t 1 T n ∇ log p ( a t n ∣ s t n , θ ) 1 N ∑ n 1 N ∑ t 1 T n R ( τ ∘ n ) ∇ log p ( a t n ∣ s t n , θ ) \begin{aligned} \nabla \bar{R}_\theta \approx \frac{1}{N} \sum_{n1}^N R\left(\tau^n\right) \nabla \log P\left(\tau^n \mid \theta\right)\frac{1}{N} \sum_{n1}^N R\left(\tau^n\right) \sum_{t1}^{T_n} \nabla \log p\left(a_t^n \mid s_t^n, \theta\right) \\ \frac{1}{N} \sum_{n1}^N \sum_{t1}^{T_n} R\left(\tau_{\circ}^n\right) \nabla \log p \left(a_t^n \mid s_t^n, \theta\right)\end{aligned} ∇Rˉθ≈N1n1∑NR(τn)∇logP(τn∣θ)N1n1∑NR(τn)t1∑Tn∇logp(atn∣stn,θ)N1n1∑Nt1∑TnR(τ∘n)∇logp(atn∣stn,θ) ∇ log p ( a t n ∣ s t n , θ ) ∇ p ( a t n ∣ s t n , θ ) p ( a t n ∣ s t n , θ ) \nabla \log p\left(a_t^n \mid s_t^n, \theta\right) \frac{\nabla p\left(a_t^n \mid s_t^n, \theta\right)}{p\left(a_t^n \mid s_t^n, \theta\right)} ∇logp(atn∣stn,θ)p(atn∣stn,θ)∇p(atn∣stn,θ)
关于从直觉上理解这里为什么要除以 p ( a t n ∣ s t n , θ ) p\left(a_t^n \mid s_t^n, \theta\right) p(atn∣stn,θ) Q请问可以从直觉上解释 why divided by p ( a t n ∣ s t n , θ ) p\left(a_t^n \mid s_t^n, \theta\right) p(atn∣stn,θ)吗? ChatGPT4 从直觉上来说 ∇ log p ( a t n ∣ s t n , θ ) \nabla \log p\left(a_t^n \mid s_t^n, \theta\right) ∇logp(atn∣stn,θ)中的除以 p ( a t n ∣ s t n , θ ) p\left(a_t^n \mid s_t^n, \theta\right) p(atn∣stn,θ)这一步出现在对数概率的梯度中它可以被解释为一种“归一化Normalization”过程。在策略梯度方法中我们希望调整参数 θ \theta θ以增加好动作的概率并减少坏动作的概率。为了做到这一点我们需要考虑动作的概率如果一个好动作已经有很高的概率被选择我们不需要太大幅度地增加它的概率而如果一个好动作目前只有很小的概率被选择我们可能希望更显著地增加其被选中的概率。通过计算概率的对数梯度我们实际上是在计算“相对于动作概率的变化率”。这样对于那些已经很可能发生的动作我们只进行小幅度的调整而对于不太可能发生但却是好动作的情况我们会做出更大的调整。 4.2 Sarsa和Q-Learning——最初的强化学习算法
2.1 基于Q-Learning的强化学习——使用Q表进行动作选择
其实Q-Learning的思想很简单就跟把大象放进冰箱是差不多的 基本的步骤是
观察环境得到observation根据obs查询Q表格选择Q值最大的action执行该动作。
3.2 Sarsa和Q-Learning的预期目标
其实这两种算法的目标不同导致了结果不同
Sarsa使得sample()行为的reward的平均水平达到最大
Q-Learning使得maxQ()行为的reward的达到最大
3 DQN——用神经网络取代Q表格
3.1 为什么要用神经网络取代Q表呢
如果动作状态的空间是连续的则使用Q表可能无法对这种空间进行表述连续状态的可能取值是无限多的
于是我们将“状态-Q值”看作是一种映射也就是说使用函数映射的思想来描述“状态-Q值”的映射关系
既然是函数映射于是我们的DNN就闪亮登场了
4 Actor-Critic算法
在我看来Actor和Critic有着这样的特点
Actor——本能者
Critic——经验者
具体的形式就是Q Function
量化Q的方法我们采用TD这也是李教授讲授的方法
我感觉Critic有着将reward规则进行可导化的作用
感性认识表达了模型对规则的理解同时将reward函数进行可导化