CN116628142B - 知识检索方法、装置、设备及可读存储介质 - Google Patents
知识检索方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN116628142B CN116628142B CN202310922769.8A CN202310922769A CN116628142B CN 116628142 B CN116628142 B CN 116628142B CN 202310922769 A CN202310922769 A CN 202310922769A CN 116628142 B CN116628142 B CN 116628142B
- Authority
- CN
- China
- Prior art keywords
- knowledge
- keyword
- search result
- determining
- candidate
- 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
- 238000000034 method Methods 0.000 title claims abstract description 42
- 239000013598 vector Substances 0.000 claims abstract description 119
- 230000011218 segmentation Effects 0.000 claims description 54
- 238000004364 calculation method Methods 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 15
- 238000000605 extraction Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 7
- 235000019633 pungent taste Nutrition 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000005057 refrigeration Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
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/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- 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/3344—Query execution using natural language analysis
-
- 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/3347—Query execution using vector based model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种知识检索方法、装置、设备及可读存储介质。本方案中,针对每个问题知识对,问题关键词的向量能够表征问题关键词在用户输入的问题的上下文语境中的语义,知识关键词的向量能够表征知识关键词在该知识的上下文语境中的语义,基于问题关键词的向量与知识关键词的向量计算得到的知识的召回得分能够从语义层面准确表征该问题知识对中的知识与用户输入的问题的匹配程度,因此,基于本方案进行知识检索,能够大大提升知识检索的准确度。
Description
技术领域
本申请涉及自然语言处理技术领域,更具体的说,是涉及一种知识检索方法、装置、设备及可读存储介质。
背景技术
在人机交互任务中,如果用户输入的问题涉及到外部知识,那么机器需要用知识检索系统去知识库中进行检索,获取与用户输入的问题相匹配的知识来完成对话。
现有的知识检索方案检索准确度较低,而用户对于检索准确度的要求越来越高,因此,亟需一种检索准确度较高的知识检索方法,以满足用户对检索准确度的要求。
发明内容
鉴于上述问题,本申请提出了一种知识检索方法、装置、设备及可读存储介质。具体方案如下:
一种知识检索方法,所述方法包括:
获取用户输入的问题以及预设知识库;
针对每个问题知识对,确定关键词组,每个关键词组中包括问题关键词以及知识关键词,并基于所述问题关键词的向量与所述知识关键词的向量,确定所述知识的召回得分;
基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果;
基于所述候选检索结果,确定最终检索结果。
可选地,所述确定关键词组,每个关键词组中包括问题关键词以及知识关键词,并基于所述问题关键词的向量与所述知识关键词的向量,确定所述知识的召回得分,包括:
确定第一关键词组,每个第一关键词组中包括第一问题关键词以及第一知识关键词,并基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分;和/或,确定第二关键词组,每个第二关键词组中包括第二问题关键词以及第二知识关键词,并基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分;
则,所述基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果,包括:
基于各个知识的第一召回得分,确定与所述用户输入的问题对应的第一候选检索结果;和/或,基于各个知识的第二召回得分,确定与所述用户输入的问题对应的第二候选检索结果;
则,所述基于所述候选检索结果,确定最终检索结果,包括:
基于所述第一候选检索结果,和/或,所述第二候选检索结果,确定最终检索结果。
可选地,所述确定第一关键词组,包括:
对所述用户输入的问题进行分词及去除停用词处理,得到第一分词结果;
对所述知识进行分词及去除停用词处理,得到第二分词结果;
针对所述第一分词结果中的每个词,确定所述第二分词结果中是否包括该词,如果包括,则确定该词为第一问题关键词,所述第二分词结果中的该词为第一知识关键词,该词以及所述第二分词结果中的该词组合得到一个第一关键词组。
可选地,所述确定第二关键词组,包括:
对所述用户输入的问题进行实体抽取,得到所述第二问题关键词;
对所述知识进行实体抽取,得到所述第二知识关键词;
针对每个第二问题关键词,将所述第二问题关键词与全部第二知识关键词组合得到一个第二关键词组。
可选地,所述基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分,包括:
针对每个第一关键词组,计算每个所述第一问题关键词的向量与每个所述第一知识关键词的向量之间的距离值;
将各个距离值中最小的距离值,确定为所述知识的第一召回得分。
可选地,所述基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分,包括:
针对每个第二关键词组,计算该第二关键词组的得分;
计算各个第二关键词组的得分的和,作为所述知识的第二召回得分。
可选地,基于所述第一候选检索结果,和/或,所述第二候选检索结果,确定最终检索结果,包括:
对所述第一候选检索结果,和/或,所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果;
根据所述重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果,确定最终检索结果。
可选地,在获取用户输入的问题以及预设知识库之后,所述方法还包括:
获取所述用户输入的问题的向量,以及,所述预设知识库中各知识的向量;
针对所述预设知识库中的每个知识,基于所述用户输入的问题的向量,以及,所述知识的向量的相似度,计算所述知识的第三召回得分;
基于各个知识的第三召回得分,确定所述用户输入的问题对应的第三候选检索结果。
可选地,所述基于所述第一候选检索结果,和/或,所述第二候选检索结果,确定最终检索结果,包括:
基于所述第一候选检索结果,和/或,所述第二候选检索结果,和,所述第三候选检索结果,确定最终检索结果。
可选地,所述基于所述第一候选检索结果,和/或,所述第二候选检索结果,和,所述第三候选检索结果,确定最终检索结果,包括:
对所述第一候选检索结果,和/或,所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果;
对所述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的第三候选检索结果;
根据所述重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果,和,所述重新排序后的第三候选检索结果,确定最终检索结果。
一种知识检索装置,所述装置包括:
获取单元,用于获取用户输入的问题以及预设知识库;
知识的召回得分计算单元,用于针对每个问题知识对,确定关键词组,每个关键词组中包括问题关键词以及知识关键词,并基于所述问题关键词的向量与所述知识关键词的向量,确定所述知识的召回得分;
候选检索结果确定单元,用于基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果;
最终检索结果确定单元,用于基于所述候选检索结果,确定最终检索结果。
可选地,所述知识的召回得分计算单元,包括:
第一召回得分计算单元,和/或,第二召回得分计算单元;
所述第一召回得分计算单元,用于确定第一关键词组,每个第一关键词组中包括第一问题关键词以及第一知识关键词,并基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分;
所述第二召回得分计算单元,用于确定第二关键词组,每个第二关键词组中包括第二问题关键词以及第二知识关键词,并基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分;
则,所述候选检索结果确定单元,包括:
第一候选检索结果确定单元,和/或,第二候选检索结果确定单元;
所述第一候选检索结果确定单元,用于基于各个知识的第一召回得分,确定与所述用户输入的问题对应的第一候选检索结果;
所述第二候选检索结果确定单元,用于基于各个知识的第二召回得分,确定与所述用户输入的问题对应的第二候选检索结果;
则,所述最终检索结果确定单元,包括:
第一最终检索结果确定单元,用于基于所述第一候选检索结果,确定最终检索结果;
第二最终检索结果确定单元,用于基于所述第二候选检索结果,确定最终检索结果;
第三最终检索结果确定单元,用于基于所述第一候选检索结果和所述第二候选检索结果,确定最终检索结果。
可选地,所述第一召回得分计算单元包括第一关键词组确定单元;
所述第一关键词组确定单元,具体用于对所述用户输入的问题进行分词及去除停用词处理,得到第一分词结果;对所述知识进行分词及去除停用词处理,得到第二分词结果;针对所述第一分词结果中的每个词,确定所述第二分词结果中是否包括该词,如果包括,则确定该词为第一问题关键词,所述第二分词结果中的该词为第一知识关键词,该词以及所述第二分词结果中的该词组合得到一个第一关键词组。
可选地,所述第二召回得分计算单元包括第二关键词组确定单元;
所述第二关键词组确定单元,具体用于对所述用户输入的问题进行实体抽取,得到所述第二问题关键词;对所述知识进行实体抽取,得到所述第二知识关键词;针对每个第二问题关键词,将所述第二问题关键词与全部第二知识关键词组合得到一个第二关键词组。
可选地,所述第一召回得分计算单元包括第一计算单元;
所述第一计算单元,用于针对每个第一关键词组,计算每个所述第一问题关键词的向量与每个所述第一知识关键词的向量之间的距离值;将各个距离值中最小的距离值,确定为所述知识的第一召回得分。
可选地,所述第二召回得分计算单元包括第二计算单元;
所述第二计算单元,用于针对每个第二关键词组,计算该第二关键词组的得分;计算各个第二关键词组的得分的和,作为所述知识的第二召回得分。
可选地,所述最终检索结果确定单元,具体用于:
对所述第一候选检索结果,和/或,所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果;
根据所述重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果,确定最终检索结果。
可选地,所述装置还包括:第三候选检索结果确定单元;
所述第三候选检索结果确定单元,具体用于在获取用户输入的问题以及预设知识库之后,获取所述用户输入的问题的向量,以及,所述预设知识库中各知识的向量;针对所述预设知识库中的每个知识,基于所述用户输入的问题的向量,以及,所述知识的向量的相似度,计算所述知识的第三召回得分;基于各个知识的第三召回得分,确定所述用户输入的问题对应的第三候选检索结果。
可选地,所述最终检索结果确定单元,具体用于:
基于所述第一候选检索结果,和/或,所述第二候选检索结果,和,所述第三候选检索结果,确定最终检索结果。
可选地,所述最终检索结果确定单元,具体用于:
对所述第一候选检索结果,和/或,所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果;
对所述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的第三候选检索结果;
根据所述重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果,和,所述重新排序后的第三候选检索结果,确定最终检索结果。
一种知识检索设备,包括存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如上所述的知识检索方法的各个步骤。
一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述的知识检索方法的各个步骤。
借由上述技术方案,本申请公开了一种知识检索方法、装置、设备及可读存储介质。本方案中,针对每个问题知识对,问题关键词的向量能够表征问题关键词在用户输入的问题的上下文语境中的语义,知识关键词的向量能够表征知识关键词在该知识的上下文语境中的语义,基于问题关键词的向量与知识关键词的向量计算得到的知识的召回得分能够从语义层面准确表征该问题知识对中的知识与用户输入的问题的匹配程度,因此,基于本方案进行知识检索,能够大大提升知识检索的准确度。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本申请实施例公开的一种知识检索方法的流程示意图;
图2为本申请实施例公开的一种知识检索装置结构示意图;
图3为本申请实施例公开的一种知识检索设备的硬件结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
接下来,通过下述实施例对本申请提供的知识检索方法进行介绍。
参照图1,图1为本申请实施例公开的一种知识检索方法的流程示意图,该方法可以包括:
步骤S101:获取用户输入的问题以及预设知识库。
在本申请中,用户输入的问题可以是任意领域的问题,预设知识库是与用户输入的问题领域相同的知识库,预设知识库中包括多个知识,知识的形式可以是文本,比如,一个句子、一个段落或者一个篇章,对此,本申请不进行任何限定。
步骤S102:针对每个问题知识对,确定关键词组,每个关键词组中包括问题关键词以及知识关键词,并基于所述问题关键词的向量与所述知识关键词的向量,确定所述知识的召回得分。
在本申请中,用户输入的问题与预设知识库中的一个知识构成一个问题知识对,针对每个问题知识对,可以包括一个关键词组或多个关键词组,每个关键词组中包括一个问题关键词和至少一个知识关键词。问题关键词是用户输入的问题中的关键词,知识关键词是知识中的关键词。
需要说明的是,在本申请中,可以采用不同的方式确定问题关键词以及知识关键词,不同的方式可以择一执行也可以同步执行,如果不同的方式择一执行,问题关键词以及知识关键词则有一种,相应的,知识的召回得分也只有一种,如果不同的方式同步执行,问题关键词以及知识关键词则有多种,相应的,知识的召回得分也有多种。
为便于理解,假设用户输入的问题为“张三有多高”,预设知识库中的知识为“张三个人简介:身高178cm,体重70kg,……”一种方式下,确定的问题关键词可以为“张三”,知识关键词可以为“张三”,另一种方式下,问题关键词可以为“张三”,知识关键词可以为“张三”、“身高”和“体重”。
在本申请中,可以利用编码模型对用户输入的问题和知识分别进行编码,得到用户输入的问题的向量和知识的向量,然后从用户输入的问题的向量中提取出问题关键词的向量,从知识的向量中提取出知识关键词的向量。
步骤S103:基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果。
在本申请中,基于所述预设知识库中各个知识的召回得分,对所述预设知识库中各个知识进行降序排序,取排名靠前的预设数量个知识,作为与所述用户输入的问题对应的候选检索结果。
需要说明的是,如果知识的召回得分只有一种,相应的,与所述用户输入的问题对应的候选检索结果也只有一种,基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果时,基于所述预设知识库中各个知识的召回得分,对所述预设知识库中各个知识进行降序排序,取排名靠前的预设数量个知识,作为与所述用户输入的问题对应的候选检索结果。
另外,需要说明的是,如果知识的召回得分有多种,相应的,与所述用户输入的问题对应的候选检索结果也有多种。针对每种召回得分,都可基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果时,基于所述预设知识库中各个知识的召回得分,对所述预设知识库中各个知识进行降序排序,取排名靠前的第一预设数量个知识,作为与所述用户输入的问题对应的候选检索结果。
步骤S104:基于所述候选检索结果,确定最终检索结果。
作为一种可实施方式,可以将所述候选检索结果,作为最终检索结果。考虑到,直接基于各个知识的召回得分确定的候选检索结果可能存在准确度差的问题,作为另一种可实施方式,可以从候选检索结果中筛选出准确度较高的候选检索结果作为最终检索结果,具体筛选方式将通过后面的实施例详细说明,此处不再赘述。
本实施例公开了一种知识检索方法,本方案中,针对每个问题知识对,问题关键词的向量能够表征问题关键词在用户输入的问题的上下文语境中的语义,知识关键词的向量能够表征知识关键词在该知识的上下文语境中的语义,基于问题关键词的向量与知识关键词的向量计算得到的知识的召回得分能够从语义层面准确表征该问题知识对中的知识与用户输入的问题的匹配程度,因此,基于本方案进行知识检索,能够大大提升知识检索的准确度。
上述实施例中提到,步骤S102有多种可能实现的方式,相应的,步骤S103和步骤S104也有对应的不同实现方式,接下来将通过后面的实施例对知识检索的各种实现方式进行详细说明。
在本申请的另一个实施例中,对本申请提供的知识检索方法的一种可实施方式进行介绍,该实施方式可以包括如下步骤:
步骤S201:获取用户输入的问题以及预设知识库。
在本申请中,用户输入的问题可以是任意领域的问题,预设知识库是与用户输入的问题领域相同的知识库,预设知识库中包括多个知识,知识的形式可以是文本,比如,一个句子、一个段落或者一个篇章,对此,本申请不进行任何限定。
步骤S202:针对每个问题知识对,确定第一关键词组,每个第一关键词组中包括第一问题关键词以及第一知识关键词,并基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分。
在本申请中,用户输入的问题与预设知识库中的一个知识构成一个问题知识对,针对每个问题知识对,可以包括一个第一关键词组或多个第一关键词组,每个第一关键词组中包括一个第一问题关键词和至少一个第一知识关键词。第一问题关键词是用户输入的问题中的关键词,第一知识关键词是知识中的关键词。每个第一关键词组中第一问题关键词和第一知识关键词是相同的词,该词为同时出现在用户输入的问题和知识中的词。
作为一种可实施方式,确定第一关键词组,包括:对所述用户输入的问题进行分词及去除停用词处理,得到第一分词结果;对所述知识进行分词及去除停用词处理,得到第二分词结果;针对所述第一分词结果中的每个词,确定所述第二分词结果中是否包括该词,如果包括,则确定该词为第一问题关键词,所述第二分词结果中的该词为第一知识关键词,该词以及所述第二分词结果中的该词组合得到一个第一关键词组。
为便于理解,假设用户输入的问题为“张三有多高”,预设知识库中的知识为“张三个人简介:身高178cm,体重70kg,……”,对用户输入的问题进行分词及去除停用词处理,得到第一分词结果中包括“张三”,对知识进行分词及去除停用词处理后得到第二分词结果中包括“张三”、“个人简介”、“身高”和“体重”,则本示例中可以确定一个第一关键词组,该第一关键词组中包括一个第一问题关键词为“张三”,一个知识关键词为“张三”。
在本申请中,可以利用编码模型对用户输入的问题和知识分别进行编码,得到用户输入的问题的向量和知识的向量,然后从用户输入的问题的向量中提取出第一问题关键词的向量,从知识的向量中提取出第一知识关键词的向量。
作为一种可实施方式,所述基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分,包括:针对每个第一关键词组,计算每个所述第一问题关键词的向量与每个所述第一知识关键词的向量之间的距离值;将各个距离值中最小的距离值,确定为所述知识的第一召回得分。
需要说明的是,可以计算第一问题关键词的向量与第一知识关键词的向量之间的KL散度值,作为第一问题关键词的向量与第一知识关键词的向量之间的距离值。如果KL散度值越小,说明第一问题关键词在用户输入的问题的上下文语境下和在知识的上下文语境下语义接近,那么说明此知识是一个合适的召回候选。
步骤S203:基于各个知识的第一召回得分,确定与所述用户输入的问题对应的第一候选检索结果。
在本申请中,可以基于所述预设知识库中各个知识的第一召回得分,对所述预设知识库中各个知识进行升序排序,取排名靠前的第一预设数量个知识,作为与所述用户输入的问题对应的第一候选检索结果。
步骤S204:基于所述第一候选检索结果,确定最终检索结果。
作为一种可实施方式,可以将第一候选检索结果,确定为最终检索结果。
考虑到,直接基于各个知识的第一召回得分确定的第一候选检索结果可能存在准确度差的问题,作为另一种可实施方式,可以对所述第一候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果;根据所述重新排序后的所述第一候选检索结果,确定最终检索结果。
需要说明的是,在本申请中,可以采用一种或多种加权的方式,对述第一候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果。作为一种可实施方式,可以根据业务需求,对预设知识库中不同知识设置黑白名单,如果第一候选检索结果中的某个知识在白名单中,则可以将该知识对应的第一召回得分乘以一个大于一的数字,来增加该知识的权重,如果第一候选检索结果中的某个知识在黑名单中,则可以将该知识对应的第一召回得分乘以一个小于一的数字,来减少该知识的权重。作为另一种可实施方式,可以根据业务需求,对预设知识库中不同知识划分为不同类别,如果第一候选检索结果中的某个知识属于业务倾向的某个类别,则可以将该知识对应的第一召回得分乘以一个大于一的数字,来增加该知识的权重,如果第一候选检索结果中的某个知识不属于业务倾向的某个类别,则可以将该知识对应的第一召回得分乘以一个小于一的数字,来减少该知识的权重。作为另一种可实施方式,可以获取第一候选检索结果中各个知识的热度值,基于热度值重新为第一候选检索结果中各个知识进行加权。比如,可以定义知识热度H为一个1至1000的数字,在基于热度值重新为知识进行加权时,可以在该知识的第一召回得分上乘以(1+H/5000)。
需要说明的是,在根据所述重新排序后的所述第一候选检索结果,确定最终检索结果时,可以从重新排序后的所述第一候选检索结果中筛选出排名靠前的第二预设数量个知识,作为最终的检索结果。其中,第二预设数量小于等于第一预设数量。
在本申请的另一个实施例中,对本申请提供的知识检索方法的另一种可实施方式进行介绍,该实施方式可以包括如下步骤:
步骤S301:获取用户输入的问题以及预设知识库。
在本申请中,用户输入的问题可以是任意领域的问题,预设知识库是与用户输入的问题领域相同的知识库,预设知识库中包括多个知识,知识的形式可以是文本,比如,一个句子、一个段落或者一个篇章,对此,本申请不进行任何限定。
步骤S302:针对每个问题知识对,确定第二关键词组,每个第二关键词组中包括第二问题关键词以及第二知识关键词,并基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分。
在本申请中,用户输入的问题与预设知识库中的一个知识构成一个问题知识对,针对每个问题知识对,可以存在一个第二关键词组,也可以存在多个第二关键词组,每个第二关键词组中,包含一个第二问题关键词和全部第二知识关键词。第二问题关键词是用户输入的问题中的关键词,第二知识关键词是知识中的关键词。
需要说明的是,每个第二关键词组中,包含的第二问题关键词是用户输入的问题中优先级较高的词,第二知识关键词是知识中优先级较高的词。词的优先级是基于领域需求预设的,同一个词在不同领域的优先级可能相同也可能不同。比如,在汽车领域,“发动机”、“空调”、“制冷”等词属于优先级较高的词,在银行领域,“银行卡号”、“开户行”、“姓名”等词属于优先级较高的词。
在本申请中,针对不同的领域,可以基于该领域的训练文本训练一个命名实体识别模型(NER,Named Entity Recognition),其中,训练文本中标注有该领域预设的优先级较高的词。
则作为一种可实施方式,所述确定第二关键词组,包括:对所述用户输入的问题进行实体抽取,得到所述第二问题关键词;对所述知识进行实体抽取,得到所述第二知识关键词;针对每个第二问题关键词,将所述第二问题关键词与全部第二知识关键词组合得到一个第二关键词组。其中,可以采用与所述用户输入的问题及所述知识对应领域的命名实体识别模型对所述用户输入的问题以及所述知识进行实体抽取。
为便于理解,假设用户输入的问题为“张三有多高”,预设知识库中的知识为“张三个人简介:身高178cm,体重70kg,……”,对用户输入的问题进行实体抽取得到实体“张三”,对知识进行实体抽取,得到实体“张三”、“身高”和“体重”,则本示例中可以确定一个第二关键词组,该组第二关键词中包括一个第二问题关键词为“张三”,三个知识关键词为“张三”、“身高”和“体重”。
在本申请中,可以利用编码模型对用户输入的问题和知识分别进行编码,得到用户输入的问题的向量和知识的向量,然后从用户输入的问题的向量中提取出第二问题关键词的向量,从知识的向量中提取出第二知识关键词的向量。
作为一种可实施方式,所述基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分,包括:针对每个第二关键词组,计算该第二关键词组的得分,计算各个第二关键词组的得分的和,作为所述知识的第二召回得分。
需要说明的是,针对每个第二关键词组,可以计算该第二关键词组中第二问题关键词的向量与各个第二知识关键词的向量的点积之和,作为该第二关键词组的得分。
步骤S303:基于各个知识的第二召回得分,确定与所述用户输入的问题对应的第二候选检索结果。
在本申请中,可以基于所述预设知识库中各个知识的第二召回得分,对所述预设知识库中各个知识进行降序排序,取排名靠前的第一预设数量个知识,作为与所述用户输入的问题对应的第二候选检索结果。
步骤S304:基于所述第二候选检索结果,确定最终检索结果。
作为一种可实施方式,可以将第二候选检索结果,确定为最终检索结果。
考虑到,直接基于各个知识的第二召回得分确定的第二候选检索结果可能存在准确度差的问题,作为另一种可实施方式,可以对所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第二候选检索结果;根据所述重新排序后的所述第二候选检索结果,确定最终检索结果。
需要说明的是,在本申请中,可以采用一种或多种加权的方式,对述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第二候选检索结果。作为一种可实施方式,可以根据业务需求,对预设知识库中不同知识设置黑白名单,如果第二候选检索结果中的某个知识在白名单中,则可以将该知识对应的第一召回得分乘以一个大于一的数字,来增加该知识的权重,如果第二候选检索结果中的某个知识在黑名单中,则可以将该知识对应的第一召回得分乘以一个小于一的数字,来减少该知识的权重。作为另一种可实施方式,可以根据业务需求,对预设知识库中不同知识划分为不同类别,如果第二候选检索结果中的某个知识属于业务倾向的某个类别,则可以将该知识对应的第一召回得分乘以一个大于一的数字,来增加该知识的权重,如果第二候选检索结果中的某个知识不属于业务倾向的某个类别,则可以将该知识对应的第一召回得分乘以一个小于一的数字,来减少该知识的权重。作为另一种可实施方式,可以获取第二候选检索结果中各个知识的热度值,基于热度值重新为第二候选检索结果中各个知识进行加权。比如,可以定义知识热度H为一个1至1000的数字,在基于热度值重新为知识进行加权时,可以在该知识的第一召回得分上乘以(1+H/5000)。
需要说明的是,在根据所述重新排序后的所述第二候选检索结果,确定最终检索结果时,可以从重新排序后的所述第二候选检索结果中筛选出排名靠前的第二预设数量个知识,作为最终的检索结果。其中,第二预设数量小于等于第一预设数量。
考虑到采用一种方式确定最终检索结果,可能使得最终检索结果的准确性不够高,在本申请中,提出了融合多种方式确定最终检索结果的方式,以进一步提升最终检索结果的准确性。
在本申请的另一个实施例中,对本申请提供的知识检索方法的另一种可实施方式进行介绍,该实施方式可以包括如下步骤:
步骤S401:获取用户输入的问题以及预设知识库。
在本申请中,用户输入的问题可以是任意领域的问题,预设知识库是与用户输入的问题领域相同的知识库,预设知识库中包括多个知识,知识的形式可以是文本,比如,一个句子、一个段落或者一个篇章,对此,本申请不进行任何限定。
步骤S402:针对每个问题知识对,确定第一关键词组,每个第一关键词组中包括第一问题关键词以及第一知识关键词,并基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分;以及,确定第二关键词组,每个第二关键词组中包括第二问题关键词以及第二知识关键词,并基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分;
具体可以参见步骤S202和步骤S302的相关描述,此处不再赘述。
步骤S403:基于各个知识的第一召回得分,确定与所述用户输入的问题对应的第一候选检索结果;以及,基于各个知识的第二召回得分,确定与所述用户输入的问题对应的第二候选检索结果;
具体可以参见步骤S203和步骤S303的相关描述,此处不再赘述。
步骤S404:基于所述第一候选检索结果,以及,所述第二候选检索结果,确定最终检索结果。
作为一种可实施方式,可以将所述第一候选检索结果,以及,所述第二候选检索结果进行去重后,得到最终检索结果。
考虑到,直接基于各个知识的第一召回得分确定的第一候选检索结果可能存在准确度差的问题,以及,直接基于各个知识的第二召回得分确定的第二候选检索结果可能存在准确度差的问题,作为另一种可实施方式,对所述第一候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,以及,对所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第二候选检索结果;根据所述重新排序后的所述第一候选检索结果,以及,重新排序后的所述第二候选检索结果,确定最终检索结果。
需要说明的是,对所述第一候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,以及,对所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第二候选检索结果的具体实现方式可以参见上述实施例的相关描述,此处不再赘述。
另外,需要说明的是,在根据所述重新排序后的所述第一候选检索结果,以及,重新排序后的所述第二候选检索结果,确定最终检索结果时,可以从重新排序后的所述第一候选检索结果中筛选出排名靠前的第二预设数量个知识,并从重新排序后的所述第二候选检索结果中筛选出排名靠前的第二预设数量个知识,然后将筛选出的两组知识进行去重后,得到最终的检索结果。其中,第二预设数量小于等于第一预设数量。
本实施例中,融合两种候选减速结果确定最终检索结果,可以提升最终检索结果的准确性。
在本申请中,在获取用户输入的问题以及预设知识库之后,还可以获取所述用户输入的问题的向量,以及,所述预设知识库中各知识的向量;针对所述预设知识库中的每个知识,基于所述用户输入的问题的向量,以及,所述知识的向量的相似度,计算所述知识的第三召回得分;基于各个知识的第三召回得分,确定所述用户输入的问题对应的第三候选检索结果。
则在本申请的另一个实施例中,对本申请提供的知识检索方法的另一种可实施方式进行介绍,该实施方式中,基于所述第一候选检索结果,确定最终检索结果,可以为基于所述第一候选检索结果以及所述第三候选检索结果,确定最终检索结果;
作为一种可实施方式,可以将所述第一候选检索结果,以及,所述第三候选检索结果进行去重后,得到最终检索结果。
考虑到,直接基于各个知识的第一召回得分确定的第一候选检索结果可能存在准确度差的问题,以及,直接基于各个知识的第三召回得分确定的第二候选检索结果可能存在准确度差的问题,作为另一种可实施方式,可以对所述第一候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果;对所述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的第三候选检索结果;根据所述重新排序后的所述第一候选检索结果,和,所述重新排序后的第三候选检索结果,确定最终检索结果。
需要说明的是,对所述第一候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果的具体实现方式可以参见上述实施例的相关描述,此处不再赘述。
需要说明的是,在本申请中,可以采用一种或多种加权的方式,对述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第三候选检索结果。作为一种可实施方式,可以根据业务需求,对预设知识库中不同知识设置黑白名单,如果第三候选检索结果中的某个知识在白名单中,则可以将该知识对应的第一召回得分乘以一个大于一的数字,来增加该知识的权重,如果第三候选检索结果中的某个知识在黑名单中,则可以将该知识对应的第一召回得分乘以一个小于一的数字,来减少该知识的权重。作为另一种可实施方式,可以根据业务需求,对预设知识库中不同知识划分为不同类别,如果第三候选检索结果中的某个知识属于业务倾向的某个类别,则可以将该知识对应的第一召回得分乘以一个大于一的数字,来增加该知识的权重,如果第三候选检索结果中的某个知识不属于业务倾向的某个类别,则可以将该知识对应的第一召回得分乘以一个小于一的数字,来减少该知识的权重。作为另一种可实施方式,可以获取第三候选检索结果中各个知识的热度值,基于热度值重新为第三候选检索结果中各个知识进行加权。比如,可以定义知识热度H为一个1至1000的数字,在基于热度值重新为知识进行加权时,可以在该知识的第一召回得分上乘以(1+H/5000)。
另外,需要说明的是,在根据所述重新排序后的所述第一候选检索结果,以及,重新排序后的所述第三候选检索结果,确定最终检索结果时,可以从重新排序后的所述第一候选检索结果中筛选出排名靠前的第二预设数量个知识,并从重新排序后的所述第三候选检索结果中筛选出排名靠前的第二预设数量个知识,然后将筛选出的两组知识进行去重后,得到最终的检索结果。其中,第二预设数量小于等于第一预设数量。
本实施例中,融合两种候选减速结果确定最终检索结果,可以提升最终检索结果的准确性。
在本申请的另一个实施例中,对本申请提供的知识检索方法的另一种可实施方式进行介绍,该实施方式中,基于所述第二候选检索结果,确定最终检索结果,可以为基于所述第二候选检索结果以及所述第三候选检索结果,确定最终检索结果;
作为一种可实施方式,可以将所述第二候选检索结果,以及,所述第三候选检索结果进行去重后,得到最终检索结果。
考虑到,直接基于各个知识的第二召回得分确定的第二候选检索结果可能存在准确度差的问题,以及,直接基于各个知识的第三召回得分确定的第二候选检索结果可能存在准确度差的问题,作为另一种可实施方式,可以对所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第二候选检索结果;对所述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的第三候选检索结果;根据所述重新排序后的所述第二候选检索结果,和,所述重新排序后的第三候选检索结果,确定最终检索结果。
需要说明的是,对所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第二候选检索结果的具体实现方式,对所述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第三候选检索结果的具体实现方式可以参见上述实施例的相关描述,此处不再赘述。
另外,需要说明的是,在根据所述重新排序后的所述第二候选检索结果,以及,重新排序后的所述第三候选检索结果,确定最终检索结果时,可以从重新排序后的所述第二候选检索结果中筛选出排名靠前的第二预设数量个知识,并从重新排序后的所述第三候选检索结果中筛选出排名靠前的第二预设数量个知识,然后将筛选出的两组知识进行去重后,得到最终的检索结果。其中,第二预设数量小于等于第一预设数量。
本实施例中,融合两种候选减速结果确定最终检索结果,可以提升最终检索结果的准确性。
在本申请的另一个实施例中,对本申请提供的知识检索方法的另一种可实施方式进行介绍,该实施方式中,基于所述第一候选检索结果,以及,所述第二候选检索结果,确定最终检索结果,可以是基于所述第一候选检索结果、所述第二候选检索结果和所述第三候选检索结果,确定最终检索结果。
作为一种可实施方式,可以将所述第一候选检索结果、所述第二候选检索结果,以及,所述第三候选检索结果进行去重后,得到最终检索结果。
考虑到,直接基于各个知识的第一召回得分确定的第一候选检索结果可能存在准确度差的问题,基于各个知识的第二召回得分确定的第二候选检索结果可能存在准确度差的问题,以及,直接基于各个知识的第三召回得分确定的第二候选检索结果可能存在准确度差的问题,作为另一种可实施方式,可以对所述第一候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果;对所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第二候选检索结果;对所述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的第三候选检索结果;根据所述重新排序后的所述第一候选检索结果、重新排序后的所述第二候选检索结果和所述重新排序后的第三候选检索结果,确定最终检索结果。
需要说明的是,对所述第一候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,对所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第二候选检索结果,以及,对所述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第三候选检索结果的具体实现方式可以参见上述实施例的相关描述,此处不再赘述。
另外,需要说明的是,在根据所述重新排序后的所述第一候选检索结果,重新排序后的所述第二候选检索结果,以及,重新排序后的所述第三候选检索结果,确定最终检索结果时,可以从重新排序后的所述第一候选检索结果中筛选出排名靠前的第二预设数量个知识,并从重新排序后的所述第二候选检索结果中筛选出排名靠前的第二预设数量个知识,并从重新排序后的所述第三候选检索结果中筛选出排名靠前的第二预设数量个知识,然后将筛选出的三组知识进行去重后,得到最终的检索结果。其中,第二预设数量小于等于第一预设数量。
本实施例中,融合三种候选减速结果确定最终检索结果,可以提升最终检索结果的准确性。
下面对本申请实施例公开的知识检索装置进行描述,下文描述的知识检索装置与上文描述的知识检索方法可相互对应参照。
参照图2,图2为本申请实施例公开的一种知识检索装置结构示意图。如图2所示,该知识检索装置可以包括:
获取单元11,用于获取用户输入的问题以及预设知识库;
知识的召回得分计算单元12,用于针对每个问题知识对,确定关键词组,每个关键词组中包括问题关键词以及知识关键词,并基于所述问题关键词的向量与所述知识关键词的向量,确定所述知识的召回得分;
候选检索结果确定单元13,用于基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果;
最终检索结果确定单元14,用于基于所述候选检索结果,确定最终检索结果。
可选地,所述知识的召回得分计算单元,包括:
第一召回得分计算单元,和/或,第二召回得分计算单元;
所述第一召回得分计算单元,用于确定第一关键词组,每个第一关键词组中包括第一问题关键词以及第一知识关键词,并基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分;
所述第二召回得分计算单元,用于确定第二关键词组,每个第二关键词组中包括第二问题关键词以及第二知识关键词,并基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分;
则,所述候选检索结果确定单元,包括:
第一候选检索结果确定单元,和/或,第二候选检索结果确定单元;
所述第一候选检索结果确定单元,用于基于各个知识的第一召回得分,确定与所述用户输入的问题对应的第一候选检索结果;
所述第二候选检索结果确定单元,用于基于各个知识的第二召回得分,确定与所述用户输入的问题对应的第二候选检索结果;
则,所述最终检索结果确定单元,包括:
第一最终检索结果确定单元,用于基于所述第一候选检索结果,确定最终检索结果;
第二最终检索结果确定单元,用于基于所述第二候选检索结果,确定最终检索结果;
第三最终检索结果确定单元,用于基于所述第一候选检索结果和所述第二候选检索结果,确定最终检索结果。
可选地,所述第一召回得分计算单元包括第一关键词组确定单元;
所述第一关键词组确定单元,具体用于对所述用户输入的问题进行分词及去除停用词处理,得到第一分词结果;对所述知识进行分词及去除停用词处理,得到第二分词结果;针对所述第一分词结果中的每个词,确定所述第二分词结果中是否包括该词,如果包括,则确定该词为第一问题关键词,所述第二分词结果中的该词为第一知识关键词,该词以及所述第二分词结果中的该词组合得到一个第一关键词组。
可选地,所述第二召回得分计算单元包括第二关键词组确定单元;
所述第二关键词组确定单元,具体用于对所述用户输入的问题进行实体抽取,得到所述第二问题关键词;对所述知识进行实体抽取,得到所述第二知识关键词;针对每个第二问题关键词,将所述第二问题关键词与全部第二知识关键词组合得到一个第二关键词组。
可选地,所述第一召回得分计算单元包括第一计算单元;
所述第一计算单元,用于针对每个第一关键词组,计算每个所述第一问题关键词的向量与每个所述第一知识关键词的向量之间的距离值;将各个距离值中最小的距离值,确定为所述知识的第一召回得分。
可选地,所述第二召回得分计算单元包括第二计算单元;
所述第二计算单元,用于针对每个第二关键词组,计算该第二关键词组的得分;计算各个第二关键词组的得分的和,作为所述知识的第二召回得分。
可选地,所述最终检索结果确定单元,具体用于:
对所述第一候选检索结果,和/或,所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果;
根据所述重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果,确定最终检索结果。
可选地,所述装置还包括:第三候选检索结果确定单元;
所述第三候选检索结果确定单元,具体用于在获取用户输入的问题以及预设知识库之后,获取所述用户输入的问题的向量,以及,所述预设知识库中各知识的向量;针对所述预设知识库中的每个知识,基于所述用户输入的问题的向量,以及,所述知识的向量的相似度,计算所述知识的第三召回得分;基于各个知识的第三召回得分,确定所述用户输入的问题对应的第三候选检索结果。
可选地,所述最终检索结果确定单元,具体用于:
基于所述第一候选检索结果,和/或,所述第二候选检索结果,和,所述第三候选检索结果,确定最终检索结果。
可选地,所述最终检索结果确定单元,具体用于:
对所述第一候选检索结果,和/或,所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果;
对所述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的第三候选检索结果;
根据所述重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果,和,所述重新排序后的第三候选检索结果,确定最终检索结果。
参照图3,图3为本申请实施例提供的一种知识检索设备的硬件结构框图,参照图3,知识检索设备的硬件结构可以包括:至少一个处理器1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4;
在本申请实施例中,处理器1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory)等,例如至少一个磁盘存储器;
其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:
获取用户输入的问题以及预设知识库;
针对每个问题知识对,确定关键词组,每个关键词组中包括问题关键词以及知识关键词,并基于所述问题关键词的向量与所述知识关键词的向量,确定所述知识的召回得分;
基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果;
基于所述候选检索结果,确定最终检索结果。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
本申请实施例还提供一种可读存储介质,该可读存储介质可存储有适于处理器执行的程序,所述程序用于:
获取用户输入的问题以及预设知识库;
针对每个问题知识对,确定关键词组,每个关键词组中包括问题关键词以及知识关键词,并基于所述问题关键词的向量与所述知识关键词的向量,确定所述知识的召回得分;
基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果;
基于所述候选检索结果,确定最终检索结果。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (11)
1.一种知识检索方法,其特征在于,所述方法包括:
获取用户输入的问题以及预设知识库;
针对每个问题知识对,确定第一关键词组,每个第一关键词组中包括第一问题关键词以及第一知识关键词,并基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分;和/或,确定第二关键词组,每个第二关键词组中包括第二问题关键词以及第二知识关键词,并基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分;
基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果;
基于所述候选检索结果,确定最终检索结果;
其中,所述确定第一关键词组,包括:
对所述用户输入的问题进行分词及去除停用词处理,得到第一分词结果;
对所述知识进行分词及去除停用词处理,得到第二分词结果;
针对所述第一分词结果中的每个词,确定所述第二分词结果中是否包括该词,如果包括,则确定该词为第一问题关键词,所述第二分词结果中的该词为第一知识关键词,该词以及所述第二分词结果中的该词组合得到一个第一关键词组;
所述确定第二关键词组,包括:
对所述用户输入的问题进行实体抽取,得到所述第二问题关键词;
对所述知识进行实体抽取,得到所述第二知识关键词;
针对每个第二问题关键词,将所述第二问题关键词与全部第二知识关键词组合得到一个第二关键词组。
2.根据权利要求1所述的方法,其特征在于,所述基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果,包括:
基于各个知识的第一召回得分,确定与所述用户输入的问题对应的第一候选检索结果;和/或,基于各个知识的第二召回得分,确定与所述用户输入的问题对应的第二候选检索结果;
则,所述基于所述候选检索结果,确定最终检索结果,包括:
基于所述第一候选检索结果,和/或,所述第二候选检索结果,确定最终检索结果。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分,包括:
针对每个第一关键词组,计算每个所述第一问题关键词的向量与每个所述第一知识关键词的向量之间的距离值;
将各个距离值中最小的距离值,确定为所述知识的第一召回得分。
4.根据权利要求1所述的方法,其特征在于,所述基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分,包括:
针对每个第二关键词组,计算该第二关键词组的得分;
计算各个第二关键词组的得分的和,作为所述知识的第二召回得分。
5.根据权利要求2所述的方法,其特征在于,所述基于所述第一候选检索结果,和/或,所述第二候选检索结果,确定最终检索结果,包括:
对所述第一候选检索结果,和/或,所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果;
根据所述重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果,确定最终检索结果。
6.根据权利要求2所述的方法,其特征在于,在获取用户输入的问题以及预设知识库之后,所述方法还包括:
获取所述用户输入的问题的向量,以及,所述预设知识库中各知识的向量;
针对所述预设知识库中的每个知识,基于所述用户输入的问题的向量,以及,所述知识的向量的相似度,计算所述知识的第三召回得分;
基于各个知识的第三召回得分,确定所述用户输入的问题对应的第三候选检索结果。
7.根据权利要求6所述的方法,其特征在于,基于所述第一候选检索结果,和/或,所述第二候选检索结果,确定最终检索结果,包括:
基于所述第一候选检索结果,和/或,所述第二候选检索结果,和,所述第三候选检索结果,确定最终检索结果。
8.根据权利要求7所述的方法,其特征在于,所述基于所述第一候选检索结果,和/或,所述第二候选检索结果,和,所述第三候选检索结果,确定最终检索结果,包括:
对所述第一候选检索结果,和/或,所述第二候选检索结果中各个知识进行加权重新排序,得到重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果;
对所述第三候选检索结果中各个知识进行加权重新排序,得到重新排序后的第三候选检索结果;
根据所述重新排序后的所述第一候选检索结果,和/或,重新排序后的所述第二候选检索结果,和,所述重新排序后的第三候选检索结果,确定最终检索结果。
9.一种知识检索装置,其特征在于,所述装置包括:
获取单元,用于获取用户输入的问题以及预设知识库;
知识的召回得分计算单元,用于针对每个问题知识对,确定关键词组,每个关键词组中包括问题关键词以及知识关键词,并基于所述问题关键词的向量与所述知识关键词的向量,确定所述知识的召回得分;
候选检索结果确定单元,用于基于各个知识的召回得分,确定与所述用户输入的问题对应的候选检索结果;
最终检索结果确定单元,用于基于所述候选检索结果,确定最终检索结果;
所述知识的召回得分计算单元,包括:第一召回得分计算单元,和/或,第二召回得分计算单元;
所述第一召回得分计算单元,用于确定第一关键词组,每个第一关键词组中包括第一问题关键词以及第一知识关键词,并基于所述第一问题关键词的向量与所述第一知识关键词的向量,确定所述知识的第一召回得分;
所述第二召回得分计算单元,用于确定第二关键词组,每个第二关键词组中包括第二问题关键词以及第二知识关键词,并基于所述第二问题关键词的向量与所述第二知识关键词的向量,确定所述知识的第二召回得分;
其中,所述第一召回得分计算单元包括第一关键词组确定单元;
所述第一关键词组确定单元,具体用于对所述用户输入的问题进行分词及去除停用词处理,得到第一分词结果;对所述知识进行分词及去除停用词处理,得到第二分词结果;针对所述第一分词结果中的每个词,确定所述第二分词结果中是否包括该词,如果包括,则确定该词为第一问题关键词,所述第二分词结果中的该词为第一知识关键词,该词以及所述第二分词结果中的该词组合得到一个第一关键词组;
所述第二召回得分计算单元包括第二关键词组确定单元;
所述第二关键词组确定单元,具体用于对所述用户输入的问题进行实体抽取,得到所述第二问题关键词;对所述知识进行实体抽取,得到所述第二知识关键词;针对每个第二问题关键词,将所述第二问题关键词与全部第二知识关键词组合得到一个第二关键词组。
10.一种知识检索设备,其特征在于,包括存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如权利要求1至8中任一项所述的知识检索方法的各个步骤。
11.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至8中任一项所述的知识检索方法的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310922769.8A CN116628142B (zh) | 2023-07-26 | 2023-07-26 | 知识检索方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310922769.8A CN116628142B (zh) | 2023-07-26 | 2023-07-26 | 知识检索方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116628142A CN116628142A (zh) | 2023-08-22 |
CN116628142B true CN116628142B (zh) | 2023-12-01 |
Family
ID=87597753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310922769.8A Active CN116628142B (zh) | 2023-07-26 | 2023-07-26 | 知识检索方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116628142B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117520482A (zh) * | 2023-12-01 | 2024-02-06 | 北京健康有益科技有限公司 | 一种小样本食品标题的检索方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113761220A (zh) * | 2021-05-08 | 2021-12-07 | 腾讯科技(深圳)有限公司 | 信息获取方法、装置、设备及存储介质 |
CN114329181A (zh) * | 2021-11-29 | 2022-04-12 | 腾讯科技(深圳)有限公司 | 一种题目推荐方法、装置及电子设备 |
CN114756663A (zh) * | 2022-03-29 | 2022-07-15 | 税友信息技术有限公司 | 一种智能问答方法、系统、设备及计算机可读存储介质 |
CN115470313A (zh) * | 2022-08-12 | 2022-12-13 | 北京百度网讯科技有限公司 | 信息检索及模型训练方法、装置、设备和存储介质 |
CN116049379A (zh) * | 2022-12-30 | 2023-05-02 | 百度国际科技(深圳)有限公司 | 知识推荐方法、装置、电子设备和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10621507B2 (en) * | 2016-03-12 | 2020-04-14 | Wipro Limited | System and method for generating an optimized result set using vector based relative importance measure |
CN109284357B (zh) * | 2018-08-29 | 2022-07-19 | 腾讯科技(深圳)有限公司 | 人机对话方法、装置、电子设备及计算机可读介质 |
-
2023
- 2023-07-26 CN CN202310922769.8A patent/CN116628142B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113761220A (zh) * | 2021-05-08 | 2021-12-07 | 腾讯科技(深圳)有限公司 | 信息获取方法、装置、设备及存储介质 |
CN114329181A (zh) * | 2021-11-29 | 2022-04-12 | 腾讯科技(深圳)有限公司 | 一种题目推荐方法、装置及电子设备 |
CN114756663A (zh) * | 2022-03-29 | 2022-07-15 | 税友信息技术有限公司 | 一种智能问答方法、系统、设备及计算机可读存储介质 |
CN115470313A (zh) * | 2022-08-12 | 2022-12-13 | 北京百度网讯科技有限公司 | 信息检索及模型训练方法、装置、设备和存储介质 |
CN116049379A (zh) * | 2022-12-30 | 2023-05-02 | 百度国际科技(深圳)有限公司 | 知识推荐方法、装置、电子设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
基于本体的个性化领域信息服务;余正涛, 宋丽哲, 樊孝忠;计算机工程(05);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116628142A (zh) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110196901B (zh) | 对话系统的构建方法、装置、计算机设备和存储介质 | |
CN109815314B (zh) | 一种意图识别方法、识别设备及计算机可读存储介质 | |
CN108647205B (zh) | 细粒度情感分析模型构建方法、设备及可读存储介质 | |
JP3882048B2 (ja) | 質問応答システムおよび質問応答処理方法 | |
CN109815492A (zh) | 一种基于识别模型的意图识别方法、识别设备及介质 | |
US7599926B2 (en) | Reputation information processing program, method, and apparatus | |
CN107180084B (zh) | 词库更新方法及装置 | |
US10353925B2 (en) | Document classification device, document classification method, and computer readable medium | |
CN110750704B (zh) | 一种查询自动补全的方法和装置 | |
KR101491627B1 (ko) | 모바일 애플리케이션 평가를 위한 리뷰 정량화 방법, 장치 및 시스템 | |
CN110134777B (zh) | 问题去重方法、装置、电子设备和计算机可读存储介质 | |
CN110737756B (zh) | 确定针对用户输入数据的应答的方法、装置、设备和介质 | |
CN106126589B (zh) | 简历搜索方法及装置 | |
CN116628142B (zh) | 知识检索方法、装置、设备及可读存储介质 | |
KR20190128246A (ko) | 검색 방법 및 장치 및 비-일시적 컴퓨터-판독가능 저장 매체 | |
CN101477563A (zh) | 一种短文本聚类的方法、系统及其数据处理装置 | |
JP5538185B2 (ja) | テキストデータ要約装置、テキストデータ要約方法及びテキストデータ要約プログラム | |
CN112182264A (zh) | 地标信息的确定方法、装置、设备及可读存储介质 | |
JP4325370B2 (ja) | 文書関連語彙獲得装置及びプログラム | |
CN107908649B (zh) | 一种文本分类的控制方法 | |
CN117763126A (zh) | 知识检索方法、设备、存储介质及装置 | |
CN113656575A (zh) | 训练数据的生成方法、装置、电子设备及可读介质 | |
CN111125329B (zh) | 一种文本信息筛选方法、装置及设备 | |
CN111831819B (zh) | 一种文本更新方法及装置 | |
KR102028155B1 (ko) | 문헌 스코어링 방법 및 문헌 검색 시스템 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |