tp钱包app官方正版|alphgo

作者: tp钱包app官方正版
2024-03-07 17:00:29

阿尔法围棋(围棋机器人)_百度百科

棋(围棋机器人)_百度百科 网页新闻贴吧知道网盘图片视频地图文库资讯采购百科百度首页登录注册进入词条全站搜索帮助首页秒懂百科特色百科知识专题加入百科百科团队权威合作下载百科APP个人中心阿尔法围棋是一个多义词,请在下列义项上选择浏览(共2个义项)展开添加义项阿尔法围棋播报讨论上传视频围棋机器人收藏查看我的收藏0有用+10阿尔法围棋(AlphaGo)是第一个击败人类职业围棋选手、第一个战胜围棋世界冠军的人工智能机器人,由谷歌(Google)旗下DeepMind公司戴密斯·哈萨比斯领衔的团队开发。其主要工作原理是“深度学习”。2016年3月,阿尔法围棋与围棋世界冠军、职业九段棋手李世石进行围棋人机大战,以4比1的总比分获胜;2016年末2017年初,该程序在中国棋类网站上以“大师”(Master)为注册账号与中日韩数十位围棋高手进行快棋对决,连续60局无一败绩;2017年5月,在中国乌镇围棋峰会上,它与排名世界第一的世界围棋冠军柯洁对战,以3比0的总比分获胜。围棋界公认阿尔法围棋的棋力已经超过人类职业围棋顶尖水平。2017年5月27日,在柯洁与阿尔法围棋的人机大战之后,阿尔法围棋团队宣布阿尔法围棋将不再参加围棋比赛。2017年10月18日,DeepMind团队公布了最强版阿尔法围棋,代号AlphaGo Zero。2017年7月18日,教育部、国家语委在北京发布《中国语言生活状况报告(2017)》,“阿尔法围棋”入选2016年度中国媒体十大新词。 [1]中文名阿尔法围棋外文名AlphaGo开发商DeepMind作    者戴密斯·哈萨比斯、大卫·席尔瓦等重大事件围棋人机大战主要成绩战胜人类围棋顶尖高手目录1旧版原理▪深度学习▪两个大脑▪操作过程2新版原理▪自学成才▪一个大脑▪神经网络3旧版战绩▪对战机器▪对战人类4新版战绩5版本介绍6设计团队7发展方向8社会评论旧版原理播报编辑深度学习李世石与阿尔法围棋人机大战阿尔法围棋(AlphaGo)是一款围棋人工智能程序。其主要工作原理是“深度学习”。“深度学习”是指多层的人工神经网络和训练它的方法。一层神经网络会把大量矩阵数字作为输入,通过非线性激活方法取权重,再产生另一个数据集合作为输出。这就像生物神经大脑的工作机理一样,通过合适的矩阵数量,多层组织链接一起,形成神经网络“大脑”进行精准复杂的处理,就像人们识别物体标注图片一样。阿尔法围棋用到了很多新技术,如神经网络、深度学习、蒙特卡洛树搜索法等,使其实力有了实质性飞跃。美国脸书公司“黑暗森林”围棋软件的开发者田渊栋在网上发表分析文章说,阿尔法围棋系统主要由几个部分组成:一、策略网络(Policy Network),给定当前局面,预测并采样下一步的走棋;二、快速走子(Fast rollout),目标和策略网络一样,但在适当牺牲走棋质量的条件下,速度要比策略网络快1000倍;三、价值网络(Value Network),给定当前局面,估计是白胜概率大还是黑胜概率大;四、蒙特卡洛树搜索(Monte Carlo Tree Search),把以上这四个部分连起来,形成一个完整的系统。 [2-3]两个大脑柯洁与阿尔法围棋人机大战阿尔法围棋(AlphaGo)是通过两个不同神经网络“大脑”合作来改进下棋。这些“大脑”是多层神经网络,跟那些Google图片搜索引擎识别图片在结构上是相似的。它们从多层启发式二维过滤器开始,去处理围棋棋盘的定位,就像图片分类器网络处理图片一样。经过过滤,13个完全连接的神经网络层产生对它们看到的局面判断。这些层能够做分类和逻辑推理。第一大脑:落子选择器 (Move Picker)阿尔法围棋(AlphaGo)的第一个神经网络大脑是“监督学习的策略网络(Policy Network)” ,观察棋盘布局企图找到最佳的下一步。事实上,它预测每一个合法下一步的最佳概率,那么最前面猜测的就是那个概率最高的。这可以理解成“落子选择器”。第二大脑:棋局评估器 (Position Evaluator)阿尔法围棋(AlphaGo)的第二个大脑相对于落子选择器是回答另一个问题,它不是去猜测具体下一步,而是在给定棋子位置情况下,预测每一个棋手赢棋的概率。这“局面评估器”就是“价值网络(Value Network)”,通过整体局面判断来辅助落子选择器。这个判断仅仅是大概的,但对于阅读速度提高很有帮助。通过分析归类潜在的未来局面的“好”与“坏”,阿尔法围棋能够决定是否通过特殊变种去深入阅读。如果局面评估器说这个特殊变种不行,那么AI就跳过阅读。这些网络通过反复训练来检查结果,再去校对调整参数,去让下次执行更好。这个处理器有大量的随机性元素,所以人们是不可能精确知道网络是如何“思考”的,但更多的训练后能让它进化到更好。 [3-5]操作过程阿尔法围棋(AlphaGo)为了应对围棋的复杂性,结合了监督学习和强化学习的优势。它通过训练形成一个策略网络(policy network),将棋盘上的局势作为输入信息,并对所有可行的落子位置生成一个概率分布。然后,训练出一个价值网络(value network)对自我对弈进行预测,以 -1(对手的绝对胜利)到1(AlphaGo的绝对胜利)的标准,预测所有可行落子位置的结果。这两个网络自身都十分强大,而阿尔法围棋将这两种网络整合进基于概率的蒙特卡罗树搜索(MCTS)中,实现了它真正的优势。新版的阿尔法围棋产生大量自我对弈棋局,为下一代版本提供了训练数据,此过程循环往复。在获取棋局信息后,阿尔法围棋会根据策略网络(policy network)探索哪个位置同时具备高潜在价值和高可能性,进而决定最佳落子位置。在分配的搜索时间结束时,模拟过程中被系统最频繁考察的位置将成为阿尔法围棋的最终选择。在经过先期的全盘探索和过程中对最佳落子的不断揣摩后,阿尔法围棋的搜索算法就能在其计算能力之上加入近似人类的直觉判断。2017年1月,谷歌DeepMind公司CEO哈萨比斯在德国慕尼黑DLD(数字、生活、设计)创新大会上宣布推出真正2.0版本的阿尔法围棋。其特点是摈弃了人类棋谱,只靠深度学习的方式成长起来挑战围棋的极限。 [6-7]新版原理播报编辑自学成才AlphaGo Zero强化学习下的自我对弈阿尔法围棋(AlphaGo)此前的版本,结合了数百万人类围棋专家的棋谱,以及强化学习进行了自我训练。AlphaGoZero的能力则在这个基础上有了质的提升。最大的区别是,它不再需要人类数据。也就是说,它一开始就没有接触过人类棋谱。研发团队只是让它自由随意地在棋盘上下棋,然后进行自我博弈。 [8]据阿尔法围棋团队负责人大卫·席尔瓦(Dave Sliver)介绍,AlphaGoZero使用新的强化学习方法,让自己变成了老师。系统一开始甚至并不知道什么是围棋,只是从单一神经网络开始,通过神经网络强大的搜索算法,进行了自我对弈。随着自我博弈的增加,神经网络逐渐调整,提升预测下一步的能力,最终赢得比赛。更为厉害的是,随着训练的深入,阿尔法围棋团队发现,AlphaGoZero还独立发现了游戏规则,并走出了新策略,为围棋这项古老游戏带来了新的见解。 [9]一个大脑AlphaGoZero仅用了单一的神经网络。在此前的版本中,AlphaGo用到了“策略网络”来选择下一步棋的走法,以及使用“价值网络”来预测每一步棋后的赢家。而在新的版本中,这两个神经网络合二为一,从而让它能得到更高效的训练和评估。 [9]神经网络AlphaGoZero并不使用快速、随机的走子方法。在此前的版本中,AlphaGo用的是快速走子方法,来预测哪个玩家会从当前的局面中赢得比赛。相反,新版本依靠地是其高质量的神经网络来评估下棋的局势。 [9]旧版战绩播报编辑对战机器研究者让“阿尔法围棋”和其他的围棋人工智能机器人进行了较量,在总计495局中只输了一局,胜率是99.8%。它甚至尝试了让4子对阵CrazyStone、Zen和Pachi三个先进的人工智能机器人,胜率分别是77%、86%和99%。2017年5月26日,中国乌镇围棋峰会举行人机配对赛。对战双方为古力/阿尔法围棋组合和连笑/阿尔法围棋组合。最终连笑/阿尔法围棋组合逆转获得胜利。 [4] [10-11]对战人类李世石阿尔法围棋人机大战现场2016年1月27日,国际顶尖期刊《自然》封面文章报道,谷歌研究者开发的名为“阿尔法围棋”(AlphaGo)的人工智能机器人,在没有任何让子的情况下,以5:0完胜欧洲围棋冠军、职业二段选手樊麾。在围棋人工智能领域,实现了一次史无前例的突破。计算机程序能在不让子的情况下,在完整的围棋竞技中击败专业选手,这是第一次。2016年3月9日到15日,阿尔法围棋程序挑战世界围棋冠军李世石的围棋人机大战五番棋在韩国首尔举行。比赛采用中国围棋规则,最终阿尔法围棋以4比1的总比分取得了胜利。阿尔法围棋战胜围棋世界冠军团队2016年12月29日晚起到2017年1月4日晚,阿尔法围棋在弈城围棋网和野狐围棋网以“Master”为注册名,依次对战数十位人类顶尖围棋高手,取得60胜0负的辉煌战绩。2017年5月23日到27日,在中国乌镇围棋峰会上,阿尔法围棋以3比0的总比分战胜排名世界第一的世界围棋冠军柯洁。在这次围棋峰会期间的2017年5月26日,阿尔法围棋还战胜了由陈耀烨、唐韦星、周睿羊、时越、芈昱廷五位世界冠军组成的围棋团队。 [4-5] [10] [12-15]新版战绩播报编辑AlphaGo-Zero的训练时间轴经过短短3天的自我训练,AlphaGo Zero就强势打败了此前战胜李世石的旧版AlphaGo,战绩是100:0的。经过40天的自我训练,AlphaGo Zero又打败了AlphaGo Master版本。“Master”曾击败过世界顶尖的围棋选手,甚至包括世界排名第一的柯洁。 [16-17]版本介绍播报编辑AlphaGo几个版本的排名情况据公布的题为《在没有人类知识条件下掌握围棋游戏》的论文介绍,开发公司将“阿尔法围棋”的发展分为四个阶段,也就是四个版本,第一个版本即战胜樊麾时的人工智能,第二个版本是2016年战胜李世石的阿尔法围棋,第三个是在围棋对弈平台名为“Master”(大师)的版本,其在与人类顶尖棋手的较量中取得60胜0负的骄人战绩,而最新版的人工智能开始学习围棋3天后便以100:0横扫了第二版本的阿尔法围棋,学习40天后又战胜了在人类高手看来不可企及的第三个版本“大师”。 [18]设计团队播报编辑戴密斯·哈萨比斯(Demis Hassabis),人工智能企业家,DeepMind Technologies公司创始人,人称“阿尔法围棋之父”。4岁开始下国际象棋,8岁自学编程,13岁获得国际象棋大师称号。17岁进入剑桥大学攻读计算机科学专业。在大学里,他开始学习围棋。2005年进入伦敦大学学院攻读神经科学博士,选择大脑中的海马体作为研究对象。两年后,他证明了5位因为海马体受伤而患上健忘症的病人,在畅想未来时也会面临障碍,并凭这项研究入选《科学》杂志的“年度突破奖”。2011年创办DeepMind Technologies公司,以“解决智能”为公司的终极目标。阿尔法围棋设计团队部分成员大卫·席尔瓦(David Silver),剑桥大学计算机科学学士、硕士,加拿大阿尔伯塔大学计算机科学博士,伦敦大学学院讲师,Google DeepMind研究员,阿尔法围棋主要设计者之一。除上述人员之外,阿尔法围棋设计团队核心人员还有黄士杰(Aja Huang)、施恩·莱格(Shane Legg)和穆斯塔法·苏莱曼(Mustafa Suleyman)等。 [19-21]发展方向播报编辑“阿尔法围棋”(AlphaGo)能否代表智能计算发展方向还有争议,但比较一致的观点是,它象征着计算机技术已进入人工智能的新信息技术时代(新IT时代),其特征就是大数据、大计算、大决策,三位一体。它的智慧正在接近人类。谷歌Deep mind首席执行官(CEO)戴密斯·哈萨比斯宣布“要将阿尔法围棋(AlphaGo)和医疗、机器人等进行结合”。因为它是人工智能,会自己学习,只要给它资料就可以移植。据韩国《朝鲜日报》报道,为实现该计划,哈萨比斯2016年初在英国的初创公司“巴比伦”投资了2500万美元。巴比伦正在开发医生或患者说出症状后,在互联网上搜索医疗信息、寻找诊断和处方的人工智能APP(应用程序)。如果阿尔法围棋(AlphaGo)和“巴比伦”结合,诊断的准确度将得到划时代性提高。在柯洁与阿尔法围棋的围棋人机大战三番棋结束后,阿尔法围棋团队宣布阿尔法围棋将不再参加围棋比赛。阿尔法围棋将进一步探索医疗领域,利用人工智能技术攻克现实现代医学中存在的种种难题。在医疗资源的现状下,人工智能的深度学习已经展现出了潜力,可以为医生提供辅助工具。实际上,对付人类棋手从来不是“阿尔法围棋”的目的,开发公司只是通过围棋来试探它的功力,而研发这一人工智能的最终目的是为了推动社会变革、改变人类命运。据悉,他们正积极与英国医疗机构和电力能源部门合作,以此提高看病效率和能源效率。 [18] [22-25]社会评论播报编辑中国围棋职业九段棋手聂卫平:“Master(即阿尔法围棋升级版)技术全面,从来不犯错,这一点是其最大的优势,人类要打败它的话,必须在前半盘领先,然后中盘和官子阶段也不容出错,这样固然很难,但客观上也促进了人类棋手在围棋技术上的提高。”世界排名第一的围棋世界冠军柯洁:“在我看来它(指阿尔法围棋)就是围棋上帝,能够打败一切。”“对于AlphaGo的自我进步来讲,人类太多余了。” [18]复旦大学计算机科学技术学院教授、博士生导师危辉:“人机大战对于人工智能的发展意义很有限。解决了围棋问题,并不代表类似技术可以解决其他问题,自然语言理解、图像理解、推理、决策等问题依然存在,人工智能的进步被夸大了。” [26-28]中国围棋世界冠军唐韦星:“看了之后不知道说什么,它(AlphaGo)确实不需要我们的知识,之前版本用了好几年,被这个才学了40天的打败似乎就是我们拖后腿了。” [18]五子棋棋手吴侃:“有时候感觉对AlphaGo的评价过于高了,人类也不需要把其奉为神明,但不可否认,AlphaGo的出现给围棋界带来了巨大的震动。” [29]新手上路成长任务编辑入门编辑规则本人编辑我有疑问内容质疑在线客服官方贴吧意见反馈投诉建议举报不良信息未通过词条申诉投诉侵权信息封禁查询与解封©2024 Baidu 使用百度前必读 | 百科协议 | 隐私政策 | 百度百科合作平台 | 京ICP证030173号 京公网安备110000020000

