阅读13 返回首页    go 机器人


李开复:人工智能不是万能;AlphaGoZero创造者:星际争霸2比围棋更有难度

李开复

创新工场 董事长

我的观点是:一是AI前进的速度比想象中更快,即便是行业内的人士都被AlphaGo Zero跌破眼镜;二是要正视中国在人工智能学术方面和英美的差距。

一方面,AlphaGo Zero的自主学习带来的技术革新并非适用于所有人工智能领域。围棋是一种对弈游戏,是信息透明,有明确结构,而且可用规则穷举的。对弈之外,AlphaGo Zero的技术可能在其他领域应用,比如新材料开发,新药的化学结构探索等,但这也需要时间验证。而且语音识别、图像识别、自然语音理解、无人驾驶等领域,数据是无法穷举,也很难完全无中生有。AlphaGo Zero的技术可以降低数据需求(比如说WayMo的数据模拟),但是依然需要大量的数据。

另一方面,AlphaGo Zero里面并没有新的巨大的理论突破。它使用的Tabula Rosa learning(白板学习,不用人类知识),是以前的围棋系统Crazy Stone最先使用的。AlphaGo Zero里面最核心使用的技术ResNet,是微软亚洲研究院的孙剑发明的。孙剑现任旷视科技Face++首席科学家。

虽然如此,这篇论文的影响力也是巨大的。AlphaGo Zero 能够完美集成这些技术,本身就具有里程碑意义。DeepMind的这一成果具有指向标意义,证明这个方向的可行性。

在科研工程领域,探索前所未知的方向是困难重重的,一旦有了可行性证明,跟随者的风险就会巨幅下降。我相信从昨天开始,所有做围棋对弈的研究人员都在开始学习或复制AlphaGo Zero。材料、医疗领域的很多研究员也开始探索。

AlphaGo Zero的工程和算法确实非常厉害。但千万不要对此产生误解,认为人工智能是万能的,所有人工智能都可以无需人类经验从零学习,得出人工智能威胁论。AlphaGo Zero证明了AI 在快速发展,也验证了英美的科研能力,让我们看到在有些领域可以不用人类知识、人类数据、人类引导就做出顶级的突破。

但是,AlphaGo Zero只能在单一简单领域应用,更不具有自主思考、设定目标、创意、自我意识。即便聪明如AlphaGo Zero,也是在人类给下目标,做好数字优化而已。

AlphaGoZero创造者:星际争霸2比围棋更有难度

AlphaGo Zero创造者

选自Reddit

机器之心编译

昨日,DeepMind 在《自然》杂志上发表了一篇论文,正式推出人工智能围棋程序 AlphaGo 的最新版本 AlphaGo Zero。同时,在 DeepMind 发布的官方博客中,DeepMind 强化学习团队负责人、AlphaGo 项目负责人 David Silver 视频介绍了最新的 AlphaGo Zero。今天,David Silver 与团队另一成员 Julian Schrittwieser 代表 AlphaGo 创造者在 Reddit 上回答了读者的一系列问题。本文对这些问答作了编译介绍。

以下为 David Silver 与 Julian Schrittwieser 代表 AlphaGo 创造团队在 Reddit 上的问答:

1。 为什么 AlphaGo Zero 的训练如此稳定?深度强化学习极其不稳定且易于遗忘,自我对弈(self-play)也是,两者的结合如果没有很好的(基于模仿的)初始化和大量人类棋谱将是一个灾难。但是 AlphaGo Zero 从零开始,并且没有借助人类棋谱来防止遗忘或死循环。论文对于这点没有涉及,因此你们是如何做到的?

David Silver:相较于典型的(无模型)算法,如策略梯度或者 Q 学习,AlphaGo Zero 采用了一种相当不同的深度强化学习方法。借助 AlphaGo 搜索,我们显着提升了策略和自我对弈的结果,接着我们使用简单的基于梯度的更新训练下一个策略+价值网络。这要比累加的、基于梯度的策略提升更加稳定,并且不会遗忘先前的成果。

2。 你认为 AlphaGo 能解决 Igo Hatsuyoron 120 这个‘史上最难死活题’吗?即赢取一个给定的中局或者确定一个现有解决方案?

David Silver:我们刚刚请教了樊麾,他认为 AlphaGo 会解决这个问题,但更为有趣的是 AlphaGo 能否找到书中的答案,或者我们想不到的方案。而这正是我们在 AlphaGo 的训练中多次目睹的事情。

3。 你们认为围棋与星际争霸 2 哪个更有难度?面临的最大潜在技术障碍是什么?正式更新什么时候出来?

Julian Schrittwieser:我们宣布开放星际争霸 2 环境刚过去几个星期,所以现在还处于早期阶段。星际争霸的行动空间确实要比围棋更具挑战性,因为其观察空间要远大于围棋。从技术上讲,我认为两者最大的区别之一在于围棋是一种完美信息博弈,而星际争霸因为有战争迷雾,属于不完美信息博弈。

4。 你觉得数据比算法更重要吗?不过你关于 AlphaGo Zero 的新论文却暗示了另外的含义。

Julian Schrittwieser:我觉得目前算法仍然比数据更重要,只要看看 AlphaGo Zero 比之前几个版本的训练效率高出那么多就能理解。而且我认为在未来,数据在训练效率上的重要性也会大有提升。

5。 由于整个管道只在模型的最新最好版本上展开自我对弈,你们认为模型在使用具体的 SGD 算法更新参数空间时存在过拟合风险吗?看起来最后的模型游戏过程中,模型会稍微依赖于随机初始化权重以及实际面对的游戏状态(作为随机行动采样的结果)。

David Silver:实际上,表征也很可能在其他选择上表现良好。但是我们有 3 个理由使用堆叠的观测历史:(1)它在其它领域(比如 Atari)的常用输入表征是一致的;(2)我们需要一些历史来表征 ko;(3)了解对手最近输入位置的历史很有用,这可充当一种注意力机制(即注意对手的想法很重要)。

6。 这会是 AlphaGo 的最终迭代版本吗?

David Silver:我们已经停止了强化 AlphaGo 的积极研究,但仍保留了研究试验台,以供 DeepMind 人员验证新思路和新算法。

7。 DeepMind 和 Facebook 都在大力研究强化学习,你认为是什么令 AlphaGo 的表现能如此快速地提升? 此外对于机器学习前沿,特别是强化学习,其发展趋势如何?

David Silver:Facebook 更关注监督学习,它能产生当时性能最优的模型;而我们更关注强化学习,因为我们相信它最终会超越人类已有的知识而进一步取得提升。我们最近的结果实际上表明,只有监督学习确实可实现令人惊叹的表现,但强化学习绝对是超越人类水平的关键。

8。 有开源 AlphaGo 的计划吗?

David Silver:我们之前已经开源了大量的代码,但过程一直非常复杂。不幸的是,AlphaGo 项目的代码库更加复杂,甚至有点过分。

9。 我们现在可以通过强大的国际象棋引擎给棋手做内部评级,一步一步地分析棋手的下棋过程进而评定 Elo 等级分。这可以使我们更有条理的做事,比如比较不同时代的棋手,而且还有可能提供研究人类认知的平台。这对 AlphaGo 也有效吗?我猜测这对围棋来说会更加复杂,因为在国际象棋中不需要考虑 margin of victory。

Julian Schrittwieser:这确实是个很棒的主意!我觉得我们完全可以在围棋中做同样的事情,可能会以比较最佳落子和每一步落子的价值的方式,或者使用决策网络为每一步落子分配的概率。如果有时间的话,我很乐意尝试。

