强化学习学习方法和路线
学习路线
先从基础教材开始,构建RL的知识框架,熟悉关键名词和公式推导,扩展到Model-Free的Value-Based和Policy-Based方法,同时参考github的代码练习。接下来精读几篇经典论文,如DQN,PPO等。然后泛读论文,如摘要和总结,选择感兴趣的领域,如Model-Based,HRL等。整理自己的论文阅读列表和总结。同时还可以参考网上的视频资源,如周博磊,李宏毅等。然后找到最新的研究进展,复现并创新。同时关注每年顶会Paper.
学习路线
基础算法:Sutton《强化学习》,Q Learning,DQN,PG,AC,DDPG,TRPO,PPO,TD3
Model-Based:AVP,AlphaGO,Dreamer
HRL:Options,UVFA,VIMIM,HER,DIAYN,DADS
Distributed:A3C,Ape-X,NGU,Agent57RL相关顶会:ICLR,ICML,NeuIPS等
概述
强化学习的想法主要来自于人们对学习本质的思考:人类是通过与环境交互来学习的。所以强化学习做了如下假设,一个理性的智能体(Agent),可以通过动作(action)与环境(Environment)互动,环境的变化使得智能体进入到新的状态(state),从环境中获得回报(Rewrad),根据回报累积的反馈,来优化自己的行动策略(Policy)。
目录页,讲一下一共分了几部分:
我来讲前两部分,韬哥讲后三部分
发展历史和理论基础.
第一部分 发展历史
P4:
- 介绍一下 深度学习的三个范式,
- 介绍下其工作原理:
人类是通过与环境交互来学习的,所以RL是
一个智能体(人),通过动作作用于环境,同时从环境中获得反馈(这个反馈就是回报Reward),并且更新自己的状态(其实我对状态一直理解不到位,我的认识是,自己做完上一个动作后的现状).根据回报的积累,来优化自己的策略(Policy)
强化学习的目标就是获取最优的Policy
这个范范的解释很干,后面会有一个例子说明.
P5. 思想形成的三来源
01 带过去,
02 时序差分学习,
时序差分学习(Temporal Difference Learning,简称TD Learning)是一种基于反馈的强化学习方法,TD Learning通过不断地从实际环境中尝试并获得即时奖励来进行学习。
在TD Learning中,智能体会根据当前状态及采取的行动所获得的即时奖励值,更新对该状态下价值函数的估计值。具体而言,时序差分学习将当前估计值和下一个状态的真实奖励加上折扣因子相结合,以此更新当前状态的估计值。这样的做法可以让智能体逐步探索最优策略,同时也可以将之前的经验融入到新的学习中。
时序差分学习算法既可以用于解决无模型问题(Model-Free),又可以用于解决有模型问题(Model-Based)。在无模型问题中,TD Learning通常使用Q−Learning等算法求解动作价值函数;在有模型问题中,TD Learning通常使用动态规划等算法求解状态价值函数或动作价值函数。由于TD Learning算法简单易用、收敛速度快且对数据量大小不敏感,因此在许多应用领域中都得到了广泛的应用。
03 最优控制问题
在MDP 马尔科夫决策过程引入的动态规划DP,使得马尔科夫决策成为强化学习的普遍形式.
p6页现代强化学习的形成
价值函数。 Q-Learning,是动作的价值.
名词解释:
Q−Learning 值函数的无模型强化学习算法,
智能体根据当前状态采取某个动作所获得的即时奖励及下一个状态的价值估计值,更新该状态下的动作价值函数。—也就带到后后面的贝尔曼方程(Bellman Equation)
其中,
通过不断更新动作价值函数,Q-Learning可以寻找最优策略并在环境中进行探索。虽然Q-Learning算法相对简单易用,但其存在收敛慢、容易陷入局部最优等缺点,因此在实际应用中需要根据具体问题选择合适的算法。
P07 照着念
chatGPT是一个生成式网络.
用到了强化学习的一个模块HFRL模块,用来给输出结果评分用的,让训练变得合理.
(Hugging Face Reinforcement Learning)模块是基于 Hugging Face 提供的 Transformers 框架和 OpenAI Gym 环境构建的强化学习框架,旨在提供一个简单易用的接口,使得用户可以方便地使用 Transformer 模型来解决各种强化学习问题。
重点介绍一下 ALphaGo 和ChatGpt
第二部分基础理论
p09 马尔科夫决策过程
第二张第一页儿马尔科夫那一页儿有俩图儿,左面儿那个是一个状态转移矩阵,然后它的就是基于下面儿那个易拉罐儿回收那个机器人儿那个例子,总结出这个表格儿。然后右面儿那个图儿是它的那个,用把把它表示成图儿的方法儿画出来了,其实它俩是一个东西,然后这个你到时候儿,你意思就是它从某一个状态转移到某一个下一个状态,它的概率是多少?比如说是α或杯β,它就是那个表儿,然后它通过这个表儿,它就可以用动态规划的方法儿去算一下,它用用一个什么策略,能让这个就是机器人儿一直能获得最高的收益,就是它收益就是那个R。是和而为的,反正反正就**尽量不不获得那个负三那个收益就是没电了。
P10 照着念
他这个收益和回报是俩不同的词,收益就是计时的返那个就是那个奖励值,他是re包儿的那个词,然后回报呢,是把他那个收益走,就是执行了一串动一串的动作,收到了得到一堆收益。完了,把他们按那个就是这个公式加起来,那个总和叫回报,那回报的英文就是return。
P11 评估指标
评估指标儿,π sita s, s是状态输入 sita是权重参数, π是动作分配的概率, 输出是动作的概率, 表达的意思是在给定状态下,经由策略函数,输出动作对应的概率分布,在动态概率里面采用,才出来的,就是使用的动作.
V π S 是 基于π的策略下,期望回报是多少, Return,
Q π S
他的意思就是给出一个状态,然后给出一堆动作对应的概率分别多少,然后他在里面儿这个概率分布里采样儿,那采出来动作呢,就是他最后那个升体用的动作,然后那个V派S呢,那个派就是上边儿那个派。就是他在基于这个策略下呢,他算一下这个GT,就是那个整个儿啊,他这个进行一连串动作以后,平均回报就是期望回报是多少,然后Q呢,就是把那个V改一下,给他加了一个a。就在这个状态下,采用这个动作,后面儿的一堆收,收到的回报是多少,就这意思。