CS231N Lecture14: Reinforcement Learning

CS231N Lecture14: Reinforcement Learning_第1张图片

强化学习:Agent与Environment之间交互,Agent发起一个Action,环境会给出一个reward。目标是如何执行action才能将reward最大化。

1. Markov Decision Process

是强化学习的数学基础,马尔可夫特性:目前的状态完全刻画世界的状态

CS231N Lecture14: Reinforcement Learning_第2张图片

其中包含S为状态集,A是action集,R是给定(state, action)对后reward的分布,P是转移概率(例如从给定的状态action对转移到下一个state的分布),y是discount factor表示了reward的重要程度。

马尔可夫决策过程的工作原理为:

CS231N Lecture14: Reinforcement Learning_第3张图片

首先有初始的状态分布p(s0),在t=0时,先从初始状态分布中采样一些初始状态。接着Agent选择一个action,然后环境给出一个reward并且采样下一个状态,接着Agent收到reward和下一个时刻的状态。目标就是找到一个函数能使得reward求和最大。

问题:如何处理随机性(例如初始状态,转移概率)?

CS231N Lecture14: Reinforcement Learning_第4张图片

问题:如何衡量state的好坏和state-action对的好坏?使用value function和Q-value function

CS231N Lecture14: Reinforcement Learning_第5张图片

如何计算最优的Q-value function

使用Bellman Equation贝尔曼方程,也被称作是动态规划方程(Dynamic Programming Equation),这种方法的问题在于不可扩展,需要对每个(state-action)对计算Q(s, a)

CS231N Lecture14: Reinforcement Learning_第6张图片

解决方法:Q-learning,使用一个function approximator来估计action-value function。

使用function approximator来近似计算

网络结构:

CS231N Lecture14: Reinforcement Learning_第7张图片

输入是过去四帧图像,输出是一个向量,比如有四个action的话,输出就是四维向量,代表每个动作的Q-value

Experience Replay:

问题:从批次的连续样本中学习是有问题的---1. 样本是相关的,学习效率低下 2. Q-network的参数决定了下一个训练样本(例如,如果最大的action是向左移动,那么训练样本将由左侧的样本控制),会导致错误的反馈循环。

解决这些问题的方法是使用experience replay,更新replay memory table of transitions(st, at,rt, st+1),同时训练的时候使用随机的minibatches of transitions from the replay memory,而不是使用连续的样本。


CS231N Lecture14: Reinforcement Learning_第8张图片
算法

(1)首先初始化replay memory,Q-network。(2)接着玩M次完整的游戏,这是训练集。在每个episode的开始都初始化state(starting game screen pixels,开始游戏的画面)。(3)接着对于每个时刻,以一个很小的概率随机选择一个action,或者根据当前的policy贪心的选择一个action。(4)接着执行action之后,得到了s(t+1) = st, at, x(t+1),将其保存在replay memory中。(5)接下来是experience replay阶段,采样然后这行BP

2. Policy Gradients

Q-function很复杂,如果有很多个状态就很难计算啦。

CS231N Lecture14: Reinforcement Learning_第9张图片
Policy Gradients

定义一组policies,然后选择最优的。使用Reinforce algorithm

CS231N Lecture14: Reinforcement Learning_第10张图片
trajectory轨迹


CS231N Lecture14: Reinforcement Learning_第11张图片


CS231N Lecture14: Reinforcement Learning_第12张图片

如果reward高,就推高概率,如果reward低,就减少概率。

你可能感兴趣的:(CS231N Lecture14: Reinforcement Learning)