再次战胜人类:Meta AI推出首款可以"忽悠"人的AI模型

2023-01-22 20:16 376 阅读 ID:718
机器学习算法与自然语言处理
机器学习算法与自然语言处理

AI模型连外交这活儿都能得心应手了?没错,它不仅能揣度人心,推理对方的意图,还能凭借高级的谈判技巧争取盟友。

                                                                 ▲图1. Cicero工作示意图

论文题目:

Human-level play in the game of Diplomacy by combining language models with strategic reasoning

论文链接:

https://www.science.org/doi/10.1126/science.ade9097

源码:

https://github.com/facebookresearch/diplomacy_cicero

了解Cicero之前,先介绍下『强权外交』游戏吧~

这是一款经典战棋类桌游,最多可由7位玩家参与,其中每位玩家代表第一次世界大战前欧洲的主要力量,游戏的目标是通过移动部队控制供应中心,率先夺下一半欧洲领土的玩家为赢。

游戏最核心的部分,是需要玩家之间进行私自交流和合作做出决策。这和围棋等双人博弈类的决策游戏并不相同,在这个游戏中,面对的不仅仅是一位对手,而是需要和多位对手交流和互动,非常强调谈判和沟通的技巧。

                                                                 ▲图2.

1.『Cicero是如何"忽悠"人的?』

面对这样的复杂的策略游戏,Cicero 主要通过以下两个主要模块来提升自己 『合作』、『谈判』、『协调』的能力。

                                                               ▲图3. Cicero主要模块

它们分别是: 1. 『战略推理』,2. 『自然语言处理』。 在这两个模块的帮助下,Cicero可以推断,到了游戏后期,它会需要哪位玩家的支持,然后制定策略以赢得该玩家的青睐,甚至认识到该玩家从其特定角度看到的风险和机会。

                                                                   ▲图4. Cicero结构

1. 战略推理

  通过强化学习算法,Cicero可以洞察其他玩家的后续可能会采取的行动和措施,并利用这些信息制定战略计划,智能地选择意图和行动。Cicero通过规划算法根据到目前为止的游戏状态和对话,来预测其他玩家的策略,从而选择自己的最佳动作。同时,对于偏离真实行为太远的行为,会得到较大惩罚。在游戏中每个协商的过程,Cicero每次发送或接收消息时,都会重新计算意图。

Cicero 使用 piKL 的变体来模拟其他玩家的策略。

piKL 是一种迭代算法,通过假设每个玩家i寻求最大化其策略 π i的期望值并最小化 π i和 BC 策略之间的 Kullback-Leibler (KL) 散度来预测策略。piKL 提供了一种对话影响策略预测的机制。如图5所示,Cicero和其他玩家之间不同的对话消息可能会产生不同的策略。

                                                         ▲图5. 对话对规划和意图的影响

与传统的监督学习相比,piKL 能更好地模拟人类游戏,并为agent带来更优的策略。

2. 自然语言处理

与GPT3类似的预训练语言模型。Cicero在一系列精心选择的计划中进行对话,用于谈判、提供建议、分享信息,并最终和其他玩家达成协议。训练数据包括互联网文本和来自『强权外交』游戏内的对话数据。

标准建模方案下的对话模型更多地是模仿数据集,但Cicero是通过战略推理模型指定的计划进行生成的,对话的意图是可控的。

如图6所示,Cicero代表的是英国,在不同的意图下,它向法国、德国、俄罗斯生成的对话完全不同,但都是符合意图的。

                                                           ▲图6. 意图对生成对话的影响

如图7所示,action被表示为命令串的形式,如" NTH S BEL -> HOL" 标识北海将支持比利时到荷兰。意图模型根据往家的对话的state和历史来预测玩家行为(图7 A)。然后,通过意图模型,对训练数据集的每条消息进行注释(图7 B)。经过训练的对话模型可以在给定目标消息的意图注释的情况下进行预测(图7 C)。

                                                      ▲图7. 意图是如何训练控制对话的

3. 消息过滤

除以上两个主要模块外,Cicero通过多个过滤器传递每条生成的消息,这些过滤器的作用是:限制无意义、与意图不一致或不利于战略本身的消息。

例如,Cicero使用了 16 个分类器来区分真实的人类信息和不同类型的反事实信息。

2.『Cicero的实际表现如何?』

2022 年 8 月 19 日- 10 月 13 日,从Cicero开始投入使用,在其进行的40多场游戏里,成绩可以在所有玩家高居前10%。并且在所有 40 场比赛中,Cicero的平均得分为 25.8%,82 名对手平均得分为12.4%。Cicero的平均得分是这些真实玩家的两倍多。

我们从图8可以看出,Cicero在 『协调』和『协商』 中具备自己的优势。它可以通过和其他玩家讨论长期战略来促成联盟建立,也可以提出互惠互利的措施来实现和对手的共赢,甚至改变其他玩家的想法。

                                                                         ▲图8. 对话示例

当前,Cicero不是完美的,虽然可以和人类进行较为有效流畅地沟通,但还会偶发错误或自相矛盾的信息,甚至将对话引入对自己战局不佳的方向。过滤器并不会起到百分百的约束作用。Cicero自身也还有优化和发展的空间。

目前 Meta 已经在 GitHub 上开源了 Cicero 的代码,但由于其可以"忽悠"人的特质,Meta 希望研究人员能够 “以负责任的方式” 构建其代码。那么,Cicero的未来应用价值又在哪里呢?沉浸式游戏?谈判顾问?Meta对它寄予了较高期待:

The technology behind Cicero could one day lead to more intelligent assistants in the physical and virtual worlds.

是否能成为真正全方位的智能的文字助手,答案只能交给将来~

免责声明:作者保留权利,不代表本站立场。如想了解更多和作者有关的信息可以查看页面右侧作者信息卡片。
反馈
to-top--btn