0
本文作者: 丛末 | 2019-02-15 09:54 |
雷锋网 AI 科技评论按: Facebook 人工智能研究院(FAIR)于去年开源的 ELF OpenGo 日前再度迎来更新,本次 FAIR 不仅发布了该系统新的功能和研究成果,还发布了可在 Windows 上运行的 AI 版本,让围棋棋手能更易于使用该系统来帮助自己训练。以下是田渊栋等人对该开源项目的详细解读,原文发布在 FAIR 的官方博客上。
自去年 Facebook 人工智能研究院(FAIR)发布了 ELF OpenGo,AI 研究人员就利用该围棋 AI 来更好地理解 AI 系统是如何学习的,同时围棋爱好者也将它作为一位最先进的 AI 对手进行对战来测试自己的水平。这个开源 AI 在与人类的对战中表现非常出色,其中就包括以 20:0 的战绩击败了围棋职业棋手,同时,它也已被 AI 研究界广泛应用于执行围棋实验,并重新产生了其他结果。ELF OpenGo 在基于 AI 的围棋比赛中也已经对战了从它自身修改而来的多个版本。同时,它也作为人类的队友参加了围棋比赛,包括参加美国围棋大会混双赛,在这个比赛中,每个队由一位人类选手和一个 ELF OpenGo 系统组成,他们共同对战另一个人类与 AI 联合组成的战队。
日前,我们对 ELF OpenGo 进行了更新,并发布了其新的功能和研究成果,包括从头开始重新训练的经过更新的模型。同时,我们还发布了可在 Windows 上运行的 AI 版本,让围棋棋手能更易于使用该系统来帮助自己训练,另外,系统对于这些棋手来说也是一个独一无二的「档案馆」,里面展现了 ELF OpenGo 对 87,000 场围棋职业比赛的分析。现在,棋手们可以也看到系统是如何排出 18 世纪的最佳职业棋手,如何对这些棋手的表现进行细致的评估,并最终回归到特定的比赛中的个人表现。我们非常高兴看到这个通用平台经过改进,能够帮助研究者更好地理解 AI 以及围棋界的棋手们也可以使用该平台来磨炼他们的技能并研究围棋赛事。
韩国棋院的公关助力总监 Beomgeun Cho 就曾表示:「我可以肯定地说,ELF OpenGo 开源项目给韩国的围棋界带来了巨大的影响。自它问世以来,韩国几乎每一位竞赛型职业棋手都在使用 ELF Go 程序来分析他们自己以及其他棋手的对战情况。并且正是因为这样,不仅韩国的围棋水平得到提高,整个世界的围棋水平也得以明显提升。」
当 DeepMind 在 2017 年发布 AlphaGo Zero 时,就展示了拥有 4000 年历史的围棋作为深度强化学习(RL)相关研究者的试验台的价值。由于其高分支乘数、卷积交互及复杂模式,有效的围棋 AI 必须泛化到没见过的复杂场景中,来探索并找到新的策略。它提供了一个上百万种潜在的移动组合环境,不过缺少了隐藏的或基于偶然性的游戏机制(例如滚动式骰子或洗牌)。不过虽然 AlphaGo Zero 和它的进化版本 AlphaZero 都已经证明了 AI 系统经过训练后可以持续地打败人类围棋棋手,但是对于更广大的 AI 研究界来说,它们的作用更多地是作为一个深度强化学习的成功案例而非一种工具。
作为其开放科学实施中的一部分,FAIR 去年发布了 AlphaZero 的另一种实现方式——ELF OpenGo,让其他研究实验室能够更加深入地了解这些方法的工作原理。该模型的开源同样为未来的研究工作提供了一个必不可少的基准。然而 FAIR 也意识到,由于该模型需要巨大的计算资源,大多数的研究者即便使用开源的代码也无法获得与其相同的结果。这就是为什么我们再度发表一篇新论文(论文查看地址:https://dl.fbaipublicfiles.com/elfopengo/pdf/arxiv.pdf),基于从头开始进行重新训练的 ELF OpenGo 与大家分享一些新的思想。这篇论文很好地解释了为什么 AI 在与人类棋手的对战中有这么强大的表现,并阐明了科技的局限性,而这种局限性是可以帮助研究者更好地理解 AI 系统的潜在机制并将其应用到其他的场景中的。
对于研究界来说,我们更新后的模型和代码是 ELF OpenGo 迄今为止最好的版本,同时通过发布由 2000 万局自我对弈的棋局和 1500 个用来生成这些棋局的中间模型组成的数据集,我们也进一步降低了模型对计算资源的要求(在训练过程中,自我对弈是对硬件资源要求最高的环节)。并且对于那些想要深入挖掘基于强化学习的围棋 AI 是怎样学习和下棋的研究人员来说,我们的这篇论文也详细介绍了大量消融实验(ablation experiments)的结果,并在评估中更改了个体特征以更好地理解这些算法种类的属性。
ELF OpenGo 拥有强大性能的关键就在于它不像人类一样学习。深度强化学习反复试错的属性(即系统探索各种不同的动作,得到失败案例也得到成功案例,并从这些案例中学习来采取接下来的行动)类似于人类一般意义上的学习,不过特定的机制是非常不同的。例如,ELF OpenGo 可能仅仅从它赢得或败掉的比赛或者自我对弈棋局的知识范围中学习。它不知道哪步特定的棋会对它的输赢产生最大的影响。与人类棋手不同,ELF OpenGo 无法从知道每步棋的好坏的水平更高的棋手那里获得建议,也没有机会去与比它自身的更强棋手进行对战。FAIR 的最终模型是 2000 万局自我对弈棋局的结果。
当我们使用这一模型去分析人类职业棋手所下的棋局时,它在整个训练时长 10% 的时间内,就能够在其学习过程中早早地预测到怎样落棋子以达到平衡。但是当模型继续训练时,它的下棋水平也会继续提升,并最终在 60% 的训练时长中击败更早版本的原型 ELF OpenGo 模型。这个原型系统已经超越了人类专家,曾以 20:0 的成绩击败了位列全球 Top 30 棋手的 4 位围棋职业棋手。ELF OpenGo 进一步证实了 AlphaZero 此前的发现:很多人的棋法——即便是最专业的棋手,都不是最优的。
不过正如夸大 AI 在其他领域中超越人类的表现,FAIR 在对 ELF OpenGo 学习过程的探索中也发现了其在深度强化学习中特定的重要局限性。像 AlphaZero 一样,ELF OpenGo 系统无法完全掌握「征(ladder)」这一概念,而这个概念是围棋初学者也能够理解的最基础的入门技巧,即一位棋手用一个在棋盘上以对角的形式延展的长编队来围困对手的棋子(最终被吃掉的棋子就像阶梯的梯级一样)。这种棋法更多地依赖于预测而不是进行大量其他的排序。虽然对于人类围棋棋手来说,预测未来 30 步或更多步棋是顺手拈来的,但 DeepMind 曾指出这些预测是在模型在训练后期才能学到的。
在这张图中,黑子试图用「征」来围困白子,不过白子顺利逃脱了。人类棋手可以快速地学到征这种棋法的模式,但是机器人学得更慢得多,并且无法从某个使用「征」的示例中泛化到其他棋局中。
为了进一步研究其弱点,我们策划了一个有着 100 个「征」方案的数据集,并评估了 ELF OpenGo 使用这些方案下棋的表现。在当前模型设计的情况下,方案是模型通过蛮力学到的(例如每个征的增加长度都要求另外训练),而不是作为系统能够泛化到未见过的场景中的模式。ELF OpenGo 依赖于蒙特卡洛树搜索(MCTS)的方法来来预测之后的动作。人类可以很快理解「征」会形成一个非常特别的移动阵列,并能快速分析出最终结果。MCTS 是一个概率方法,意味着即使每个棋子的正确移动有很高的概率,在一个长的阵列中实现所有棋子的正确移动的概率也是低的。
更广泛地说,ELF OpenGo 让其他 AI 研究人员能够获得关于这些系统如何工作的第一手经验。这可以帮助研究界从理论上提高对模型训练程序的理解,发现这些算法的新弱点,并最终以更低的计算能力实现更好的性能。
有趣的是,ELF OpenGo 以与人类棋手相反的方式学习下围棋,其基于强化学习的方法更多地关注棋局的后期阶段,而不是开局或中间阶段。通过设置激励 AI 获胜的动作,强化学习促使 ELF OpenGo 更多地了解棋局如何结束而不是如何开始。与此同时,人类则倾向于即刻开始评估当前的棋局,重点关注近期和局部的胜利,同时保持不断推进棋局。虽然 FAIR 的研究结果仅限于围棋,不过它表明了强化学习有着不少局限性,这可能导致这样的结果:虽然其整体表现令人印象深刻,但如果过分关注最终结果而忽视近期的胜利则可能会遭遇失败或被(对手)利用。
在重新训练和执行 ELF OpenGo 的过程中,我们意识到它不仅仅会影响到目前的 AI 棋手,同时也是了解过去四个世纪竞技性围棋历史的窗口。为什么不发掘一下 ELF OpenGo 在专门分析这些围棋历史和棋手上的潜力呢?
这盘围棋显示了日本 19 世纪的一位职业围棋棋手——Honinbo Shusaku 所下出的「ear-reddening」棋局。Shusaku 著名的一步棋落于「a」区域,不过 ELF OpenGo 很自信地认为应该落在「b!」区域。
这种觉悟带来的成果就是一个交互工具(工具地址:https://dl.fbaipublicfiles.com/elfopengo/analysis/www/index.html),它基于 ELF OpenGo 对人类对弈的 87,000 场围棋的分析。这个数据集的时间跨度为 1700 年到 2018 年,这个系统则基于机器人和人类对未来落棋的预测的一致性来评估个体的棋法水平。虽然这个工具鼓励深入到特定的围棋赛事进行分析,但它同样也看重围棋的重要发展趋势。在对 300 多年时间里进行过的围棋赛事的分析中,AI 发现围棋的平均水平正在稳步提升。其他的评估方法,例如,据 ELF OpenGo,历史比赛过程中最糟糕的一步棋(这步棋往往与获胜概率的最大降幅息息相关)反反复复地或得到提高或变得更糟,其中 19 世纪末期和 21 世纪的表现是最好的。同时,FAIR 也对个人棋手进行了分析,例如在对围棋史上最著名的棋手 Honinbo Shusaku 的分析中,他的落棋方式与 ELF OpenGo 所推荐的落棋方式不一致。他早期的落棋方法随着时间的推移与 ELF OpenGo 是背离的,不过中期的落棋方式与 ELF OpenGo 更加一致。他们还对 Honinbo Shusaku 在 17 岁对战 Gennan Inseki 这位更加成熟的围棋棋手时所下出的著名的「ear-reddening」棋局进行了分析,结果显示 ELF OpenGo 反而更偏爱 Gennan Inseki 的棋法。
从 1700 年 到 2018 年,围棋比赛中间阶段(第 60 步到 120 步)围棋职业棋手的落棋方式与 ELF OpenGo 所推荐的落棋方式的一致性百分比。
围棋比赛中,围棋职业棋手最糟糕的一步棋给其获胜概率带来的最大降幅(围棋比赛的时间跨度为 1700 年 到 2018 年间;数值越低越好。)
日本 19 世纪的一位职业围棋棋手 Honinbo Shusaku 早期的落棋方式与 ELF OpenGo 所推荐的落棋方式的一致性百分比。
围棋比赛中间阶段,Honinbo Shusaku 落棋方式与 ELF OpenGo 所推荐的落棋方式的一致性百分比。
ELF OpenGo 同时也强调了 AI 对围棋的明显影响。例如,ELF OpenGo 的一致性概率随着时间的推移趋于增加,这表明了围棋的总体水平与日提升。
该系统对特定棋手的评估也会随着时间的推移而提高,这表明了他们在职业发展过程中的进步。事后看来,这些观察结果可能是显而易见的,但 ELF OpenGo 量化了这些进展,并发现了个人的围棋水平明显会随着时间而发生变化。2016 年棋手的落棋方式与 ELF OpenGo 推荐的的落棋方式的一致性突然而全面地增加,也会增强人类的这一信念:引入强大的 AI 对手有利于提升职业棋手的水平。这种显著的相关性不是决定性的——人类的围棋水平也有可能由于其他原因显著提高,但作为一个案例,从现在以及历史角度来看,它都很好地体现了一个经过训练来执行指定任务的系统也可以对更广泛的领域进行更广泛的分析。
虽然 ELF OpenGo 已经被世界各地的研究团队和棋手广泛应用,但我们也很高兴将去年的版本扩展为更广泛的一项开源资源。对于围棋爱好者来说,该系统对职业围棋比赛的分析可以作为一种新型的训练辅助工具,能为他们提供一个超越人类的 AI 棋手在围棋不同阶段的表现参考。此外,我们出于训练目的,还增加了 AI 本身的开放性,并发布了围棋棋手可以下载并进行对局的可在 Windows 上运行的 AI 版本。
不过,无论是对于 ELF OpenGo,还是在开发能向人类一样有效学习的 AI 的更大项目中,FAIR 还有很多工作要做。ELF OpenGo 能够击败人类专家,但这仅仅只能在其与自己对弈百万场比赛之后才能实现。它如何从众多案例中的一小部分中学习,同时更快地掌握「征」等概念并最终实现更好的表现?通过将我们的工具和分析全面开放给大家,我们希望能够加速 AI 界更快地追寻到这些问题的答案。
via:https://ai.facebook.com/blog/open-sourcing-new-elf-opengo-bot-and-go-research/?ref=shareable 雷锋网雷锋网
雷峰网原创文章,未经授权禁止转载。详情见转载须知。