10。 你们在 AlphaGo Zero 中首先尝试自我对弈训练而不是整合人类比赛数据。为什么 AlphaGo 之前的版本没有使用自我对弈训练呢,还是已经尝试过,但效果没有这么好,为什么?我很好奇这一块的发展和进步。和现在相比,两年前在 AlphaGo 训练过程中使用自我对弈有什么瓶颈吗?从最终成就自我对弈系统的所有迭代中收获了什么‘机器学习知觉’(machine learning intuition)?

David Silver:创建利用自我对弈来学习的系统在强化学习领域一直是一个开放性问题。我们最初尝试了文章提到的很多类似算法,发现都不稳定。我们进行了很多次实验,最终发现 AlphaGo Zero 的算法是最高效的,而且应该解决了这个问题。

11。 据说 AlphaGo 柯洁版本仅需李世乭版本处理能力的 1/10。你对此做了哪些优化?也就是说 AlphaGo 柯洁版本的能力是李世乭版本的 10 倍吗?

Julian Schrittwieser:这主要是因为价值/策略网络的改善,训练和架构都变得更好。这篇论文的图 4 对比了不同网络架构。

12。 有考虑过使用生成对抗网络吗?

David Silver:在某种意义上,自我对弈(self-play)训练已经是对抗性质的:每次迭代都试图找到对抗上一版本的‘anti-strategy’。

13。 在设计 AlphaGo 系统架构时,最困难的部分是什么?

David Silver:我们遇到的一个重大挑战是在与李世乭比赛期间出现的,当时,我们意识到 AlphaGo 偶尔会受到我们称之为‘错觉(delusion)’的影响,即对弈中智能体会持续多次系统地误解当前的棋局,并尝试了很多方法来解决它,如给智能体灌输更多的围棋知识或人类元知识。我们的解决方法是使智能体变得更加条理化,使用更少的知识,更多地依赖强化学习来生成更高质量的解决方案;最终我们取得了成功,在 AlphaGo 中消除了这些问题。

Facebook田渊栋赞DeepMind论文:方法干净标准

谷歌DeepMind团队

文章来源:机器之心转载自知乎

作者:田渊栋

昨日,DeepMind 在《自然》杂志上发表了一篇论文,正式推出人工智能围棋程序AlphaGo Zero。这篇论文的发布引起了业内极大的关注与讨论。Facebook AI 研究员田渊栋在知乎上发布了一篇简短的文章,介绍了自己对这篇论文的看法。

老实说这篇 Nature 要比上一篇好很多,方法非常干净标准,结果非常好,以后肯定是经典文章了。

Policy network 和 value network 放在一起共享参数不是什么新鲜事了,基本上现在的强化学习算法都这样做了,包括我们这边拿了去年第一名的 Doom Bot,还有 ELF 里面为了训练微缩版星际而使用的网络设计。另外我记得之前他们已经反复提到用 Value network 对局面进行估值会更加稳定,所以最后用完全不用人工设计的 default policy rollout 也在情理之中。

让我非常吃惊的是仅仅用了四百九十万的自我对局,每步仅用 1600 的 MCTS rollout,Zero 就超过了去年三月份的水平。并且这些自我对局里有很大一部分是完全瞎走的。这个数字相当有意思。想一想围棋所有合法状态的数量级是 10^170,五百万局棋所能覆盖的状态数目也就是 10^9 这个数量级,这两个数之间的比例比宇宙中所有原子的总数还要多得多。仅仅用这些样本就能学得非常好,只能说明卷积神经网络(CNN)的结构非常顺应围棋的走法,说句形象的话,这就相当于看了大英百科全书的第一个字母就能猜出其所有的内容。用 ML 的语言来说,CNN 的 induction bias(模型的适用范围)极其适合围棋漂亮精致的规则,所以稍微给点样本水平就上去了。反观人类棋谱有很多不自然的地方,CNN 学得反而不快了。我们经常看见跑 KGS 或者 GoGoD 的时候,最后一两个百分点费老大的劲,也许最后那点时间完全是花费在过拟合奇怪的招法上。

如果这个推理是对的话,那么就有几点推断。一是对这个结果不能过分乐观。我们假设换一个问题(比如说 protein folding),神经网络不能很好拟合它而只能采用死记硬背的方法,那泛化能力就很弱,Self-play 就不会有效果。事实上这也正是以前围棋即使用 Self-play 都没有太大进展的原因,大家用手调特征加上线性分类器,模型不对路,就学不到太好的东西。一句话,重点不在左右互搏,重点在模型对路。

二是或许卷积神经网络(CNN)系列算法在围棋上的成功,不是因为它达到了围棋之神的水平,而是因为人类棋手也是用 CNN 的方式去学棋去下棋,于是在同样的道路上,或者说同样的 induction bias 下,计算机跑得比人类全体都快得多。假设有某种外星生物用 RNN 的方式学棋,换一种 induction bias,那它可能找到另一种(可能更强的)下棋方式。Zero 用 CNN 及 ResNet 的框架在自学习过程中和人类世界中围棋的演化有大量的相似点,在侧面上印证了这个思路。在这点上来说,说穷尽了围棋肯定是还早。

三就是更证明了在理论上理解深度学习算法的重要性。对于人类直觉能触及到的问题,机器通过采用有相同或者相似的 induction bias 结构的模型,可以去解决。但是人不知道它是如何做到的,所以除了反复尝试之外,人并不知道如何针对新问题的关键特性去改进它。如果能在理论上定量地理解深度学习在不同的数据分布上如何工作,那么我相信到那时我们回头看来,针对什么问题,什么数据,用什么结构的模型会是很容易的事情。我坚信数据的结构是解开深度学习神奇效果的钥匙。

另外推测一下为什么要用 MCTS 而不用强化学习的其它方法(我不是 DM 的人,所以肯定只能推测了)。MCTS 其实是在线规划(online planning)的一种,从当前局面出发,以非参数方式估计局部 Q 函数,然后用局部 Q 函数估计去决定下一次 rollout 要怎么走。既然是规划,MCTS 的限制就是得要知道环境的全部信息,及有完美的前向模型(forward model),这样才能知道走完一步后是什么状态。围棋因为规则固定,状态清晰,有完美快速的前向模型,所以 MCTS 是个好的选择。但要是用在 Atari 上的话,就得要在训练算法中内置一个 Atari 模拟器,或者去学习一个前向模型(forward model),相比 actor-critic 或者 policy gradient 可以用当前状态路径就地取材,要麻烦得多。但如果能放进去那一定是好的,像 Atari 这样的游戏,要是大家用 MCTS 我觉得可能不用学 policy 直接当场 planning 就会有很好的效果。很多文章都没比,因为比了就不好玩了。

另外,这篇文章看起来实现的难度和所需要的计算资源都比上一篇少很多,我相信过不了多久就会有人重复出来,到时候应该会有更多的 insight。大家期待一下吧。

原文地址:https://zhuanlan.zhihu.com/p/30262872?utm_medium=social&utm_source=wechat_timeline&from=timeline&isappinstalled=0

最强AlphaGo怎样炼成? 看DeepMind团队全面解读

资料图

昨天AlphaGo再次震惊所有人。

刚刚,这个史上最强围棋AI的两位主要开发者,David Silver和Julian Schrittwieser,做客知名网站reddit,展开一场超级问答AMA(Ask Me Anything)。

他们是谁?

左:Julian Schrittwieser 右:David Silver

比较关注AlphaGo的朋友对其中一位应该不会陌生,David Silver是AlphaGo团队负责人,也是上一代AlphaGo的主要作者。从首尔到乌镇,都有他的身影。关于David Silver我们在之前报道黄士杰的文章里也有提及。

名字更长的Julian Schrittwieser,是这次新一代AlphaGo的三位并列主要作者之一,而且非常年轻。2013年,Schrittwieser本科毕业于奥地利的维也纳技术大学;同年9月,Schrittwieser加入DeepMind。

此前DeepMind关于AlphaGo和星际2的研究论文中,Schrittwieser也都有参与。

OK,背景交代到这里。

干货时间开始。

以下问答经过量子位(QbitAI)编辑整理。

最强AlphaGo是怎么炼成的

提问:深度强化学习本来就是出了名的不稳、容易遗忘,请问你们是如何让Zero的训练如此稳定的?

下图显示了在自我对弈强化学习期间,AlphaGo Zero的表现。整个训练过程中,没有出现震荡或者灾难性遗忘的困扰。

引自AlphaGo Zero论文

David Silver:AlphaGo Zero所用的算法,与策略梯度、Q-learning之类的传统(无模型)算法完全不同。通过使用AlphaGo搜索,我们大大改进了策略和自我对弈结果,然后用简单的基于梯度的更新来训练下一个策略和价值网络。

这似乎比渐进的、基于梯度的策略改进要稳定得多,梯度策略可能会忘记之前的优化。

提问:为什么这次AlphaGo Zero就训练了40天?训练3个月会怎么样?

David Silver:我想这是一个人力和资源优先级的问题。如果我们训练了3个月,我想你还会好奇训练6个月会发生什么 :)

提问:看完论文我有个疑问,输入维度那么高好像完全没必要,AlphaGo的residual block输入维度为什么是19×19×17?我不太理解为什么每个玩家要用8个二值特征plane。

David Silver:实际上,不是只有8 planes这一种选择,用其他形式的表示可能也没问题,但我们用了观察值的堆叠历史,有三个原因:

这和其他领域,比如说玩雅达利游戏时的常见输入表示一致;

我们需要一些历史记录来呈现ko;

历史可以用来记录对手最近在哪落过子,这些信息可以当作一种注意力机制来用,比如说集中在对手认为重要的位置上,第17个plane记录的是我自己在用什么颜色,因为有贴目规则,这个信息也很重要。

提问:你们发了AlphaGo论文之后,网友们说里边的算法实现起来不难,但很难达到你们那个训练量;在计算机下象棋的圈子里,开发者们也没少复制其他程序的算法。你认为算法和数据哪个更重要?

Julian Schrittwieser:我认为还是算法更重要,比较一下新AlphaGo Zero和之前论文中的版本,新版效率有多高就知道了。另外,我认为我们在数据效率方面还能有更多提升。

提问:据说和柯洁对战的AlphaGo,计算力的消耗只有对战李世乭版本的十分之一。这中间做了怎样的优化,能简单说是AlphaGo的算法比之前提高了10倍吗?

(量子位注:和柯洁对战的AlphaGo Master,用了和Zero版一样的算法和架构,不同之处在于引入了人类对局数据和特征。)

Julian Schrittwieser:主要是因为改进了价值/策略网络,训练和架构都变得更好了,不同的网络架构之间的对比如下图所示:

提问:你们为什么一开始选择用人类对局数据来训练AlphaGo,而不是通过自我对弈来从0开始?还是当时也尝试了但效果不好呢?为什么会这样?我想知道,两年前设计一个完全自学的AlphaGo瓶颈在哪?

David Silver:创造一个完全自学成才的系统,一直是强化学习中的一个开放式问题。我们一开始尝试的方法,以及在文献综述部分提到的很多其他方法,都非常不稳定。我们做了很多实验,最终发现,AlphaGo Zero的算法是最有效率的,好像攻克了这个特定的问题。

提问:为什么在刚开始训练的时候也要每局下1600步?这时候应该都是随机的噪声吧……先快速下很多盘随机局,然后在网络训练得更好的时候,再进行更深的搜索不是更好吗?

Julian Schrittwieser:一开始少下几步可能也行,但在整个试验中保持统一是一种比较简明的做法。

提问:在输入特征上,用delta featurization可行吗?

Julian Schrittwieser:神经网络实在是很擅长用不同方式来表示同样的信息,所以,是的,我认为用delta featurization应该也行。

提问:你们有没有想过用生成对抗网络(GAN)?

David Silver:在某种意义上,AlphaGo的自我对弈训练已经有了对抗:每次迭代都试图找到上一代版本的“反策略”。

左:Julian Schrittwieser 右:David Silver

为何成功者不是Facebook

提问:我听说在AlphaGo开发初期,你们在训练中人为向特定方向引导,来解决它在棋局中表现出来的弱点。现在它的能力已经超越人类认知了,会不会还需要人工调整,避免它落入局部最大化?你们有这个打算吗?

David Silver:实际上,我们从来没有为特定的弱点而人为引导过AlphaGo,而是一直专注于原则化的机器学习算法,让算法自己学会纠正自己的错误。

想找到围棋的最优解当然是不现实的,所以,弱点总是存在。在实践中,用正确的探索方法来保证训练没有卡在局部最优解中非常重要,但我们没有用上人为的引导。

提问:AlphaGo的研究中,最困难的是什么?

David Silver:我们遇到的第一个大挑战,是在跟李世乭比赛的时候。当时我们意识到,AlphaGo偶尔会产生“妄想”,也就是会系统地误判盘面情况,并且持续数手。我们尝试了很多想法来解决这个弱点。而引入更多围棋知识,或者人类元知识一直是种诱惑。

但最终我们取得了巨大的成功,彻底解决了AlphaGo的问题。我们用的方法是,更多的依赖强化学习的力量,让它自己找到更好的解决方案。

提问:AlphaGo在行棋时间安排上是怎么考虑的?

David Silver:我们实际上用了一个相当直接的时间控制策略,基于自我博弈中胜率的简单优化。当然可以应用更复杂的策略,性能也应该可以再提升一点点。

提问:NIPS论文Thinking Fast and Slow with Deep Learning and Tree Search也提出了和AlphaGo Zero类似的方法。

论文地址:https://arxiv.org/abs/1705.08439

David Silver:这的确和AlphaGo的策略算法很相似,不过我们还有个价值模块。以及要澄清一下,在AlphaGo Zero论文4月7日提交给Nature的时候,那篇NIPS论文还没公开。

提问:DeepMind和Facebook研究这个问题大概是在同一时间诶,是什么让AlphaGo这么拿到了围棋最高段位?

David Silver:Facebook更专注于监督学习,这是当时最厉害的项目之一。我们选择更多地关注强化学习,是因为相信它最终会超越人类的知识。最近的研究结果显示,只用监督学习的方法的表现力惊人,但强化学习绝对是超出人类水平的关键。

AlphaGo不开源,星际2还早

提问:你们有开源AlphaGo的计划吗?

David Silver:我们过去开源了不少代码,但是开源这个过程总是很复杂。在AlphaGo这个问题上,非常不好意思,它的代码库实在是过于复杂了。

提问:乌镇时说过的围棋工具什么时候发布?

David Silver:这项工作一直在推进,敬请期待 :)

提问:AlphaGo Zero还在训练么?未来还会有突破么?

David Silver:AlphaGo已经退役了!我们的人力和硬件资源,已经动身前往其他道阻且长的AI项目上了。

提问:AlphaGo Zero是最终版本的AlphaGo么?

David Silver:我们已经不再主动研究如何让AlphaGo变得更强,但它仍然是所有DeepMind同仁的研究测试平台,用于尝试新的想法和算法。

提问:与围棋相比,《星际2》有多难?AI打星际什时候能有新进展?

David Silver:前不久我们刚发布了《星际2》的环境,现在相关研究还在相当早期的阶段。《星际2》的行为空间显然比围棋大得多,需要监控的数据量也更大。从技术上来讲,围棋是一个完美信息博弈,而战争迷雾让星际变成不完美信息博弈。

最后更新:2017-10-20 23:56:30

  上一篇:go 阿尔法狗再进化,人工智能从0到1!我们的教育优势将面临碾压?
  下一篇:go 中山这个“人工智能”好犀利,“思考”10几秒便能给出世界顶级肿瘤治疗方案