目录

策略梯度基本知识

策略梯度公式

如何使损失函数更好?

添加基线

为每个动作分配不同的权重


策略梯度基本知识

强化学习主要分为两类:

  • 基于价值的(如 Sarsa、Q-Learning 和 DQN 算法),先计算每个状态对应的动作的 Q 值,再选择 Q 值最大的动作执行。
  • 基于策略的:直接计算每个状态对应的动作或者动作的概率。

Policy Gradient 算法就是对策略函数进行建模,然后用梯度下降更新网络的参数。但是在强化学习中并没有实际的损失函数,而 PG 算法的目的是最大化累计奖励的期望值,因此将累计奖励的期望值作为损失函数,使用梯度上升算法来进行计算。

策略梯度公式

每一个动作 获得相应的奖励,则累积奖励为,我们希望累积奖励最大化,累积奖励是个变量,其期望是定值,因此我们希望累计奖励的期望最大化。

如何使损失函数更好?

添加基线

为每个动作分配不同的权重

技巧1中只要在同一个回合里面,同一场游戏里面,所有的状态跟动作的对都会使用同样的奖励项进行加权,这件事情显然是不公平的,因为在同一场游戏里面也许有些动作是好的,有些动作是不好的。给每一个不同的动作前面都乘上不同的权重。每一个动作的不同权重,它反映了每一个动作的好坏。

将权重从整场游戏的奖励的总和,改成从动作开始执行的时间 t 的奖励的总和

再增加一个衰减因子γ,意味着随着时间推移,组合越来越多,那么越后面的组合的影响就越来越小。

【强化学习】策略梯度(Policy Gradient)相关推荐

  1. 强化学习(十三) 策略梯度(Policy Gradient)

    在前面讲到的DQN系列强化学习算法中,我们主要对价值函数进行了近似表示,基于价值来学习.这种Value Based强化学习方法在很多领域都得到比较好的应用,但是Value Based强化学习方法也有很 ...

  2. 系统学习深度学习(三十五)--策略梯度(Policy Gradient)

    转自:https://www.cnblogs.com/pinard/p/10137696.html 在前面讲到的DQN系列强化学习算法中,我们主要对价值函数进行了近似表示,基于价值来学习.这种Valu ...

  3. 强化学习(Reinforcement Learning)之策略梯度(Policy Gradient)的一点点理解以及代码的对应解释

    一.策略梯度算法推导以及解释 1.1 背景 设πθ(s)\pi_{\theta }(s)πθ​(s)是一个有网络参数θ\thetaθ的actor,然后我们让这个actor和环境(environment ...

  4. 强化学习(4):策略梯度Policy Gradient算法

    本章内容主要参考了UC Berkeley Deep RL Bootcamp的内容,由作者按照自己的理解整理而成 终于到Policy Gradient方法了! 一.引言 reinforcement le ...

  5. 强化学习PPO从理论到代码详解(1)--- 策略梯度Policy gradient

    第0章 闲聊吹水 Proximal Policy Optimization(PPO) 近端策略优化,可以说是目前最稳定,最强的强化学习算法之一了,也是openAI默认的强化学习算法,有多叼不用我说了吧 ...

  6. 强化学习系列之Policy Gradient算法

    一. 背景 1.1 基础组成部分 强化学习里面包含三个部件:Actor,environment,reward function Actor : 表示角色,是能够被玩家控制的. Policy of Ac ...

  7. 强化学习 | 策略梯度 | Natural PG | TRPO | PPO

    学习情况:

  8. 【深度强化学习】策略梯度 Policy Gradients

    文章目录 前言 values 和 policy 策略的表示 策略梯度 REINFORCE method 实例:CartPole 前言 重读<Deep Reinforcemnet Learning ...

  9. ChatGPT 使用 强化学习:Proximal Policy Optimization算法(详细图解)

    ChatGPT 使用 强化学习:Proximal Policy Optimization算法 强化学习中的PPO(Proximal Policy Optimization)算法是一种高效的策略优化方法 ...

  10. 浅析强化学习及使用Policy Network实现自动化控制

    来源:极客头条 概要:强化学习已经有几十年的历史,但是直到最近几年深度学习技术的突破,强化学习才有了比较大的进展. 浅析强化学习 一个强化学习问题包含三个主要概念,即环境状态(Environment  ...

最新文章

  1. 并不对劲的bzoj2820:p2257:YY的GCD
  2. 【神奇的函数式编程语言的独特功能】Lisp 的运行期修改、编译代码,并替换当前运行版本的试验...
  3. 集合,stack,queue,dictionary,ArrayList,listT
  4. STM32F103CB IAP+APP BIN文件合并烧写
  5. 使用git下载giuhub中的项目
  6. mybatis-day1入门案例
  7. php rss xml,php 一个完全面向对象的RSS/XML类的简单示例
  8. 史上最全的Java从入门到精通,播放最多的Java视频教程
  9. 2021美国大学生数学建模竞赛D题
  10. python运用ico图标,处理Django中的favicon.ico图标实例方法
  11. linux网卡驱动模块名称,Linux下根据模块名查看网卡驱动版本
  12. 应急响应之windows进程排查
  13. bandizip没有右键菜单解决办法
  14. 微信小程序 图片上传与内容安全审核
  15. 用HTML制作简单的个人介绍主页
  16. 迅雷播放器的在线智能字幕匹配下载的字幕文件在哪里?
  17. 一个命令就可启用的微信机器人WhoChat
  18. 压缩比13为什么建议用92的油_马自达为啥能在13:1高压缩比下仍然使用92汽油
  19. linux搭建音视频服务器,Linux平台部署音视频SDK实现即时通讯功能
  20. Google 2018年Android平台新政策,终于强硬了一回!

热门文章

  1. 想法随笔——知乎段子
  2. Moto ME811刷机过程
  3. PC浏览器调试手机浏览器工具
  4. 奇技淫巧之 dummy 网卡
  5. java gwt开发_java – 如何启动GWT超级开发模式
  6. Linux下PHP下载安装
  7. 4G模块ME909S-821调试记录
  8. 带你搞懂朴素贝叶斯分类算法
  9. 【学习笔记】monitor
  10. panabit策略路由