什么是强化学习?
强化学习是机器学习的一个分支。
机器学习分为监督学习,无监督学习,强化学习。
强化学习简单来说,就是从经验中学习。比如婴儿以为桌子是自己身体的一部分,于是用脚去踢桌子,后来他发现只有他在痛,所以他以后就不会去踢桌子了。这个痛,就是一种奖励,可以把它看成负的,踢桌子是一个行为,踢了之后得到一个奖励,强化学习需要的是最大化未来的奖励。
强化学习和前两种机器学习关系紧密,特别是用函数近似来解决强化学习问题的时候。
整个强化学习的关键术语是状态,动作,奖励。
而强化学习的核心是贝尔曼方程。通过贝尔曼方程推导出可以递归的公式。
回合episode,指的是从初始状态到终止状态的过程。
收获return,未来的奖励和
强化学习要解决两种问题,一种是预测问题,另一种是控制问题。
预测问题指的是给定一个策略,得出这个策略的价值函数。
控制问题指的是,找出最优的策略。
用动态规划解决预测问题
用动态规划,我们知道了环境动态,知道了状态转移概率分布,所以不需要真的与环境交互。
解决预测问题用的迭代策略评估。
解决控制问题,可以策略迭代,价值迭代。
价值迭代是找到最优价值函数然后更新策略,策略迭代是找到一步步更新。
蒙特卡罗
在蒙特卡罗及其以后,都不再知道环境动态,所以不能使用v函数,而要使用q函数。
这个时候需要真正的与环境交互,需要收集状态,奖励,动作的序列。
预测用到了收集足够多的g求平均值得出价值函数。
控制问题则是,更新q函数来得到最佳的策略。
时序差分
这种方法比蒙特卡洛更加的复杂,蒙特卡罗的方法如果状态行为太多的话就不能解决问题。
这个时候用这个方法来解决强化学习问题。
从这里开始与gym库相似。
不再依靠完整的回合而是永不结束。
函数近似
函数近似部分是更深一层,之前的方法无法解决连续的问题,假如动作状态是连续的,用之前的办法就不好解决。
函数近似有很多办法,可以用深度学习或者监督学习中的很多模型。这个比较复杂。使用起来比较简单。
多臂老虎机引入了探索与利用这两个概念。都是在强化学习里面需要东西。
在样本采集不够的情况下,做的选择不一定是最优的,所以需要探索其他的可能性,当足够多时,需要学会利用最好的选择达到最大化的未来收益。
网友评论