长久以来,人工智能的一个目标是在那些具有挑战性的领域实现超过人类表现的算法。最近,AlphaGo成为了在围棋上第一个打败了世界冠军的程序。在AlphaGo中,使用深度神经网络来进行树搜索,评估位置,和选择下一步动作。这些神经网络使用人类的专家数据进行监督学习,以及通过自我对弈进行强化学习。在这里,我们介绍一个仅仅基于强化学习的算法,除了游戏规则外没有任何的人类数据,指导,或领域知识。AlphaGo成为了它自己的老师:训练一个神经网络来预测AlphaGo自己的动作,和游戏的胜利者。这个神经网络提高了树搜索的能力,使它在下一次迭代时有更好的选择以及更强的自我博弈。从一片空白开始,我们的新程序 AlphaGo Zero达到了超人般的表现,以100-0的成绩战胜了先前公布的AlphaGo。

人工智能中的许多进展是通过训练监督式学习系统来模仿人类专家的决策。然而,专家数据通常是昂贵的,不可靠的,或难以获得的。即使可以很容易的获得可靠数据,通过这种方式训练的系统,表现也可能到达天花板。相比之下,强化学习系统通过它们自己的经验来训练,在原则上它们具有超越人类的能力,以及在人类不擅长的领域工作。最近,在这方面有了迅速的进展,通过强化学习来训练深度神经网络。这些系统在3D虚拟环境,电脑游戏中有比人类更好的表现。然而,在人类智力最受挑战的地方——比如围棋,广泛地认为这对于人工智能是一个巨大的挑战,因为这需要在巨大的搜索空间中进行精确而复杂的考虑。通用方法从未在这些领域达到人类的水平。

AlphaGo是第一个在围棋中有着超人表现的程序。那个我们称之为AlphaGo Fan的发布的版本,在2015.10打败了欧洲的冠军Fan Hui。AlphaGo Fan利用了两个深度神经网络:一个输出移动概率的策略网络,一个输出位置评估的价值网络。策略网络最初通过监督式学习训练,以此来准确预测人类专家的行动,随后通过策略梯度强化学习重新定义。训练价值网络来预测自我对弈的胜利者。一旦经过训练,这些网络就会和一个蒙特卡洛树搜索(MCTS)结合,以此来提供前瞻搜索,使用策略网络来减小搜索范围,并向高胜率方向移动,然后使用价值网络(结合了快速走子策略的MCTS)来评估在树中的位置。在一个随后的我们称之为AlphaGo Lee的版本中,使用相似的方法,在2016年4月击败了有18个国际头衔的冠军——李世石。

我们的程序,AlphaGo Zero,在几个重要的方面与AlphaGo Fan和AlphaGo Lee有所区别。第一个也是最重要的一个,它仅仅通过自我对弈强化学习实现,从随意的下棋开始,没有任何监督或使用人类数据。第二,它只使用棋盘上的黑白子作为输入特征。第三,它只使用了一个神经网络,而不是分开的策略网络和价值网络。最后,依靠于这个单神经网络,它使用了一个更简单的树搜索,来评价位置和采样动作,没有使用蒙特卡洛走子。为了达到这些结果,我们介绍一个全新的强化深度学习算法——在训练过程中包含前向搜索,来达到快速的进步和精确、稳定的学习。在搜索算法,训练步骤以及网络结构上的进一步的不同将在Methods中描述。

论文翻译:Mastering the Game of Go without Human Knowledge (第一部分)的更多相关文章

  1. [原创]Faster R-CNN论文翻译

    Faster R-CNN论文翻译   Faster R-CNN是互怼完了的好基友一起合作出来的巅峰之作,本文翻译的比例比较小,主要因为本paper是前述paper的一个简单改进,方法清晰,想法自然.什 ...

  2. R-CNN论文翻译

    R-CNN论文翻译 Rich feature hierarchies for accurate object detection and semantic segmentation 用于精确物体定位和 ...

  3. SSD: Single Shot MultiBoxDetector英文论文翻译

    SSD英文论文翻译 SSD: Single Shot MultiBoxDetector 2017.12.08    摘要:我们提出了一种使用单个深层神经网络检测图像中对象的方法.我们的方法,名为SSD ...

  4. R-FCN论文翻译

    R-FCN论文翻译 R-FCN: Object Detection viaRegion-based Fully Convolutional Networks 2018.2.6   论文地址:R-FCN ...

  5. 深度学习论文翻译解析(四):Faster R-CNN: Down the rabbit hole of modern object detection

    论文标题:Faster R-CNN: Down the rabbit hole of modern object detection 论文作者:Zhi Tian , Weilin Huang, Ton ...

  6. 深度学习论文翻译解析(三):Detecting Text in Natural Image with Connectionist Text Proposal Network

    论文标题:Detecting Text in Natural Image with Connectionist Text Proposal Network 论文作者:Zhi Tian , Weilin ...

  7. 深度学习论文翻译解析(二):An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition

    论文标题:An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application ...

  8. 深度学习论文翻译解析(一):YOLOv3: An Incremental Improvement

    论文标题: YOLOv3: An Incremental Improvement 论文作者: Joseph Redmon Ali Farhadi YOLO官网:YOLO: Real-Time Obje ...

  9. 【转】分布式一致性算法:Raft 算法(Raft 论文翻译)

    编者按:这篇文章来自简书的一个位博主Jeffbond,读了好几遍,翻译的质量比较高,原文链接:分布式一致性算法:Raft 算法(Raft 论文翻译),版权一切归原译者. 同时,第6部分的集群成员变更读 ...

随机推荐

  1. Java 从入门到进阶之路(十九)

    在之前的文章我们介绍了一下 Java 中的Object,本章我们来看一下 Java 中的包装类. 在 Java 中有八个基本类型:byte,short,int,long,float,double,ch ...

  2. Objection基本原理

    1,Objection 的简介 就是一个依赖注入框架,github地址:https://github.com/atomicobject/objection 2,Objection 原理 3,Objec ...

  3. spring boot(一)创建项目

    网上有很多springboot的入门教程,自己也因为项目要使用springboot,所以利用业余时间自学了下springboot和springcloud,使用下来发现springboot还是挺简单的, ...

  4. 使用SparkSql进行表的分析与统计

    # 背景 ​ 我们的数据挖掘平台对数据统计有比较迫切的需求,而Spark本身对数据统计已经做了一些工作,希望梳理一下Spark已经支持的数据统计功能,后期再进行扩展. # 准备数据 在参考文献6中下载 ...

  5. CommandPattern(命令模式)-----Java/.Net

    命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式.请求以命令的形式包裹在对象中,并传给调用对象.调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该 ...

  6. 「JOISC 2014 Day1」历史研究 --- 回滚莫队

    题目又臭又长,但其实题意很简单. 给出一个长度为\(N\)的序列与\(Q\)个询问,每个询问都对应原序列中的一个区间.对于每个查询的区间,设数\(X_{i}\)在此区间出现的次数为\(Sum_{X_{ ...

  7. 7.netty内存管理-ByteBuf

    ByteBuf ByteBuf是什么 ByteBuf重要API read.write.set.skipBytes mark和reset duplicate.slice.copy retain.rele ...

  8. 腾讯自研万亿级消息中间件TubeMQ为什么要捐赠给Apache?

    导语 | 近日,云+社区技术沙龙“腾讯开源技术”圆满落幕.本次沙龙邀请了多位腾讯技术专家围绕腾讯开源与各位开发者进行探讨,深度揭秘了腾讯开源项目TencentOS tiny.TubeMQ.Kona J ...

  9. 【JavaScript学习笔记】函数、数组、日期

    一.函数 一个函数应该只返回一种类型的值. 函数中有一个默认的数组变量arguments,存储着传入函数的所有参数. 为了使用函数参数方便,建议给参数起个名字. function fun1(obj, ...

  10. Spring--2.Spring之IOC--IOC容器的23个实验(2)

    Spring--2.Spring之IOC--IOC容器的23个实验(1) 中的所有实验我都是在同一个工程中进行的,从第十个实验开始,我将新建一个新的工程开始实验. 目前导包还是跟第一个项目一致,bea ...