CN110674271B - 一种问答处理方法及装置 - Google Patents
一种问答处理方法及装置 Download PDFInfo
- Publication number
- CN110674271B CN110674271B CN201910797436.0A CN201910797436A CN110674271B CN 110674271 B CN110674271 B CN 110674271B CN 201910797436 A CN201910797436 A CN 201910797436A CN 110674271 B CN110674271 B CN 110674271B
- Authority
- CN
- China
- Prior art keywords
- text
- recalled
- recall
- answer
- question
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 32
- 238000012545 processing Methods 0.000 claims abstract description 79
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000000605 extraction Methods 0.000 claims abstract description 29
- 230000015654 memory Effects 0.000 claims description 29
- 239000011159 matrix material Substances 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 12
- 238000005065 mining Methods 0.000 claims description 11
- 238000012216 screening Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 5
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims 1
- 238000003058 natural language processing Methods 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 18
- 230000002457 bidirectional effect Effects 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 238000012549 training Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 6
- 238000001914 filtration Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000007787 long-term memory Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3346—Query execution using probabilistic model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种问答处理方法、装置、电子设备及存储介质;涉及人工智能的自然语言处理技术;方法包括:根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本;确定召回文本的召回分数,并确定召回文本的紧密度分数;根据召回文本以及问题信息,对召回文本中的词进行预测,得到召回文本中的词作为起始答案的概率以及作为结束答案的概率;根据召回文本中的词作为起始答案的概率、以及作为结束答案的概率,确定召回文本作为答案的抽取分数;根据召回文本的召回分数、紧密度分数、以及召回文本作为答案的抽取分数,对至少一个召回文本进行抽取,生成对应于问题信息的答案。通过本发明,能够不断获取准确的问答对,提供问答对的时新性。
Description
技术领域
本发明涉及人工智能的自然语言处理技术,尤其涉及一种问答处理方法、装置、电子设备及存储介质。
背景技术
自然语言处理(Nature Language Processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向,能实现人与计算机之间用自然语言进行有效通信。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,该领域将涉及自然语言,即人们日常使用的语言,所以它与语言学有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
知识问答系统是自然语言处理领域的重要应用之一,在对话系统、客服系统、智能硬件等中都有广泛的应用,即知识问答系统是这些复杂系统的基础组件。
但是,知识问答系统中的问题时新性过高,需要不断地获取的问答对(一个问题对应至少一个答案)来进行数据累积,还需要大量的人力来进行人工标注、审核以及过滤工作,即获得问答对的成本极高。
发明内容
本发明实施例提供一种问答处理方法、装置、电子设备及存储介质,能够不断获取准确的问答对,提供问答对的时新性。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种问答处理方法,包括:
根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本;
确定所述召回文本的召回分数,并确定所述召回文本的紧密度分数;
根据所述召回文本以及所述问题信息,对所述召回文本中的词进行预测,得到所述召回文本中的词作为起始答案的概率以及作为结束答案的概率;
根据所述召回文本中的词作为起始答案的概率、以及作为结束答案的概率,确定所述召回文本作为答案的抽取分数;
根据所述召回文本的召回分数、紧密度分数、以及所述召回文本作为答案的抽取分数,对所述至少一个召回文本进行抽取,生成对应于所述问题信息的答案。
本发明实施例提供一种问答处理装置,包括:
第一处理模块,用于根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本;
第二处理模块,用于确定所述召回文本的召回分数,并确定所述召回文本的紧密度分数;
第三处理模块,用于根据所述召回文本以及所述问题信息,对所述召回文本中的词进行预测,得到所述召回文本中的词作为起始答案的概率以及作为结束答案的概率;
确定模块,用于根据所述召回文本中的词作为起始答案的概率、以及作为结束答案的概率,确定所述召回文本作为答案的抽取分数;
生成模块,用于根据所述召回文本的召回分数、紧密度分数、以及所述召回文本作为答案的抽取分数,对所述至少一个召回文本进行抽取,生成对应于所述问题信息的答案。
上述技术方案中,所述装置还包括:
第二确定模块,用于响应于针对问题的答案挖掘请求,确定出搜索信息;
对所述搜索信息进行筛选,当确定出所述搜索信息存在实体词和意图词时,确定所述搜索信息为所述问题信息;或者,
对所述搜索信息进行筛选,当确定出所述搜索信息存在实体词和与所述实体词对应的属性词时,确定所述搜索信息为所述问题信息。
上述技术方案中,所述第一处理模块还用于根据所述问题信息中的关键词,确定所述问题信息中的关键词的权重;
根据所述问题信息中的关键词以及所述待召回文本,确定所述关键词与所述待召回文本的相关度;
对所述关键词的权重、以及所述关键词与所述待召回文本的相关度进行加权求和,得到所述问题信息与所述待召回文本的相关度分数;
基于所述问题信息与所述待召回文本的相关度分数,对所述待召回文本进行排序,得到对应的至少一个召回文本。
上述技术方案中,所述第一处理模块还用于确定所述待召回文本的长度与文本的平均长度之间的第一比值,将所述第一比值确定为所述待召回文本的相对长度;
确定所述问题信息中的关键词在所述待召回文本中出现的频率、与所述待召回文本的相对长度之间的第二比值;
根据所述第二比值与相关度的映射关系、以及所述第二比值,生成所述关键词与所述待召回文本之间的相关度。
上述技术方案中,所述第二处理模块还用于根据所述召回文本中的关键词,确定所述待召回文本中包含关键词的文本数量;
根据所述待召回文本中包含关键词的文本数量、所述待召回文本的数量以及所述召回文本中的关键词在知识图谱中的实体权威度,得到所述召回文本中的关键词的权重;
对所述召回文本中的关键词的权重进行求和,得到所述召回文本的召回分数。
上述技术方案中,所述第二处理模块还用于遍历所述问题信息与所述召回文本之间的匹配词;
确定当前遍历到的匹配词在所述召回文本的第一位置;
确定所述下一个遍历到的匹配词在所述召回文本的第二位置;
根据所述第一位置以及所述第二位置,确定所述召回文本的紧密度分数。
上述技术方案中,所述第二处理模块还用于将所述第一位置与所述第二位置之间的距离,确定为匹配词的相对距离;
根据所述匹配词的相对距离与所述召回文本的紧密度分数的映射关系、以及所述匹配词的相对距离,生成所述召回文本的紧密度分数。
上述技术方案中,所述第三处理模块还用于确定所述召回文本的词注意力向量以及所述问题信息的词注意力向量;
根据起始答案的全连接矩阵、所述召回文本的词嵌入向量、所述召回文本的词注意力向量、以及所述问题信息的词注意力向量,对所述召回文本中的词进行预测,得到所述召回文本中的词作为起始答案的概率;
根据结束答案的全连接矩阵、所述召回文本的词嵌入向量、所述召回文本的词注意力向量、以及所述问题信息的词注意力向量,对所述召回文本中的词进行预测,得到所述召回文本中的词作为结束答案的概率。
上述技术方案中,所述第三处理模块还用于确定所述召回文本的词注意力权重;
对所述召回文本的词注意力权重、以及所述问题信息的词嵌入向量进行加权求和,得到所述召回文本的词注意力向量;
确定所述问题信息的词注意力权重;
对所述问题信息的词注意力权重、以及所述问题信息的词嵌入向量进行加权求和,得到所述问题信息的词注意力向量。
本发明实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的问答处理方法。
本发明实施例提供一种存储介质,存储有可执行指令,用于引起处理器执行时,实现本发明实施例提供的问答处理方法。
本发明实施例具有以下有益效果:
1、通过问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本,从而对待召回文本进行初步的召回处理,以便后续进一步的召回处理;
2、在得到对应的至少一个召回文本后,还根据召回文本的召回分数、紧密度分数、以及召回文本作为答案的抽取分数,对召回文本进行抽取,获得对应于问题信息的准确答案,从而不断获得准确的问答对,提供问答对的时新性。
附图说明
图1是本发明实施例提供的问答处理方法的一个可选的应用场景10示意图;
图2是本发明实施例提供的问答处理设备500的结构示意图;
图3是本发明实施例提供的问答处理设备500的结构示意图
图4-7是本发明实施例提供的问答处理方法的流程示意图;
图8是本发明实施例提供的问答处理方法的流程示意图;
图9是本发明实施例提供的双向长短时记忆模型示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)分词:将连续的字序列按照一定的规范重新组合成词序列的过程。通过让计算机模拟人对句子的理解,达到识别词的效果。
2)实体词:实体是指能够独立存在的、作为一切属性的基础和万物本原的东西,即实体词是指能够表示实体的词语。名词与代词为实体词,例如“徐某”、“妻子”为实体词。
3)意图词:意图是清楚地意识到要争取实现的目标,意图词是指能够表示问题的词语,例如“谁”、“是谁”、“在哪”为意图词。
4)召回(Recall):从文档库中检索出相关文档。
下面分析相关技术提供的关于问答处理的方案。
在相关技术中,问答系统主要是基于知识图谱的问答(Knowledge Base QuestionAnswering,KBQA)以及基于问题相似度检索的问答。
其中,基于知识图谱的问答主要依赖建立的全领域或者某个行业的知识图谱,将用户的问题信息解析为三元组或者多元组的形式,之后再利用图数据库查询的方式返回结构化的结果,再对结构化的结果进行加工处理,其中加工处理主要包括自然语言生成(Natural Language Generation,NLG)技术,并将加工处理后的结果返给用户。
而基于问题相似度的检索式问答主要是通过建立问题与答案对的知识库来实现的。将用户的问题信息与知识库中的标准问题进行短文本的相似度计算,将知识库中最相似的标准答案作为结果返给用户。
由于构建知识图谱的复杂性以及受限于问题本身的复杂,采用基于知识图谱的问答并不能解决大多数的问题。甚至由于某些问题的时新性过高,例如来自于某些新闻的问题,基于知识图谱的问答获得的答案会大大滞后。
虽然,基于问题相似度的检索式问答可以召回时新性比较高的答案。但是,基于问题相似度的检索式问答中构建问答对知识库是其能否召回答案的关键。且构建问答对需要大量的数据积累以及人工标注。
因此,相关技术中获取问答对是一种被动的获取,在构建问答系统的过程中需要事先将问答对存储到知识库,往往不能够很好的覆盖与反馈用户的最新的问题信息。
基于此,本发明实施例提出了一种问答处理方法可以抽取问题信息,并自动获取的对应的答案,生成问答对,从而实现一套完整的主动挖掘问答对的系统。
鉴于此,本发明实施例提供了一种问答处理方法、装置、电子设备及存储介质,能够不断获取准确的问答对,提供问答对的时新性。下面说明本发明实施例提供的问答处理设备的示例性应用,本发明实施例提供的问答处理设备可以是服务器,例如部署在云端的服务器,根据待回答的问题信息,向用户提供问题信息对应的答案;也可是笔记本电脑,平板电脑,台式计算机,移动设备(例如,移动电话,个人数字助理)等各种类型的用户终端,例如手持终端,根据待回答的问题信息,获得相应的答案,并显示在手持终端的显示界面上,以实现手持终端与用户的交互过程。
参见图1,图1是本发明实施例提供的问答处理方法的一个可选的应用场景10示意图,终端200通过网络300连接服务器100,网络300可以是广域网或者局域网,又或者是二者的组合。
终端200可以被用来获取问题信息,例如,当用户通过输入界面输入问题信息,输入完成后,终端自动获取问题信息。
在一些实施例中,终端200本地执行本发明实施例提供的问答处理方法来完成根据用户输入的问题信息,得到准确的答案,例如,在终端200上安装应用(Application,APP),如搜索APP,用户在搜索APP中输入信息,当确认该信息为待回答的问题信息时,终端200根据问题信息进行一系列的挖掘处理,获得准确的答案,得到准确的问答对,并存储至知识库,以便后续根据问题信息直接在知识库中检索出对应的答案,并将该答案显示在终端200的显示界面210上。
终端200也可以通过网络300向服务器100发送用户在终端200上输入的问题信息,并调用服务器100提供的问答处理功能,服务器100通过本发明实施例提供的问答处理方法获得准确的答案,例如,在终端200上安装搜索APP,用户在搜索APP中输入问题信息,终端200通过网络300向服务器100发送问题信息,服务器100根据问题信息进行一系列的挖掘处理,获得准确的答案,得到准确的问答对,并存储至知识库,以便后续根据问题信息直接在知识库中检索出对应的答案,并返回该答案返回至搜索APP,将答案显示在终端200的显示界面上。
继续说明本发明实施例提供的问答处理设备的结构,问答处理设备可以是各种终端,例如手机、电脑等,也可以是如图1示出的服务器100。
参见图2,图2是本发明实施例提供的问答处理设备500的结构示意图,图2所示的问答处理设备500包括:至少一个处理器510、存储器550、至少一个网络接口520和用户接口530。问答处理设备500中的各个组件通过总线系统540耦合在一起。可理解,总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统540。
处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口530包括使得能够呈现媒体内容的一个或多个输出装置531,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口530还包括一个或多个输入装置532,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Onl y Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本发明实施例描述的存储器550旨在包括任意适合类型的存储器。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。
在一些实施例中,存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统551,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块552,用于经由一个或多个(有线或无线)网络接口520到达其他计算设备,示例性的网络接口520包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
显示模块553,用于经由一个或多个与用户接口530相关联的输出装置531(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
输入处理模块554,用于对一个或多个来自一个或多个输入装置532之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本发明实施例提供的问答处理装置可以采用软硬件结合的方式实现,作为示例,本发明实施例提供的问答处理装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的问答处理方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific IntegratedCircuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Progra mmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable GateArray)或其他电子元件。
在另一些实施例中,本发明实施例提供的问答处理装置可以采用软件方式实现,图2示出了存储在存储器550中的问答处理装置555,其可以是程序和插件等形式的软件,并包括一系列的模块,包括第一处理模块5551、第二处理模块5552、第三处理模块5553、第一确定模块5554、以及生成模块5555;其中,第一处理模块5551、第二处理模块5552、第三处理模块5553、第一确定模块5554、以及生成模块5555用于实现本发明实施例提供的问答处理方法。
结合本发明实施例提供的终端的示例性应用和实施,说明本发明实施例提供的问答处理方法,根据上文可以理解,本发明实施例提供的问答处理方法可以由各种类型的问答处理设备实施,例如智能终端和服务器等。
下面结合本发明实施例提供的服务器的示例性应用和实施,说明本发明实施例提供的问答处理方法。参见图3和图4,图4是本发明实施例提供的问答处理方法的流程示意图,结合图4示出的步骤进行说明。
在步骤101中,根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本。
在用户通过终端的输入界面输入问题信息,输入完成后,并向服务器发送该问题信息。服务器接收到该问题信息后,根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本,其中,所述待召回文本可以是知识库中的文本,该知识库可以是用户预先在服务器中存储的数据库,也可以是未被存储至知识库中文本,例如网页上最新报道的新闻、公众号上的文本。
作为示例,参见图3,通过问答处理装置555中召回模块中的第一处理模块对问题信息进行分词处理,得到问题信息中的关键词,从而确定问题信息中的关键词的权重。
参见图5,图5是本发明实施例提供的一个可选的流程示意图,在一些实施例中,图5示出步骤101可以通过图5示出的步骤1011至步骤1014实现。
在步骤1011中,根据问题信息中的关键词,确定问题信息中的关键词的权重。
服务器获得问题信息后,可以对问题信息进行分词处理,得到问题信息中的关键词,从而确定问题信息中的关键词的权重。服务器可以根据问题信息的关键词对待召回文本进行搜索,统计出待召回文本中包含关键词的文本数量,并计算待召回文本中包含关键词的文本数量与待召回文本的总数量的比值,得到问题信息中的关键词的权重。当问题信息中的关键词在待召回文本中出现的频率越高,说明该问题信息的关键词越重要,即该问题信息的关键词的权重越大。
在步骤1012中,根据问题信息中的关键词以及待召回文本,确定关键词与待召回文本的相关度。
服务器在获得问题信息中的关键词后,可以根据问题信息中的关键词以及待召回文本,确定关键词与待召回文本的相关度。
在一些实施例中,根据问题信息中的关键词以及待召回文本,确定关键词与待召回文本的相关度,包括:确定待召回文本的长度与文本的平均长度之间的第一比值,将第一比值确定为待召回文本的相对长度;确定问题信息中的关键词在待召回文本中出现的频率、与待召回文本的相对长度之间的第二比值;根据第二比值与相关度的映射关系、以及第二比值,生成关键词与待召回文本之间的相关度。
服务器可以根据当前待召回文本,获得当前待召回文本的长度、即待召回文本的字数。服务器还可以获得所有待召回文本的平均长度、即所有待召回文本的平均字数。确定待召回文本的长度与文本的平均长度之间的第一比值,将第一比值确定为待召回文本的相对长度。当待召回文本的相对长度越大,说明待召回文本包含关键字的概率也就越大,实际上,关键词与当前待召回文本的相关度也就越低。
在服务器获得了关键词在待召回文本中出现的频率与待召回文本的相对长度后,计算关键词在待召回文本中出现的频率与待召回文本的相对长度的第二比值,该第二比值、与关键词与待召回文本的相关度成正比,即第二比值越大,该关键词与待召回文本的相关度越高。
服务器还可以通过其他的调节因子,调节关键词与待召回文本的相关度。因此,根据第二比值与相关度的映射关系(调节因子)、以及第二比值,生成关键词与待召回文本的相关度,该关键词与待召回文本的相关度用于表示关键词与待召回文本的关联程度。
在步骤1013中,对关键词的权重、以及关键词与待召回文本的相关度进行加权求和,得到问题信息与待召回文本的相关度分数。
在服务器获得键词的权重、以及关键词与待召回文本的相关度后,可以对关键词的权重、以及关键词与待召回文本的相关度进行加权求和,得到问题信息与待召回文本的相关度分数。
在步骤1014中,基于问题信息与待召回文本的相关度分数,对待召回文本进行排序,得到对应的至少一个召回文本。
在服务器得到问题信息与待召回文本的相关度分数后,可以基于问题信息与待召回文本的相关度分数,对待召回文本进行降序排序,得到前N个待召回文本,将前N个待召回文本确定为召回文本,以便后续对召回文本进行相应的处理。
在步骤102中,确定召回文本的召回分数,并确定召回文本的紧密度分数。
在服务器确定了召回文本后,可以根据召回文本以及待召回文本,确定召回文本的召回分数。
在一些实施例中,确定召回文本的召回分数,包括:根据召回文本中的关键词,确定待召回文本中包含关键词的文本数量;根据待召回文本中包含关键词的文本数量、待召回文本的数量以及召回文本中的关键词在知识图谱中的实体权威度,得到召回文本中的关键词的权重;对召回文本中的关键词的权重进行求和,得到召回文本的召回分数。
服务器在确定召回文本后,可以对召回文本进行分词,获得召回文本的关键词,并确定出待召回文本包含关键词的文本数量,根据待召回文本数量与待召回文本中包含关键词的文本数量,可以确定出召回文本中的关键词的逆向文件频率,当待召回文本中出现关键词的文本越多,说明该召回文本中的关键词越不重要。服务器还可以获取召回文本中的关键词在知识图谱中的实体权威度,其中,该实体权威度表示该召回文本中的关键词为知识图谱中实体词的概率,该实体权威度与召回文本中的关键词的权重成正比,当召回文本中关键词为知识图谱中实体词的概率越高,说明该召回文本为对应问题信息的答案的概率越高。根据待召回文本中包含关键词的文本数量、待召回文本的数量以及召回文本中的关键词在知识图谱中的实体权威度,可以得到召回文本中的关键词的权重,即召回文本中的关键词的权重越大,说明该关键词越重要。将召回文本中的关键词的权重进行求和,可以得到召回文本的召回分数,该召回文本的召回分数用于表示对召回文本进行进一步的召回处理,得到更加准确的召回文本,即召回文本的召回分数越高,该召回文本属于问题信息对应的答案的概率越高。
在服务器确定了召回文本后,可以根据召回文本,确定召回文本的紧密度分数,该召回文本的紧密度分数用于表示召回文本的词语之间的紧密度。
在一些实施例中,确定召回文本的紧密度分数,包括:遍历问题信息与召回文本之间的匹配词;确定当前遍历到的匹配词在召回文本的第一位置;确定下一个遍历到的匹配词在召回文本的第二位置;根据第一位置以及第二位置,确定召回文本的紧密度分数。
服务器在确定召回文本后,可以遍历问题信息与召回文本之间的匹配词,并确定当前遍历到的匹配词在召回文本的第一位置,确定下一遍历到的匹配词在召回文本的第二位置,根据第一位置和第二位置,可以确定召回文本的紧密度分数。
在一些实施例中,根据第一位置以及第二位置,确定召回文本的紧密度分数,包括:将第一位置与第二位置之间的距离,确定为匹配词的相对距离;根据匹配词的相对距离与召回文本的紧密度分数的映射关系、以及匹配词的相对距离,生成召回文本的紧密度分数。
在服务器获得了第一位置以及第二位置后,可以将第一位置与第二位置之间的距离,确定为匹配词的相对距离,根据匹配词的相对距离与召回文本的紧密度分数的映射关系、以及匹配词的相对距离,生成召回文本的紧密度分数,该匹配词的相对距离与召回文本的紧密度分数的映射关系为匹配词的相对距离与召回文本的紧密度分数成反比关系,即匹配词的相对距离越大,召回文本的紧密度分数越小。服务器可以依次获得各匹配词的相对距离,并对各匹配词的相对距离进行求和,得到匹配词的相对距离的和,取匹配词的相对距离的和的倒数,从而得到召回文本的紧密度分数。
作为示例,参见图3,通过问答处理装置555中召回模块中的第二处理模块5552可以根据问题信息以及第一处理模块5551输出的召回文本,得到召回文本的召回分数以及紧密度分数。
在步骤103中,根据召回文本以及问题信息,对召回文本中的词进行预测,得到召回文本中的词作为起始答案的概率以及作为结束答案的概率。
服务器在获得问题信息以及召回文本后,还可以根据召回文本以及问题信息,对召回文本中的词进行预测,得到召回文本中的词作为起始答案的概率以及作为结束答案的概率,以便后续根据召回文本中的词作为起始答案的概率以及作为结束答案的概率确定召回文本作为答案的概率。
作为示例,参见图3,通过问答处理装置555中抽取模块中的第三处理模块5553可以根据第一处理模块5551输出的召回文本以及问题信息,对召回文本中的词进行预测,得到召回文本中的词作为起始答案的概率以及作为结束答案的概率。
参见图6,图6是本发明实施例提供的一个可选的流程示意图,在一些实施例中,图6示出步骤103可以通过图6示出的步骤1031至步骤1033实现。
在步骤1031中,确定召回文本的词注意力向量以及问题信息的词注意力向量。
为了得到召回文本中的词作为起始答案的概率以及作为结束答案的概率确定召回文本作为答案的概率,需要确定召回文本的词注意力向量以及问题信息的词注意力向量。
在一些实施例中,确定召回文本的词注意力向量以及问题信息的词注意力向量,包括:确定召回文本的词注意力权重;对召回文本的词注意力权重、以及问题信息的词嵌入向量进行加权求和,得到召回文本的词注意力向量;确定问题信息的词注意力权重;对问题信息的词注意力权重、以及问题信息的词嵌入向量进行加权求和,得到问题信息的词注意力向量。
为了确定召回文本的词注意力向量,需要确定召回文本的词注意力权重。可以通过问题信息中的词嵌入向量、召回文本中的词嵌入向量以及线性整流函数(RectifiedLinear Unit,ReLu),得到召回文本的词注意权重,将召回文本的词注意力权重、以及召回文本的词嵌入向量进行加权求和,从而得到召回文本的词注意力向量。
为了确定问题信息的词注意力向量,需要确定问题信息的词注意力权重。可以通过问题信息中的词嵌入向量、问题信息的权重矩阵以及线性整流函数(Rectified LinearUnit,ReLu),得到问题信息的词注意权重,将问题信息的词注意力权重、以及问题信息的词嵌入向量进行加权求和,从而得到问题信息的词注意力向量。其中,问题信息的权重矩阵为神经网络中的调节参数,需要通过训练神经网络获得。
在步骤1032中,根据起始答案的全连接矩阵、召回文本的词嵌入向量、召回文本的词注意力向量、以及问题信息的词注意力向量,对召回文本中的词进行预测,得到召回文本中的词作为起始答案的概率。
在服务器获得召回文本的词注意力向量以及问题信息的词注意力向量后,可以根据起始答案的全连接矩阵、召回文本的词嵌入向量、召回文本的词注意力向量、以及问题信息的词注意力向量,对召回文本中的词进行预测,得到召回文本中的词作为起始答案的概率,即召回文本中的词作为起始答案的概率与起始答案的全连接矩阵、召回文本的词嵌入向量、召回文本的词注意力向量、以及问题信息的词注意力向量成正比关系。其中,起始答案的全连接矩阵为神经网络中的调节参数,需要通过训练神经网络获得。
在步骤1033中,根据结束答案的全连接矩阵、召回文本的词嵌入向量、召回文本的词注意力向量、以及问题信息的词注意力向量,对召回文本中的词进行预测,得到召回文本中的词作为结束答案的概率。
在服务器获得召回文本的词注意力向量以及问题信息的词注意力向量后,可以根据结束答案的全连接矩阵、召回文本的词嵌入向量、召回文本的词注意力向量、以及问题信息的词注意力向量,对召回文本中的词进行预测,得到召回文本中的词作为结束答案的概率,即召回文本中的词作为结束答案的概率与结束答案的全连接矩阵、召回文本的词嵌入向量、召回文本的词注意力向量、以及问题信息的词注意力向量成正比关系。其中,结束答案的全连接矩阵为神经网络中的调节参数,需要通过训练神经网络获得。
在步骤104中,根据召回文本中的词作为起始答案的概率、以及作为结束答案的概率,确定召回文本作为答案的抽取分数。
在服务器获得召回文本中的词作为起始答案的概率以及作为结束答案的概率后,可以获得最大的召回文本中的词作为起始答案的概率、以及作为结束答案的概率,将最大的召回文本中的词作为起始答案的概率乘以作为结束答案的概率,得到召回文本作为答案的抽取分数,该召回文本作为答案的抽取分数用于表示召回文本属于问题信息对应的答案的概率。
作为示例,参见图3,通过问答处理装置555中抽取模块中的第一确定模块5554可以根据第三处理模块5553输出的召回文本中的词作为起始答案的概率、以及作为结束答案的概率,确定召回文本作为答案的抽取分数。
在步骤105中,根据召回文本的召回分数、紧密度分数、以及召回文本作为答案的抽取分数,对至少一个召回文本进行抽取,生成对应于问题信息的答案。
在服务器获得召回文本的召回分数、紧密度分数、以及召回文本作为答案的抽取分数后,可以根据召回文本的召回分数、紧密度分数、以及召回文本作为答案的抽取分数,得到召回文本的总分数,该总分数与召回文本的召回分数、紧密度分数、以及召回文本作为答案的抽取分数成正比,即回文本的召回分数越高、紧密度分数越高、召回文本作为答案的抽取分数越高,召回文本的总分数越高。根据召回文本的总分数对至少一个召回文本进行抽取,得到对应于问题信息的准确答案。将问题信息与答案作为问答对,并将该问答对存储至知识库中,以主动构建知识库中问答对,避免人工标注问答对,以便后续根据问题信息,对知识库进行检索,得到准确的答案。
作为示例,参见图3,通过问答处理装置555中的生成模块5555可以根据召回文本的召回分数、紧密度分数、以及召回文本作为答案的抽取分数,对至少一个召回文本进行抽取,生成对应于问题信息的答案。
在一些实施例中,参见图7,图7是本发明实施例提供的问答处理方法的一个可选的流程示意图,基于图4,在根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本之前,在步骤106中,响应于针对问题的答案挖掘请求,确定出搜索信息。在步骤107中,对搜索信息进行筛选,当确定出搜索信息存在实体词和意图词时,确定搜索信息为问题信息;或者,对搜索信息进行筛选,当确定出搜索信息存在实体词和与实体词对应的属性词时,确定搜索信息为所述问题信息。
在步骤106中,响应于针对问题的答案挖掘请求,确定出搜索信息。
当到达预设的时间点或者时间段时,服务器可以响应于针对问题的答案挖掘请求,确定出用户的搜索信息,该搜索信息可以是增量信息,即在预设的时间段内新增的信息,也可以是还未得到答案的搜索信息。
在步骤107中,对搜索信息进行筛选,当确定出搜索信息存在实体词和意图词时,确定搜索信息为问题信息;或者,对搜索信息进行筛选,当确定出搜索信息存在实体词和与实体词对应的属性词时,确定搜索信息为问题信息。
服务器确定出的搜索信息可能是问题信息,也可能不是问题信息。当搜索信息不是问题信息时,则不需要进行挖掘处理,得到对应的答案。因此,需要对搜索信息进行筛选,筛选出属于问题信息的搜索信息。
服务器可以通过两种方式,确定搜索信息是否属于问题。其中,一种方式是当确定出搜索信息存在实体词和意图词时,确定搜索信息为问题信息,例如搜索信息是“刘某的妻子是谁”,“刘某”是实体词,“是谁”是意图词,则“刘某的妻子是谁”存在实体词和意图词,则“刘某的妻子是谁”是问题信息。其中,另一种方式是当确定出搜索信息存在实体词和与实体词对应的属性词时,确定搜索信息为问题信息,例如搜索信息是“刘某的妻子”,“刘某”是实体词,“妻子”是与“刘某”对应的属性词,则“刘某的妻子”存在实体词和与实体词对应的属性词,则“刘某的妻子”是问题信息。
作为示例,参见图3,通过问答处理装置555中第二确定模块5556中有效过滤查询模块可以在确定出搜索信息后,对搜索信息进行筛选,当确定出搜索信息存在实体词和意图词时,确定搜索信息为问题信息;或者,对搜索信息进行筛选,当确定出搜索信息存在实体词和与实体词对应的属性词时,确定搜索信息为问题信息。
至此已经结合本发明实施例提供的服务器的示例性应用和实施,说明本发明实施例提供的问答处理方法,下面继续说明本发明实施例提供的问答处理装置555中各个模块配合实现问答处理的方案。
第一处理模块5551,用于根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本;
第二处理模块5552,用于确定所述召回文本的召回分数,并确定所述召回文本的紧密度分数;
第三处理模块5553,用于根据所述召回文本以及所述问题信息,对所述召回文本中的词进行预测,得到所述召回文本中的词作为起始答案的概率以及作为结束答案的概率;
第一确定模块5554,用于根据所述召回文本中的词作为起始答案的概率、以及作为结束答案的概率,确定所述召回文本作为答案的抽取分数;
生成模块5555,用于根据所述召回文本的召回分数、紧密度分数、以及所述召回文本作为答案的抽取分数,对所述至少一个召回文本进行抽取,生成对应于所述问题信息的答案。
上述技术方案中,所述问答处理装置555还包括:
第二确定模块5556,用于响应于针对问题的答案挖掘请求,确定出搜索信息;对所述搜索信息进行筛选,当确定出所述搜索信息存在实体词和意图词时,确定所述搜索信息为所述问题信息;或者,对所述搜索信息进行筛选,当确定出所述搜索信息存在实体词和与所述实体词对应的属性词时,确定所述搜索信息为所述问题信息。
上述技术方案中,所述第一处理模块5551还用于根据所述问题信息中的关键词,确定所述问题信息中的关键词的权重;根据所述问题信息中的关键词以及所述待召回文本,确定所述关键词与所述待召回文本的相关度;对所述关键词的权重、以及所述关键词与所述待召回文本的相关度进行加权求和,得到所述问题信息与所述待召回文本的相关度分数;基于所述问题信息与所述待召回文本的相关度分数,对所述待召回文本进行排序,得到对应的至少一个召回文本。
上述技术方案中,所述第一处理模块5551还用于确定所述待召回文本的长度与文本的平均长度之间的第一比值,将所述第一比值确定为所述待召回文本的相对长度;确定所述问题信息中的关键词在所述待召回文本中出现的频率、与所述待召回文本的相对长度之间的第二比值;根据所述第二比值与相关度的映射关系、以及所述第二比值,生成所述关键词与所述待召回文本之间的相关度。
上述技术方案中,所述第二处理模块5552还用于根据所述召回文本中的关键词,确定所述待召回文本中包含关键词的文本数量;根据所述待召回文本中包含关键词的文本数量、所述待召回文本的数量以及所述召回文本中的关键词在知识图谱中的实体权威度,得到所述召回文本中的关键词的权重;对所述召回文本中的关键词的权重进行求和,得到所述召回文本的召回分数。
上述技术方案中,所述第二处理模块5552还用于遍历所述问题信息与所述召回文本之间的匹配词;确定当前遍历到的匹配词在所述召回文本的第一位置;确定所述下一个遍历到的匹配词在所述召回文本的第二位置;根据所述第一位置以及所述第二位置,确定所述召回文本的紧密度分数。
上述技术方案中,所述第二处理模块5552还用于将所述第一位置与所述第二位置之间的距离,确定为匹配词的相对距离;根据所述匹配词的相对距离与所述召回文本的紧密度分数的映射关系、以及所述匹配词的相对距离,生成所述召回文本的紧密度分数。
上述技术方案中,所述第三处理模块5553还用于确定所述召回文本的词注意力向量以及所述问题信息的词注意力向量;根据起始答案的全连接矩阵、所述召回文本的词嵌入向量、所述召回文本的词注意力向量、以及所述问题信息的词注意力向量,对所述召回文本中的词进行预测,得到所述召回文本中的词作为起始答案的概率;根据结束答案的全连接矩阵、所述召回文本的词嵌入向量、所述召回文本的词注意力向量、以及所述问题信息的词注意力向量,对所述召回文本中的词进行预测,得到所述召回文本中的词作为结束答案的概率。
上述技术方案中,所述第三处理模块5553还用于确定所述召回文本的词注意力权重;对所述召回文本的词注意力权重、以及所述问题信息的词嵌入向量进行加权求和,得到所述召回文本的词注意力向量;确定所述问题信息的词注意力权重;对所述问题信息的词注意力权重、以及所述问题信息的词嵌入向量进行加权求和,得到所述问题信息的词注意力向量。
本发明实施例还提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本发明实施例提供的问答处理方法,例如,如图4至图7示出的问答处理方法。
在一些实施例中,存储介质可以是FRAM、ROM、PROM、EPROM、EE PROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
下面,将说明本发明实施例在一个实际的应用场景中的示例性应用。
相关技术中的获取问答对的主要缺点是成本极高,需要大量的人力进行审核,并且引用的第三方问答社区数据也需要大量的审核与过滤工作。获取问答对是一种被动式的获取,在构建问答系统的过程中需要事先将问答对存储至知识库中,不能很好的覆盖与反馈用户的最新的问题信息。
本发明实施例提出了一种主动获取问答对的问答处理方法,根据用户增量信息(未被回答的信息)在相关文本中进行问答对的抽取,形成一套完整的问答对,从而实现主动挖掘问答对。
本发明实施例提供一种具体应用场景是为问答系统提供问答对的挖掘。例如在智能音箱中,用户问题是“今天的热门新闻是什么?”,由于这个问题时新性比较高,可能在数据库中没有相应的答案。但根据该问题在最近的新闻、公众号文章等文本中进行检索与抽取,可以明确抽取出答案是“今天的热门是……”。之后,问答系统会利用相关的搜索技术对该答案进行校验,一旦通过校验,就可以将该问答对存储至知识库中。整个流程在数小时内即可完成,从而实现对知识库的动态更新。
图8是本发明实施例提供的问答处理方法的流程示意图,参见图8,将每日的增量信息(未被回答的信息,可能是问题信息,也可能不是问题信息)提取出来,进入离线管道(问答处理装置),得到召回的问答对。最终通过在线检索模块的校验,得到高质量问答对。下面将分别对有效查询过滤模块、离线阅读理解模块、简单问题校验模块、在线检索校验模块进行详细说明:
1、有效查询过滤模块
由于提取的增量信息可能是问题信息,也可能不是问题信息,因此,需要对增量信息进行筛选,获得属于问题信息的增量信息。该有效查询过滤模块结合知识图谱中的实体词与属性词,对用户的增量信息进行有效的过滤。该过滤过程包括去噪、改写、实体识别与意图判定,如下所示:
a)去噪:去除增量信息的不重要的词或者标点。
①去掉增量信息中前后空格;
②去掉增量信息中前后的口语化表述,例如“请告诉我”、“请问”等;
③去掉增量信息中的中英文标点、中文语气词;
④去掉增量信息中所有的单个字符、非中文字符等非法字符;
b)改写:对增量信息进行修改,使得增量信息更符合规则。
①改写增量信息中需要人工处理的词,例如同义词替换;
②将增量信息中的所有英文字母统一转换为小写或大写;
③将涉及到数字有关的实体词,进行从中文数字、罗马数字到阿拉伯数字顺序的改写;
c)实体识别,实体词需要满足如下条件:
①当前实体词不是属性词;
②当前实体词不在停用词表中、即不属于停用词;
③当前实体词长度大于1;
④当前实体词起始、终止位置不跨越分词的边界,即识别出错误的实体词;
⑤当前实体词不是已经识别出实体词的子串;
⑥当前实体词不是意图词的子串;
⑦当前实体词不是属性词的子串;
d)意图判定:判定增量信息中是否有意图词。
①判断增量信息中有合法的实体词;
②有合法的意图词,具体中文意图词包括如下:
谁、是谁、谁是、叫啥、是哪位、在哪、哪儿、哪里、从哪、在啥地方、在什么地方、多少、多长、多沉、多高、多重、多大、多少年、什么时间、哪天、几时、啥时间、什么时候、啥时候、啥时、几号、哪年、哪月、几几年、哪一年、哪一天、是什么、含义是什么、意思是什么、寓意是什么、喻意是什么、喻义是什么、讲了什么道理、比喻什么、怎么解释、怎样解释、什么是、有什么、在哪儿、在哪里、在哪个省、在哪个市、在哪个州、在哪个洲、在哪个大洲、在哪个城市、是哪个城市、是哪个省、是哪个市、是哪个州、是哪个洲、是哪个大洲、是哪里的景点、是哪儿的景点、是哪里景点、在哪儿的景点、在哪里的景点、在哪里景点、哪国、在哪国、是哪国、在哪个国家、是哪个国家、哪个国家、哪个国、是哪个国、具体地点、具体地址、什么地方、什么、是个什么、是一个什么、是个啥、是什么意思、什么意思
当增量信息中包括实体词以及意图词,则可以确定该增量信息为问题信息。当增量信息中包括实体词,但是不包括意图词时,可以根据知识图谱中实体词与属性词的关系,判断增量信息中是否具有与实体词对应的属性词,当增量信息中包括与实体词对应的属性词,则可以确定该增量信息为问题信息。
2、离线阅读理解模块
离线阅读理解模块包含三个部分:第一部分,根据问题信息得到召回文本的召回模块;第二部分,在召回文本中寻找答案的抽取模块;第三部分,对第一部分和第二部分得到的分数的进行合并排序,得到最终的排序输出,取最高分数的文本作为最终的答案的生成模块。
a)召回模块
①粗召回:对需要召回的文本按段落进行打散重排,形成一句一句的文本,即待召回的文本,后续所有的操作都是基于待召回文本进行处理的。可以利用搜索引擎(ElasticSearch)对待召回文本进行召回,具体召回算法采用改进的BM25算法,其中计算过程如公式(1)所示:
其中,Q表示问题信息,d表示待召回文本,Score(Q,d)表示问题与待召回文本匹配分数(问题信息与待召回文本的相关度分数),qi表示Q解析之后的一个语素(可以把对Q的分词作为语素分析,每个词看成语素qi),IDF(qi)表示语素qi的权重,即问题信息中第i个词的逆向文件频率(idf)值,fi表示语素qi在d中出现的频率,dl表示文本d的长度,avgdl表示所有待召回文本的平均长度,k1、b为调节因子,默认值为b=0.75k1=1.2。
实际应用的时候,为了尽可能降低fi对召回的影响,对fi进行打压,即设置k1=0.5。
另外,可以增加一个与文本匹配的特征,即问题信息中的实体词,当召回文本中含有该实体词,则说明召回文本可能为含有正确答案的文本。
②细召回:对于召回文本,计算召回文本中每个词idf值,并对idf值按实体词进行加权,其计算过程如公式(2)、(3)所示:
其中,公式(2)中t表示需要计算的词,N表示待召回文本的数量,Nt表示包含t的文本数量,Pop表示t在知识图谱中的实体权威度,用于表征t为实体词的可信度。
公式(3)中n是文本分词之后的长度,retrieve_score表示召回文本的召回分数。在计算召回文本中每个词idf值之前,还可以引入bi-gram二元语法模型提高召回准确性,即将召回文本进行分词后,得到的语素进行两两组合,组成新的集合,计算集合中的每个词idf值,并对idf值按实体词进行加权。
③紧密度分数:考虑到召回文本中词顺序,引入召回文本的紧密度分数概念,具体计算过程如公式(4)所示:
其中,i表示召回文本与问题信息匹配的第i个词,k表示召回文本与问题信息匹配的词个数,distance<i,i+1>表示第i个词与第i+1个词之间的字符距离。计算召回文本与问题信息匹配的词的距离,召回文本的紧密度分数与该距离和成反比关系。
b)抽取模块
该抽取模块为一个双向长短时记忆(Long Short-Term Memory,LSTM)模型,如图9所示,将召回文本以及问题信息输入至该双向长短时记忆模型,该双向长短时记忆模型输出答案在该召回文本中的位置。其中,
双向长短时记忆模型的输入为:问题信息(古时候的考试前三名)以及召回文本(进士的前三名分别称为状元、榜眼和探花);
双向长短时记忆模型的输出为:召回文本分词之后,每一个词作为答案起始位置的概率向量start_index、每一个词作为答案结束位置的概率向量end_index;
双向长短时记忆模型的训练数据为:人工标注数据、输入问题与文本、以及标注答案的位置;
双向长短时记忆模型中的特征:文本的词嵌入向量、文本的词频特征、pos特征、ner特征、文本与问题信息的词匹配特征、问题信息的词嵌入向量、以及文本对问题信息的词注意力向量。
其中,注意力的计算过程如下:
例如,召回文本为(p1 p2 p3 p4……pi……),问题信息为(q1 q2 q3 q4……qj……),其中,pi表示召回文本中的一个词,qj表示问题信息中的一个词。
召回文本的词注意力向量的计算过程,如公式(5)、(6)所示:
其中,aij表示召回文本中第i个词对问题信息中第j个词的注意力权重(召回文本的词注意力权重),E(qj)表示问题信息中第j个词的词嵌入向量,E(Pi)表示召回文本中第i个词的词嵌入向量,ReLu表示线性整流函数,其中exp表示自然对数的底的指数运算。
问题信息的词注意力向量的计算过程,如公式(7)、(8)所示:
其中,E(qj)表示问题信息中第j个词的词嵌入向量,bj表示问题信息中第j个词的注意力权重,w表示需要训练的权重矩阵。
对召回文本进行预测,预测召回文本中第i个词作为起始答案概率以及第i个词作为答案结束概率,其计算过程如公式(9)、(10)所示:
Pstart(i)∝exp(piWsq) (9)
Pend(i)∝exp(piWeq) (10)
其中,pi表示召回文本的最终编码表示,包括召回文本的词嵌入向量以及召回文本的词注意力向量f(pi),q表示问题信息的词注意力向量,Ws表示起始答案的全连接矩阵,We表示结束答案的全连接矩阵,即Ws和We为训练参数,Pstart(i)表示召回文本中第i个词作为起始答案的概率,Pend(i)表示召回文本中第i个词作为结束答案的概率。
对双向长短时记忆模型的训练:经过softmax层的对损失函数进行训练,如公式(11)所示:
其中,pij表示第i个样本文本中第j个词预测的结果概率,包括上述Pstart(i)和Pend(i),yij表示第i个样本文本中第j个词的标签,M表示样本文本的长度,N表示样本文本的个数。通过该损失函数对双向长短时记忆模型进行训练,获得双向长短时记忆模型的训练参数,以便后续根据双向长短时记忆模型得到召回文本中词作为起始答案概率以及作为答案结束概率。
在获得召回文本中第i个词作为起始答案概率以及第i个词作为答案结束概率后,可以获得召回文本中词的起始向量与结束向量的笛卡尔积中最大的区间,如公式(12)所示:
(start_index,end_index)=argmax(P(start)×P(end)) (12)
其中,P(start)表示上述公式中Pstart(i)的集合,P(end)表示上述公式中的Pend(i)的集合,start_index表示召回文本中作为起始答案概率最大的起始向量,end_index表示召回文本中作为结束答案概率最大的结束向量。
根据起始向量和结束向量,可以获得召回文本的抽取分数,其中抽取分数的计算过程如公式(13)所示:
precisionscore=Pstart(start_index)×Pend(end_index) (13)
其中,Pstart(start_ind)ex表示召回文本中起始向量作为起始答案概率,Pend(end_index)表示召回文本中结束向量作为结束答案概率,precisionscore表示召回文本的抽取分数。
c)生成模块
生成模块将召回文本的召回分数、紧密度分数、以及抽取分数进行一个合成,得到最终的排序分数,如公式(14)所示:
score=(retrievescore+tightscore)*precisionscore (14)
3、简单问题校验模块
利用相关技术中基于知识图谱的问答的技术,对确定了的问题信息进行解析,当确定问题信息为简单的问题时,不需要通过本发明实施例中的问答处理方法挖掘出的回答,从而简化问答处理方法的处理过程。
4、在线检索校验模块
利用相关技术中的搜索引擎,可以对抽取的问答对进行精化。该在线检索校验模块包括访问问答社区与访问搜索引擎两种方式。其中,一种方式是,由于搜索引擎中都有相应的问答框或者相关网页,通过对问答框或者网页进行数据抓取,来校验当前问答对的准确性。另一种方式是,通过问答社区对排名靠前的答案进行投票计分,当分数超过预设阈值,即认为该回答正确,从而获得高质量的问答对。
综上所述,本发明实施例通过根据筛选得到的问题信息,获得准确的答案,形成高质量的答案对,具有以下有益效果:
1、增加对用户增量信息中未回答问题的覆盖率,对问题信息进行挖掘;
2、提供了一种更主动地获得高质量的问答对的方式;
3、可以作为一种在线服务,为实时性更强的领域提供问答服务,例如根据最新的新闻,获得时新性高的问答对。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。
Claims (10)
1.一种问答处理方法,其特征在于,包括:
根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本;
根据所述待召回文本中包含关键词的文本数量、所述待召回文本的数量以及所述召回文本中的关键词在知识图谱中的实体权威度,得到所述召回文本中的关键词的权重,其中,所述实体权威度表示所述召回文本中的关键词为知识图谱中实体词的概率;
对所述召回文本中的关键词的权重进行求和,得到所述召回文本的召回分数;
确定所述召回文本的紧密度分数;
遍历所述问题信息与所述召回文本之间的匹配词,确定当前遍历到的匹配词在所述召回文本的第一位置,确定下一个遍历到的匹配词在所述召回文本的第二位置,根据所述第一位置以及所述第二位置,确定所述召回文本的紧密度分数;
根据所述召回文本以及所述问题信息,对所述召回文本中的词进行预测,得到所述召回文本中的词作为起始答案的概率以及作为结束答案的概率;
根据所述召回文本中的词作为起始答案的概率、以及作为结束答案的概率,确定所述召回文本作为答案的抽取分数;
根据所述召回文本的召回分数、紧密度分数、以及所述召回文本作为答案的抽取分数,对所述至少一个召回文本进行抽取,生成对应于所述问题信息的答案。
2.根据权利要求1所述的方法,其特征在于,所述进行召回处理之前,所述方法还包括:
响应于针对问题的答案挖掘请求,确定出搜索信息;
对所述搜索信息进行筛选,当确定出所述搜索信息存在实体词和意图词时,确定所述搜索信息为所述问题信息;或者,
对所述搜索信息进行筛选,当确定出所述搜索信息存在实体词和与所述实体词对应的属性词时,确定所述搜索信息为所述问题信息。
3.根据权利要求1所述的方法,其特征在于,所述根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本,包括:
根据所述问题信息中的关键词,确定所述问题信息中的关键词的权重;
根据所述问题信息中的关键词以及所述待召回文本,确定所述关键词与所述待召回文本的相关度;
对所述关键词的权重、以及所述关键词与所述待召回文本的相关度进行加权求和,得到所述问题信息与所述待召回文本的相关度分数;
基于所述问题信息与所述待召回文本的相关度分数,对所述待召回文本进行排序,得到对应的至少一个召回文本。
4.根据权利要求3所述的方法,其特征在于,所述根据所述问题信息中的关键词以及所述待召回文本,确定所述关键词与所述待召回文本的相关度,包括:
确定所述待召回文本的长度与文本的平均长度之间的第一比值,将所述第一比值确定为所述待召回文本的相对长度;
确定所述问题信息中的关键词在所述待召回文本中出现的频率、与所述待召回文本的相对长度之间的第二比值;
根据所述第二比值与相关度的映射关系、以及所述第二比值,生成所述关键词与所述待召回文本之间的相关度。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一位置以及所述第二位置,确定所述召回文本的紧密度分数,包括:
将所述第一位置与所述第二位置之间的距离,确定为匹配词的相对距离;
根据所述匹配词的相对距离与所述召回文本的紧密度分数的映射关系、以及所述匹配词的相对距离,生成所述召回文本的紧密度分数。
6.根据权利要求1所述的方法,其特征在于,所述根据所述召回文本以及所述问题信息,对所述召回文本中的词进行预测,得到所述召回文本中的词作为起始答案的概率以及作为结束答案的概率,包括:
确定所述召回文本的词注意力向量以及所述问题信息的词注意力向量;
根据起始答案的全连接矩阵、所述召回文本的词嵌入向量、所述召回文本的词注意力向量、以及所述问题信息的词注意力向量,对所述召回文本中的词进行预测,得到所述召回文本中的词作为起始答案的概率;
根据结束答案的全连接矩阵、所述召回文本的词嵌入向量、所述召回文本的词注意力向量、以及所述问题信息的词注意力向量,对所述召回文本中的词进行预测,得到所述召回文本中的词作为结束答案的概率。
7.根据权利要求6所述的方法,其特征在于,所述确定所述召回文本的词注意力向量以及所述问题信息的词注意力向量,包括:
确定所述召回文本的词注意力权重;
对所述召回文本的词注意力权重、以及所述问题信息的词嵌入向量进行加权求和,得到所述召回文本的词注意力向量;
确定所述问题信息的词注意力权重;
对所述问题信息的词注意力权重、以及所述问题信息的词嵌入向量进行加权求和,得到所述问题信息的词注意力向量。
8.一种问答处理装置,其特征在于,包括:
第一处理模块,用于根据问题信息对待召回文本进行召回处理,得到对应的至少一个召回文本;
第二处理模块,用于根据所述待召回文本中包含关键词的文本数量、所述待召回文本的数量以及所述召回文本中的关键词在知识图谱中的实体权威度,得到所述召回文本中的关键词的权重,其中,所述实体权威度表示所述召回文本中的关键词为知识图谱中实体词的概率;对所述召回文本中的关键词的权重进行求和,得到所述召回文本的召回分数;确定所述召回文本的紧密度分数;遍历所述问题信息与所述召回文本之间的匹配词,确定当前遍历到的匹配词在所述召回文本的第一位置,确定下一个遍历到的匹配词在所述召回文本的第二位置,根据所述第一位置以及所述第二位置,确定所述召回文本的紧密度分数;
第三处理模块,用于根据所述召回文本以及所述问题信息,对所述召回文本中的词进行预测,得到所述召回文本中的词作为起始答案的概率以及作为结束答案的概率;
第一确定模块,用于根据所述召回文本中的词作为起始答案的概率、以及作为结束答案的概率,确定所述召回文本作为答案的抽取分数;
生成模块,用于根据所述召回文本的召回分数、紧密度分数、以及所述召回文本作为答案的抽取分数,对所述至少一个召回文本进行抽取,生成对应于所述问题信息的答案。
9.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令或计算机程序时,实现权利要求1-7任一项所述的问答处理方法。
10.一种计算机可读存储介质,其上存储有计算机可执行指令,其特征在于,所述计算机可执行指令被处理器执行时实现权利要求1-7任一项所述的问答处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910797436.0A CN110674271B (zh) | 2019-08-27 | 2019-08-27 | 一种问答处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910797436.0A CN110674271B (zh) | 2019-08-27 | 2019-08-27 | 一种问答处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110674271A CN110674271A (zh) | 2020-01-10 |
CN110674271B true CN110674271B (zh) | 2023-01-06 |
Family
ID=69076386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910797436.0A Active CN110674271B (zh) | 2019-08-27 | 2019-08-27 | 一种问答处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110674271B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309878B (zh) * | 2020-01-19 | 2023-08-22 | 支付宝(杭州)信息技术有限公司 | 检索式问答方法、模型训练方法、服务器及存储介质 |
CN111428005A (zh) * | 2020-04-12 | 2020-07-17 | 中信银行股份有限公司 | 标准问答对确定方法、装置及电子设备 |
CN111538908B (zh) * | 2020-06-22 | 2020-10-20 | 腾讯科技(深圳)有限公司 | 搜索排序方法、装置、计算机设备和存储介质 |
CN112201275B (zh) * | 2020-10-09 | 2024-05-07 | 深圳前海微众银行股份有限公司 | 声纹分割方法、装置、设备及可读存储介质 |
CN112417885A (zh) * | 2020-11-17 | 2021-02-26 | 平安科技(深圳)有限公司 | 基于人工智能的答案生成方法、装置、计算机设备及介质 |
CN112434510B (zh) * | 2020-11-24 | 2024-03-29 | 北京字节跳动网络技术有限公司 | 一种信息处理方法、装置、电子设备和存储介质 |
CN113312463B (zh) * | 2021-05-26 | 2023-07-18 | 中国平安人寿保险股份有限公司 | 语音问答的智能测评方法、装置、计算机设备及存储介质 |
CN113486174B (zh) * | 2021-06-15 | 2022-11-29 | 北京三快在线科技有限公司 | 模型训练、阅读理解方法、装置、电子设备及存储介质 |
CN113722436A (zh) * | 2021-08-30 | 2021-11-30 | 平安科技(深圳)有限公司 | 文本信息提取方法、装置、计算机设备及存储介质 |
CN115344680B (zh) * | 2022-08-17 | 2023-06-27 | 中电金信软件有限公司 | 一种获取查询结果的方法及装置 |
CN116578690B (zh) * | 2023-07-13 | 2023-09-22 | 湖南元数科技有限公司 | 一种基于人工智能的保险客服服务方法与系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870440A (zh) * | 2012-12-12 | 2014-06-18 | 中国移动通信集团广西有限公司 | 一种文本数据处理方法及装置 |
WO2018157805A1 (zh) * | 2017-03-03 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 一种自动问答处理方法及自动问答系统 |
CN109284357A (zh) * | 2018-08-29 | 2019-01-29 | 腾讯科技(深圳)有限公司 | 人机对话方法、装置、电子设备及计算机可读介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573028B (zh) * | 2015-01-14 | 2019-01-25 | 百度在线网络技术(北京)有限公司 | 实现智能问答的方法和系统 |
CN106649761A (zh) * | 2016-12-27 | 2017-05-10 | 北京百度网讯科技有限公司 | 基于深度问答的搜索结果展现方法和装置 |
-
2019
- 2019-08-27 CN CN201910797436.0A patent/CN110674271B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870440A (zh) * | 2012-12-12 | 2014-06-18 | 中国移动通信集团广西有限公司 | 一种文本数据处理方法及装置 |
WO2018157805A1 (zh) * | 2017-03-03 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 一种自动问答处理方法及自动问答系统 |
CN109284357A (zh) * | 2018-08-29 | 2019-01-29 | 腾讯科技(深圳)有限公司 | 人机对话方法、装置、电子设备及计算机可读介质 |
Non-Patent Citations (2)
Title |
---|
Research on the Design of the Ontology-Based Automatic Question Answering System;Wang Bo;《2008 International Conference on Computer Science and Software Engineering》;20081222;871-874 * |
自动问答系统的研究与实现;李清;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;20121015(第10期);I138-3156 * |
Also Published As
Publication number | Publication date |
---|---|
CN110674271A (zh) | 2020-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110674271B (zh) | 一种问答处理方法及装置 | |
CN110489538B (zh) | 基于人工智能的语句应答方法、装置及电子设备 | |
AU2018383346B2 (en) | Domain-specific natural language understanding of customer intent in self-help | |
CN110019701B (zh) | 用于问答服务的方法、问答服务系统以及存储介质 | |
US10733197B2 (en) | Method and apparatus for providing information based on artificial intelligence | |
CN111241237B (zh) | 一种基于运维业务的智能问答数据处理方法及装置 | |
US7983902B2 (en) | Domain dictionary creation by detection of new topic words using divergence value comparison | |
CN111797214A (zh) | 基于faq数据库的问题筛选方法、装置、计算机设备及介质 | |
US20220405484A1 (en) | Methods for Reinforcement Document Transformer for Multimodal Conversations and Devices Thereof | |
CN109710732B (zh) | 信息查询方法、装置、存储介质和电子设备 | |
CN110808032A (zh) | 一种语音识别方法、装置、计算机设备及存储介质 | |
CN111695338A (zh) | 基于人工智能的面试内容精炼方法、装置、设备及介质 | |
CN116541493A (zh) | 基于意图识别的交互应答方法、装置、设备、存储介质 | |
US11379527B2 (en) | Sibling search queries | |
CN110516062B (zh) | 一种文档的搜索处理方法及装置 | |
CN115438149A (zh) | 一种端到端模型训练方法、装置、计算机设备及存储介质 | |
CN110222144B (zh) | 文本内容提取方法、装置、电子设备及存储介质 | |
CN114186041A (zh) | 一种答案输出方法 | |
CN114186040A (zh) | 一种智能机器人客服的运作方法 | |
KR20200136636A (ko) | 형태소 기반 ai 챗봇 및 그의 문장의도 결정 방법 | |
CN117520523A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN117609443A (zh) | 基于大模型的智能交互方法、系统、终端、服务器及介质 | |
CN117370190A (zh) | 测试用例生成方法、装置、电子设备和存储介质 | |
CN111737607A (zh) | 数据处理方法、装置、电子设备以及存储介质 | |
Habibi et al. | Question answering in conversations: Query refinement using contextual and semantic information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40018633 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |