【学习】深度强化学习

news2024/10/4 11:23:45

李宏毅深度学习

  • 一、深度强化学习Deep Reinforcement Learning (RL)
    • 什么是RL?(三步骤)
    • 计算loss
    • 计算A
      • 版本0
      • 版本1
      • 版本2
      • 版本3
    • 2、梯度方法
      • 收集训练数据:探索
    • 3、actor critic
      • MC
      • TD
      • 版本3.5


一、深度强化学习Deep Reinforcement Learning (RL)

什么是RL?(三步骤)

在一些任务中给数据加标签是很有挑战性的。没有标签的数据可以使用RL。
在RL里面有两个东西:actor和环境。环境会给observation作为输入,actor获取观测会输出action,环境会不断给出reward作为反馈,判断actor的动作是否好。
在这里插入图片描述
找到一个最大化总reward的政策
终结:所有的外星人都被杀死,或者你的飞船被摧毁。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
神经网络的输入:用向量或矩阵表示的机器的观测值
输出神经网络:每个动作对应输出层的一个神经元
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
reward不仅要看a还要看s。
第三步要找到一组参数,让R越大越好。
因为a是取样的,结果带有随机性,所以每次的结果不一定是一样的。
环境和reward是黑盒子,不知道结果和过程。
环境也是有随机性的,一般的方法不能用。如何在这里进行优化是RL的主要挑战。
在这里插入图片描述
RL的随机性很大,测试的时候结果有很大的不一样。

计算loss

控制actor:让它采取(或不采取)特定的行动——给出特定的观察结果。
在这里插入图片描述
在这里插入图片描述
这跟监督学习训练分类器是一样的!
在这里插入图片描述

计算A

改变二元分类问题,加上权重:难点是怎么得到这些对和A
在这里插入图片描述

版本0

在这里插入图片描述
不是一个好的版本,只看近不看远。一项行动会影响后续观察,进而影响后续reward。a1可能会影响r2.
reward delay:actor不得不牺牲眼前的奖励来获得更多的长期奖励。
在《太空入侵者》中,只有“开火”能产生积极的回报,所以vision 0将学习一个总是“开火”的actor。

版本1

a1有多好由后面的r决定。
在这里插入图片描述
问题:如果游戏很久,那很远之后的r归功于很前的动作吗?

版本2

加入γ,影响力削减
在这里插入图片描述

版本3

越早的动作的分数会累积很多。
G要做标准化吗?reward是相对的!
奖励的好坏是“相对的”,如果所有rn ≥ 10,Tn = 10是负数…减去基线b使G’有正值和负值。
在这里插入图片描述

2、梯度方法

可以看到,收集资料{s,a}需要训练很多次
在这里插入图片描述
在这里插入图片描述
每次更新模型参数时,都需要再次收集整个训练集。一次循环只更新一次参数。
在这里插入图片描述
事实上我们获取的这些资料只适合当前的参数,不一定适合后面 的参数!
在这里插入图片描述
在这里插入图片描述
off-policy:这样,我们不必在每次更新后收集数据。

在这里插入图片描述

收集训练数据:探索

actor需要在数据收集过程中具有随机性。我们采样动作的主要原因。
扩大输出熵
在参数上添加噪声
假设你的actor总是走“左”,我们永远不知道如果“开火”会发生什么。
在这里插入图片描述

3、actor critic

critic:给定actore,观察s(并采取行动a)时有多好
价值函数Vθ(s):当使用actor e时,期望在看到s之后获得折扣的累积报酬discounted cumulated reward
在这里插入图片描述

MC

在这里插入图片描述
玩完整场游戏之后进行预测

TD

玩了一会就更新参数
在这里插入图片描述
在这里插入图片描述

版本3.5

在这里插入图片描述
在这里插入图片描述
上面是根据一个分布随便取样的
下面是执行 了一个at之后得到的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/136756.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【回答问题】ChatGPT上线了!给我推荐20个比较流行的图像语义分割模型

给我推荐20个比较流行的图像语义分割模型 在这里列出20个比较流行的图像语义分割模型:U-Net Mask R-CNN Fully Convolutional Network (FCN) SegNet DeepLab v3 PSPNet ENet ICNet RefineNet DenseASPP DenseNet LinkNet FPN BiSeNet ENAS Deeplab v3 GCN CRF-RNN …

Linux环境变量

文章目录什么是环境变量?什么是本地变量?如何获取环境变量?在shell中在程序中如何添加/删除环境变量&&本地变量?在shell中在程序中为什么环境变量能够被子进程继承?什么是环境变量? 环境变量是进程…

Vue初识系列【1】

文章目录一 前端体系1.1 前端三要素1.2 JavaScript 框架1.3 JavaScript 构建工具1.4 前端所需后端技术1.5 UI框架二 前后端分离史2.1 后端为主的 MVC 时代(web1.0)2.2 基于 AJAX 带来的 SPA 时代(web2.0)2.3 前端为主的 MV* 时代2.4 NodeJS 带来的全栈时…

OBS 进阶 音频面板优化

因为,面板高度就那么大,如果声音源很多的话,就有点乱。 优化目的:静音的,自动放在底部,这样,音频面板上面的都是没有静音的,也是我们最关注的部分。 目录 一、音频面板优化 1、不想要音频面板的title,将其去掉

