处理问答语料的方法、装置及电子终端与流程

文档序号:16973142发布日期:2019-02-26 18:44阅读:143来源:国知局
处理问答语料的方法、装置及电子终端与流程
本发明涉及互联网
技术领域
,具体而言,涉及一种处理问答语料的方法、装置及电子终端。
背景技术
:智能问答系统是一种利用计算机自动回答用户所提出的问题以满足用户知识需求的软件系统。智能问答系统在工作过程中依赖于一个包含大量问答对的问答知识库。当智能问答系统接收到用户所提出的问题后,系统会利用信息检索、意图识别、语义解析、语义匹配等一系列技术手段,基于问答知识库选取出合适的答案返回给用户。目前,构建问答知识库的方法主要依赖于人工操作,人工操作效率低,难以提高问答知识库的质量。技术实现要素:有鉴于此,本发明实施例的目的在于提供一种处理问答语料的方法、装置及电子终端。第一方面,本发明实施例提供一种处理问答语料的方法,包括:根据语料库构造多个第一问答对;分别对所述第一问答对中的问题、答案进行预处理;判断经过预处理的问题与答案是否匹配;若是,将判定结果为匹配的问题和答案构造为第二问答对,并将所述第二问答对存入问答库中。第二方面,本发明实施例提供一种处理问答语料的装置,所述装置包括:第一构造模块,用于根据语料库构造第一问答对;预处理模块,用于分别对所述第一问答对中的问题、答案进行预处理;判断模块,用于判断经过预处理的问题与答案是否匹配;第二构造模块,用于将判定结果为匹配的问题和答案构造为第二问答对,并将所述第二问答对存入问答库中。第三方面,本发明实施例提供一种电子终端,包括:存储器;处理器;所述存储器用于存储支持处理器执行上述方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。与现有技术相比,本发明实施例的处理问答语料的方法、装置及电子终端,可以通过从含有大量人工应答记录的语料库中构造出多个第一问答对。在得到第一问答对后,对问答对中的问题、答案进行预处理可以提高数据处理效率,例如,可以对问题、答案中的冗余信息进行去除,也可以滤除一些信息不完整的问答对,以此能够减小数据处理量,简化处理步骤;再对经过预处理的问答对进行匹配分析,可以得到满足匹配条件的第二问答对,并将第二问答对作为建立问答知识库的重要元素。以此可以解决由于人为因素过多带来的知识遗漏、效率低的问题,并能够提高问答知识库的质量,从而向用户提供高质量的智能问答服务。为使本发明的上述目的、特征和优点能更明显易懂,下文特举实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本发明实施例提供的服务器与客户端进行交互的示意图。图2为本发明实施例提供的电子终端的方框示意图。图3为本发明实施例提供的处理问答语料的方法的流程图。图4为本发明实施例提供的判断问题信息和答案信息是否完整的算法模型的结构示意图。图5为本发明实施例提供的判断问题-答案是否匹配的算法模型的结构示意图。图6为本发明实施例提供的处理问答语料的装置的功能模块示意图。具体实施方式下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。现有的智能问答知识库的创建、维护过程中需要的问答对都是由人工获取的或者是依靠简单规则从海量的人工应答语料中直接获取的。人工获取的效率低,依靠简单规则直接从人工应答语料中获取问答对的方法得到的问答对质量低,不论是智能问答知识库的创建过程还是维护过程都存在挑战,这会制约智能问答系统的整体应答效果。如图1所示,是本发明实施例提供的服务端100与客户端200进行交互的示意图。所述服务端100通过网络与一个或多个客户端200进行通信连接,以进行数据通信或交互。所述服务端100的对应设备可以是网络服务器、数据库服务器等。所述客户端200的对应设备可以是个人电脑(personalcomputer,pc)、平板电脑、智能手机、个人数字助理(personaldigitalassistant,pda)等。其中,用户可以通过客户端200登录自己的账号,其中,每一个账号对应一个用户标识,用户可以通过账号与服务端100进行数据交互。在本发明实施例中,客户端200可以是网络应用的前端,服务端100可以是网络应用的后端,服务端200可以提供一个存储有高质量问答对的问答库,用户可以通过客户端200访问服务端200以得到高质量问答对。如图2所示,是本发明实施例提供的电子终端100的结构框图。所述电子终端100包括处理问答语料的装置110、存储器120、存储控制器130、处理器140以及网络单元150等。所述存储器120、存储控制器130、处理器140、网络单元150相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述处理问答语料的装置110包括至少一个可以软件或固件(firmware)的形式存储于所述存储器120中或固化在所述电子终端100的操作系统(operatingsystem,os)中的软件功能模块。所述处理器140用于执行存储器120中存储的可执行模块,例如所述处理问答语料的装置110包括的软件功能模块或计算机程序。其中,存储器120可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器120用于存储程序,所述处理器140在接收到执行指令后,执行所述程序。处理器140以及其他可能的组件对存储器120的访问可在存储控制器130的控制下进行。本发明实施例任一实施例揭示的过程定义的电子终端100所执行的方法可以应用于处理器140中,或者由处理器140实现。处理器140可能是一种集成电路芯片,具有信号的处理能力。上述的处理器140可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器140也可以是任何常规的处理器等。网络单元150用于接收以及发送网络信号,网络信号可以包括无线信号或者有线信号。本领域普通技术人员可以理解,图2所示的结构仅为示意,其并不对电子终端100的结构造成限定。例如,电子终端100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。于本发明实施例中,电子终端100可以是服务器、个人计算机、移动设备、智能穿戴设备、车载设备等能够连接网络并具有运算处理能力的设备。在某些实施方式中,终端设备还可以不限于物理设备,例如还可以是虚拟机、虚拟服务器等。本发明实施例中的服务端100可运行于上述电子终端100上。请参阅图3,是本发明实施例提供的应用于图2所示的电子终端100的处理问答语料的方法的流程图。下面将对图3所示的具体流程进行详细阐述。步骤s310:根据语料库构造多个第一问答对。步骤s320:去除所述第一问答对中的问题、答案中的冗余数据以得到预处理后的问答对。步骤s330:判断经过预处理的问题与答案是否匹配。步骤s340:若是,将判定结果为匹配的问题和答案构造为第二问答对,并将所述第二问答对存入问答库中。其中,可以将大量的人工应答记录作为语料库,例如,可以将大量网购用户与客服之间的交流数据作为语料库。其中网购用户可以作为提问方,向客服发出的信息可以作为第一问答对中的问题;相应地,客服可以作为应答方,向网购用户发出的信息可以作为第一问答对中的答案。由于语料库是从大量实际人工应答记录中获取的,因此能够实现,且语料库中的数据具有良好的应用价值。第一问答对可以是根据语料库中的数据而形成的粗糙问答对,由于数据来源于实际人工应答记录,人工应答记录中的问题和答案难免存在语句文本本身不完整、语句中夹杂特殊符号或表情等情况,通过对第一问答对中的问题、答案进行预处理能够得到有效文本数据、滤除干扰数据。进行预处理的方式可以是删除部分无效的第一问答对,也可以是提高第一问答对中的问题质量和答案质量,例如对第一问答对中的链接、表情、特殊符号等干扰数据进行删除处理或者统一替换处理。在一种实施方式中,可以通过基于神经网络算法的匹配模型或者分类器来判断经过预处理的问题和答案是否匹配。例如,可以通过匹配模型或者分类器来计算问题、答案之间的置信度,将满足置信度要求的问题与答案判定为满足匹配要求,进一步将判定为匹配的问题与答案构造为第二问答对,并记入问答库。其中,置信度要求包括达到预设值、匹配度排名达到预设级别等。例如,可以将置信度达到80%或95%的问答对判定为满足置信度要求,也可以按照置信度排名来判定置信度排名前三或前五的问答对为满足置信度要求。通过判断问题、答案之间是否匹配可以为输出高质量问答对提供一个判断依据,相较于现有的自动获取问答对的方法具有更高的质量,且输出的问答对的质量可控。通过从语料库中获取大量粗糙问答对,再对粗糙问答对进行预处理以得到满足匹配要求的高质量的第二问答对,进一步利用第二问答对建立问答库,可以减少人为干预过程、提高数据处理效率,并得到高质量的问答库。在用户的使用过程中,尤其是在自动问答任务中,问答库能够给用户提供并输出高质量的答案,具有较高的实用价值。在整个建立问答库的过程中,每一个处理环节都可以生成一个结果记录表,例如可以生成记录有多个第一问答对的备用交流表,可以在对问答对进行预处理的过程中生成两个表格,以记录处理过程、处理结果,可以在判断问答对是否匹配的过程中生成两个表格,以分别记录满足匹配要求的问答对、未满足匹配要求的问答对。在每个处理环节生成结果记录表有利于对问答库进行维护。本实施例中,所述步骤s310包括步骤s311-步骤s314。步骤s311:获取语料库,所述语料库中包括提问方的会话内容,以及与所述提问方的会话内容对应的应答方的会话内容。在一种实施方式中,可以经第三方平台许可而购买得到含有大量应答语料的语料库;在另一种实施方式中,可以调取预存的语料库以获得语料库。其中,语料库中的语料可以不断进行补充,例如通过实时获取或者定时获取外部语料以对语料库进行填充。步骤s312:按照时间顺序将提问方的会话内容、应答方的会话内容进行排序。步骤s313:根据排序后的会话内容生成目标会话段。本实施例中,可以根据用户标识来区分提问方与应答方的身份,用户标识可以是昵称、账号、名牌等。在区分提问方、应答方身份的情况下,按照时间顺序对提问方、应答方的会话内容进行排序,其中,提问方的所有会话内容都可以作为第一问答对中的问题,应答方的所有会话内容都可以作为第一问答对中的答案。例如,存在提问者a、提问者b,应答方对提问者a、提问者b发出的消息分别进行了回复。可以将提问者a与应答方之间的交流记录作为一个目标会话段,将提问者b与应答方之间的交流记录作为另一个目标会话段。其中,目标会话段中的会话内容按照时间顺序进行排序。需要说明的是,应答方可以有多个,例如,每一个客服账号对于网购用户来说都可以代表应答方。步骤s314:根据所述目标会话段构造多个第一问答对。其中,不同目标会话段可以得到多个第一问答对,这些第一问答对可以相同,也可以不同。对于相同的问答对可以进行去重处理,在去重处理的过程中,可以记录去重个数、次数等信息,以提高作为去重参照对象的问答对的权重,权重越高表明作为去重参照对象的问答对在整个语料库中出现的次数越多。同一个目标会话段内也可以得到多个第一问答对。在同一目标会话段中,根据所述提问方的会话内容,按照时间顺序筛选出至少一个与所述提问方的会话内容对应的应答方的会话内容,将所述提问方的会话内容与经过筛选得到的应答方的会话内容作为第一问答对。在一个实例中,得到的一个目标会话段如下表1所示,从所述目标会话段中得到的第一问答对如下表2所示。其中,针对提问方连续发出的消息可以记为同一问题,同理,应答方连续发出的消息可以记为同一答案。本例中按照时间顺序选取了与问题相近的多个答案分别与该问题构成第一问答对,需要说明的是,综合关联度以及数据量的因素,本例针对同一个问题选取的答案低于四个(请参见表2),在其他实施例中,可以选择更多或者更少的答案与提问者提出的问题构成第一问答对,对于第一问答对的数量不应理解为对本发明的限制。由于可以存在多个目标会话段,即使在同一个目标会话段中对某个问题只选取了少量的答案来构成第一问答对,但是综合大量目标会话段来看,针对该问题能够得到的答案的数量是足够的。表1顾客商家订单不显示已付款,不给发货,顾客我着急要货客服您好亲请放心顾客所以你能帮加急对账客服由于订单是商家订单需财务审核一下,这个今天即可发货的客服这边联系财务审核一下顾客大概多久可以确定下来好了,商家可发货?客服您好今天下午即可顾客那他们今天可以发货?顾客我的时间周期太紧了顾客所以要确定的信息客服几天可以发货的亲请您放心亲顾客也请理解消费者的心情客服今天客服这个能理解的亲顾客好的顾客多谢帮忙客服应该负责的亲顾客有结果给个回复,谢谢客服好的表2通过上述构造第一问答对的方法,一方面,对于同一个问题能够得到多个答案;另一方面,对于同一个答案,可以用于解答多个问题,由于这多个答案是根据实际场景依次得来的,问题、答案之间关联度较高,且存在较强的逻辑性,可行度较高。这种一对多或者多对多的模式可以避免知识遗漏。本实施例中,所述步骤s320包括步骤s321-步骤s322。步骤s321:分别识别所述第一问答对中的问题、答案中的冗余信息,所述冗余信息包括链接、表情图、特殊符号中的至少一种。步骤s322:将识别出的所述冗余信息进行删除,或统一替换以得到预处理后的问答对。进行预处理的方式有多种,例如,对于任意问题或者答案,可以将特殊字符串都统一替换成字符串“<url>”,可以将表情符号、特殊符号进行统一删除,将转接语或者平台自动发送的消息进行统一删除。由于第一问答对的问题来源于真实存在的用户,某些时候用户发起的问题一般是针对某一个具体对象的,为说明这些具体对象,提问方或者应答方可能会发送一些链接、图片、数字等数据,这些数据在用于构建问答库的过程中被判定为干扰数据或者冗余信息,为减小这些冗余信息的干扰,减轻构建问答库中的负担,可以对分别对问题、答案进行识别,若识别到链接、表情、图片、数字等冗余信息,再将这些冗余信息进行删除,或者进行统一替换。本实施例中,对所述第一问答对中的问题、答案进行预处理的方式,除了对问题、答案中的冗余信息进行处理以外,还可以滤除问题、答案信息不完整的问答对。在一种实施方式中,在对冗余信息进行处理之后,分别判断所述第一问答对中的问题、答案的内容是否残缺,若是,滤除存在残缺问题的问答对,以及滤除存在残缺答案的问答对。在一个实例中,可以利用两个分别判断问题信息、答案信息是否完整的分类器,以过滤问题信息不完整、答案信息不完整的问答对。其中,所述分类器可以是,事先通过人工标注相应的语料,再应用机器学习分类原理构建得到分类模型,并经过训练及验证得到的用于判别文本信息是否完整的分类器。本实施例中用到的分别判断问题和答案是否完整的分类器的模型的结构示意图均如图4所示。如图4所示,所述模型包括多级数据处理层,当需要进行判断或者分类时,可以分别将问题信息、答案信息作为输入文本,将文本送至第一级数据处理层,以将输入文本进行切分得到词序列,这些词序列中的每一个词可以映射到与之唯一对应的向量,构成向量序列或者矩阵。这些向量序列或者矩阵可以被第二级数据处理层进行处理,第二级数据处理层中可以采用词袋模型(bagofwords,bow)、卷积神经网络(convolutionneuralnetwork,cnn)、递归神经网络(recurrentneuralnetwork,rnn)等进行数据处理,并将处理后的数据送入第三级数据处理层,第三级数据处理层用于判断文本是否为完整的问题或者是否为完整的答案。在本实施例中,所述模型用于判断文本是否为完整的问题,也可以用于判断文本是否为完整的答案。在一个实例中,第一级数据处理层可以作为输入层,第二级数据处理层可以作为表示层,第三级数据处理层可以作为输出层,该输出层可用于实现文本分类,进一步可以根据输出层的输出结果滤除文本信息不完整的问题或者答案。当然,本领域技术人员可以采用更多或者更少的数据处理层进行判断或分类,只要能够对文本信息的完整性进行判断即可,数据处理层的级数和名称不应理解为对本发明的限制。需要说明的是,在其他实施例中还可以采用基于神经网络算法得到的其他模型来判别文本信息是否完整。若是直接对冗余信息进行删除,在一定程度上可能会降低语句的完整性,在判别问题、答案是否残缺之后滤除信息不完整的问答对,能够提升问答库质量,并降低后续数据处理的数据量,提升处理效率。在另一种实施方式中,在对冗余信息进行处理之前,可以分别判断所述第一问答对中的问题、答案的内容是否残缺,若是,滤除存在残缺问题的问答对,以及滤除存在残缺答案的问答对。在一种情况下,问题或者答案中不存在冗余信息,但是由于提问方、应答方自身的原因或者设备原因,导致问题或者答案本身的信息就不完整,这时判别文本信息是否完整可以直接滤除问题、答案残缺的问答对,以提升问答库质量,并降低后续数据处理的数据量,提升处理效率。在一个实例中,滤除的问答对如下表3所示。其中,表中“[]”中的内容已经过预处理,例如,“[数字x]”是由具体的阿拉伯数字替换而得的。表3在一种实施方式中,所述步骤s330包括步骤s331-步骤s332。步骤s331:将经过预处理的问题与答案导入匹配模型以计算出置信度。步骤s332:判断所述置信度是否大于或等于预设值,若是,则判定结果为匹配。其中,所述匹配模型可以是,事先通过人工标注大量相应的问题-答案是否匹配的数据,再应用机器学习分类原理构建分类模型,并经过训练及验证而得到判别问题-答案是否匹配的分类器。本实施例中用到的判断问题-答案是否匹配的算法模型的结构示意图如图5所示。该模型包括多级数据处理层,这些数据处理层可以对文本进行切分、映射,得到与文本唯一对应的向量序列或者二维矩阵,再利用词袋模型(bagofwords,bow)、卷积神经网络(convolutionneuralnetwork,cnn)、递归神经网络(recurrentneuralnetwork,rnn)等对向量序列或者二维矩阵进行数据处理,得到长度为m的向量。在分别得到与问题、答案对应的两个长度为m的向量之后,该两个长度为m的向量之间可以进行连接、相加、相减、点乘等操作,得到目标向量,对该目标向量进行判断或者计算即可实现分类,例如可以通过多层感知机(multi-layerperception,mlp)进行处理。其中,本领域技术人员可以经验或者实验结果调整确定长度m。在一个实例中,该模型可以包括两个输入层、两个表示层、一个匹配层、一个输出层。当需要进行判断或者分类时,分别将问题、答案送至两个输入层进行文本切分、映射,两个表示层可以分别得到两个长度为m的向量,该匹配层可以对该两个长度为m的向量进行处理以得到目标向量,输出层用于输出判断结果,以表明问题与答案之间是否匹配。其中,通过该模型可以计算出问题与答案之间的置信度,筛选出满足置信度的预设值要求的问答对。当然,本领域技术人员可以采用更多或者更少的数据处理层进行处理或分类,只要能够计算问题、答案之间的置信度,判断出问题、答案之间是否匹配即可,数据处理层的级数和名称不应理解为对本发明的限制。需要说明的是,在其他实施例中还可以采用基于神经网络算法得到的其他模型来判断问题和答案是否匹配。所述置信度可用于评价问题、答案之间的匹配度,置信度越高表明问题、答案之间越匹配。所述预设值可以是75%、85%、95%、98%等。在一个实例中,当置信度大于或等于75%时被判定为高质量问答对,并计为第二问答对,进一步存入问答库。本领域技术人员可以根据实际需求任意设置所述预设值,以得到多个满足匹配条件的问答对,并将其记为第二问答对。在另一种实施方式中,可以根据置信度对问答对进行排序,以筛选出置信度排名前十或者前三的问答对,并将筛选得到的问答对记为第二问答对。在其他实施方式中,可以根据置信度排名以筛选出满足预设比例的问答对,并将筛选得到的问答对记为第二问答对。在一个实例中,问题、答案通过匹配判断后的得到的结果如下表4所示,其中表4中的数据为大于或等于75%的置信度的问答对。需要说明的是,下表中的“[数字x]”是在预处理过程中由具体阿拉伯数字替换而得的。表4将经过预处理后的问答对进行匹配判断,能够得到高质量的第二问答对,将第二问答对存入问答库中可以得到高质量的问答库,整个问答库的建立过程清晰,且便于后续维护与更新。下面将结合一个完整实例对本发明的方案进行详细说明。本例中,选取了来自网购平台的约200万条人工应答记录作为本实施例的语料库。而后通过人工筛选的方式从200万条人工应答记录中随机选取了1000条高质量的问答对参与最终的效果评估。评估过程中,人工筛选得到的1000条高质量问答对作为参考数据,利用上述处理语料的方法而得到的多个第二问答对数据作为实验数据,通过所述参考数据与所述实验数据以进行效果评估。其中,效果评估方式有两种。第一种,通过计算人工筛选出的1000条高质量问答对有多少条出现在本实施例获取得到的第二问答对中,以作为评估本实施例的召回率;第二种,从本实施例所述方法得到的多个第二问答对中随机筛选1000条,再通过人工评判这1000条中有多少条确实是符合高质量的问答对,以作为评估本实施例的准确率。这两种方式中的数据量足够,且筛选数据的方式为随机筛选,没有忽略人工筛选、人工评判的灵活性,具有较高的可信度。该召回率、准确率还可以分别被称为查全率和查准率。具体地,将约200万条人工应答记录根据购买商品的顾客昵称及时间顺序进行划分整理,得到了354013个独立的会话。在同一会话中,针对顾客提出的问题,根据时间顺序从会话中选取该问题之后最近的三个答案,将这三个答案分别与该问题组成三个粗糙的问答对。在354013个独立的会话中,本实施例构造出了2554302条粗糙的问答对,即第一问答对。进一步地,分别针对问答对中的问题和答案进行预处理,其方式有多种,本领域技术人员可根据实际需要进行设置。在此,根据本实施例进行举例说明:将问题中出现的商品链接、图片链接和语音文件名称等字符串都统一替换成字符串“<url>”;将问题中的表情符号进行统一删除,将问题中的特殊符号,如“】●◎★■∮〓※》∏”等字符串进行统一删除;将答案中客服的转接语、客户端自动发送的消息,如“(对方正在使用“xx客户端”收发消息)”、“【该消息来自手机xx网】”、“该会员正在浏览的商品”等字符串进行统一删除。然后,利用两个分别判断问题信息和答案信息是否完整的分类器,过滤问题信息不完整和答案信息不完整的问答对。通常,这里所用到的两个分类器,可以是事先通过人工标注相应的语料,再应用机器学习分类原理构建模型,并经过训练及验证而得到的。本实施例中用到的分别判断问题信息和答案信息是否完整的算法模型的结构示意图均如图4所示。在此,将2554302条粗糙的问答对分别针对问题和答案进行预处理并根据信息量过滤之后得到了1801019条粗糙问答对。进一步地,利用判断问题-答案是否匹配的分类器,过滤问题-答案不匹配的问答对。通常,这里所用到的判断问题-答案是否匹配的分类器,可以是事先通过人工标注大量相应的问题-答案是否匹配的数据,再应用机器学习分类原理构建模型,并经过训练及验证而得到的。本实施例中用到的判断问题-答案是否匹配的算法模型的结构示意图如图5所示。在此,将1801019条粗糙问答对经过判断问题-答案是否匹配的分类器进行过滤之后,最终得到69079条高质量的问答对,即第二问答对。效果评估:(一)人工筛选的1000条高质量问答对有821条出现在本实施例中最终得到的第二问答对中,因此本实施例的召回率为0.821。(二)从本实施例中最终得到的第二问答对中随机选取1000条,经过人工评判,正确的有942条,因此本方案的准确率为0.942。本发明实施例提供的处理问答语料的方法可以获取高质量问答对,对于检索式智能问答机器人的问答库创建以及后期持续维护过程中都发挥着重要作用。在问答库的创建过程中,所述方法可以大量节省人力成本、提高效率,且能输出质量较高的问答对,具有良好的应用价值;在问答库的维护过程中,使用所述方法可以不断发现新问题,或是发现原始问题的新答案,使得检索式问答机器人越用越聪明。本实施例中,在创建问答库后,所述方法还可以包括步骤s350-步骤s380。步骤s350-步骤s380可以认为是对利用上述方法建立的问答库的使用步骤。步骤s350:根据接收到的用户发送的待处理问题在所述问答库中进行检索,以得到与所述待处理问题相关的多个第三问答对。步骤s360:将所述待处理问题与多个所述第三问答对中的答案构造为多个第四问答对。步骤s370:计算所述第四问答对的相关度。步骤s380:将相关度最高的所述第四问答对中的答案发送给所述用户。在一个实例中,当接收到用户输入的问题q时,对问题q中链接、表情等冗余信息进行预处理,对经过预处理后的问题q,在问答库中进行检索,从问答库中得到多个第二问答对q1-a1、q2-a2……,这些被检索到的问答对可以被记为第三问答对,第三问答对可以视为参考问答对。需要说明的是,q与q1、q2等从字面上看可能是相似的,但是在语义上面却并不一定相似,利用现有的意图识别、语义解析、语义匹配等手段可以进一步进行区分。当从问答库中得到第三问答对后,将第三问答对中的答案a1、a2等作为候选,并分别与输入的问题q形成新的问答对q-a1、q-a2……,这些新的问答对被记为第四问答对。然后分别计算这些第四问答对的相关度,最后将满足相关度要求的问答对中的答案发送给用户。其中,相关度的计算可以参考上述置信度的计算方式,根据相关度排名可以得到相关度最高的答案,若是存在相关度相同的答案,则可以从中随机选取一个相关度最高的答案发送至用户。在其他实施例中,可以通过其他方式从问答库中选出答案发送至用户。对于问答库的后续应用方式不应理解为对本发明的限制。通过上述方法能够向用户提供从上述高质量问答库中筛选出的答案,可以大量节省人力成本、提高效率,具有良好的应用价值。请参阅图6,是本发明实施例提供的图2所示的处理问答语料的装置110的功能模块示意图。所述处理问答语料的装置110包括第一构造模块111、预处理模块112、判断模块113、第二构造模块114。第一构造模块111,用于根据语料库构造第一问答对。预处理模块112,用于分别对所述第一问答对中的问题、答案进行预处理。判断模块113,用于判断经过预处理的问题与答案是否匹配。第二构造模块114,用于将判定结果为匹配的问题和答案构造为第二问答对,并将所述第二问答对存入问答库中。其中,第一构造模块111可以提高召回率,第二构造模块114可以提高准确率,使得第二问答对的准确率高,因为准确率可以在极大程度上保证问答库的质量,保障问答系统的应答效果。本实施例中,所述第一构造模块111还包括获取模块、排序模块、生成模块。所述获取模块用于获取语料库,所述语料库中包括提问方的会话内容,以及与所述提问方的会话内容对应的应答方的会话内容。所述排序模块用于按照时间顺序将提问方的会话内容、应答方的会话内容进行排序。所述生成模块用于根据排序后的会话内容生成目标会话段,还用于根据所述目标会话段构造多个第一问答对。其中,所述生成模块还用于,在同一所述目标会话段中,根据所述提问方的会话内容,按照时间顺序筛选出至少一个与所述提问方的会话内容对应的应答方的会话内容,将所述提问方的会话内容与经过筛选得到的应答方的会话内容作为第一问答对。本实施例中,预处理模块112还包括识别模块、统一处理模块、第一过滤模块。所述识别模块用于识别所述第一问答对中的问题、答案中的冗余信息,所述冗余信息包括链接、表情图、特殊符号中的至少一种。所述统一处理模块用于将识别出的所述冗余信息进行删除,或统一替换。所述第一过滤模块用于滤除存在残缺问题的问答对,还用于滤除存在残缺答案的问答对。其中,判断模块113还用于将经过预处理的问题与答案导入匹配模型以计算出置信度,判断所述置信度是否大于或等于预设值,若是,则判定结果为匹配。在本实施例中,所述装置还包括检索模块、第三构造模块、计算模块、发送模块。所述检索模块,用于根据接收到的用户发送的待处理问题在所述问答库中进行检索,以得到与所述待处理问题相关的多个第三问答对。所述第三构造模块,用于将所述待处理问题与多个所述第三问答对中的答案构造为多个第四问答对。所述计算模块,用于计算所述第四问答对的相关度。所述发送模块,用于将相关度最高的所述第四问答对中的答案发送给所述用户。关于本实施例所述的处理问答语料的装置的其他细节可以进一步参考上述处理问答语料的方法的相关描述,在此不再赘述。综上所述,本发明实施例的处理问答语料的方法、装置及电子终端,可以通过从含有大量人工应答记录的语料库中构造出多个第一问答对。对第一问答对中的问题、答案分别进行预处理,还可以滤除问题、答案信息不完整的第一问答对以减小数据处理量,简化处理步骤;再对经过预处理的问答对进行匹配分析,可以得到满足匹配条件的第二问答对,并将第二问答对作为建立问答库的重要元素。以此可以解决由于人为因素过多带来的知识遗漏、效率低的问题,能够兼顾查全率、查准率,并能够提高问答知识库的质量,从而向用户提供高质量的智能问答服务。在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1