AlphaGo Zero 简明工作原理 - 知乎

AlphaGo Zero 简明工作原理 - 知乎切换模式写文章登录/注册AlphaGo Zero 简明工作原理优达学城(Udacity)由 Google 无人车之父创立、硅谷前沿在线科技学习平台2016年3月,Alpha Go Master击败最强的人类围棋选手之一李世石。击败李的版本,在训练过程中使用了大量人类棋手的棋谱。2017年10月19日,DeepMind公司在《自然》杂志发布了一篇新的论文,AlphaGo Zero——它完全不依赖人类棋手的经验,经过3天的训练,Alpha Go Zero击败了Master版本。AlphaGo Zero最重要的价值在于,它不仅仅可以解决围棋问题,它可以在不需要知识预设的情况下,解决一切棋类问题,经过几个小时的训练,已击败最强国际象棋冠军程序Stockfish。其应用场景非常广泛。AlphaGo Zero 采用了蒙特卡洛树搜索+深度学习算法,本文将尽可能用简单易懂的语言解释其工作原理。树搜索treesearch从一个棋盘的初始状态,开始思考下一步如何走。我们可以回顾一下我们思考的过程,我们会思考自己可以有哪几种走法,如果我走了这里,对手可能会走哪里,那么我还可以在哪里走。我和对手都会选择最有利的走法,最终价值最大的那一手,就是我要选择的下法。很明显这个思维过程是一颗树,为了寻找最佳的行棋点的过程,就是树搜索。围棋第一手有361种下法,第二手有360种,第三手有359,依次类推,即一共有 361! 种下法,考虑到存在大量不合规则的棋子分布,合理的棋局约占这个数字的1.2%(Counting Legal Positions in Go). 约为2.081681994 * 10^170。这个一个天文数字,比目前可观测宇宙的所有原子数还要多。要进行完全树搜索,是不可能的。因此我们必须进行剪枝,并限制思考的深度。所谓剪枝,就是指没必要考虑每种下法,我们只需考虑最有价值的几手下法。所谓限制思考的深度,就是我们最多只思考5步,10步,20步。常见的算法是Alpha-beta剪枝算法。但是,剪枝算法也有它的缺陷,它很有可能过早的剪掉了后期价值很大走法。蒙特卡洛方法简而言之,蒙特卡洛方法(Monte Carlo method),是一种“统计模拟方法”。20世纪40年代,为建造核武器,冯.诺伊曼 等人发明了该算法。因赌城蒙特卡洛而得名,暗示其以概率作为算法的基础。假设我们要计算一个不规则形状的面积,我们只需在包含这个不规则形状的矩形内,随机的掷出一个点,每掷出一个点,则N+1,如果这个点在不规则图形内则W+1。落入不规则图形的概率即为 W/N。当掷出足够多的点之后,我们可以认为:不规则图形面积=矩形面积*W/N。要应用蒙特卡洛算法的问题,首先要将问题转化为概率问题,然后通过统计方法将其问题的解估计出来。蒙特卡洛树搜索(MCTS)1987年Bruce Abramson在他的博士论文中提出了基于蒙特卡洛方法的树搜索这一想法。这种算法简而言之是用蒙特卡洛方法估算每一种走法的胜率。如果描述的再具体一些,通过不断的模拟每一种走法,直至终局,该走法的模拟总次数N,与胜局次数W,即可推算出该走法的胜率为 W/N。该算法的每个循环包含4个步骤:选择、扩展、仿真、反向传播。一图胜千言。MCTS图中N表示总模拟次数,W表示胜局次数。每次都选择胜率最大的节点进行模拟。但是这样会导致新节点无法被探索到。为了在最大胜率和新节点探索上保持平衡,UCT(Upper Confidence Bound,上限置信区间算法)被引入。所谓置信区间,就是概率计算结果的可信度。打个比方,如果掷了3次硬币,都是正面朝上,我们就认为掷硬币正面朝上概率是100%,那肯定是错误的,因为我们的样本太少了。所以UCT就是用来修正这个样本太少的问题。具体公式如下:UCT公式其中wi 是i节点的胜利次数,ni是i节点的模拟次数,Ni是所有模拟次数,c是探索常数,理论值为 √2,可根据经验调整。公式的后半部分,探索次数越少,值会越大,所以,那些被探索比较少的点,会获得更多的探索机会。蒙特卡洛树搜索算法因为是直接模拟到游戏终局,所以这种算法更加的准确,而且并不需要一个明确的“估值函数”,你只需要实现游戏机制就足够了。而且,蒙特卡洛算法,可以随时终止,根据其训练的时间给予近似的最优结果。但是对于围棋这种游戏而言,它的选择点依然太多,这棵树会非常的大。可能有一个分支早已被丢弃,那么它将不会被统计,这可能是李世石能够在第四局击败AlphaGo的主要原因。对于这类情况,我们依然需要依赖一个好的估值函数来辅助。深度学习近年来,深度卷积神经网络在视觉领域取得很大的成功,如图片分类,人脸识别等。深度学习的网络结构在此不赘述,简而言之,深度学习是一个最优化算法。我们可以将深度神经网络理解为一个黑盒,这个黑盒接收一批输入,得到一个输出,并根据输出计算出损失(误差),这个误差会反馈给黑盒,当给了足够多的数据之后,这个黑盒将具备一个特性,就是使误差最小化。如果这么说还是难以理解的话,可以打个比方:深度神经网络是一种生物,它喜欢吃糖,有学习的能力,你给它看一张图片,它告诉你是猫还是狗,如果它猜对了,你就给它一颗糖,猜错了,就不给糖,久而久之,它就有了分辨猫狗的能力。作为创造者,你甚至不知道它是如何分辨猫狗的,但是它做到了,看得越多,识别的就越准。这里至关重要的是——输入是什么?输出是什么?什么时候给糖的动作,也就是损失函数如何设计?在实际的操作过程中,网络结构的设计也很重要,这里不再细述。对于围棋来说,深度网络可以用来评估下一步的主要选点(降低树的宽度),以及评估当前局面的值。AlphaGo Zero在AlphaGo Lee版本,有两个神经网络,一个是策略网络,是一个有监督学习,它利用了大量的人类高手的对弈棋局来评估下一步的可能性,另一个是价值网络,用来评价当前局面的评分。而在AlphaGo Zero版本,除了围棋规则外,没有任何背景知识,并且只使用一个神经网络。这个神经网络以19x19棋盘为输入,以下一步各下法的概率以及胜率为输出,这个网络有多个batch normalization卷积层以及全连接层。AlphaGo Zero的核心思想是:MCTS算法生成的对弈可以作为神经网络的训练数据。 还记得我们前面说过的深度学习最重要的部分吗?输入、输出、损失!随着MCTS的不断执行,下法概率及胜率会趋于稳定,而深度神经网络的输出也是下法概率和胜率,而两者之差即为损失。随着训练的不断进行,网络对于胜率的下法概率的估算将越来越准确。这意味着什么呢?这意味着,即便某个下法AGZ没有模拟过,但是通过神经网络依然可以达到蒙特卡洛的模拟效果!也就是说,我虽然没下过这手棋,但凭借我在神经网络中训练出的“棋感”,我可以估算出这么走的胜率是多少!AlphaGo Zero的对弈过程只需应用深度网络计算出的下法概率、胜率、MCTS的置信区间等数据即可进行选点。AlphaGo Zero 论文节选AlphaGo Zero增强学习过程a:自我对弈过程s1,...,sT。 在每个状态st, 使用最近一次的网络fθ,执行一次MCTS αθ (见图2)。 下法根据MCTS计算的搜索概率而选择,at ~ πt. 评价终止状态sT,根据游戏规则来计算胜利者z。b: AlphaGo Zero的神经网络训练。网络使用原始的棋盘状态st作为输入,通过数个卷积层,使用参数θ,输出有向量 pt, 表示下法的分布概率,以及一个标量vt,表示当前玩家在st的胜率。网络参数θ将自动更新,以最大化策略向量pt和搜索概率πt的相似性,并最小化预测赢家vt与实际赢家z的误差。新参数将应用于下一次自我对弈a的迭代。AlphaGo Zero 蒙特卡洛树搜索过程a: 每次模拟选择的分支,有最大Q+U, 其中Q是动作价值,U是上限置信,U依赖于一个存储在分支上的优先概率P和该分支的访问次数N(每访问一次N+1)。b: 扩展叶节点,神经网络(P(s, .), V(s)) = fθ(s)评估s; 将向量P的值被存储在s的扩展边上。c: 根据V更新动作价值(action-value)Q,反映所有该动作的子树的平均值。d: 一旦搜索结束,搜索概率π被返回,与 Ν^(1/τ) 成正比,N是每个分支的访问次数,而τ是一个参数控制着温度(temperature)。AlphaGo Zero的应用AGZ算法本质上是一个最优化搜索算法,对于所有开放信息的离散的最优化问题,只要我们可以写出完美的模拟器,就可以应用AGZ算法。所谓开放信息,就像围棋象棋,斗地主不是开放信息,德扑虽然不是开放信息,但本身主要是概率问题,也可以应用。所谓离散问题,下法是一步一步的,变量是一格一格,可以有限枚举的,比如围棋361个点是可以枚举的,而股票、无人驾驶、星际争霸,则不是这类问题。Deepmind要攻克的下一个目标是星际争霸,因为它是不完全信息,连续性操作,没有完美模拟器(随机性),目前在这方面AI还是被人类完虐所以看到AG打败人类,AGZ打败AG,就认为人工智能要打败人类了,这种观点在未来可能成立,但目前还有点危言耸听。距离真正打败人类,AGZ还差得很远。作者:桂糊涂,多年从事服务端架构工作,2015年开始机器学习相关研究,现任某互联网公司CTO。长期招聘高可用架构、机器学习、Go、node.js、移动端开发等优秀工程师链接:https://www.jianshu.com/p/eecbfe8b1acb來源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。本文首发于微信订阅号优达学城Udacity(id:youdaxue),关注订阅号,回复关键字“学习资料”,获取来自硅谷的包括“机器学习”、“深度学习”、“数据分析”和“前端开发”在内的独家学习资料。优达学城 (Udacity) - 传授硅谷的名企官方课程欢迎大家踊跃投稿~可以通过私信联系优达菌~编辑于 2019-11-27 18:05深度学习(Deep Learning)AlphaGo蒙特卡洛方法​赞同 175​​添加评论​分享​喜欢​收藏​申请

1分钟AI知识:什么是AlphaGo? - 知乎

1分钟AI知识:什么是AlphaGo? - 知乎切换模式写文章登录/注册1分钟AI知识:什么是AlphaGo?龙猫数据中心专业的AI数据服务商,提供高质量数据服务。什么是AlphaGo?阿尔法围棋(AlphaGo)是第一个击败人类职业围棋选手、第一个战胜围棋世界冠军的人工智能机器人,由谷歌旗下DeepMind公司戴密斯·哈萨比斯领衔的团队开发。其主要工作原理是“深度学习”。它名字中的“Alpha”来自希腊语的首字母,有起源、最初之意;后半部分的“Go”则是围棋的英译名。AlphaGo系统的主要组成部分走棋网络:给定当前局面,预测/采样下一步的走棋。2. 快速走子:目标和1一样,但在适当牺牲走棋质量的条件下,速度要比1快1000倍。3. 估值网络:给定当前局面,估计是白胜还是黑胜。4. 蒙特卡罗树搜索:把以上这三个部分连起来,形成一个完整的系统。AlphaGo的赫赫战绩2016年3月,阿尔法围棋与围棋世界冠军、职业九段棋手李世石进行围棋人机大战,以4比1的总比分获胜;2016年末2017年初,该程序在中国棋类网站上以“大师”(Master)为注册账号与中日韩数十位围棋高手进行快棋对决,连续60局无一败绩;2017年5月,在中国乌镇围棋峰会上,它与排名世界第一的世界围棋冠军柯洁对战,以3比0的总比分获胜。围棋界公认阿尔法围棋的棋力已经超过人类职业围棋顶尖水平。2017年5月27日,在柯洁与阿尔法围棋的人机大战之后,阿尔法围棋团队宣布阿尔法围棋将不再参加围棋比赛。2017年10月18日,DeepMind团队公布了最强版阿尔法围棋,代号AlphaGo Zero。自学成才的AlphaGo ZeroAlphaGo此前的版本,结合了数百万人类围棋专家的棋谱,以及强化学习进行了自我训练。AlphaGo Zero的能力则在这个基础上有了质的提升。最大的区别是,它不再需要人类数据。也就是说,它没有接触人类棋谱,研发团队只是让它自由随意地在棋盘上下棋,然后进行“自我博弈”。据阿尔法围棋团队负责人大卫·席尔瓦介绍,AlphaGo Zero使用新的强化学习方法,让自己变成了老师。系统一开始甚至并不知道什么是围棋,只是从单一神经网络开始,通过神经网络强大的搜索算法,进行了自我对弈。随着自我博弈的增加,神经网络逐渐调整,提升预测下一步的能力,最终赢得比赛。更为厉害的是,随着训练的深入,阿尔法围棋团队发现,AlphaGo Zero还独立发现了游戏规则,并走出了新策略,为围棋这项古老游戏带来了新的见解。发布于 2023-04-19 18:19・IP 属地重庆AlphaGo人工智能数据标注​赞同 2​​添加评论​分享​喜欢​收藏​申请