【LeetCode每日一题】【2023/1/3】2042. 检查句子中的数字是否递增

文章目录2042. 检查句子中的数字是否递增方法1:直接遍历写法2:按本题特有条件方法2:栈方法3:std::stringstream写法22042. 检查句子中的数字是否递增 LeetCode: 2042. 检查句子中的数字是否递增 简单\color{#00AF9B}{简单}简单 句…

202301-第一周资讯

大家好,欢迎来到本周资讯,在过去的一周内呢,我们在示例DEMO、文档、教学视频上都有了较多的产出并且帮助大家解决了不少问题,赶紧看看上周成果吧! 目录 DEMO 动态TopN报表 导出图文报告的脚本示例 Superpage pc端…

【FPGA】基本实验步骤演示 | Verilog编码 | 运行合成 | 设备/引脚分配 | 综合/实施 | 设备配置

写在前面:本章的目的是让你理解与门、或门和非门的行为,并使用 Verilog 语言实现多输入与门、或门和非门。在生成输入信号之后,你需要通过模拟来验证这些门的操作,并使用 FPGA 来验证 Verilog 实现的电路的行为。 0x00 引入&#…

Vue+Echarts监控大屏实例十六:Echarts对接天地图插件开发

一、实例概述 本实例实现echarts使用天地图组件的开发,通过修改echarts中百度地图及高德地图插件实现echarts中使用天地图的使用。本实例实现对于监控界面的相关开发资料,提供实例源码、开发过程视频及实现过程。   1. Echarts参考文档: echarts   2. 高德地图插件:ech…

P1455 搭配购买

题目描述 明天就是母亲节了,电脑组的小朋友们在忙碌的课业之余挖空心思想着该送什么礼物来表达自己的心意呢?听说在某个网站上有卖云朵的,小朋友们决定一同前往去看看这种神奇的商品,这个店里有 nn 朵云,云朵已经被老板…

非Web服务弱口令检查工具下载与使用

今天继续给大家介绍渗透测试相关知识,本文主要内容是非Web服务弱口令检查工具下载与使用。 免责声明: 本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负! 再次强调&#xff1…

操作系统的运行机制和体系结构

文章目录🎀前言:本篇博客知识总览🏅运行机制🎇两种指令🎇两种状态🎇两种程序🏅操作系统的内核🎇内核概念:🏅操作系统的体系结构🎯最常考点&#x…

DevOps - Jenkins可视化流水线(后端部分)

目录 🧡创建DevOps工程 🧡拉取代码 🧡项目编译 🧡构建镜像 🧡推送镜像 🧡部署到Dev环境 🧡邮件功能 🧡激活微服务 💟这里是CS大白话专场,让枯燥的学习…

zookeeper下载安装

1、环境准备 ZooKeeper服务器是用Java创建的,它运行在JVM之上。需要安装JDK 7或更高版本。 2、上传 将下载的ZooKeeper放到/opt/ZooKeeper目录下 #上传zookeeper altp put f:/setup/apache-zookeeper-3.5.6-bin.tar.gz #打开 opt目录 cd /opt #创建zooKeeper目录…

电子招标采购系统源码之什么是电子招投标系统?

随着互联网时代的到来,各行业都受到不同的影响,其中招投标行业也不例外。为了顺应互联网潮流的发展,电子招投标逐渐取代传统的纸质的招投标方式,给招标方、投标方、招标代理等各方也带来了前所未有的机遇与挑战。那么什么是电子招…

日志采集 - Filebeat

Filebeat 是什么? Filebeat是本地文件的日志数据采集器,可监控日志目录或特定日志文件(tail file),并将它们转发给Elasticsearch或Logstatsh进行索引、kafka等。 是使用 Golang 实现的轻量型日志采集器,也…

Spring Boot配置MinIO(实现文件上传、读取、下载、删除)

一、 MinIO MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小&#x…

INSERT ON DUPLICATE KEY UPDATE返回值引起的小乌龙

一、东窗事发 某个版本送测,测试大佬给提了一个缺陷,且听我描述描述: 一个学习任务: 两个一模一样的学习动态: 产品定义:学习任务(生字学习)完成后,会在小程序生成一个动态,再次完成不重复生成obviously,上边出现的两个动态不符合“罗辑” 二、排查看看 既然出现了两个动态…

dubbo源码实践-transport 网络传输层的例子

1 Transporter层概述Transporter层位于第2层,已经实现了完整的TCP通信,定义了一套Dubbo自己的API接口,支持Netty、Mina等框架。官方定义:transport 网络传输层:抽象 mina 和 netty 为统一接口,以 Message 为…

剑指 Offer 09. 用两个栈实现队列

用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例 1: 输入: ["…

自然语言处理 第11章 问答系统 复习

问答系统问答系统概述问答系统定义问答(QA)系统发展历程问答系统分类:问答系统框架:内容提要专家系统检索式问答系统1.问题分析主要功能:问题分类 和 关键词提取问题分类实现方法2.关键词提取检索模块相关文档检索句段检索3. 答案抽取模块检索…