快捷搜索:

您的位置:环球彩票登陆 > 环球彩票登陆 > 写给人类的机械学习 五、加强学习【环球彩票登

写给人类的机械学习 五、加强学习【环球彩票登

发布时间:2019-10-19 20:45编辑:环球彩票登陆浏览(89)

    6、可调节的性能水平

    for i in batches:
        # Extract informations from i-th index of the memory
        state, action, reward, next_state = self.memory[i]
    
        # if done, make our target reward (-100 penality)
        target = reward
    
        if not done:
          # predict the future discounted reward
          target = reward   self.gamma * 
                   np.amax(self.model.predict(next_state)[0])
    
        # make the agent to approximately map
        # the current state to future discounted reward
        # We'll call that target_f
        target_f = self.model.predict(state)
        target_f[0][action] = target
    
        # Train the Neural Net with the state and target_f
        self.model.fit(state, target_f, nb_epoch=1, verbose=0)
    

    五、强化学习

    原文:Machine Learning for Humans, Part 5: Reinforcement Learning

    作者:Vishal Maini

    译者:飞龙

    协议:CC BY-NC-SA 4.0

    探索和利用。马尔科夫决策过程。Q 学习,策略学习和深度强化学习。

    我刚刚吃了一些巧克力来完成最后这部分。

    在监督学习中,训练数据带有来自神一般的“监督者”的答案。如果生活可以这样,该多好!

    在强化学习(RL)中,没有这种答案,但是你的强化学习智能体仍然可以决定如何执行它的任务。在缺少现有训练数据的情况下,智能体从经验中学习。在它尝试任务的时候,它通过尝试和错误收集训练样本(这个动作非常好,或者非常差),目标是使长期奖励最大。

    在这个“写给人类的机器学习”的最后一章中,我们会探索:

    • 探索和利用的权衡
    • 马尔科夫决策过程(MDP),用于 RL 任务的经典配置
    • Q 学习,策略学习和深度强化学习
    • 最后,价值学习的问题

    最后,像往常一样,我们编译了一些最喜欢的资源,用于深入探索。

    机器学习任务中主要有三种任务类型:监督学习、无监督学习和强化学习。这些任务类型中的方法通常基于梯度下降优化。

     DQN算法最重要的特征是记忆(remember)与回顾(replay)方法。它们都有很简明的概念。

    策略学习:状态到动作的映射

    在 Q 学习方式种,我们习得了一个分值函数,它估计了每个状态-动作偶对的分值。

    策略学习是个更直接的替代,其中我们习得一个策略函数π,它是每个状态到最佳对应动作的直接映射。将其看做一个行为策略:“当我观测到状态s时,最好执行动作a。”例如,一个自动驾驶的策略可能包括:“如果我看到黄灯,并且我离十字路口超过 100 英尺,我应该停下来。否则,继续向前移动。”

    环球彩票登陆 1

    策略是状态到动作的映射

    所以我们习得了一个函数,它会使预期奖励最大。我们知道,什么最擅长习得复杂的函数呢?深度神经网络!

    Andrej Karpathy 的 Pong from Pixels 提供了一个杰出的示例,关于习得一个用于 Atari 游戏 Pong 的策略,它接受来自游戏的原始像素作为输入(状态),并输出向上或向下移动拍子的概率(动作)。

    环球彩票登陆 2

    在策略梯度网络中,智能体习得最优策略,通过基于来自环境的奖励信号,使用梯度下降来调整它的权重。图片来自 http://karpathy.github.io/2016/05/31/rl/

    如果你打算亲自试一试深度 RL,查看 Andrej 的文章。你会在 130 行代码内实现一个二层的策略网络,并且会学到如何切入 OpenAI 的训练场,它允许你实现并运行你的第一个强化学习算法,在大量游戏上测试它,并且查看它的表现与其它记录相比怎么样。

    环球彩票登陆 3

    • Playing Atari with Deep Reinforcement Learning
    • Human-level Control Through Deep Reinforcement Learning

    Q 学习:学习动作-分值函数

    Q 学习是一种技巧,它基于动作-分值函数求解了要做出哪个动作,这个函数确定了在特定状态下做出特定行为的分值。

    我们拥有一个函数Q,它接受一个状态和一个动作作为输入,并返回这个动作(以及所有后续动作)在这个状态上的预期奖励。在我们探索环境之前,Q提供相同(任意)的固定值。但是之后,随着我们探索了更多环境,Q向我们提供动作a在状态s上的分值的,不断优化的近似。我们在这个过程中更新我们的函数Q

    这个方程来自维基百科的 Q 学习页面,很好解释了它。他展示了,我们如何更新 Q 的值,基于我们从环境中得到的奖励:

    环球彩票登陆 4

    让我们忽略折现系数γ,再次将其设为 1。首先要记住,Q 应该为所有奖励之和,来自所选动作 Q 和所有后续的最优动作。

    现在让我们从左到右浏览方程。让我们在状态st上做出动作,我们更新我们的Q(st,at)的值,通过向其添加一项。这一项包含:

    • 学习率alpha:这表示在更新我们的值时,我们有多激进。当alpha接近 0 时,我们更新得不是很激进。当alpha接近 1 时,我们简单将原值替换为新的值。
    • 奖励reward就是我们通过在状态st做出动作at得到的奖励。所以我们将这个奖励添加到原有的估计中。
    • 我们也添加了估计的未来奖励,它就是xt 1上的所有可用动作的,最大的可实现的奖励Q
    • 最后,我们减掉原有值Q,来确保我们仅仅增加或减少估计值的差(当然要乘上alpha)。

    既然对于每个状态-动作的偶对,我们拥有了值的估计,我们可以选取要做出哪个动作,根据我们的动作-选取策略(我们每次不一定选择导致最大预期奖励的动作,也就是使用 epsilon 贪婪探索策略,我们以一定百分比做出随机的动作)。

    在机器老鼠的例子中,我们可以使用 Q 学习来找到迷宫中每个位置的分值,以及每个位置上动作“前进,后退,左转,右转”的分值。之后我们可以使用我们的动作-选取策略,来选择老鼠在每一步实际上做什么。

    在引入 DQN 前后,在 Atari 游戏中被采用的另一种方法是置信域策略优化。该方法更新一个根据环境更新的替代目标函数。2017 年晚些时候,近端策略优化作为一种更鲁棒、更简单的替代优化方案被引入,它也借鉴了 A3C 的创新指出。有些扩展方法是专门为游戏「蒙特祖玛的复仇」(ALE 基准测试中的一款游戏)而开发的,但由于奖励信息稀疏和信息隐藏问题,这款游戏尤其困难。在蒙特祖玛的复仇中表现最好的算法是通过内在动机和层次学习扩展 DQN。吃豆人也是一款非常著名的 Atari 游戏,研究人员针对其不同的部分单独学习奖励函数,以使智能体对新环境更鲁棒。

    环球彩票登陆 5

    练习材料和扩展阅读

    Gorila 是第一个基于 DQN 建立的异步方法,接着是 A3C 方法,它为 actor-critic 方法使用了多个异步智能体。2016 年底,UNREAL 进一步扩展了这一概念,它将已有的工作与辅助学习(auxiliary learning)结合起来,从而应对稀疏反馈环境。从那时起,出现了许多对 A3C 技术额外的扩展。IMPALA 通过重点关注一个被训练能够玩所有 Atari 游戏的智能体,对此进行了进一步的扩展。2018 年,随着 Ape-X 的诞生,大规模分布式学习在此领域的研究也得以继续发展。

     agent如何选择行为?

    代码

    • Andrej Karpathy 的 Pong from Pixels 会让你实现并运行第一个强化学习智能体。文章描述了,“我们会学着玩 ATARI 游戏(乒乓),使用 PG,从零开始,来自像素,使用深度神经网络,并且整个东西是 130 行的 Python 代码,仅仅使用 NumPy 作为依赖(Gist 链接)”。

    • 下面,我们高度推荐 Arthur Juliani 的 使用 TensorFlow 的简单强化学习教程。它浏览了 DQN,策略学习,行动-评判方法,以及使用 TensorFlow 实现的探索策略。尝试理解它,之后重复实现涉及到的方法。

    监督学习在游戏中的另一个应用是学习游戏的状态切换。神经网络可以学习预测动作状态对的下一状态,而不是为给定状态生成动作。

     

    到此为止了!

    如果你到达了这里,这就是我们希望的所有奖励。

    我们希望你将这个系列看做机器学习的简介。我们在附录中编译了一些我们最喜欢的 ML 资源,如果你准备好来看看兔子洞有多深的话。

    请不要犹豫,向我们提供思路,问题,反馈,或者你最喜欢的 GIF。

    下次再见,

    Vishal 和 Samer


    总结

    这里是一个基础的问题,它启发了这个系列,我们打算也将它给你。

    作为人类,我们的目标函数是什么?我们如何定义,我们在现实生活中使其最大化的奖励?在基本的快乐和痛苦中,我们的奖励定义也倾向于包含混乱的事情,像是正确和错误,满足,爱情,精神,和目的。

    有一些智力领域,在远古时期,它们就致力于“我们的目标函数是什么,或者应该是什么”的问题,它叫做“伦理学”。伦理学的核心问题是:我们应该做什么?我们应该怎么样或者?什么行为是正确或者错误的?答案非常简洁:它取决于你的价值观。

    随着我们创造出越来越多的高级 AI,它会开始远离玩具问题的领域,像是 Atari 游戏,其中“奖励”仅仅由游戏中赢得了多少积分定义。并且它们越来越出现在现实世界。例如自动驾驶,需要使用更复杂的奖励定义做决策。最开始,奖励可能绑定在一些东西上,例如“安全到达目的地”。但是如果强制让它选择,保持原路线并撞击五个行人,还是转向并撞击一个行人,那么它应该不应该转向呢?如果一个行人是孩子,或者持枪的歹徒,或者下一个爱因斯坦呢?这样如何改变决策,以及为什么?如果转向也会毁掉一些值钱的艺术品呢?突然我们有了更加复杂的问题,当我们尝试定义目标函数,并且答案并不简单的时候。

    这个系列中,我们探索了为什么难以对计算机显式规定猫是什么样子 -- 如果你问我们自己是怎么知道的,答案很简单,“直觉” -- 但是我们探索了机器视觉的方式,让计算机自己习得这个直觉。与之类似,在机器道德的领域,可能难以准确规定,如何求解一个行为对于另一个的正确性和错误性,但是,或许机器可以用某种方式习得这些值。这叫做“价值学习问题”,并且它可能是人类需要解决的,最重要的技术问题之一。

    对于这个话题的更多东西,请见 Risks of Artificial Intelligence(人工智能风险)的概要性文章。以及随着你深入到让机器更聪明的世界中,我们鼓励你记住,AI 的进步是个双刃剑,它的两侧都特别锋利。

    上图显示了各种深度学习方法以及它们之间互相影响的示意图(下面的部分相当于对此图的长篇解读)。图中的每一种方法都被着色了,以显示出用于对比的游戏基准。

    ·gamma discount rate(折扣因子),以便计算未来的折扣回报。

    让我们在迷宫中放一个机器老鼠

    思考强化学习的最简单的语境是一个游戏,它拥有明确的目标和积分系统。

    假设我们正在玩一个游戏,其中我们的老鼠正在寻找迷宫的尽头处的奶酪的终极奖励(

    本文由环球彩票登陆发布于环球彩票登陆,转载请注明出处:写给人类的机械学习 五、加强学习【环球彩票登

    关键词: 环球彩票登陆 算法 鼻祖 尽展

上一篇:短途货运平台的东南亚战事环球彩票登陆

下一篇:没有了