当前位置: 首页 > 科技观察

容量是GPT-2的1.7倍!谷歌打造了神经对话模型Meena

时间:2023-03-15 14:28:06 科技观察

谷歌表示,这是对“真正的”对话式AI的一次尝试。Chatbots(会话机器人)往往是高度专业化的,只要答案与用户的期望不相差太远,它们的表现就值得称道。为了更好地应对不同的对话话题,开放领域对话研究探索了一种新的途径,研究人员尝试开发一种非聊天专用机器人,虽然它不以聊天为主要功能,但仍能满足任何对话需求的用户。谷歌的研究人员认为,开放域对话研究除了是一个引人入胜的研究课题外,还可以带来许多有趣的应用,例如进一步使计算机交互人性化,提高外语练习,以及制作相关的交互电影和游戏角色。然而,目前的开放域聊天机器人有一个严重的缺陷:它们往往不实用,比如对同一个问题的回答不一致,或者回答总是缺乏基本常识。此外,聊天机器人通常会给出不特定于当前上下文的回答,例如,“我不知道”可以回答任何问题,目前的聊天机器人比人类更频繁地这样做,因为它涵盖了许多可能的用户输入。最近,在一篇名为《Towards a Human-like Open-Domain Chatbot》的论文中,谷歌的研究人员介绍了一种名为“Meena”的模型,这是一种具有26亿个参数的端到端训练神经对话模型。在论文中,研究人员表示,他们已经证明,与现有的最先进的聊天机器人相比,Meena可以进行更智能、更具体的对话。他们为开放域聊天机器人提出了一种新的人类评估指标,即灵敏度和特异性平均值(SSA),它捕捉了人类对话的基本但重要的特性。值得注意的是,研究人员证明,“困惑度”是一种适用于任何神经对话模型的自动度量标准,与SSA高度相关。什么是“Meena”Meena是一个端到端的神经对话模型,可以学习更智能地响应给定的对话上下文。据报道,Meena模型拥有26亿个参数,并在从公共领域的社交媒体对话中筛选出的341GB文本上进行了训练。与现有的最新生成模型OpenAIGPT-2相比,Meena拥有1.7倍的模型容量和8.5倍的数据训练。该模型训练的目标是最大限度地减少“困惑”,即预测下一个标记(对话中的下一个词)的不确定性。其核心是EvolvedTransformerseq2seq架构,这是一种通过进化神经架构搜索发现的Transformer架构,可提高困惑度。具体来说,Meena有一个EvolvedTransformer编码器块和13个EvolvedTransformer解码器块,如下图所示。编码器处理对话上下文以帮助Meena理解对话中所说的内容,然后解码器使用该信息来制定响应。通过调整超参数,研究人员发现更强大的解码器是提高对话质量的关键。用于训练的对话被组织为树线程,其中线程中的每个回复都被视为一个对话回合。研究人员将每个会话训练示例(由七个上下文转换组成)提取为通过树线程的路径。研究人员表示,选择7是一个很好的平衡,因为上下文足够长,可以训练会话模型,但也在内存约束内拟合模型(较长的上下文消耗更多内存)。灵敏度和特异性平均值(SSA)现有的聊天机器人质量人工评估指标通常很复杂,而且审稿人未达成共识。这促使谷歌的研究人员设计了一种新的人类评估指标,即敏感度和特异性平均值(SSA),它捕捉了自然对话的基本但重要的属性。为了计算SSA,研究人员将与参与的聊天机器人(Meena和其他知名的开放域聊天机器人,包括Mitsuku、Cleverbot、XiaoIce和DialoGPT)的自由形式对话众包。为了确保评估之间的一致性,每次对话都以相同的问候语“嗨!”开始。和人类评估者在对话中关注两个问题:“答案是否有意义”和“答案是否具体?”,每一轮对话都需要评分者用常识来判断机器人的反应是否完全合理。如果出现任何问题,例如混淆、不合逻辑、断章取义或事实错误,则应将其评分为“无意义”;如果回答有意义,则需要评估他们的回答以确定上下文。例如,如果A回答“我喜欢网球”而B回答“非常好”,则对话应标记为“非特定”,因为这样的回答可以在许多不同的上下文中使用;但如果B回答:“我也是,我非常爱罗杰·费德勒!”然后将其标记为“特定”,因为它的答案与上面讨论的内容密切相关。对于每个聊天机器人,研究人员在大约100个对话中收集了1,600到2,400个单独的对话,每个模型响应都由评估人员标记,以表明其答案是否合理和具体。聊天机器人的Sensitivity是标记为“Sensitive”的响应的分数,而Specificity是标记为“Specific”的响应的分数,这两个值的平均值就是SSA分数。下面的结果表明,Meena的表现大大优于现有的最先进的聊天机器人,并且在SSA分数方面正在缩小与人类的差距。自动评估指标:Perplexity研究人员长期以来一直在寻找一种与更准确的人类评估相关联的自动评估指标,这样做可以加快对话模型的开发速度,但迄今为止,找到这样一种自动指标一直是一个挑战。挑战。出乎意料的是,谷歌研究人员发现,在他们的工作中,“困惑度”似乎与这一自动指标相吻合,该指标对任何神经seq2seq模型都是现成的,表现得与人类评估(如SSA值)有很强的相关性。谷歌研究人员对“perplexity”的解释是这样的:perplexity用来衡量语言模型的不确定性,perplexity越低,模型对生成下一个token(比如字符、子词或单词)的信心就越大).从概念上讲,困惑度表示模型在生成下一个响应时尝试选择的选项数量。在开发过程中,开发人员对具有不同超参数和架构的八个不同模型版本进行了基准测试,例如层数、attentionheads、总训练步骤、是否使用EvolvedTransformer或常规Transformer,以及是否使用硬标签或“蒸馏”进行训练。如下图所示,perplexity越低,模型的SSA得分越好,相关系数也很强(R2=0.93)。编者注:知识蒸馏(有时也称为师生学习)是一种压缩技术,需要训练一个小模型使其表现得像一个更大的模型(或模型集合)。具有困惑的交互式SSA。每个蓝点都是Meena模型的不同版本,绘制的回归线显示SSA与困惑之间的强相关性。虚线对应于人类、其他机器人、Meena(基础)、端到端训练模型以及具有过滤机制和调谐解码的完整Meena的SSA性能。谷歌表示,他们开发的最好的端到端Meena模型(称为Meena(base))的perplexity为10.2(越小越好),SSA分数转换为72%。Meena完整版拥有过滤机制和decoder解码功能,进一步将SSA分数提升至79%。未来的研究和挑战对于未来的规划,谷歌的研发人员表示,他们将继续通过改进算法、架构、数据和计算来降低神经对话模型的复杂度。虽然目前研究人员只关注这项工作的敏感性和特异性,但其他属性(如真实性等)也值得在后续工作中考虑。此外,解决模型中的安全性和偏见问题是谷歌关注的一个关键领域。