[博客翻译]无搜索的象棋大师级博弈:模型选择及其影响探析


原文地址:https://gist.github.com/yoavg/8b98bbd70eb187cf1852b3485b8cda4f


Yoav Goldberg,2024年2月

谷歌DeepMind的研究人员发布了一篇论文,介绍了一个无需搜索就能达到大师级水平的快速国际象棋(快棋)学习系统。这一成就引人入胜且颇具想象力,因为迄今为止,无论是基于机器学习还是其他方法,能够达到这个水平的计算机国际象棋系统都使用了搜索组件。

初次阅读论文时,我的第一反应是发推特表示惊叹,认为这既疯狂又有趣。至今我仍然觉得它很惊人,但仔细阅读后,我发现它可能并不像最初设想的那样疯狂或有趣。许多社交媒体上的评论过于印象深刻,他们探讨了AI系统的潜在学习能力、神经网络从观察中学习语义等话题,这些其实有些夸大其词。然而,论文并未做出此类声明,但却被许多读者如此理解和讨论。

微信图片_20240213130034.png

另一方面,对于机器学习能力的高度赞赏以及对其能力的广泛假设,许多人则根据该成果仅适用于快棋而将其贬低。快棋是一种时间限制严格的快速游戏,玩家没有太多时间思考每一步棋。我虽然也不完全信服,但我将从一个不同于关注快棋性质的角度来分析。

简而言之,一个未经深思的读者(初次阅读时我也属于这类读者)可能会得出以下结论:

DeepMind展示了一个满足以下条件的机器学习模型:

  1. 学会并遵循国际象棋规则。
  2. 达到大师级水平地玩游戏。
  3. 纯粹通过观察国际象棋比赛及其结果进行学习。
  4. 使用纯机器学习系统进行训练,未在训练过程中编码任何特定于游戏的偏见。

尤其是,相信以上1至4点的人会推断出,如果一个Transformer网络能仅仅通过观看比赛就学会国际象棋的规则和搜索能力,那么这进一步证明我们或许可以通过观察书面文本就能学习到语言的真实语义。

然而,以上没有任何一点是真实的!公平地说,论文并未声称这些。论文写得很好,并没有过度吹嘘(除了宣称没有搜索的系统……稍后再谈)。更深入的阅读和思考之后,我们可以发现:

1和2点并未实现,事实上,在论文所采用的学习设置下也不可能实现。

1和2点很可能在遵循3和4点的任何设置下都无法实现。

3和4点并未得到论文中所采用的设置的支持。

尽管如此,很多读者在阅读论文或摘要时确实考虑到了上述1至4点。接下来,我将深入探讨为什么1至4点不成立。除了更好地理解这篇论文,我认为这也展示了看似中立和自然的建模选择及数据表示实际上对实际学习内容及其原因产生了重大影响。

研究人员做了什么?

他们从在线国际象棋竞技场获取了1000万局人类对弈的棋局,对应约5亿个棋盘位置。对于每个棋盘位置及其合法移动(总共约150亿对),他们询问Stockfish 16引擎在每个移动上最多花费0.05秒分析后的“获胜概率”。然后,他们训练了一个以棋盘位置+移动作为输入,目标输出为移动的获胜概率的Transformer模型。这被称为动作价值预测。概念上,训练好的模型随后用于以下简单过程来玩游戏:在每一轮中,让模型查看棋盘位置+所有可能的移动,预测这对棋盘+移动的获胜概率,然后选择获胜概率最高的移动。仅此而已,没有前瞻性的搜索。

这种策略在快棋对抗人类时表现得非常出色,达到了大师级水平。

这意味着什么?

这是令人印象深刻的。AI系统仅通过观察棋盘位置及其结果,学会了制定策略,使其能够在每个位置选择有力的移动,强到足以重复应用时战胜非常强大的人类棋手。这不是单纯的记忆:与人类的对局包含了系统在训练期间未曾见过的许多棋盘位置。系统学会了从已知的位置泛化到新颖的位置,并提出导致胜利的有力移动。这一切都没有“看下一步”。

许多人(包括我自己)在网上对这一结果的解读是:

系统通过观察学会了下棋。

它通过查看(许多)棋局的位置学会了游戏规则和如何做出有力的移动,

没有额外的领域知识,

也没有自我对弈或思考下一步的机制。

上面的1至4点也是相同解读的另一种形式。然而,这种解读是错误的。以上都不是真的。

在了解原因之前,让我们稍微偏离主题,讨论一下从观察1000万局比赛中学习国际象棋模式的规模,以及这与人类学习的方式有何关联。

人类学习方式截然不同。

系统是从1000万局游戏中学习的。这是一个巨大的数量。假设有一个极端专注的专业人类棋手,每天研究16小时,每分钟可以分析一局棋,一年365天。这样的棋手需要大约28.5年才能分析完1000万局游戏。如果他分析一局棋需要5分钟,那他需要142年。而有一些13岁的棋手就已经达到大师级水平。因此,显然人类学习的方式完全不同,而且效率更高。他们在学习过程中可能拥有游戏的完全不同的知识。我们稍后再回到这个计算。

一切都是建模选择。建模选择会影响可学习的内容。

作者选择了看似中立的任务和表示:输入是棋盘位置,输出是移动的获胜概率。简单、自然、中性,但是请注意,这是一种选择,这种选择导致系统实际上并没有学习到游戏规则(1点),无论学习者有多强大,也无法学习游戏规则。这个建模选择也阻止了任何学习者“像大师一样”(2点)下棋。现在,让我们通过论文中提到的两种失败模式来看看原因。第一个说明无法学习游戏规则,第二个说明无法像大师一样下棋。这些都是建模选择后果的精彩示例。

无法学习国际象棋规则。

论文指出,模型无法遵循“同一棋盘位置连续出现三次”的规则(即“三步重复”规则)。确实,仅查看单个棋盘位置并预测下一个移动,不可能学到避免连续三次重复过去棋盘位置,因为你无法访问之前的棋盘位置。信号不足。

要真正“通过观察”学习国际象棋,包括这条规则,你需要输入表示来提供对移动历史的访问。最自然的选择是棋盘状态序列。现在,比较通过查看单一棋盘状态来学习下一移动,与查看一系列棋盘位置来预测下一移动,后者明显更难。至少你需要学会在预测下一移动时忽略所有先前的棋盘(除了一些特殊情况,比如三步重复规则或城堡规则,其中历史极为重要)。