1、Human-level control through deep reinforcement learning,通过深度强化学习达到人类的控制水平,强化学习,强化学习就是agent(又称智能系统或智能体)通过与环境的交互学习一个从环境状态到行为映射,学习的目标是使其累积折扣回报值最大。传统的强化学习依赖于组合人工特征和线性价值函数(value function)或策略表达来实现。,马尔科夫决策链,马尔科夫决策过程一般包含如下五个元素: .状态集s。比如,在物体位置坐标。 .动作集A。比如,执行上下左右等一系列可行的动作集。 .状态转移概率Psa。 Psa表示在状态 状态下执行动作 后,转移到下
2、一个状态的概率分布,有时候也表示成如下形式T(s, a, s),s便是在状态s下执行动作a后的状态。 .阻尼系数 ,或者称为折扣因子(Discount factor ) .回报函数R, R:SxAR,表示当前状态下执行某个动作能得到的回报值。,马尔可夫决策过程,agent的决策过程如下:计算总的回报值V:如果回报函数R只和状态S有关而与动作无关:我们选择一个最佳的策略使得回报最大:,马尔科夫决策过程,定义值函数V为在当前状态s下执行策略 能得到的期望的累积折扣回报:我们将上式表示为当前回报和后续回报的形式:假设有一个最优策略 ,使得我们的得到一个最优的值函数 :这就是一个Bellman等式的形
3、式,Q-learing算法,1、Suttons TD(0)算法:这个算法一样会考虑当前回报和下一状态的估计值,它的更新公式如下:其中公式右侧的V(s)是V(s)的旧值(值迭代的过程), 是学习效率。2、Q-learing算法:它和Suttons TD(0)算法类似,只是将动作集A也考虑进来。定义动作价值函数Q(s,a),Q-learning的更新规则:,深度强化学习(DRL),将深度学习和强化学习结合在一起,直接从高维原始数据学习控制策略。具体是将卷积神经网络和Q Learning结合在一起。卷积神经网络的输入是原始图像数据(作为状态)输出则为每个动作对应的价值Value Function来估
4、计未来的反馈Reward。 但是结合二者是有困难的,具体表现在: (1)深度学习的成功依赖于大量的有标签的样本,从而进行有监督学习。而增强学习只有一个reward返回值,并且这个值还常常带有噪声,延迟,并且是稀少的(sparse),理解是不可能每个state给个reward。特别是延迟Delay,常常是几千毫秒之后再返回。,深度强化学习(DRL),(2)深度学习的样本都是独立的,而RL中的state状态却是相关的,前后的状态是有影响的,这显而易见。 (3)深度学习的目标分布是固定的。一个图片是车就是车,不会变。但增强学习,分布却是一直变化的,比如超级玛丽,前面的场景和后面的场景不一样,可能前面
5、的训练好了,后面又不行了,或者后面的训练好了前面又用不了了。,DQN算法,DQN=CNN +Q-learning (1)通过Q-Learning使用reward来构造标签 (2)通过experience replay的方法来解决相关性及非静态分布问题,DQN算法,因为输入是RGB,像素也高,因此,对图像进行初步的图像处理,变成灰度矩形84*84的图像作为输入,有利于卷积。 接下来就是模型的构建问题,毕竟Q(s,a)包含s和a。一种方法就是输入s和a,输出q值,这样并不方便,每个a都需要forward一遍网络。 Deepmind的做法是神经网络只输入s,输出则是每个a对应的q。这种做法的优点就是只要输入s,forward前向传播一遍就可以获取所有a的q值,毕竟a的数量有限。,DQN算法,DQN算法,算法流程:,DQN算法,算法框图:,TensorFlow练完后:,Result of training for 24 hours using GTX 980 ti:,