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

什么是机器阅读理解?它与自然语言处理有什么关系?

时间:2023-03-21 20:28:49 科技观察

01MachineReadingComprehensionTask学者C.Snow在2002年发表了一篇论文,将阅读理解定义为“通过交互从书面文本中提取和构建语义的过程”。机器阅读理解的目标是利用人工智能技术,使计算机具备与人类同等的文章理解能力。图1显示了机器阅读理解的示例。在示例中,机器阅读理解模型需要使用文章中的一段原文来回答问题。▲图1机器阅读理解任务示例1.机器阅读理解模型机器阅读理解模型的输入是文章的正文和问题,输出是最终的答案。为了完成任务,模型需要深入分析文章的语义以及文章与问题的关系,然后根据文章的内容做出准确的回答。目前,绝大多数机器阅读理解算法都采用深度学习模型,利用深度神经网络进行建模和优化。深度学习的特点是模型可以根据在训练集上的预测准确率直接优化参数,不断提升模型的性能,从而取得好的效果。由于深度学习需要处理数值空间的信息,阅读理解模型首先要将文章和问题进行数字化表示,形成文本编码。一种常用的方法是词向量(wordvector):将文本分成若干个词,然后用一串数字(即向量)表示一个词。文本的数字表示:分词和词向量原文:今天天气真好分词:今天|天气|真|好的词向量:today:[3.2,-1.5,6.0]weather:[-0.2,-5.0,1.7]true:[1.4,2.8,0.9]good:[-2.6,3.8,-5.2]常用的中英文《为什么中文分词比英文分词更难?有哪些常用算法?(附代码)》已经介绍了分词算法。接下来,机器阅读理解模型对这些数字代码进行各种运算,获取文章和问题之间的上下文信息和语义关联,从而获得答案的线索。一般来说,基于深度学习的机器阅读理解模型的架构分为三个部分:编码层对文章和问题的词进行编码,完成上下文语义分析;交互层处理文章和问题之间的关联信息,找出文章中与问题相关的线索;输出层根据先前处理的信息的任务要求生成答案。不同的机器阅读理解模型通常在上述三个部分使用不同的模块和连接方式。但无论是哪种阅读理解模型,其训练过程都依赖于人工标注的数据,比如大量的文章-问答三元组。然而,生成这些标记数据需要花费大量时间和人力。因此,近年来自然语言处理界提出了预训练+微调模型:在大量未标注文本数据上训练大规模模型,然后在少量标注数据上进行微调针对特定任务(例如阅读理解)。该模型取得了较好的效果,有效缓解了标注数据不足的问题。2、机器阅读理解的应用随着各行各业文本数据的海量产生,传统的人工处理方式因处理速度慢、成本巨大等因素成为产业发展的瓶颈。因此,能够自动处理分析文本数据并从中提取语义知识的机器阅读理解技术逐渐受到人们的青睐。例如,传统搜索引擎只能返回与用户查询相关的文档,而阅读理解模型可以精确定位文档中问题的答案,从而提升用户体验。在客户服务中,利用机器阅读理解在产品文档中找到与用户描述的问题相关的部分,并给出详细的解决方案,可以大大提高客户服务的效率。在智能医疗领域,阅读理解模型可以根据患者症状描述,自动查阅大量病历和医学论文,找出可能的病因,输出诊疗方案。在语文教育方面,可以通过阅读理解模型对学生作文进行批改并给出改进建议,帮助学生随时随地提高作文水平。可见,在任何需要对大量文本内容进行自动处理和分析的场景下,机器阅读理解都可以帮助节省大量的人力和时间。在很多领域,如果阅读理解模型的质量没有达到完全替代人类的水平,可以结合人类使用计算机来处理简单高频的问题,从而降低成本。因此,机器阅读理解成为当前人工智能研究中最前沿、最热门的方向之一。02自然语言处理机器阅读理解属于语言处理范畴,自然语言处理是人工智能领域的一个重要研究方向。它主要分析人类语言的规律和结构,设计计算机模型来理解语言并与人类交流。自然语言处理的历史可以追溯到人工智能的诞生。经过几十年的发展,自然语言处理、理解和生成等领域的研究取得了长足的进步。这些都为机器阅读理解研究奠定了坚实的基础。本节主要介绍自然语言处理的研究现状及其对机器阅读理解的影响。一、研究现状经过70多年的发展,与自然语言处理相关的研究已经分为许多子任务。以下是与机器阅读理解相关的重要研究方向。信息检索。研究如何在海量文档或网页中查找与用户查询相关的结果。信息检索的研究已经相当成熟,广泛应用于网络搜索等产品中,为信息的传播和获取提供了极大的便利。当阅读理解任务涉及大型文本库时,信息检索通常被用作系统中提取相关信息的第一个模块。2、问答系统(questionandansweringsystem)是指能够自动回答用户提出的问题的系统。问答系统与信息检索的区别在于,问答系统需要理解复杂问题的语义,支持多轮上下文对话。比如会话式阅读理解,需要模型同时分析文章的语义和之前对话轮次的信息,然后回答当前问题。3、文本分类是指对文章、段落、句子进行分类,如将大量网页按内容、主题划分。一些机器阅读理解模型对问题进行分类,例如关于时间的问题、关于地点的问题等,以提高答案的准确性。本题分类属于文本分类范畴。4.机器翻译(machinetranslation)研究如何让计算机自动翻译文本,可应用于跨语言阅读理解任务。例如,当文本来自少数民族语言时,我们可以用机器自动翻译通用语言的阅读理解数据,从而解决训练数据缺乏的问题。5.Textsummarization(文本摘要)研究如何用简洁的语言概括文章的主要思想和重要信息。由于文本摘要需要分析文章的语义并生成结果,因此其中许多技术被应用于机器阅读理解,例如序列到序列模型(sequence-to-sequence)、复制生成网络(pointer-generatornetwork))等。2.尚待解决的问题随着相关模型的不断发展,自然语言处理在很多任务中取得了骄人的成绩。然而,还有许多未解决的问题,包括对基本语言结构和语义的理解。这些也是机器阅读理解研究亟待解决的问题。1)语言的歧义由于语言的一大特点是用比较简洁的句子来表示复杂的语义,因此一段文字往往存在多义和歧义,即有多种合理的解释。让我们看下面的几个例子。例一:厂领导对小张的批评进行了多次讨论。在这里,可以理解为领导讨论了小张对厂的批评,也可以理解为领导讨论了小张对工厂的批评。原因是“对”的宾语可以是“小张的批评意见”或“小张”。例2:化学的成就有目共睹。这里,可以理解为“化学”取得成绩,或者“化学研究所”取得成绩。原因是“所”既可以作介词,又可以作“化学所”的一部分。例3:我想炒菜。这里,“炒菜”可以认为是一道菜,“我”点菜,也可以认为“我”去炒菜。原因是“炒”可以作为整个句子的动词,也可以和“青菜”组合成菜名。这种模棱两可的例子还有很多。甚至人类在面对这些句子时也难以判断说话者的真实意图。然而,如果上下文信息可用,歧义就被消除了。例如餐厅点菜上下文中出现“我要炒青菜”,表示“炒青菜”是一道菜;成绩属于“化学研究所”。到目前为止,自然语言处理模型仍然不能很好地理解上下文的语义。研究人员通过分析自然语言处理模型在机器阅读理解模型等任务上的结果,发现现有模型很大程度上是基于词或关键词匹配,这也导致这些模型对歧义文本的处理能力较低。.2)推理能力在人类的语言交流中,很多结论可以不经阐述就通过语言推理得出。比如下面是客户通过客服订票的例子:客服:您好,请问有什么可以帮到您?顾客:我想订五月初北京到上海的机票。客服:好的,那你想哪天走?客户:嗯,我要去上海开会,4号到7号开。客服:好的,这是5月3号北京到上海的直飞航班信息……上面的对话中,客户并没有直接回答客服关于出发日期的问题,而是给出了会面的时间。但从预定开会的机票事件可以推断,客户肯定想在开会前到达目的地,所以客服给出了5月3日出发的航班信息。当然,如果客户要订上海到北京的机票,客服要提供5月7日或5月8日晚出发的航班信息。因此,智能客服的模型需要根据之前的对话内容,推断出需要的信息——出发日期。这种推断需要模型有一些常识,即航班必须在会议之前到达目的地。近年来,常识和推理在自然语言处理中的应用研究不断涌现,但如何使模型包含大量常识并进行有效的推理仍然是一个亟待解决的问题。作者简介:朱晨光,微软公司自然语言处理高级研究员,博士。在斯坦福大学攻读计算机科学。负责自然语言处理研发、对话机器人语义理解、机器阅读理解研究等,精通人工智能、深度学习和自然语言处理,尤其擅长机器阅读理解、文本摘要、对话处理,etc.本文节选自《机器阅读理解:算法与实践》,经发布者授权发布。