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

让问答更自然——基于复制和检索机制的自然答案生成系统研究

时间:2023-03-22 13:10:13 科技观察

让机器拥有像人类一样的智能一直是研究人员的目标。由于智能的概念很难准确定义,图灵提出了著名的图灵测试(TuringTest):如果一台机器能够在无法识别其机器身份的情况下与人类进行对话,那么就可以说这台机器是智能的。图灵测试长期以来一直被用作测试人工智能的标志。问答系统本身就是图灵测试的场景。如果我们拥有像人类一样的智能问答系统,就相当于通过了图灵测试。因此,问答系统的研究一直备受关注。传统知识问答针对用户(使用自然语言)提出的问题,提供精确的答案实体,例如:对于“泰戈尔的出生地在哪里?”的问题,返回“加尔各答”。然而,仅提供这样一个孤立的答案实体并不是一种非常友好的交互方式,用户更希望收到用自然语言句子表达的完整答案,例如“印度诗人泰戈尔出生于加尔各答”。自然答案可广泛应用于社区问答、智能客服等知识服务领域。知识问答中自然答案的生成具有非常明确的现实意义和强大的应用背景。与返回答案实体相比,知识问答中返回自然答案有以下优势:1.普通用户更愿意接受可以自包含的答案形式,而不是部分信息碎片。2.自然答案可以为回答问题的过程提供某种形式的解释,也可以无形中增加用户对系统的接受度。3.自然答案还可以提供与答案相关的背景信息(例如上面自然答案中的“印度诗人”)。4、完整的自然语言句子可以更好地支持后续的答案验证、语音合成等任务。但是知识问答系统要用自然语言生成答案并不是一件容易的事。目前,大部分基于深度学习的语言生成模型都是基于原始数据学习的数值计算模型。如何在自然答案生成过程中整合符号表示的外部知识库是一个很大的挑战。此外,许多问题的答案需要使用知识库中的多个事实,自然答案的不同语义单元(词、实体)可能需要通过不同的方式获得。回答这个需要使用多种模式来提取和预测语义单元的复杂问题,给自然答案的生成带来了更大的挑战。为了解决这些问题,中科院自动化研究所何士柱博士、刘曹、刘康、赵军发表了论文《GeneratingNaturalAnswersbyIncorporatingCopyingandRetrievingMechanismsinSequence-to-Sequence学习”在今年的ACL2017上。提出了一种端到端的问答系统COREQA,它基于编码器-解码器(Encoder-Decoder)的深度学习模型,针对需要多个事实来回答的复杂问题,从不同的角度引入复制和检索机制sources,采用复制、检索、预测等不同的词汇获取方式,可以获得不同类型的词汇,对应复杂问题中答案词汇的不同部分,从而生成复杂问题的自然答案。▲图1:COREQA框架图那么具体怎么做呢?这里我们就拿“你知道李连杰是哪里人吗?”这个问题来说。我们这里识别的实体词是:李连杰。然后根据实体词从知识库(KB)中检索相关的三元组(主题、属性、对象)。对于实体李连杰,我们可以检索三元组,例如(李连杰,性别,男),(李连杰,出生地,北京),(李连杰,国籍,新加坡)。2.编码器:为了生成答案,我们需要将问题和检索到的知识编码成一个向量,以供后续深度生成模型利用。问题编码:采用双向RNN(Bi-RNN)来表示问题,有两种方式:一种是将两个方向的RNN状态向量放在一起,得到向量序列Mq;另一种方式是将每个方向的RNN状态向量的最后一个向量取出,放在一起得到向量q,用来表示整个问句。知识编码:记忆网络用于对知识检索阶段获得的知识三元组进行编码。对于一个三元组,用三个向量表示每个部分,然后将它们拼接在一起形成一个向量fi来表示这个三元组,用Mkb来表示所有的三元组向量。3.解码器:接下来根据答案和知识的编码向量生成一个自然答案。虽然自然答案是一系列单词,但不同的单词可能需要以不同的方式获得。例:对于上述问题“李连杰出生于北京,现在是新加坡公民。”,需要从源问句中复制“李连杰”一词,需要从知识库中检索实体词“北京”和“新加坡”,其他词如“出生”、“在”、“现在”等需要通过模型预测得到,因此,在标准的序列到序列(Sequence-to-Sequence)模型的基础上,这里集成了三种词的获取方式(包括复制、检索和预测),并采用统一的模型对其进行建模,让各种模式相互竞争、交互,最终生成复杂问题的最佳自然答案。▲图2:COREQA解码示例图为了测试模型效果,论文分别在模拟数据集(由108条问答模板规则构建的问答数据)和真实数据集(从百度知乎获取的239,934条社区问答数据)进行了测试,在自动均取得了较好的效果评估和人工评估名词谈到未来的工作,何士柱博士表示:“COREQA模型目前过于依赖学习数据,从实验结果可以看出,它在模拟的人工数据上几乎可以有完美的表现,但在真实数据,原因是模型本质上是对原始数据的拟合,学习一个从输入问题(词序列)到输出答案(词序列)的映射函数,尤其是非实质性词(即词不复制和检索)经常预测不准确,这是模型最大的问题,我们计划加入一些外部人工知识来调整模型,改进现有模型。另一个缺点是目前只有知识库表示可以使用三元组的形式,假设答案实体就是三元组的对象部分。实际上,这个假设对于很多问题来说并不成立。另一个可能的改进方向是使用不同的表示法。知识库。此外,该模型还可以应用于机器翻译等任务,让语言生成模型与外部知识资源进行交互。”对于问答系统的未来发展,何士柱博士也有自己的看法:“据我所知,在实际工程实践中,问答系统仍然使用模板和规则,很少或很少使用统计模型。没用过,更不用说深度学习模型了。目前,在研究界,几乎所有的问答系统都采用了深度学习模型,甚至是完全端到端的方法。原因是我个人认为问答系统是一个系统工程,不是一个纯粹的研究课题。目前,研究界对于问答系统还没有一个统一的范式(不像信息检索、机器翻译、信息抽取等任务),因此,未来的问答系统可能需要归纳出一个或几个通用范式,过程,可以分解成几个子任务,这将更容易促进问答的研究和发展。另外,问答系统的效果不能实用,其问题也没有分析清楚。是因为知识资源不完整,还是知识表示的异构性,还是理解自然语言问题的挑战?最后,我认为对于需要大量知识的问答系统等任务,当数据规模难以大规模扩展时,统计模型与先验知识(提取的知识库、语言知识、常识)的融合等)是一个可行的发展方向。》\论文作者|何士柱、刘曹、刘康、赵军(自动化研究所&中国科学院大学)特约通讯员|王哲(中国科学技术大学)欢迎查看原文论文:通过在序列到序列学习中结合复制和检索机制来生成自然答案