现在,回到硬件的问题上。DeepMind的David Silver和 Aja Huang等人对AlphaGo的许多变体版本进行了评估,并总结成了上面图表中的AlphaGo和分布式AlphaGo。但这没有给出由硬件差异所带来的变体版本的全貌,而你可以在下图(同样来自于那篇论文)中看到这个全貌。
这张图表给出了不同AlphaGo变体版本所估测的Elo评级。其中11条淡蓝色数据来自「单台机器」变体,而蓝黑色数据则来自涉及多台机器的分布式AlphaGo。但这个机器到底是什么呢?图中的线程(Threads)表示了所使用的搜索线程数,而通过查阅论文后面的内容,本港台直播们可以发现其中计算最不密集的AlphaGo版本(图中最短数据条)使用了48个CPU和1个GPU。作为参考,Crazy Stone没有使用任何GPU,使用的CPU也稍微少一点。在简单搜索了不同的围棋程序目前所使用的计算集群之后,本港台直播没找到其它任何程序GPU的使用数量超过36个。Facebook的darkfmcts3是本港台直播所知唯一确定使用了GPU的版本,其最大的版本使用了64个GPU和8个CPU(也就是说相比于单台机器版AlphaGo,GPU更多,CPU更少)。上图中基于40个搜索线程、48个CPU、8个GPU变体的单台机器版AlphaGo比前面提到的其它程序强大很多。但如果它是一个48个CPU、1个GPU版本,它可能只会比Crazy Stone和Zen强一点——甚至可能不会比1月份刚改进过的最新Zen19X版本更强。 也许最好的比较是在同样硬件水平上对比AlphaGo和darkfmcts3,但它们使用了不同的CPU/GPU配置,而darkfmcts3在AlphaGo的胜利之后也已下线。如果将Crazy Stone和Zen19X扩展到与分布式AlphaGo同等的集群规模,进一步分析前面提到的硬件调整所带来的性能提升,那也会很有意思。总之,并不清楚在同等硬件水平上AlphaGo相对于之前的围棋程序有多少性能提升——也许有一些,但肯定没有之前使用小集群的围棋程序和使用大规模集群的AlphaGo之间的差距那样大。这是本港台直播们下面要讨论的。 分布式AlphaGo最大的变体版本使用了280个GPU和1920个CPU。这样巨大的硬件绝对数量所带来的算力显然远远超过之前任何被报道过的围棋程序。这一计算集群大小值得注意的原因有两个。第一,它让人疑问AlphaGo所代表的硬件适应算法(hardware-adjusted algorithmic)的进展程度,以及相关的评估网络的重要性。正如本港台直播在最新的AAAI工作室论文《人工智能建模的进展》提到的,如果本港台直播们应该追踪人工智能领域内多个最先进的状况而不是单个最先进的状况,那么将分布式AlphaGo和Crazy Stone之类进行比较就是将两个最先进的进行比较——即在考虑小规模算力(和小团队)的性能和大规模算力(由十几位世界上最优秀的人工智能研究者所带来的)性能进行比较。 第二,值得注意的是,光是硬件改进这一方面就让AlphaGo实现了非常大的棋力水平跨越(相对于人类而言)——从报道中最低的大约Elo评级2200分上涨到超过3000分,这是业余水平和专业水平之间的差距。这可能表明(后面本港台直播还会回过来讨论)在可能的技术水平区间中,人类水平只能处在相对较小的区间内。如果这个项目在10或20年前已经开始,看起来很可能在相同算法的基础上,仅靠硬件提升就能让机器的棋力水平一步实现从业余水平到超人水平(超过专业水平)的跨越。此外,10或20年前,即使采用相同的算法,因为硬件水平限制,也很可能没办法开发出超人水平的围棋程序。尽管近年来神经网络和MCTS等其它方面的进步也做出了很大贡献,但也许只有到现在,在硬件进步的基础上,AlphaGo项目才有意义。 此外,同样在《人工智能建模的进展》中也简单讨论过,本港台直播们还应该考虑人工智能的性能和评估进展速率时用于训练的数据之间的关系。AlphaGo使用来自KGS服务器的大型游戏数据集帮助实现了AlphaGo的能力——本港台直播还没仔细看过过去其它相比的人工智能训练所用的数据,但看起来可能也是这个数据集。在AAAI上Hassabis表示DeepMind打算尝试完全使用自本港台直播对弈来训练AlphaGo。这是个更加了不起的想法,但在那之前,本港台直播们可能没法知道AlphaGo有多少性能来自于此数据库,这个数据库是DeepMind自己从KGS的服务器上收集的。 (责任编辑:本港台直播) |