首页 > 其他分享 >强化学习-强化学习的基本概念

强化学习-强化学习的基本概念

时间:2024-07-06 21:52:11浏览次数:16  
标签:动作 奖励 环境 学习 智能 强化 基本概念

强化学习的目标

强化学习是一种学习如何将状态映射到动作,以获得最大奖励的学习机制。学习者不会被告知要采取哪些动作,而是必须通过尝试来发现哪些动作会产生最大的回报

强化学习与监督学习的区别

监督学习的样本都具有标记或者标签,明确知道什么是正确的动作。
强化学习的样本的都是交互的记录,不知道正确的动作是什么,但是会有每个动作的 反应,要根据 反应 来推断什么动作是正确的。

强化学习与无监督学习的区别

无监督学习主要是寻找数据间的隐藏结构。
强化学习虽然同样没有正确行为的标记,但是它并不关心样本数据不同维度之间的关系,只关心交互的奖励。

强化学习区别于其他学习方式的其他特征

探索(Exploration)与利用(Exploitation)的权衡是强化学习区别监督与非监督的特征,也是关键挑战。
强化学习的另一个特征是,它考虑了个体的目标在不确定环境中交互的整个问题。(这一点还没有很明显的 get 到。)强化学习个体都有明确的目标,可以感知环境的各个方面,并可以选择影响其环境的动作。此外,尽管个体面临的环境有很大的不确定性,通常从一开始就假设个体必须采取动作。当强化学习涉及规划时,它必须解决规划和实时动作选择之间的相互作用,以及如何获取和改进环境模型的问题。当强化学习涉及监督学习时,它要确定决定哪些能力是关键的,哪些是不重要。 为了学习研究以取得进步,必须隔离和研究重要的子问题,即使不能体现所有完整的细节,它们也应该是在完整的、交互式的、寻求目标的个体中有明确功能的子问题。

强化学习的要素

智能体

做行为决策的机器。
可以感知环境的状态,做出决策,并且根据环境的变化能理解“奖励”。

环境

智能体以外的变化的且影响智能体的事情。

策略

定义的是智能体如何在特定状态下的行为方式,就是从环境状态到智能体行为动作的映射。

奖励

定义的是强化学习的目标。每个时间步骤(每次交互),环境给智能体一个标量值,就是奖励。智能体强化学习的目标就是使累积的奖励最大化。
奖励通常是环境状态和动作的随机函数。

价值函数

奖励信号表明了直接或者说即时的利益,而价值函数描述的是长期的收益。
状态的价值是该状态开始在未来可以预期累积的收益总额。一个状态可能短期产生较低的收益,但是可能在未来存在很高的收益,那它的价值也会很高。(比如内啡肽)。

奖励很好估计,可以由环境直接给出;但是价值需要智能体在整个生命周期内观察和评估。事实上,大多数的强化学习算法的核心部分就是有效地估计价值。

环境模型

环境的模拟,在给定的状态和动作,预测环境未来的状态。一般在基于模型的方法(比如,动态规划)里面会有,智能体可以根据模型来规划自己的行为。在不基于模型的方法里面就没有环境模型,智能体通过试错来学习。
现代强化学习已经从低级的、试错学习跨越到高层次的、有计划的学习。

More Reading

Reference

标签:动作,奖励,环境,学习,智能,强化,基本概念
From: https://www.cnblogs.com/pomolnc/p/18287981

相关文章

  • nacos学习笔记之服务发现中心
    一.什么是服务发现在微服务中,服务的消费方需要调用服务的生产方,这样服务的消费方就需要知道服务的消费方的网络地址(ip+端口号)。二、流程上图中服务实例本身并不记录服务生产方的网络地址,所有服务实例内部都会包含服务发现客户端(例如springcloud中的ribbon)。(1)在每个服务启动......
  • JAVA学习day05
    继承supersuper();super调用父类的构造方法,且必须在构造方法的第一行。this();调用本类的构造方法。super只能出现在子类的方法或者构造方法中。super和this不能同时调用构造方法。this代表调用当前类的对象super代表调用父类的对象this在没有继承的情况下也能使用......
  • Python学习
    目录7-1jmu-python-判断闰年7-2jmu-python-素数7-3jmu-python-找字符7-4计算表达式(*,//,%)7-5客户评级7-6运输打折问题7-7水仙花数7-8生成输入数的乘方表7-9输出字母在字符串中位置索引7-10通过两个列表构建字典7-11jmu-python-重复元素判定7-12求集合......
  • 第一次学习Java的碎碎念
    2024年夏新的学习开始了;今天做了什么?在B站上收藏了黑马程序员学习Java的教学视频,观看了几篇入门教程,暂时学会了如何打开CMD,以及几个常见的CMD命令,例如盘符名称:、dir、cd目录、cd..、cls、exit等等,做了一个练习(利用cmd打开qq),学会了如何把应用程序的路径记录在电脑的环境变量中,使......
  • C#学习笔记-事件
    事件  事件是类的一种成员,能够使类或对象具备通知能力。事件用于对象或类间的动作协调和信息传递。假设类A有某个事件,当这个事件发生时,类A会通知并传递事件参数(可选)给有订阅这个事件的类B,类B根据拿到的事件信息对事件进行响应处理。事件模型事件模型的5个组成部分:1、事......
  • 昇思25天学习打卡营第11天|ResNet50图像分类
    文章目录昇思MindSpore应用实践基于MindSpore的ResNet50图像分类1、ResNet50简介2、数据集预处理及可视化3、构建网络构建BuildingBlock构建BottleneckBlock构建ResNet50网络4、模型训练5、图像分类模型推理Reference昇思MindSpore应用实践本系列文章主......
  • 【深度学习】图形模型基础(5):线性回归模型第三部分:线性回归模型拟合
    1.引言本博文专辑的焦点主要集中在回归模型的实用案例和工具上,从简单的单变量线性回归入手,逐步过渡到包含多个预测变量、非线性模型,以及在预测和因果推断中的应用。本文我们将介绍回归模型推断的一些数学结构,并提供一些代数知识以帮助理解线性回归的估计方法。此外,我们还将......
  • 从零学习的JAVAday1~day7
    作为一个刚要迈入大二的预备程序员,已经学习过了c语言和c++的部分知识,在暑假期间满怀期待的开始Java的学习,希望一个暑假可以对Java的了解加深一些。学习Java首先要学习windows电脑的cmd命令:同时点击键盘上面的win+r键输入cmd即可进入默认的cmd面版,然后我们就可以输入一些命令:比......
  • 编译实践学习 Part8
    License:CCBY-NC-SA4.0lv8.1你可以把全局范围内所有的函数(包括之后章节中会出现的全局变量)都放在同一个作用域内,即全局作用域.于是我加入了Koopa_val_global_func.classKoopa_val_global_func:publicKoopa_val_base{private: FuncDefASTconst*func;p......
  • Python学习:文件操作
    一、文件编码定义:文件编码技术指的是翻译的规则,记录了如何将内容转换成电脑能看得懂的二进制码,以及如何将二进制翻译回可识别内容。常用计算机编码:UTF-8,GBK,Big5等,其中UTF-8是全球通用的计算机编码。注意:以什么编码翻译成二进制的,就需要用什么编码规则翻译回来,不然会出现乱码......