「人类的可贵品质在于寻求和追随真理。」——西塞罗
本周二,Meta 提出的人工智能 Cicero 成为了 AI 领域的热门新闻,通过和人玩在线版「外交」游戏,它锻炼了自己的技能成为高手,在玩过的不止一场游戏中排名前 10%。
Cicero 结合了类似于 AlphaGo 的战略推理能力,和类似于 GPT-3 的语言组织能力。在每场比赛中,它都会查看比赛状态,各位玩家的对话历史,从而预测其他玩家的。它能自行制定计划,并通过人类语言与其他玩家进行协调执行自己的策略,几乎没有人察觉出它是 AI。
对于人工智能业界,Cicero 的出现或许意味着一次突破。在纽约大学教授 Gary Marcus 最近的的一篇文章中,他表示:「Cicero 在很大程度上是一个奇迹,实现了迄今为止 AI 最深入和最广泛的语言和动作整合,以及前所未有的与人类进行复杂互动的能力。」
我们知道,Gary Marcus 在 AI 发展方向上的看法一直和 Meta 的 AI 主管 LeCun 针锋相对。这一次,Marcus 少见地对 Meta 的研究作了全面肯定评价,是什么让他放下成见?让我们看看这篇文章是怎么说的。
马库斯 · 图利乌斯 · 西塞罗(Cicero)是活跃于公元前 106 年到 43 年的罗马共和国晚期政治家、演说家和作家。两千多年后,他的历史和哲学重要性仍在被人们讨论。同名的计算机程序于 11 月 22 日在顶级学术期刊《科学》上被宣布,它是一个强大的人工智能系统,可以和人类玩策略。我们还无法在它出世仅三天后就对其影响作出定论,它或许也不会像西塞罗那样一直闪耀。
Diplomacy 是一种需要充分交流的复杂游戏,至少近五十年来一直被认为是人工智能面临的重要挑战。要想获胜,参与者不仅要懂策略,还需要结盟、谈判、说服、威胁,偶尔还得学会欺骗。因此,它给 AI 带来的挑战远远超出了下围棋、国际象棋等游戏的系统,或那些在不太复杂环境中进行对话的聊天机器人所面临的挑战。
毫无疑问,Cicero 实现的结果本身确实令人印象深刻。尽管 AI 尚未达到或接近世界冠军水平,但该系统能够将语言与游戏玩法相结合,在 Diplomacy 的在线版本中,在专业和业余混合人群中排名前 10%,游戏和语言使用非常自然,以至于只有一名人类玩家怀疑它是机器人。
随之出现了很多问题:它是如何工作的?它对 AI 中其他持续存在的挑战有影响吗?它是否真的像 Meta AI 所声称的那样,是「构建掌握与人谈判、说服和合作技能的 AI 的突破」?对于一个可以在真实情况下与人类进行智能交互的系统来说,它的进步有多大?我们是否需要担心 Meta 已经建立了一个可以操纵人类以实现其统治世界目标的人工智能,正如我们的一位朋友发布的那样,也许这甚至是认真的?鉴于涉及欺骗策略,我们是否处于某种新兴的风险中?
值得称赞的是,Meta AI 已经发布了 Cicero 开源代码,以便研究社区可以开始探索这些问题:https://github.com/facebookresearch/diplomacy_cicero
对于 AI 算法来说,如果不首先检查系统的架构,总是很难回答有关影响的问题。事实证明,Cicero 的架构与近年来 AI 中讨论的大部分内容大相径庭。
首先你要认识到,Cicero 是一个非常复杂的系统。它的高级结构比精通围棋和国际象棋的 AlphaZero 或纯粹关注单词序列的 GPT-3 等系统复杂得多。其中一些复杂性在流程图中立就能显现出来。尽管最近的许多模型都类似于数据输入、动作输出,中间有某种统一系统(比如 Transformer),但 Cicero 在任何学习或训练之前都进行了大量预结构化,并采用精心设计的定制架构分为多个模块和流,每个模块和流都有自己的特化。
而这只是复杂的开始。就评估其整体意义而言,Cicero 的许多最重要的特征在于隐藏在文章补充材料深处的细节。尽管这里的讨论旨在帮你省去大部分细节,但很明显,正确理解 Cicero 并回答这些问题不可避免地需要仔细分析。
Cicero 表现如何
Diplomacy 游戏由一系列回合组成。在每一轮中,首先所有玩家私下交流,一对一;他们可以建立秘密联盟、谈判条件等等。商议完毕后再同时公布。
在每一步棋中,Cicero 都必须决定与谁交谈,谈的内容是什么,最后要采取什么行动。这些决定中的每一个都取决于当前的比赛状态,Cicero 要考虑的因素包括之前的比赛和交流历史,以及其他玩家在当前行动中对它说的话。
在这种情况下,做出正确的决定可能会变得非常复杂。如果你在玩 Diplomacy,你下一步应该做什么显然取决于其他玩家将要做什么,同样他们将要做什么取决于他们认为你将要做什么。更复杂的是,你可以(希望)通过他们所说的来衡量他们将要做什么,并且玩家之间还可以通过交流的来互相影响预判。但是,你要说什么终究是取决于你希望他们做什么,而这又回到了你要做什么的问题。
支撑 Cicero 模型的核心理论是博弈论。博弈论最初于 20 世纪 30 年代发展起来,现在已经非常强大,它为 Cicero 模型提供了一个强有力的起点。博弈论在 Cicero 如何选择其策略方面起到了关键作用。Meta AI 早期一项在非语言简化版 Diplomacy 的工作中已经得到很好的验证和发展,令人印象深刻。
然而,博弈论本身是一种行动理论。根本不是一种语言理论。因此,Cicero 团队必须将博弈论策略选择与为纯语言任务(如翻译或问答)开发的自然语言技术相结合。将所有这些组合成一个协调的整体非常具有挑战性。坦率地说,Meta AI 团队的成功让我们印象深刻。
Cicero 在游戏中的架构可能不可避免地包含一系列高度复杂的交互算法。我们不打算在这里对其进行全面描述,但我们看到了两个关键要点。首先,Cicero 的整体架构并不是简单地从基础数据中自发产生的,而是一个包含许多活动部件的精巧工程结构,由不同类型的 AI 专家组成的广泛团队,结合概率分析博弈论精心设计而成。
第二个关键点是 Cicero 在做出决策时利用了许多不同类型的信息,包括:
- 游戏的当前状态;
- 之前所有历史动作和历史对话;
- 语言模式知识,基于类似于 GPT-3 的纯语言模型,这让 Cicero 知道如何合理回应其他玩家;
- 了解语言与动作的关系,这让 Cicero 知道如何告诉盟友或潜在盟友它计划做什么;
- 每条交流消息的间隔时间(以秒为单位)。
重要的是,尽管 Cicero 与人类对抗比赛,但它的运作方式与人类并不完全相同。例如,人类玩家可能会尝试对其他玩家的精神状态和交流互动进行分类。而 Cicero 在没有直接表述或表征这类想法的情况下设法取得了成功。
Cicero 是如何训练的
与几乎所有其他实用化的人工智能一样,Cicero 的构建也大量使用了机器学习技术。训练数据有许多不同的部分,其中一些涉及大量的劳动来创建。该系统最终依赖于四类定制数据,比人们在典型的深度学习系统中使用的要多得多,其中有相当数量的手工构建的数据(这在深度学习领域也很罕见),其中包括:
- 在线平台上进行的 125300 场人类游戏的语料库(其中 40400 场包括对话,总共有 12900000 条单独信息);
- 一个大型的语言模型,似乎是在数十亿个单词的基础上训练出来的,在游戏对话的语料库中进一步微调;
- 数以千计的专家生成的注释,评估由初步版本的 Cicero 产生的信息的质量;
- 大量的合成数据集,其中许多是手工构建的,用于训练各种模块。例如,为了训练排除无效信息的过滤器,他们创建了一个手工构建的无效信息集;另一个数据集训练了 Cicero,使其摆脱了错误计算棋盘上实体的倾向;还有一个数据集是为了提高其对否定句的理解,一个自我博弈的语料库被用来进行强化学习等等。
有了这些精心设计的数据,系统需要学习语言中的信息在游戏行动方面的含义。例如,它需要学习 「你想在比利时支援荷兰吗?」这一连串的话语意味着在游戏过程中标记为「NTH S BEL」的行动。
为了做到这一点,Cicero 做了一个假设,即一般来说 A 和 B 之间的对话中的句子是指 A 和 B 在对话结束时进行的行动。该系统会在接下来的对话中寻找不诚实的说法。如果 B 在某一时刻对 A 说「你上一回合对我撒谎了」,那么这表明 A 在上一回合对 B 的陈述不应该被注释为 A 的实际行动。
把这些能力集合在一起,结果是惊人的。
范围及限制
Cicero 在许多方面都属于奇迹:它实现了迄今为止任何人工智能系统在动态世界中最深入和最广泛的语言和行动整合,还以前所未见的形式与人类成功进行了复杂的互动。
但它在如何做到这一点上也很引人注目。令人震惊的是,与许多时代潮流相反,Cicero 在很大程度上依赖于手工制作,包括数据集和架构。在这个意义上,它在许多方面更让人想起经典的「老式人工智能」,而深度学习系统往往结构化程度较低,对特定问题的定制程度较低。它比最近的人工智能系统存在更多的天性。
另外,值得注意的是,Cicero 的某些方面使用了神经符号的人工智能方法,如语言中的信息与行动符号表征的关联、对于对话结构的内在(先天)理解等等。
也就是说,我们并不清楚 Cicero 的特殊性有多大的可概括性。
据我们所知,Cicero 只在单一任务上进行了测试,这正是它精心设计的任务:Diplomacy。它不能立即应用于挑战,例如客户服务或指导家用机器人的行动,或者几乎任何其他事情。即使在 Diplomacy 的环境里,其范围也是有些局限的。
例如,人类玩家可能可以很好地应对另一个棋盘(例如 1400 年的欧洲地图),或是稍加修改的行动规则(例如部队可以通过空中旅行而不仅仅是陆地或海上)。而在 Cicero 中,却没有简单的方法来 「呈现」任何这样的规则或地图变化,而且其训练与描述标准 Diplomacy 棋盘行动细节的语言有很大的关系。
最好的假设是,如果你用其他规则玩 Diplomacy,系统会希望几乎从头开始重新训练。然而,并没有简单的方法来重新训练 Cicero。如果你想建立一个在 20x20 围棋棋盘上对弈的 AlphaZero 版本,那可以用很少的新的人力来完成,因为 AlphaZero 完全是在自我博弈中训练出来的。而对于 Cicero,你必须等到人类下了 125000 盘棋后再进行重新训练,然后才能继续进行实验。
这并不意味着将 Cicero 改造为其他任务的道路很容易。正如领域内经常出现的情况一样,关键问题是,Cicero 中使用的技术在多大程度上可以推广到涉及行动和社会互动的其他情况?如果我们想搭建一个 AI,在封闭和有限的 Diplomacy 环境之外与人进行一些复杂的互动,那么 Cicero 的执行架构、训练架构或通用方法论方法的哪些方面将是有用的?
这个系统很复杂,我们无法很有把握地预测这一点,但就目前的情况来看,我们认为通用化的前景有些有限。这种工作方式在其他问题上可能很有用,但如果将该系统应用于其他问题,例如桥牌等游戏中的竞价,或者为一个项目的团队谈判工作计划,或者计划婚礼,那么该架构的具体内容可能不会有太大的用处。
Cicero 的成功对一般的人工智能有什么启示?
Cicero 广泛使用了机器学习,但它并不是简单地制造更大的模型(所谓「扩展最大化」)的典型代表,也不是目前流行的「端到端」机器学习的观点——即单一的通用学习算法全面适用。在执行时,Cicero 由一系列独立的精心设计的模块组成,具有复杂的相互作用。在训练时,它利用了各种训练素材,其中有些是专家专门为 Cicero 搭建的,有些是用专家手动编写的程序合成的。
在 Cicero 发布的同一天,AACL 会议上就「NLP 是否不限于深度学习」这一话题进行了友好的辩论。Cicero 也许是在提醒我们,自然语言处理确实远不止于深度学习。
我们最后的收获是什么?我们了解到机器学习有价值已经有一段时间了,但如今机器学习经常被当作万能的溶剂,好像人工智能的其他部分无关紧要。而 Cicero 或许会改变这种计算方式。
原文链接:https://garymarcus.substack.com/p/what-does-meta-ais-diplomacy-winning