文章目录
1. 什么是强化学习
其他许多机器学习算法中学习器都是学得怎样做,而强化学习(Reinforcement Learning, RL)是在尝试的过程中学习到在特定的情境下选择哪种行动可以得到最大的回报。在很多场景中,当前的行动不仅会影响当前的rewards,还会影响之后的状态和一系列的rewards。RL最重要的3个特定在于:
- 基本是以一种闭环的形式;
- 不会直接指示选择哪种行动(actions);
- 一系列的actions和奖励信号(reward signals)都会影响之后较长的时间。
强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题 [1] 。
上图中agent代表自身,如果是自动驾驶,agent就是车;如果你玩游戏它就是你当前控制的游戏角色,如马里奥,马里奥往前走时环境就一直在发生变化,有小怪物或者障碍物出现,它需要通过跳跃来进行躲避,就是要做action(如向前走和跳起的动作);无人驾驶的action就是车左转、右转或刹车等等,它无时无刻都在与环境产生交互,action会反馈给环境,进而改变环境,如果自动驾驶的车行驶目标是100米,它向前开了10米,那环境就发生了变化,所以每次产生action都会导致环境改变,环境的改变会反馈给自身(agent),就是这样的一个循环;反馈又两种方式:
- 做的好(reward)即正反馈,
- 做得不好(punishment惩罚)即负反馈。
Agent可能做得好,也可能做的不好,环境始终都会给它反馈,agent会尽量去做对自身有利的决策,通过反反复复这样的一个循环,agent会越来越做的好,就像孩子在成长过程中会逐渐明辨是非,这就是强化学习。
2. 强化学习模型
如上图左边所示,一个agent(例如:玩家/智能体等)做出了一个action,对environment造成了影响,也就是改变了state,而environment为了反馈给agent,agent就得到了一个奖励(例如:积分/分数),不断的进行这样的循环,直到结束为止。
上述过程就相当于一个马尔可夫决策过程,为什么这样叫呢?因为符合马儿可夫假设:
- 当前状态 St 只由上一个状态 St-1 和行为所决定,而和前序的更多的状态是没有关系的。
上图右边所示,S0 状态经过了 a0 的行为后,获得了奖励 r1 ,变成了状态S1,后又经过了 a0 行为得到奖励 r2,变成了状态 S2 ,如此往复循环,直到结束为止。
2.1 打折的未来奖励
通过以上的描述,大家都已经确定了一个概念,也就是agent(智能体)在当下做出的决定肯定使得未来收益最大化,那么,一个马儿可夫决策过程对应的奖励总和为:
R = r 1 + r 2 + r 3 + . . . + r n R=r_1+r_2+r_3+...+r_n R=r1+r2+r3+...+rn
t 时刻(当下)的未来奖励,只考虑后面的奖励,前面的改变不了:
R t = r t + r t + 1 + r t + 2 + . . . + r n R_t=r_t+r_{t+1}+r_{t+2}+...+r_n Rt