达观数据:一文详解AlphaGo原理 - 知乎

达观数据:一文详解AlphaGo原理 - 知乎首发于达观数据切换模式写文章登录/注册达观数据:一文详解AlphaGo原理陈运文​复旦大学 计算机应用技术博士摘要1、围棋是一个MDPs问题2、policy iteration如何求解MDPs问题?3、WHAT and WHY is MonteCarlo method?4、AlphaGo Zero的强化学习算法前言AlphaGo是GoogleDeepMind团队开发的一个基于深度神经网络的围棋人工智能程序,其一共经历了以下几次迭代[1]:2015年10月以5-0击败欧洲冠军樊麾,其使用了两个神经网络。2016年3月以4-1击败世界冠军李世石,较于上一版本,其使用了更复杂的网络结构,在生成训练数据时,使用了更加强大的模拟器。2017年1月AlphaGo Master在网络上与人类棋手的对阵中保持了60不败的战绩,与之前版本不同的是,只使用了一个神经网络。2017年10月DeepMind公开了最新版本的AlphaGo Zero,此版本在与2016年3月版的AlphaGo的对阵中取得了100-0的战绩,并且,在训练中未使用任何手工设计的特征或者围棋领域的专业知识,仅仅以历史的棋面作为输入,其训练数据全部来自于self-play。马尔可夫决策过程一个马尔可夫决策过程(Markov Decision Processes,MDPs)通常包括以下几个要素:1)状态集合 S ,包含MDPs可能处在的各个状态。2)动作集合 A ,包含MDPs在各个状态上可采取的动作。3)转换概率 P_{sa} ,表示在状态 s 上采取动作 a 后,下一个状态的概率分布。4)回报函数 R , R\left( s \right) 表示状态 s 的回报。在定义了以上几个要素之后,我们可以来描述一个典型的MDPs:从某个起始状态 S_{0} 开始,选择采取动作 a_{0} ,然后,以 S_{1}\sim P_{s_{0}a_{0}} 的概率转换到下一个状态 S_{1} ,然后采取动作 a_{1} ,并以 P_{2}\sim Ps_{1}a_{1} 的概率转换到下一个状态……如果MDPs的状态集合和动作集合是有限大的,则称之为有限MDPs。 通常,我们还会定义另外一个参数——折扣因子(discountfactor) y\in[0,1) 。定义折扣因子之后,MDPs的总回报可以表示为:MDPs的核心问题是如何找到一个对所有状态都适用的最优策略,按照此策略来选择动作,使总回报的期望最大化。在总回报中加入折扣因子后,为使总回报的期望最大化,须尽可能的将正向回报提前,负向回报推迟。回想一下围棋的对弈,起始状态是一个空的棋盘,棋手根据棋面(状态)选择落子点(动作)后,转换到下一个状态(转换概率为:其中一个状态的概率为1,其他状态的概率为0),局势的优劣是每个状态的回报。棋手需要根据棋面选择合适落子点,建立优势并最终赢下游戏,因此,围棋可以看作是一个MDPs问题。(达观数据)策略迭代定义一个策略 的状态值函数(state-valuefunction)为: 等式右半部即为总回报的期望值。展开等式的右半部分:上面的等式称作贝尔曼方程(Bellman equation),从贝尔曼方程可以看出,当前状态的回报的期望包括两部分:1)当前状态的立即回报;2)后续状态的回报的期望和与折扣因子之积。定义最优状态值函数(optimal state-value function)为:根据贝尔曼方程有:定义策略 \pi ^{*}(s) 为:对于任意状态 s 和任意策略 ,均有:因此,策略 \pi ^{*}(s) 即为最优策略。最优策略可通过策略迭代来求解。一次策略迭代包括两个步骤:1)策略估计(PolicyEvaluation):基于当前的策略和状态值函数根据贝尔曼方程更新状态值函数;2)策略提升(PolicyImprovement):基于当前的策略和1)中更新后的状态值函数来更新策略。策略迭代求解MDPs问题的算法如图1所示[2]。策略迭代算法为证明算法的收敛性,定义动作值函数(action-value function)为:假设有两个策略 \pi 和 \pi ^{'} ,对于任意状态 s\in S 均有那么,对于任意状态 s\in S ,不等式成立,即策略 \pi ^{'} 优于策略 \pi 。因此,在策略迭代中,每一次策略提升后,将得到一个更优的解。对于有限MDPs,策略的个数是有限的,在经过有限次的迭代之后,策略将收敛于最优解。(达观数据)蒙特卡洛方法在策略迭代中,为了估计状态值函数,需要计算并存储所有状态的值函数。在围棋中,有超过2 x 10170的状态[3],远远超出了计算或存储的极限,因此,策略迭代的方法不再适用。蒙特卡洛方法(Monte Carlo Method)通过模拟采样来估计状态值函数和动作值函数,将采样结果的均值作为估计值,根据大数定律,随着采样次数的增加,估计值将趋近于实际值。蒙特卡洛方法适用于“情节任务(episodic tasks)”,即不管使用哪种策略,最终都能到达终止状态,围棋是一种“情节任务”。蒙特卡洛方法对各个状态的估计是相互独立的,即在估计状态值函数或动作值函数时不依赖于其他状态的值函数,因此,不需要计算或存储所有状态的值函数。为估计策略的动作值函数 q_{\pi} (s^{'},a^{'}) ,把初始状态置为 s ,然后开始模拟采样,在 s 状态上采取动作 a ,转换到下一个状态,在后续的状态中,依据策略 来选择动作,直到到达终止状态,记录下此时的回报。重复执行以上操作。对于路径上的每一个状态-动作对(state-actionpair),将所有包含此状态-动作对的模拟的回报的均值作为动作值函数 q_{\pi} (s^{'},a^{'}) 的估计值。以上过程称之为“深耕(exploitation)”,即在现有的知识下,将每一步都做到最好。策略是贪婪的,即在每个状态上均以P=1的概率选择当前最优的动作 a^{*} ,因此,对于任意动作,状态-动作对 (s,a^{'}) 都不会被选择,其动作值函数也不会被估计。估计动作值函数的目的是帮助我们在状态上选择合适的动作,为了比较动作的收益,我们还需要估计这个状态上 s 其他的动作的值函数。为了估计其他动作的值函数,一种常用的方法是 \varepsilon-greedy 策略,其中 \varepsilon 是一个接近于0的小数,对于每一个状态 s ,以 P=\frac{\varepsilon}{\left| A(s) \right|} 的概率选择非贪婪动作以的概率选择贪婪动作 a^{*} 。以上过程称之为 探索(exploration),即不满足于眼前的最好,探索未知中可能存在的更好。在蒙特卡洛方法中,“深耕”使得我们更多的在最有希望的方向上搜索,而“探索”使得我们能够同时兼顾到其他方向。(达观数据)AlphaGo Zero1. AlphaGo Zero的网络架构围棋的棋面可以看作是一个19 × 19的图像,每一个棋子对应一个像素点,不同颜色的棋子对应不同的像素值。考虑到深度神经网络,尤其是卷积神经网络在图像领域的成功应用,AlphaGo使用卷积神经网络来估计当前的局面,选择落子的位置。(AlphaGo Zero所使用的卷积神经网络的输入是19× 19 × 17的张量其17个通道中, X_{i}^{t} 表示t时刻棋盘上第i个位置是否有己方的棋子, Y_{i}^{t} 表示t时刻棋盘上第i个位置是否有对方的棋子,C是一个常数,用于标识当前轮次的颜色;网络包括两个输出,值函数 v 和策略\theta 是网络的参数,输出值函数的分支称之为值网络(Value network),输出策略的分支称之为策略网络(Policy network)。在之前的版本中,值网络和策略网络是两个同架构但分立的网络,在AlphaGo Zero中,这两个网络合并成一个网络[4]。AlphaGo Zero网络架构2. 策略迭代与蒙特卡洛树搜索蒙特卡洛树搜索使用蒙特卡洛方法估计搜索树上的每个节点的统计量。AlphaGo将策略迭代与蒙特卡洛树搜索(Monte Carlo Tree Search,MCTS)结合了起来。对于每个状态 S_{t} ,根据策略网络输出的策略选择动作,执行MCTS。MCTS输出策略通常这个策略要比策略网络输出的策略更加健壮,因此,这个过程可以看作是策略迭代中的策略提升;根据MCTS输出的策略 \pi 选择动作,并转换到下一个状态 S_{t+1} ,然后执行MCTS…,直到终止状态(游戏结束),将游戏的胜者作为模拟的结果,这个过程可以看作是策略迭代中的策略估计,如图3(a)所示。作为一个训练样本,用于训练神经网络 f_{\theta} ,更新网络参数 \theta ,如图3(b)所示。在后续的策略迭代中,使用更新后的神经网络来指导MCTS。AlphaGo的强化学习算法2.1 策略提升在MCTS的过程中,搜索树上的每个节点 s 的每条边 a\in A(s) 维护一个集合其中 N(s,a) 是此条边被访问的次数, W(s,a) 是总的动作值函数, Q(s,a) 是平均动作值函数, P(s,a) 是在状态采取动作 a 的先验概率。策略提升的一次搜索过程包括以下几个步骤:1)对于从根节点 S_{0} 到叶节点 S_{L} 之间的每个节点动作的选择策略是其中c用于控制策略中“探索”的比重,当c=0时,该策略即为贪婪策略,如图4(a)所示。MCTS在MCTS的初期,该策略倾向于选择先验概率大、访问次数少的动作,随着搜索的进行,将更多地选择值函数大的动作。此外,为了鼓励“探索”,对于根节点 S_{0} 还会在其策略上叠加一个狄利克雷(Dirichlet)噪声,其中2)在搜索到达叶节点 S_{L} 后,将 S_{L} 输入到神经网络 f_{\theta} 中计算值函数和策略对于此节点的每条边 a\in A(S_{L}) ,初始化其集合为:其中 P_{a} 是中 a 动作的先验概率,如图4(b)所示。3)备份。更新搜索路径上节点 S_{t} 的边的集合中的元素如图4(c)所示。 在多次搜索之后,根据根节点 S_{0} 上的各条边 a 的访问次数 N(S_{0},a) 输出策略\iota 是温度参数,用于控制“探索”的比重,如图4(d)所示。2.2 策略估计在状态 S_{t} 上,按照策略提升返回的策略 \pi _{t } 选择落子位置在游戏的初期(前30手, t \leq30 ),为了鼓励“探索”、提升棋局的多样性,将温度参数 \iota 的值设为1,即,选择落子位置 a_{t} 的概率正比于节点 S_{t} 的这条边在策略提升中被访问的次数;在30手之后,温度参数此时,策略是贪婪的,以P=1的概率选择访问次数最多的边。在 S_{t} 状态上执行 a_{t} 动作后,进入到下一个状态 S_{t+1} ,将搜索树上 S_{t+1} 所对应的节点作为新的根节点,执行MCTS,返回提升后的策略…,直到游戏结束,将游戏的胜者作为状态 …S_{t},S_{t+1}… 的值函数的估计值。这个过程即self-play。为了提高搜索的效率,在策略提升时,当搜索到叶节点后,使用值网络估计状态值函数作为收益返回,避免继续向下搜索,限制搜索的深度;在策略估计时,使用策略提升输出的策略来指导动作的选择,限制搜索的广度。另外,如果值网络估计的局势的收益(胜率)低于一个阈值之后,便放弃此局游戏。2.3 旋/翻转不变性将围棋的棋盘旋转或翻转之后,不会影响局势,落子的位置也只需要做相应的变换即可。即,如果状态 S 被旋转或翻转,值网络的输出 v 不变,策略网络的输出做相应的变换,假设d为变换函数,则有在策略提升中,当搜索到达叶节点后,从8种旋/翻转变换中随机地选取一种对叶节点的状态进行变换,变换之后的状态作为神经网络的输入。棋盘有7种不重复的旋/翻转变换,分别是:上(下)翻转,右(左)翻转,右上(左下)翻转,右下(左上)翻转,90度旋转,180度旋转,270度旋转。90度旋转可以通过右下翻转+上翻转来实现,180度旋转可以通过上翻转+右翻转来实现,270度旋转可以通过右下翻转+右翻转来实现。因此,只需要实现4个基础的翻转变换。在估计叶节点的值函数和各条边的先验概率时,从8种变换中随机地取一个对叶节点进行处理,并对策略网络的输出做相应的反变换。旋转和翻转3. 模型优化在self-play的每一局游戏中,会生成一系列的状态-策略-值元组这一系列状态是强关联的。为了避免过拟合这种关联,每局游戏只随机地选择一个元组来组成训练集[5]。模型优化的损失函数是其中,第一项为值网络的输出与self-play实际结果的均方误差,第二项为策略网络的输出与策略提升的输出的交叉熵,第三项为L2正则项。在损失函数中,由于(值网络的最后一层使用tanh激活函数),因此,均方误差对损失函数的贡献被限定在范围内。给予均方误差和交叉熵相同的权重,避免由于过拟合了状态值函数而出现“模型能够精准预测游戏胜负却输出糟糕的策略”的现象。模型参数更新使用带动量和学习率衰减的随机梯度下降方法,动量因子设为0.9,学习率在优化的过程中从0.01衰减到0.0001。每次从最近的500,000局游戏中随机地选取一个大小为2048的mini-batch,每1000次更新之后,对模型进行评估。4. 模型评估更新后的模型 f_{\theta ^{new}} 与当前最优的模型 f_{\theta ^{*}} 对战400局,即,在策略提升中,分别使用 f_{\theta ^{new}} 和 f_{\theta ^{*}} 来估计叶节点的值函数和各条边的先验概率,在选择落子位置时,温度参数在每一步均贪婪地选择访问次数最多的边。如果新模型 f_{\theta ^{new}} 的胜率大于55%,则新模型成为当前最优的模型,并使用此模型进行self-play生成训练数据,以确保训练数据的质量。总结人工智能在很多领域已经显示出了超越人类的水准,并且还在不断的攻城略地。达观数据作为中国知名的文本智能处理企业,利用先进的文字语义自动分析技术,为企业、政府等各大机构提供文本自动抽取、审核、纠错、搜索、推荐、写作等智能软件系统,让计算机代替人工实现业务流程自动化,大幅度提高企业效率。参考资料[1][2]Sutton, R.S. and Barto, A.G., 2011. Reinforcement learning: An introduction.[3][4]Silver, David, et al."Mastering the game of Go without human knowledge." Nature 550.7676 (2017): 354[5]Silver, David, et al."Mastering the game of Go with deep neural networks and treesearch." nature 529.7587 (2016): 484关于作者刘思乡:达观数据数据挖掘工程师,负责达观数据推荐系统的开发和部署,对推荐系统在相关行业中的应用有浓厚兴趣。编辑于 2018-11-09 18:34alpha goAlphaGo人工智能​赞同 75​​8 条评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录达观数据人工智能技术干货分享磐创AI欢迎

AlphaGo - Google DeepMind

AlphaGo - Google DeepMind

Jump to Content

DeepMind

Search

Search

Close

DeepMind

About

Overview

Responsibility & Safety

Education

Careers

Press

Research

Technologies

Impact

Discover

Overview

Blog

The Podcast

Visualising AI

Search

Search

Close

Technology

AlphaGo

AlphaGo mastered the ancient game of Go, defeated a Go world champion, and inspired a new era of AI systems.

Share

Copy link

×

Making history

The challenge

Our approach

The matches

Inventing winning moves

Technical legacy

Making historyOur artificial intelligence (AI) system, AlphaGo, learned to master the ancient Chinese game of Go — a profoundly complex board game of strategy, creativity, and ingenuity.AlphaGo defeated a human Go world champion a decade before experts thought possible, inspired players around the world to discover new approaches, and arguably, became the strongest Go player in history.It proved that AI systems can learn how to solve the most challenging problems in highly complex domains.

AlphaGo in training.

The challengeGo was long considered a grand challenge for AI. The game is a googol times more complex than chess — with an astonishing 10 to the power of 170 possible board configurations. That’s more than the number of atoms in the known universe.The strongest Go computer programs only achieved the level of human amateurs, despite decades of work. Standard AI methods struggled to assess the sheer number of possible moves and lacked the creativity and intuition of human players.

Our approachWe created AlphaGo, an AI system that combines deep neural networks with advanced search algorithms.One neural network — known as the “policy network” — selects the next move to play. The other neural network — the “value network” — predicts the winner of the game.Initially, we introduced AlphaGo to numerous amateur games of Go so the system could learn how humans play the game. Then we instructed AlphaGo to play against different versions of itself thousands of times, each time learning from its mistakes — a method known as reinforcement learning. Over time, AlphaGo improved and became a better player.

I thought AlphaGo was based on probability calculation and that it was merely a machine. But when I saw this move, I changed my mind. Surely, AlphaGo is creative.

Lee SedolWinner of 18 world Go titles

The matchesIn October 2015, AlphaGo played its first game against the reigning three-time European Champion, Fan Hui. AlphaGo won the first ever match between an AI system and Go professional, scoring 5-0.AlphaGo then competed against legendary Go player Lee Sedol — winner of 18 world titles, and widely considered the greatest player of that decade. AlphaGo's 4-1 victory in Seoul, South Korea, in March 2016 was watched by over 200 million people worldwide. This landmark achievement was a decade ahead of its time.

Watch

Inventing winning movesThis game earned AlphaGo a 9 dan professional ranking — the first time a computer Go player had received the highest possible certification.During the games, AlphaGo played several inventive winning moves. In game two, it played Move 37 — a move that had a 1 in 10,000 chance of being used. This pivotal and creative move helped AlphaGo win the game and upended centuries of traditional wisdom.Then in game four, Lee Sedol played a Move 78, which had a 1 in 10,000 chance of being played. Known as “God’s Touch”, this move was just as unlikely and inventive as the one AlphaGo played two games earlier — and helped Sedol win the game.Players of all levels have examined these moves ever since.

Technical legacyAlphaGo’s victory inspired a new era of AI systems.It was conclusive proof that the underlying neural networks could be applied to complex domains, while the use of reinforcement learning showed how machines can learn to solve incredibly hard problems for themselves, simply through trial-and-error.Its ability to look ahead and plan are also still used in today’s AI systems.The next generationThese ideas allowed us to develop stronger versions of AlphaGo and the system continued to play competitively, including defeating the world champion.Now, its successors — AlphaZero, MuZero, and AlphaDev — are building upon AlphaGo’s legacy to help solve increasingly complex challenges that impact our everyday lives.

Meet AlphaGo’s successors

AlphaZero and MuZero

Powerful, general AI systems that mastered a range of board games and video games — and are now helping us solve real-world problems.

Research

MuZero: Mastering Go, chess, shogi and Atari without rules

In 2016, we introduced AlphaGo, the first artificial intelligence (AI) program to defeat humans at the ancient game of Go. Two years later, its successor - AlphaZero - learned from scratch to...

23 December 2020

Research

AlphaZero: Shedding new light on chess, shogi, and Go

In late 2017 we introduced AlphaZero, a single system that taught itself from scratch how to master the games of chess, shogi (Japanese chess), and Go, beating a world-champion program in each...

6 December 2018

AlphaStar

First AI to master the real-time strategy game StarCraft II, long considered a grand challenge for AI research.

Footer links

Follow us

Email (e.g., name@example.com)

Please enter a valid email (e.g., "name@example.com")

Thank you for signing up

Something went wrong, please try again.

I accept Google's Terms and Conditions and acknowledge that my information will be used in accordance with Google's Privacy Policy.Sign up

About Google

Google products

Privacy

Terms

Cookies management controls

AlphaGo: using machine learning to master the ancient game of Go

AlphaGo: using machine learning to master the ancient game of Go

Skip to main content

The Keyword

AlphaGo: using machine learning to master the ancient game of Go

Share

Twitter

Facebook

LinkedIn

Mail

Copy link

Latest stories

Product updates

Product updates

Android, Chrome & Play

Android

Chrome

Chromebooks

Google Play

Wear OS by Google

Devices & Services

Chromecast

Fitbit

Google Nest

Pixel

Explore & Get Answers

Gemini

Google Assistant

Maps

News

Search

Shopping

Connect & Communicate

Photos

Translate

Registry

In The Cloud

Docs, Sheets and Slides

Gmail

Google Cloud

Meet

More on the Cloud Blog

See all product updates

Android, Chrome & Play

Android

Chrome

Chromebooks

Google Play

Wear OS by Google

Devices & Services

Chromecast

Fitbit

Google Nest

Pixel

Explore & Get Answers

Gemini

Google Assistant

Maps

News

Search

Shopping

Connect & Communicate

Photos

Translate

Registry

In The Cloud

Docs, Sheets and Slides

Gmail

Google Cloud

Meet

More on the Cloud Blog

See all product updates

Company news

Company news

Outreach & initiatives

Diversity and inclusion

Education

Google.org

Grow with Google

Sustainability

See all

Technology

AI

Developers

Families

Next billion users

Safety and security

See all

Inside Google

Data centers and infrastructure

Doodles

Googlers

Life at Google

See all

Around the globe

Google in Asia

Google in Europe

Google in Latin America

See all

Authors

Sundar Pichai, CEO

Ruth Porat, SVP and CFO

Kent Walker, SVP

See all

Outreach & initiatives

Diversity and inclusion

Education

Google.org

Grow with Google

Sustainability

See all

Technology

AI

Developers

Families

Next billion users

Safety and security

See all

Inside Google

Data centers and infrastructure

Doodles

Googlers

Life at Google

See all

Around the globe

Google in Asia

Google in Europe

Google in Latin America

See all

Authors

Sundar Pichai, CEO

Ruth Porat, SVP and CFO

Kent Walker, SVP

See all

Subscribe

Subscribe

The Keyword

Latest stories

Product updates

Product updates

Android, Chrome & Play

Android

Chrome

Chromebooks

Google Play

Wear OS by Google

Devices & Services

Chromecast

Fitbit

Google Nest

Pixel

Explore & Get Answers

Gemini

Google Assistant

Maps

News

Search

Shopping

Connect & Communicate

Photos

Translate

Registry

In The Cloud

Docs, Sheets and Slides

Gmail

Google Cloud

Meet

More on the Cloud Blog

See all product updates

Company news

Company news

Outreach & initiatives

Diversity and inclusion

Education

Google.org

Grow with Google

Sustainability

See all

Technology

AI

Developers

Families

Next billion users

Safety and security

See all

Inside Google

Data centers and infrastructure

Doodles

Googlers

Life at Google

See all

Around the globe

Google in Asia

Google in Europe

Google in Latin America

See all

Authors

Sundar Pichai, CEO

Ruth Porat, SVP and CFO

Kent Walker, SVP

See all

Press corner

RSS feed

Subscribe

AI

AlphaGo: using machine learning to master the ancient game of Go

Jan 27, 2016

min read

Share

Twitter

Facebook

LinkedIn

Mail

Copy link

Demis Hassabis

CEO and Co-Founder, DeepMind

Share

Twitter

Facebook

LinkedIn

Mail

Copy link

The game of Go originated in China more than 2,500 years ago. Confucius wrote about the game, and it is considered one of the four essential arts required of any true Chinese scholar. Played by more than 40 million people worldwide, the rules of the game are simple: Players take turns to place black or white stones on a board, trying to capture the opponent's stones or surround empty space to make points of territory. The game is played primarily through intuition and feel, and because of its beauty, subtlety and intellectual depth it has captured the human imagination for centuries.But as simple as the rules are, Go is a game of profound complexity. There are 1,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000 possible positions—that’s more than the number of atoms in the universe, and more than a googol times larger than chess.This complexity is what makes Go hard for computers to play, and therefore an irresistible challenge to artificial intelligence (AI) researchers, who use games as a testing ground to invent smart, flexible algorithms that can tackle problems, sometimes in ways similar to humans. The first game mastered by a computer was noughts and crosses (also known as tic-tac-toe) in 1952. Then fell checkers in 1994. In 1997 Deep Blue famously beat Garry Kasparov at chess. It’s not limited to board games either—IBM's Watson [PDF] bested two champions at Jeopardy in 2011, and in 2014 our own algorithms learned to play dozens of Atari games just from the raw pixel inputs. But to date, Go has thwarted AI researchers; computers still only play Go as well as amateurs.Traditional AI methods—which construct a search tree over all possible positions—don’t have a chance in Go. So when we set out to crack Go, we took a different approach. We built a system, AlphaGo, that combines an advanced tree search with deep neural networks. These neural networks take a description of the Go board as an input and process it through 12 different network layers containing millions of neuron-like connections. One neural network, the “policy network,” selects the next move to play. The other neural network, the “value network,” predicts the winner of the game.We trained the neural networks on 30 million moves from games played by human experts, until it could predict the human move 57 percent of the time (the previous record before AlphaGo was 44 percent). But our goal is to beat the best human players, not just mimic them. To do this, AlphaGo learned to discover new strategies for itself, by playing thousands of games between its neural networks, and adjusting the connections using a trial-and-error process known as reinforcement learning. Of course, all of this requires a huge amount of computing power, so we made extensive use of Google Cloud Platform.After all that training it was time to put AlphaGo to the test. First, we held a tournament between AlphaGo and the other top programs at the forefront of computer Go. AlphaGo won all but one of its 500 games against these programs. So the next step was to invite the reigning three-time European Go champion Fan Hui—an elite professional player who has devoted his life to Go since the age of 12—to our London office for a challenge match. In a closed-doors match last October, AlphaGo won by 5 games to 0. It was the first time a computer program has ever beaten a professional Go player. You can find out more in our paper, which was published in Nature today.

10:25

What’s next? In March, AlphaGo will face its ultimate challenge: a five-game challenge match in Seoul against the legendary Lee Sedol—the top Go player in the world over the past decade.We are thrilled to have mastered Go and thus achieved one of the grand challenges of AI. However, the most significant aspect of all this for us is that AlphaGo isn’t just an“expert” system built with hand-crafted rules; instead it uses general machine learning techniques to figure out for itself how to win at Go. While games are the perfect platform for developing and testing AI algorithms quickly and efficiently, ultimately we want to apply these techniques to important real-world problems. Because the methods we’ve used are general-purpose, our hope is that one day they could be extended to help us address some of society’s toughest and most pressing problems, from climate modelling to complex disease analysis. We’re excited to see what we can use this technology to tackle next!

POSTED IN:

AI

Google DeepMind

Related stories

Google Ads

Gemini models are coming to Performance Max

By

Pallavi Naresh

Feb 22, 2024

Developers

Gemma: Introducing new state-of-the-art open models

By

Jeanine Banks

Tris Warkentin

Feb 21, 2024

AI

What is a long context window?

By

Chaim Gartenberg

Feb 16, 2024

Safety & Security

How AI can strengthen digital security

By

Phil Venables

Royal Hansen

Feb 16, 2024

Safety & Security

Working together to address AI risks and opportunities at MSC

By

Kent Walker

Feb 16, 2024

AI

Our next-generation model: Gemini 1.5

By

Sundar Pichai

Demis Hassabis

Feb 15, 2024

.

Let’s stay in touch. Get the latest news from Google in your inbox.

Subscribe

No thanks

Follow Us

Privacy

Terms

About Google

Google Products

About the Keyword

Help

Deutsch

English

English (Africa)

English (Australia)

English (Canada)

English (India)

English (MENA)

Español (España)

Español (Latinoamérica)

Français (Canada)

Français (France)

Italiano

Nederlands (Nederland)

Polski

Português (Brasil)

اللغة العربية (MENA)

한국어

AlphaGo教學: 探索圍棋創新思路

AlphaGo教學: 探索圍棋創新思路

AlphaGo 教學

首頁

關於

關於WGo.js player 2.0

關於DeepMind AlphaGo

感謝

6,000 種開局變化來自於 超過 230,000 盤人類對局:

Go4Go 的 65,000 局職業比賽 (1980-2017)

GoBase 的 36,000 局職業比賽 (1960-1990)

野狐圍棋 的 130,000 盤野狐圍棋9段棋手對局

75 盤 AlphaGo 與人類棋手對局 (前 30 手):

AlphaGo Fan 與樊麾的 5 盤對局

AlphaGo Lee 在 Google DeepMind 挑戰賽與李世石的 5 盤對局

AlphaGo Master 的 60 盤網路對局

AlphaGo Master 在中國烏鎮圍棋峰會中的 5 盤對局

此AlphaGo教學工具由黃士傑、樊麾和Lucas Baker共同研發。

繁體中文

EN

简体中文

繁體中文

日本語

한국어

讓AlphaGo教學工具幫助您探索圍棋創新思路

瀏覽更多瀏覽更少

基於 231,000 盤人類棋手對局以及 75 盤 AlphaGo 與人類棋手對局的數據,本工具提供對圍棋近代史上 6,000 種開局變化的分析。通過對 AlphaGo 和職業與業餘棋手的下法進行比較,探索圍棋的奧妙。

顯示落子順序隱藏落子順序

Overlay:

None

AlphaGo Value

Rank

Occurrences

圖示

AlphaGo 的下法

人類棋手的下法

46.8AlphaGo 對黑棋的勝率判斷

上一手

如何使用本工具

點擊棋盤上的彩色圓圈,或使用棋盤下方的導航工具,即可探索不同的開局變化,以及AlphaGo對於每一步棋的黑棋勝率預測。圓圈中的數字代表了該步棋的黑棋勝率。當輪到黑棋落子時,數值越接近100表示黑棋優勢越大;當輪到白棋落子時,數值越接近0表示白棋優勢越大。50則表示均勢。

了解AlphaGo的預測勝率

AlphaGo的下法不一定總是具有最高的勝率,這是因為每一個下法的勝率都是得自於獨立的一個1000萬次模擬的搜尋。AlphaGo的搜尋有隨機性,因此AlphaGo在不同的搜尋可能會選擇勝率接近的另一種下法。欲了解更多關於AlphaGo的運作原理,可參考我們刊登在 《自然》期刊的論文。

Follow

研究

應用

新聞與部落格

關於我們

人才招募

新聞訊息

服務條款

隱私權政策

Alphabet公司

© 2017 DeepMind科技公司 版權所有

© 2017 DeepMind科技公司 版權所有

跟着AlphaGo 理解深度强化学习框架 - 知乎

跟着AlphaGo 理解深度强化学习框架 - 知乎切换模式写文章登录/注册跟着AlphaGo 理解深度强化学习框架迷途小书童尘世中一位迷途小书童AlphaGo 这个被大家热议过很久的主题,里面其实包含了非常深刻的机器学习智慧,是学习机器学习甚至是人类决策的绝好教材。机器学习是AlphaGo 取胜的关键,为什么它会发挥巨大作用,请看下文。了解一门科学技术最好的方法就是找出其核心论文,让我们看看AlphaGo 的核心论文是怎么解读这个问题的。如果把你放在这样一个位置,你会如何设计这盘游戏。如果大家了解棋牌类游戏以及电脑与之对弈的历史,就会非常清楚老派程序员的套路,也就会明白这类问题最简单的办法就是穷举法,比如历史上著名的八皇后问题,你需要在国际象棋棋盘上摆放八个皇后,使得她们各自不位于对方的纵线、横线或对角线上,你只需要按照一定的方法做一个循环,从第一排往下一排遍历,当碰见摆不开的情形时,就回到上一步重新摆,最后总可以摆出来。与之类似的方法稍作改进可以很好地解决国际象棋的问题,却难以解决围棋的问题,为什么?因为众所周知,围棋的维度实在太大了,每一次落子都有几百(棋盘19*19 大小)种可能。设想假如一盘棋要在几百步之后得出胜负,会有多少种可能性,确实很难通过任何和穷举法沾边的算法解决。这里就涉及如何有效地减少搜索空间这个核心问题。这也是为什么一个下围棋的问题需要用到机器学习,因为机器学习可以让你通过有限数据推测所有其他可能(类似一个插值过程)。在让机器做这件事之前先看看人是怎么做的。我们无时无刻不在决策,也面临如何减少搜索空间的问题。虽然人生有无限种可能,但大多数可能你连考虑都不会考虑。我们人类用愚蠢和聪明、合理与不合理这些词汇描述各种选择的优劣,并且大脑自动屏蔽大部分不合理的解释。你是如何得到这些答案的呢?第一个就是通过常年的试错来计算每个行为的结果,所谓一朝被蛇咬,十年怕井绳。另一个就是看书,和高手对话,直接学习他们的经验。反过来就是机器学习的原理,首先说试错学习,或者根据某种行为最终导致的结果来调整行为策略的方法,我们通常称之为强化学习。强化学习如上图,Agent 会根据环境给予的reward 调整action 的一个反馈系统,最终实现利益最大化,难点在于Agent 的行为通常会改变环境,而环境又会影响行为策略。具体到围棋上,这个策略的核心是根据围棋的特性:(1)在每一步双方信息完全已知;(2)每一步的策略只需考虑这一步的状态。这允许机器学习用一个非常凶猛的简化框架来解决这个问题,即马尔科夫决策过程。也就是说,我们用一个离散的时间序列来表述状态s,用另一个离散的时间序列表述行为a,两个时间序列有着深刻的耦合关系,下一刻的状态s(t+1)取决于此刻行为a(t)和状态s(t),最终决定下一刻的行为a(t+1)。两者间的关系即策略P(a(t)|s(t)),由于是马尔科夫链,所以每一时刻的策略只与此刻状态s(t)有关。各种棋类就是最明显的马尔科夫链。由于未来存在不确定性,因此策略本身也是一个概率分布函数的形式。最终我们要优化,使得P(s|a)所得到的回报R(s)最大。马尔科夫决策过程是在解决未来状态不确定而行为和状态又具有马氏性时十分有利的方法。解决马尔科夫决策过程的一个简单实用的算法叫作蒙特卡洛树搜索(MCTS),如下图。上图描述了蒙特卡洛树与它的四个步骤:选择、扩张、模拟估值和结果回传,对应一个经典的强化学习框架。蒙特卡洛是大名鼎鼎的随机抽样方法。提到树,大家一定可以想到决策树,树的节点是某一刻的状态,枝杈代表一个决策。而这里的蒙特卡洛树,就是用随机抽样的方法生成整个决策树的过程。假设电脑现在的状态是s(t),那么你随便扔个骰子走一步,然后电脑模拟的对手也扔个骰子随便走一步,这样下去,总有一刻会分出胜负,这个时候你回顾胜利和失败的人的历史走棋轨迹,赢的走法在其整个决策树上的每个状态(枝叶)都加一分,输的走法每一步位置都减一分,这个分数会影响下一次抽样的概率,使得容易赢的步子会有更大概率取到。玩无数次后,就会选择出特别容易赢的策略。这个过程酷似进化选择算法,就是让那些有优势的选择有更高的繁殖子代概率,从而最终胜出,体现了生物和环境的博弈。注:这里提个小问题,马尔科夫决策过程威力巨大,而在现实决策里,你要去哪个大学上学,你要选哪个股票,都很难只看当下,这个框架还能用多少呢?以蒙特卡洛树为代表的强化学习在围棋这种走法可能性超多的情况下,只能部分地减少搜索空间,使得电脑达到一个高级业余选手的水平,而如果要进一步减少搜索空间,应该怎么办呢?人类减少搜索空间的一个重要方法是学习高手经验,背棋谱,看得多了,就有一种犀利的直觉走出一个妙招。转化为数学语言,就是通过看棋谱,取得一个在某种局面下任意策略和最终赢率的对应关系,即使这个局面你从未见过。注:我们经常会觉得直觉这个东西好像是天上掉下来的异禀,实则恰恰相反,直觉才是最需要学习的。让机器来做就是有监督学习的回归算法,你要提取棋局的特征,算出对应每一个走法出现的概率P(a(t)|s(t)),然而围棋棋局的特征实在太复杂,这时候我们的深度学习开始派上用场,它可以自发地学习事物的表征。机器学习训练的目标是使得数据被观测到的概率最大, 所谓MaximumLikelihood,对于神经网络,就是网络连接参数的调整。深度学习的过程正如同我们见识一个东西多了,自发地开始具有举一反三的能力,自然而然地把直觉加入了策略选择,这时候你可以通过有限的经验把握无限。在训练过程中,AlphaGo 不停地根据现有的局面预测专家可能会出的招,在经过三千万组数据的训练后,深度学习可以达到55.7%的预测率,这个概率说明人类的意图也并不难被猜中,这也是很多人说和AlphaGo 下棋如同和无数高手过招的原因。当然,这还不是训练的终结,此处的神经网络只是在描摹高手的动作,而之后我们要让它能赢,好比在实践中理解和优化高手的招术,这就是训练的第二步,用强化学习方法,训练网络连接系数,具体方法是让现有的策略网络和随机选出的一个之前的策略网络进行左右互搏,然后把胜负结果回传到每一步的策略上,进行梯度训练。经过这个过程,策略网络可以成功战胜一些中级爱好者水平的算法和自己之前在描摹各种高手时候的状态。策略网络的思维是计算每种走法出现的概率。训练的最后一步是估值网络。估值网络是做什么的呢?首先,在一个强化学习框架下,你需要知道每个行为所对应的确定回报,难点在于围棋是下完棋才有确定回报的,想想围棋步骤中的无限多可能性以及得到结果可能的步数就令人生畏,此处深度学习算法的作用正是不需要走完就巧妙地估计出这一步对应的盈利期望,过程需要用一个深度网络通过强化学习的框架来进行。估值网络的本质在于建立现有行为和长远收益的联系,有人称之为看趋势和全局观。公式如下,训练要解决的问题是,求得状态S 下采取策略p 的最终收益。估值网络的效果图如下。那么问题来了,蒙特卡洛树和深度学习两者是如何天衣无缝地结合起来的呢?这就是整个AlphaGo 设计最巧妙的地方。首先蒙特卡洛树可以拆解为4 步:第一步,Selection,在已有的选项(经历过的)中进行抽样选择。第二步,Expansion,走到一个先前从未经历的局面上,探索新行为,即生成新的枝杈。第三步,Evaluation,得到新行为的回报。第四步,Backup,把回报的结果反向传递给策略。深度学习的结果可以被非常完美地嵌入蒙特卡洛搜索的步骤里,首先,在Expansion 的阶段,我们不用从零开始随机生成一个前所未有的状态,而是根据前人经验训练的策略网络直接生成新状态,海量减小了无用的搜索。然后,在Evaluation 步骤,我们无须跑完整个比赛,而是通过深度学习的结果直接算出这个新举措可能的回报(此处即估值网络的作用),这个计算出的回报,会在最终游戏完成的时候与真正的结果相结合,从而完成学习的步骤。深度学习嵌入蒙特卡洛树搜索的方法如下。与战胜国际象棋大师的深蓝不同,在AlphaGo 这里,机器学习发挥了巨大的作用,因为AlphaGo 的策略和智能主要是在不停地看棋谱和左右互搏中进化出来的,对于围棋这样规则非常复杂的东西,设计一套必胜规则几无可能,只有机器学习(强化学习)的进化和自我改进思想才是最终取胜的法器。因此AlphaGo 的技术对其他人工智能非常有启发。从整个解析来看,其实训练AlphaGo 的算法思路并不十分复杂,用一句话总结,就是站在巨人的肩膀上迅速试错。这可能也是各种人生决策的最好方法吧。然而,我们人类没有那么多时间玩Simulation,也没有那么多GPU 进行并行运算,所以我们其实寻找的是低搜索成本的近似解,谓之次优解。本文选自《机器学习vs复杂系统》一书,作者许铁,电子工业化版社2018年8月出版。------------更多科技资讯请见微信公众号:博文视点Broadview(微信号:bvbooks)发布于 2018-10-10 10:32机器学习AlphaGo强化学习 (Reinforcement Learning)​赞同​​添加评论​分享​喜欢​收藏​申请

AlphaGo 教学: 探索围棋创新思路

AlphaGo 教学: 探索围棋创新思路

AlphaGo 教学

主页

关于

关于 WGo.js player 2.0

关于 DeepMind AlphaGo

感谢

6,000 种开局变化来自于 超过 230,000 盘人类对局:

来自 Go4Go 的 65,000 局职业比赛 (1980-2017)

来自 GoBase 的 36,000 局职业比赛 (1960-1990)

野狐围棋 的 130,000 盘野狐围棋9段棋手对局

75 盘 AlphaGo 与人类棋手对局 (前 30 手):

AlphaGo Fan 与樊麾的 5 盘对局

AlphaGo Lee 在 Google DeepMind 挑战赛与李世石的 5 盘对局

AlphaGo Master 的 60 盘网络对局

AlphaGo Master 在中国乌镇围棋峰会中的 5 盘对局

此AlphaGo教学工具由黃士杰、樊麾和Lucas Baker共同研发。

简体中文

EN

简体中文

繁體中文

日本語

한국어

让 AlphaGo 教学工具帮助您探索围棋的创新思路

了解更多收起详情

基于 231,000 盘人类棋手对局以及 75 盘 AlphaGo 与人类棋手对局的数据,本工具提供对围棋近代史上 6,000 种开局变化的分析。通过对 AlphaGo 和职业与业余棋手的下法进行比较,探索围棋的奥妙。

显示落子顺序隐藏落子顺序

Overlay:

None

AlphaGo Value

Rank

Occurrences

图示

AlphaGo 的下法

人类棋手的下法

46.8AlphaGo 对黑棋的胜率判断

上一手

如何使用本工具

点击棋盘上的彩色圆圈,或使用棋盘下方的导航工具,即可探索不同的开局变化,以及AlphaGo对于每一步棋的黑棋胜率预测。圆圈中的数字代表了该步棋的黑棋胜率。当轮到黑棋落子时,数值越接近100表示​​黑棋优势越大;当轮到白棋落子时,数值越接近0表示白棋优势越大。 50则表示均势。

了解 AlphaGo 的胜率预测

AlphaGo的下法不一定总是具有最高的胜率,这是因为每一个下法的胜率都是得自于单独的一个1000万次模拟的搜索。 AlphaGo的搜索有随机性,因此AlphaGo在不同的搜索可能会选择胜率接近的另一种下法。欲了解更多关于AlphaGo的运作原理,可参考我们刊登在 《自然》期刊的论文。

Follow

研究

应用

新闻与博客

关于我们

职业发展

媒体信息

服务条款

隐私权政策

Alphabet Inc

© 2017 DeepMind Technologies Limited

© 2017 DeepMind Technologies Limited

有谁照着论文把 AlphaGo 重现出来了? - 知乎

有谁照着论文把 AlphaGo 重现出来了? - 知乎首页知乎知学堂发现等你来答​切换模式登录/注册深度学习(Deep Learning)AlphaGo有谁照着论文把 AlphaGo 重现出来了?从论文发表到现在,毕竟也有几个月了。关注者1,664被浏览555,188关注问题​写回答​邀请回答​好问题 16​添加评论​分享​12 个回答默认排序田渊栋​2017 年度新知答主​ 关注虽然是陈词滥调,不过我还是要在这里广告一下 :) 我们最近发布了ELF OpenGo,是AlphaGoZero/AlphaZero的开源实现,代码和预训练模型已经开源,在pytorch/ELF。 水平上来说,我们和韩国棋院合作进行了一次测试,人类方不限时,OpenGo单卡50秒一步(8万次搜索),昨天全部测试都已结束,OpenGo 20局全胜。参与测试的棋手包括金志锡,申真谞,朴永训及崔哲瀚,每位棋手都下了5局。其中有两局下了约6个小时。另一方面,对阵4月25日的LeelaZero,双方各用50秒,200局战绩是198胜2负,1000局战绩是980胜18负(还有2局Leela在检测GPU时死机)。我的知乎专栏这里有一个详细介绍 开源ELF OpenGo,欢迎大家使用!编辑于 2018-05-22 08:49​赞同 1122​​36 条评论​分享​收藏​喜欢收起​qinz打杂工程师​ 关注我们最近几个月参照AlphaGo Zero论文复现了,PhoenixGo(野狐账号BensonDarr等)上个月在野狐围棋上与职业棋手对弈创造了200连胜的纪录,并且取得了在福州举办的2018世界人工智能围棋大赛的冠军今天在Github上开源了代码,以及一个适合普通电脑使用的模型权重,欢迎大家试用利益相关:微信机器翻译团队员工发布于 2018-05-11 15:45​赞同 1747​​72 条评论​分享​收藏​喜欢