强化学习-3深度学习基础

devtools/2024/9/23 19:16:20/

文章目录

  • 1 强化学习与深度学习的关系
  • 2 线性回归
  • 3 梯度下降
  • 4 逻辑回归
  • 5 全连接网络
  • 6 更高级的神经网络
    • 6.1 卷积神经网络
    • 6.2 循环神经网络
    • 6.3 transformer


深度学习和强化学习结合起来,利用深度学习网络强大的拟合能力通过将状态、动作等作为输入,来估计对应的状态价值和动作价值等等。

1 强化学习与深度学习的关系

强化学习的问题可以拆分成两类问题,即预测和控制。预测的主要目的是根据环境的状态和动作来预测状态价值和动作价值,而控制的主要目的是根据状态价值和动作价值来选择动作。预测主要是告诉我们当前状态下采取什么动作比较好,而控制则是按照某种方式决策。
通常在强化学习中预测和控制的部分看起来是共用一个 𝑄 表或者神经网络的,因此读者们可能会因为主要关注价值函数的估计而忽视掉控制这层关系,控制通常在采样动作的过程中体现出来。其实在前面也提到过,预测也相当于人的眼睛和大脑的视觉神经处理部分,而控制相当于大脑的决策神经处理部分,看似是两个独立的部分,但实际上是相互依赖的,预测的结果会影响到控制的决策,而控制的决策也会影响到预测的结果。
深度学习就是用来提高强化学习中预测的效果的,因为深度学习本身就是一个目前预测和分类效果俱佳的工具。比如 Q-learning 的 𝑄 表就完全可以用神经网络来拟合。注意,深度学习只是一种非常广泛的应用,但并不是强化学习的必要条件,也可以是一些传统的预测模型,例如决策树、贝叶斯模型等等。在控制问题中,也可以利用深度学习或者其他的方法来提高性能,例如结合进化算法来提高强化学习的探索能力。
从训练模式上来看,深度学习和强化学习,尤其是结合了深度学习的深度强化学习,都是基于大量的样本来对相应算法进行迭代更新并且达到最优的,这个过程我们称之为训练。但与另外两者不同的是,强化学习是在交互中产生样本的,是一个产生样本、算法更新、再次产生样本、再次算法更新的动态循环训练过程,而不是一个准备样本、算法更新的静态训练过程。

深度学习强化学习深度强化学习
训练模式基于大量的样本 对算法进行迭代更新。静态训练。在交互中产生样本,算法和样本动态循环训练。深度学习
解决问题分类问题,打标签序列决策问题,打分数
样本->模型样本 -> 模型
样本 <- 模型
输入输出之间只有前向控制输入和输出之间有前向控制和反馈回路

2 线性回归

3 梯度下降

其基本思想如下。

  • 初始化参数:选择一个初始点或参数的初始值。
  • 计算梯度:在当前点计算函数的梯度,即函数关于各参数的偏导数。梯度指向函数值增加最快的方向。
  • 更新参数:按照负梯度方向更新参数,这样可以减少函数值。这个过程在神经网络中一般是以反向传播算法来实现的。
  • 重复上述二三步骤,直到梯度趋近于 0 或者达到一定迭代次数。

学习率
批量
优化器:动量、Adam

4 逻辑回归

虽然逻辑回归名字中带有回归,但是它是用来解决分类问题的,而不是回归问题(即预测问题)。

5 全连接网络

全连接网络(fully connected network):前一层网络的所有神经元的输出都会输入到下一层的所有神经元中。也称作多层感知机(multi-layer perceptron,MLP),是最基础的深度神经网络模型。

6 更高级的神经网络

6.1 卷积神经网络

6.2 循环神经网络

6.3 transformer


http://www.ppmy.cn/devtools/56803.html

相关文章

spring boot 整合 sentinel

注意版本问题 我这是jdk11 、spring boot 2.7.15 、 alibaba-sentinel 2.1.2.RELEASE <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.15</version><…

阿里 Mobile-Agent-v2:基于大模型的安卓鸿蒙自动化工具

与之前介绍的 DigiRL类似, Mobile-Agent-v2是一个支持安卓和鸿蒙系统的自动化工具&#xff0c;它使用视觉模型理解手机屏幕&#xff0c;并利用 ADB 来实现操作手机&#xff0c;你可以在本地运行&#xff0c;或者通过手机截图在线体验 Mobile-Agent-v2 从演示来看&#xff0c;可…

Agentic AI与Agentic Workflow:下一代智能自动化

一、引言 看到一篇关于智能自动化的文章&#xff0c;很有启发&#xff0c;原文链接在此&#xff0c;供大家学习参考。Agentic AI和Agentic Workflow作为AI领域的新星&#xff0c;预示着自动化和智能化的全新阶段。本文将剖析Agentic AI的内涵、特性、与传统AI Agent的差异&…

Python 基础:用 json 模块存储和读取数据

目录 一、用 json 存储数据二、用 json 读取数据 遇到看不明白的地方&#xff0c;欢迎在评论中留言呐&#xff0c;一起讨论&#xff0c;一起进步&#xff01; 本文参考&#xff1a;《Python编程&#xff1a;从入门到实践&#xff08;第2版&#xff09;》 用户关闭程序时&#…

Oracle中的序列(Sequence)是一种数据库对象

Oracle中的序列&#xff08;Sequence&#xff09;是一种数据库对象&#xff0c;用于生成数字序列&#xff0c;通常用于为主键列生成唯一、连续的数值。以下是一些使用序列的案例&#xff1a; 1. **为主键生成唯一值**&#xff1a; 在Oracle中&#xff0c;序列最常用的场景是…

【GameFramework扩展应用】6-2、替换GameFramework.dll源码

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址QQ群:398291828大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 【GameFramework框架】系列教程目录: https://blog.csdn.net/q764424567/article/details/1…

Docker期末复习

云计算服务类型有: IaaS 基础设施及服务 PaaS 平台及服务 SaaS 软件及服务 服务类型辨析示例: IaaS 服务提供的云服务器软件到操作系统,具体应用软件自己安装,如腾讯云上申请的云服务器等;SaaS提供的服务就是具体的软件,例如微软的Office套件等。 云计算部署模式有: 私有云…

Oracle PL / SQL包

在实践中&#xff0c;您很少创建独立的存储函数或过程。 相反&#xff0c;你会使用一个包。 包可以一起组织相关的功能和过程&#xff0c;例如创建库&#xff0c;但在PL / SQL中&#xff0c;库被称为包。 PL / SQL包有两个部分&#xff1a; 包规格包装体 包规范是包的公共…