基于知识锚点的检索方法、装置、电子设备及存储介质与流程

文档序号:29043519发布日期:2022-02-25 21:22阅读:133来源:国知局
基于知识锚点的检索方法、装置、电子设备及存储介质与流程

1.本技术涉及人工智能技术领域,尤其涉及一种基于知识锚点的检索方法、装置、电子设备及存储介质。


背景技术:

2.目前,在短文本理解中通常将起映射在一个语义空间上的隐性向量,然后通过计算向量的相似度来进行内容召回。有时面对两个结构相似、但实体不同的句子,却会判定为两个句子相似、向用户返回错误句子的答案信息,使得信息检索的准确性较低。因此,如何提供一种基于知识锚点的检索方法,能够提高检索的准确性,成为了亟待解决的技术问题。


技术实现要素:

3.本技术实施例的主要目的在于提出一种基于知识锚点的检索方法、装置、电子设备及存储介质,旨在提高检索的准确性。
4.为实现上述目的,本技术实施例的第一方面提出了一种基于知识锚点的检索方法,所述方法包括:
5.获取知识锚点数据;
6.通过对所述知识锚点数据进行实体特征改写,得到知识锚点语句;
7.根据预设的关键字和字典树对所述知识锚点语句进行召回处理,得到检索语句集合;
8.通过预设的检索模型对所述知识锚点语句进行检索处理,得到检索特征数据;
9.对所述检索特征数据和所述检索语句集合进行融合处理,得到检索文本;
10.根据预设的聚类标签对所述检索文本进行聚类处理,得到聚类文本集;
11.对所述聚类文本集进行过滤处理,得到目标检索文本集。
12.在一些实施例,所述通过对所述知识锚点数据进行实体特征改写,得到知识锚点语句的步骤,包括:
13.对所述知识锚点数据进行特征提取,得到实体锚点特征;
14.利用预设的字典树遍历所述实体锚点特征,以通过所述字典树对所述知识锚点数据进行扩充处理,得到目标锚点数据;
15.对所述目标锚点数据进行实体特征改写,得到候选锚点语句;
16.对所述候选锚点语句进行筛选处理,得到知识锚点语句。
17.在一些实施例,所述根据预设的关键字对所述知识锚点语句进行召回处理,得到检索语句集合的步骤,包括:
18.通过预设的序列分类器对所述知识锚点语句进行分类处理,得到标注锚点语句;
19.对所述标注锚点语句进行卷积处理,得到标注锚点特征;
20.根据所述关键字对所述字典树中的所述标注锚点特征进行关键字召回处理,得到检索语句集合。
21.在一些实施例,所述通过预设的检索模型对所述知识锚点语句进行检索处理,得到检索特征数据的步骤,包括:
22.对所述知识锚点语句进行词向量化处理得到锚点语句词向量,并对预设的参考语句进行词向量化处理,得到参考语句词向量;
23.对所述锚点语句词向量和所述参考语句词向量进行特征提取,得到锚点语句特征和参考语句特征;
24.对所述锚点语句特征和所述参考语句特征进行差异性计算,得到锚点局部特征值和参考局部特征值;
25.对所述锚点局部特征值和所述参考局部特征值进行池化处理,得到池化特征值;
26.通过预设的第一函数对所述池化特征值进行激活处理,得到检索特征数据。
27.在一些实施例,所述根据预设的聚类标签对所述检索文本进行聚类处理,得到聚类文本集的步骤,包括:
28.通过预设的第二函数对检索文本进行文本分数计算,得到每一检索文本的文本分值;
29.根据预设的聚类标签、所述文本分值对所述检索文本进行聚类处理,得到聚类文本集。
30.在一些实施例,所述对所述聚类文本集进行过滤处理,得到目标检索文本集的步骤,包括:
31.获取过滤优先级序列;
32.根据所述过滤优先级序列依次对所述聚类文本集进行过滤处理,得到目标检索文本集。
33.在一些实施例,在所述对所述聚类文本集进行过滤处理,得到目标检索文本集的步骤之前,所述方法还包括:
34.根据所述聚类标签,获取所述聚类文本集的过滤类型;
35.对所述过滤类型进行优先级排序,生成所述过滤优先级序列。
36.为实现上述目的,本技术实施例的第二方面提出了一种基于知识锚点的检索装置,所述装置包括:
37.数据获取模块,用于获取知识锚点数据;
38.数据预处理模块,用于通过对知识锚点数据进行实体特征改写,得到知识锚点语句;
39.关键字召回模块,用于根据预设的关键字和字典树对所述知识锚点语句进行召回处理,得到检索语句集合;
40.检索模块,用于通过预设的检索模型对所述知识锚点语句进行检索处理,得到检索特征数据;
41.融合模块,用于对所述检索特征数据和所述检索语句集合进行融合处理,得到检索文本;
42.聚类模块,用于根据预设的聚类标签对所述检索文本进行聚类处理,得到聚类文本集;
43.过滤模块,用于对所述聚类文本集进行过滤处理,得到目标检索文本集。
44.为实现上述目的,本技术实施例的第三方面提出了一种电子设备,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,所述程序被所述处理器执行时实现上述第一方面所述的方法。
45.为实现上述目的,本技术实施例的第四方面提出了一种存储介质,所述存储介质为计算机可读存储介质,用于计算机可读存储,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述第一方面所述的方法。
46.本技术提出的基于知识锚点的检索方法、装置、电子设备及存储介质,其通过获取知识锚点数据;通过对知识锚点数据进行实体特征改写,得到知识锚点语句,保证了知识锚点语句的合理性。进而,根据预设的关键字和字典树对知识锚点语句进行召回处理,得到检索语句集合。同时,通过预设的检索模型对知识锚点语句进行检索处理,得到检索特征数据,这样一来,能够得到符合要求的检索语句以及检索特征数据。进而,对检索特征数据和检索语句集合进行融合处理,得到检索文本,能够提高检索效率和检索准确性,然后根据预设的聚类标签对检索文本进行聚类处理,得到聚类文本集;最后对聚类文本集进行过滤处理,得到目标检索文本集,使得目标检索文本集的检索文本与检索意图的相关性更高,从而提高了信息检索的准确性。
附图说明
47.图1是本技术实施例提供的基于知识锚点的检索方法的流程图;
48.图2是图1中的步骤s102的流程图;
49.图3是图1中的步骤s103的流程图;
50.图4是图1中的步骤s104的流程图;
51.图5是图1中的步骤s106的流程图;
52.图6是本技术实施例提供的基于知识锚点的检索方法的另一流程图;
53.图7是图1中的步骤s107的流程图;
54.图8是本技术实施例提供的基于知识锚点的检索装置的结构示意图;
55.图9是本技术实施例提供的电子设备的硬件结构示意图。
具体实施方式
56.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。
57.需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
58.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
1,yi,x,i)是一个任意的特征函数。
66.长短期记忆网络(long short-term memory,lstm):是一种时间循环神经网络,是为了解决一般的rnn(循环神经网络)存在的长期依赖问题而专门设计出来的,所有的rnn都具有一种重复神经网络模块的链式形式。在标准rnn中,这个重复的结构模块只有一个非常简单的结构,例如一个tanh层。lstm是一种含有lstm区块(blocks)或其他的一种类神经网络,文献或其他资料中lstm区块可能被描述成智能网络单元,因为它可以记忆不定时间长度的数值,区块中有一个gate能够决定input是否重要到能被记住及能不能被输出output。
67.双向长短时记忆(bi-directional long short-term memory,bi-lstm):是由前向lstm与后向lstm组合而成。在自然语言处理任务中都常被用来建模上下文信息。bi-lstm在lstm的基础上,结合了输入序列在前向和后向两个方向上的信息。对于t时刻的输出,前向lstm层具有输入序列中t时刻以及之前时刻的信息,而后向lstm层中具有输入序列中t时刻以及之后时刻的信息。前向lstm层t时刻的输出记作,后向lstm层t时刻的输出结果记作,两个lstm层输出的向量可以使用相加、平均值或连接等方式进行处理。
68.随着人工智能的发展,智能问答的应用越来越广泛。智能问答涉及人工智能领域中的语义解析及语音识别等,通常是由计算机获取用户问句,对用户问句进行分析并基于知识锚点的检索到对应的答案信息后进行展示,智能问答可以针对某个专用场景设计,例如医疗、商业和旅游等。智能问答中用户的问句多种多样,因此准确理解用户的查询意图并准确快速地检索到答案信息,是实现智能问答的关键。
69.目前,在短文本理解中通常将起映射在一个语义空间上的隐性向量,然后通过计算向量的相似度来进行内容召回。有时面对两个结构相似、但实体不同的句子,却会判定为两个句子相似、向用户返回错误句子的答案信息,使得信息检索的准确性较低。因此,如何提供一种基于知识锚点的检索方法,能够提高检索的准确性,成为了亟待解决的技术问题。
70.基于此,本技术实施例提供了一种基于知识锚点的检索方法、装置、电子设备及存储介质,旨在提高检索的准确性。
71.本技术实施例提供的基于知识锚点的检索方法、装置、电子设备及存储介质,具体通过如下实施例进行说明,首先描述本技术实施例中的基于知识锚点的检索方法。
72.本技术实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
73.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
74.本技术实施例提供的基于知识锚点的检索方法,涉及人工智能技术领域。本技术实施例提供的基于知识锚点的检索方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、
云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现基于知识锚点的检索方法的应用等,但并不局限于以上形式。
75.本技术可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本技术可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
76.图1是本技术实施例提供的基于知识锚点的检索方法的一个可选的流程图,图1中的方法可以包括但不限于包括步骤s101至步骤s107。
77.步骤s101,获取知识锚点数据;
78.步骤s102,通过对知识锚点数据进行实体特征改写,得到知识锚点语句;
79.步骤s103,根据预设的关键字和字典树对知识锚点语句进行召回处理,得到检索语句集合;
80.步骤s104,通过预设的检索模型对知识锚点语句进行检索处理,得到检索特征数据;
81.步骤s105,对检索特征数据和检索语句集合进行融合处理,得到检索文本;
82.步骤s106,根据预设的聚类标签对检索文本进行聚类处理,得到聚类文本集;
83.步骤s107,对聚类文本集进行过滤处理,得到目标检索文本集。
84.经过上述步骤s101至步骤s107,本技术实施例通过根据预设的关键字和字典树对知识锚点语句进行召回处理,通过预设的检索模型对知识锚点语句进行检索处理,能够得到符合要求的检索语句以及检索特征数据。根据预设的聚类标签对检索文本进行聚类处理,并对经过聚类处理得到的对聚类文本集进行过滤处理,得到目标检索文本集,能够使得目标检索文本的检索文本与检索意图的相关性更高,从而提高了信息检索的准确性。
85.在一些实施例的步骤s101中,可以通过编写网络爬虫,设置好数据源之后进行有目标性的爬取数据,得到知识锚点数据。另外,也可以从预先构建的知识数据库中提取知识锚点数据,还可以是通过其他方式获取知识锚点数据,不限于此。需要解释的是,知识锚点数据主要指一种超级链接数据,又叫命名锚记,是一种页面内的超级链接。
86.请参阅图2,在一些实施例中,步骤s102可以包括但不限于包括步骤s201至步骤s204:
87.步骤s201,对知识锚点数据进行特征提取,得到实体锚点特征;
88.步骤s202,利用预设的字典树遍历实体锚点特征,以通过字典树对知识锚点数据进行扩充处理,得到目标锚点数据;
89.步骤s203,对目标锚点数据进行实体特征改写,得到候选锚点语句;
90.步骤s204,对候选锚点语句进行筛选处理,得到知识锚点语句。
91.具体地,在步骤s201中,可以采用预设的命名实体识别模型(ltp模型)对知识锚点
数据进行特征提取,例如,采用jieba分词器对知识锚点数据进行分词处理,得到多个知识锚点词段,进而根据预设的词性标签对知识锚点词段进行标注处理,使得每一知识锚点词段带上对应的词性类别标签,从而对这些知识锚点词段上符合要求的命名实体进行识别,以实现对知识锚点数据的特征提取,得到实体锚点特征。
92.在步骤s202中,由于预设的字典树中预先存储有相应的参考实体锚点特征,该参考实体锚点特征作为字典树的子节点,参考实体锚点特征的全称为字典树的叶子节点;利用该字典树遍历实体锚点特征,对参考实体锚点特征进行提取,在字典树中从根节点开始,逐步向下查找,遍历所有的叶子节点,计算每一叶子节点的参考实体锚点特征与当前实体锚点特征的相似度,提取相似度大于预设阈值的叶子节点的参考实体锚点特征,将这一系列的参考实体锚点特征和当前实体锚点特征纳入同一集合,从而实现对知识锚点数据进行扩充处理,得到目标锚点数据,需要解释的是,该目标锚点数据指该集合内的全部数据。
93.在步骤s203中,为了保证锚点数据的完整性,还需要对目标锚点数据进行实体特征改写,例如,对目标锚点数据里的每一字段/字符进行简繁体转换、大小写转换,同音词替换、同义词替换等操作,以扩充锚点数据的数据总量,提高数据召回的多样性以及数据召回率。
94.在步骤s204中,为了提高检索效率,还需对候选锚点语句进行筛选处理,例如,可以根据预设的句子长度、词性类别对候选锚点语句进行筛选处理,剔除掉不符合要求的候选锚点语句,将符合长度要求以及词性类别要求的候选锚点语句作为最终的知识锚点语句。
95.请参阅图3,在一些实施例中,步骤s103可以包括但不限于包括步骤s301至步骤s303:
96.步骤s301,通过预设的序列分类器对知识锚点语句进行分类处理,得到标注锚点语句;
97.步骤s302,对标注锚点语句进行卷积处理,得到标注锚点特征;
98.步骤s303,根据关键字对字典树中的标注锚点特征进行关键字召回处理,得到检索语句集合。
99.具体地,在步骤s301和步骤s302中,首先需要识别知识锚点语句中的实体特征,然后查找构成检索场景的文本范围,利用预先训练的序列分类器对该文本范围内的实体特征进行分类处理。在对实体特征进行分类处理时,需要利用预先训练的序列分类器对实体特征进行标记,使得这些实体特征都能够带上预设的标签,以便提高分类效率。进一步地,预先训练的序列分类器可以是最大熵马尔科夫模型(memm模型)或者基于条件随机场算法(crf)的模型或者是基于双向长短时记忆算法(bi-lstm)的模型。例如,在基于bi-lstm算法构建序列分类器时,在基于bi-lstm算法的模型中,输入单词wi和字符嵌入,通过左到右的长短记忆和右向左的长短时记忆,使得在输出被连接的位置生成单一的输出层。序列分类器通过这一输出层可以将输入的实体特征直接传递到softmax分类器上,通过softmax分类器在预设的类别标签上创建一个概率分布,从而根据概率分布对实体特征进行标记分类,得到标注锚点语句。进而,对标注锚点语句进行卷积处理,以实现对标注锚点语句的特征提取,得到对应的标注锚点特征。需要说明的是,该类别标签可以是词性类别标签、检索类型标签或者文本类别标签等等,可以根据实际需求设定,不做限制。
100.在步骤s303中,由于预设的字典树中预先存储有相应的标注锚点特征,该标注锚点特征作为字典树的子节点,标注锚点特征的全称为字典树的叶子节点;将检索的关键字输入至字典树中,对标注锚点特征进行关键字召回,在字典树中从根节点开始,逐步向下查找,遍历所有的叶子节点,计算每一叶子节点的标注锚点特征与当前关键词的相似度,提取相似度大于预设阈值的叶子节点的标注锚点特征,查找这些标注锚点特征对应的标注锚点语句,将这些符合要求的标注锚点语句纳入同一集合,得到检索语句集合。
101.请参阅图4,在一些实施例中,步骤s104可以包括但不限于包括步骤s401至步骤s405:
102.步骤s401,对知识锚点语句进行词向量化处理得到锚点语句词向量,并对预设的参考语句进行词向量化处理,得到参考语句词向量;
103.步骤s402,对锚点语句词向量和参考语句词向量进行特征提取,得到锚点语句特征和参考语句特征;
104.步骤s403,对锚点语句特征和参考语句特征进行差异性计算,得到锚点局部特征值和参考局部特征值;
105.步骤s404,对锚点局部特征值和参考局部特征值进行池化处理,得到池化特征值;
106.步骤s405,通过预设的第一函数对池化特征值进行激活处理,得到检索特征数据。
107.具体地,该检索模型为改进的esim模型,该检索模型包括输入层(input encoding)、局部推理层(local inference modeling)、推理组合层(inference composition)、预测层(prediction)四个部分。
108.在步骤s401和步骤s402中,通过检索模型的输入层对知识锚点语句进行词向量化处理,例如采用transformer算法对知识锚点语句进行词向量化处理,得到锚点语句词向量,同时,还通过输入层对预设的参考语句进行词向量化处理,例如采用transformer算法对参考语句进行词向量化,得到参考语句词向量。进而,通过对锚点语句词向量和参考语句词向量进行卷积处理,提取到锚点语句特征和参考语句特征。
109.例如,锚点语句词向量可以表示为参考语句词向量可以表示为其中,i∈[1,len(a)],j∈[1,len(b)];a、b分别表示输入的知识锚点语句和参考语句,表示经过transformer运算之后的锚点语句词向量,表示经过transformer运算之后的参考语句词向量。
[0110]
在步骤s403中,通过检索模型的局部推理层对锚点语句特征和参考语句特征进行差异性计算,得到锚点局部特征值和参考局部特征值。具体地,在进行差异性计算时可以引入注意力机制模块,通过注意力机制模块分别计算出知识锚点语句的权重加权值与参考语句的权重加权值,将锚点语句词向量与知识锚点语句的权重加权值进行对位相减,得到锚点局部特征值,将参考语句词向量与参考语句的权重加权值进行对位相减,得到参考局部特征值。
[0111]
例如,知识锚点语句的权重加权值可以表示为
[0112][0113]
参考语句的权重加权值可以表示为
[0114][0115]
其中,
[0116]
通过差异性计算得到的锚点局部特征值可以表示为参考局部特征值可以表示为
[0117]
在步骤s404中,通过检索模型的推理组合层的transformer模块对锚点局部特征值和参考局部特征值进行局部信息推理,即通过transformer模块捕获锚点局部特征值和参考局部特征值以及二者的上下文信息,得到锚点推理组合值和参考推理组合值,分别对锚点推理组合值和参考推理组合值进行池化操作,具体地,分别对锚点推理组合值和参考推理组合值进行最大池化处理,得到第一最大池化值和第二最大池化值,分别对锚点推理组合值和参考推理组合值进行平均池化处理,得到第一平均池化值和第二平均池化值,最后将第一最大池化值、第二最大池化值、第一平均池化值和第二平均池化值进行拼接处理,得到池化特征值。
[0118]
例如,第一平均池化值和第二平均池化值可以分别表示为
[0119][0120][0121]
第一最大池化值和第二最大池化值可以分别表示为;
[0122][0123][0124]
则池化特征值为
[0125]
v=[v
a,avg
;v
a,max
;v
b,avg
;v
b,max
]
[0126]
在步骤s405中,预设的第一函数可以为softmax激活函数;在检索模型的预测层通过softmax激活函数对池化特征值进行激活处理,得到检索特征数据。这一方式能够方便地确定与检索需求相关的检索特征数据,缩小检索数据的查询范围,提高检索效率。需要说明的是,预设的第一函数还可以是其他激活函数,例如tanh函数等,不限于此。
[0127]
在一些实施例中,在执行步骤s105时,为了提高检索准确性,可以将检索特征数据和检索语句集合内的检索语句都转化为sql语句,通过数据库平台对这些sql语句进行拼接融合,得到符合要求的检索文本。
[0128]
请参阅图5,在一些实施例中,步骤s106还可以包括但不限于包括步骤s501至步骤s502:
[0129]
步骤s501,通过预设的第二函数对检索文本进行文本分数计算,得到每一检索文本的文本分值;
[0130]
步骤s502,根据预设的聚类标签、文本分值对检索文本进行聚类处理,得到聚类文
本集。
[0131]
具体地,执行步骤s501,该文本分值主要指的是关键字分值,关键字分值为关键字召回的语料得分值,主要是根据输入的知识锚点数据与关键字的匹配情况进行分值设定。本技术实施例中采用语料召回次数进行分值设定。例如:搜索知识锚点数据中包含“平安福”、“白血病”、“少儿平安福”三个关键字,字典树中包含这三个关键字的语料会被召回三次、包含其中两个关键字的语料会被召回两次,以此类推,召回次数越多,分值设定越高,召回次数越少,分值设定越低。通过预设的sum函数和预设的关键字可以对检索文本进行文本分数计算,获取每一检索文本的关键字召回次数,从而得到每一检索文本的文本分值。
[0132]
需要说明的是,在一些具体实施例中,预设的文本分值设定规则可以是0.9+召回次数/检索文本中的关键字数量。
[0133]
进一步地,执行步骤s502,利用预设的聚类算法(例如kmeans算法、tf-idf加权算法等等)、聚类标签以及文本分值对检索文本进行聚类处理。例如,通过tf-idf加权算法计算每一检索文本的文本向量与每一聚类标签对应的参考向量之间的差异性,该差异性可以用相似度进行表征,也可以是其他。通过tf-idf加权算法来评估每一个检索文本的重要程度。根据每一检索文本的文本向量与每一聚类标签对应的参考向量的差异性以及文本分值,来确定该检索文本所属的标签文本集合,同时,还可以根据预设的聚类标签对检索文本进行标注,得到聚类文本集。
[0134]
进一步地,由于在一些预设的应用场景中,检索内容主要包含:视频方案、普通方案、问答对(问答faq)三类语料,其中视频方案的重要性高于普通方案,普通方案的重要性高于问答faq,因此我们通过规则调整三类语料的排序顺序,重要性越高的,赋予更高的权重,重要性越低的,赋予小一点的权重。例如,若检索文本为视频方案数据,则在原来的文本分值的基础上再加0.5,若检索文本为普通方案,则在原来的文本分值的基础上再加0.3,否则保持原来的文本分值不变。因此,根据上述的聚类标签、文本分值以及预设的权重占比,对检索文本进行排序和聚类,能够得到包含聚类标签的聚类文本集。
[0135]
请参阅图6,在一些实施例,在步骤s107之前,该方法还包括但不限于包括步骤s601至步骤s602:
[0136]
步骤s601,根据聚类标签,获取聚类文本集的过滤类型;
[0137]
步骤s602,对过滤类型进行优先级排序,生成过滤优先级序列。
[0138]
具体地,在步骤s601中,预设的过滤类型包括机构过滤、答案过滤、上下架过滤以及方案类别过滤,可以根据聚类标签,从预设的多种过滤类型中获取聚类文本集的过滤类型,该过滤类型可以是一个也可以是多个。为了提高过滤效率,在步骤s602,可以对多种过滤类型设置优先级,从而对过滤类型进行优先级排序,生成过滤优先级序列。例如,机构过滤优先于上下架过滤,上下架过滤优先于方案类别过滤,方案类别过滤优先于答案过滤,得到过滤优先级序列。
[0139]
请参阅图7,在一些实施例中,步骤s107还可以包括但不限于包括步骤s701至步骤s702:
[0140]
步骤s701,获取过滤优先级序列;
[0141]
步骤s702,根据过滤优先级序列依次对聚类文本集进行过滤处理,得到目标检索文本集。
[0142]
首先执行步骤s701,获取过滤优先级序列,例如,过滤优先级序列为机构过滤优先于上下架过滤,上下架过滤优先于方案类别过滤,方案类别过滤优先于答案过滤。进而,执行步骤s702,根据这一优先级序列依次对聚类文本进行过滤处理,得到目标检索文本集。
[0143]
例如,通过机构过滤得到由全国机构的语料或跟用户对应相同机构的语料的聚类文本集合。进一步地,由于原有语料中除了前面提到的视频方案、普通方案、问答faq还有异议话术,而本场景中异议话术是不能检索出来的,所以通过方案类别过滤对异议话术进行过滤处理。进一步地,由于检索内容更新比较频繁、经常会将一些原有内容下架或上线一些新内容,但是下架的内容需要过滤掉,通过上下架过滤可以实现对下架内容的过滤。最后通过答案过滤可以过滤掉聚类文本集合中一些答案包含跳转链接、问题不同但是答案相同、答案为一些无用的兜底答案语料等的聚类文本。通过上述过滤类别能够实现对聚类文本的全面过滤,从而得到目标检索文本集。
[0144]
本技术实施例通过获取知识锚点数据;通过对知识锚点数据进行实体特征改写,得到知识锚点语句,保证了知识锚点语句的合理性。进而,根据预设的关键字和字典树对知识锚点语句进行召回处理,得到检索语句集合。同时,通过预设的检索模型对知识锚点语句进行检索处理,得到检索特征数据,这样一来,能够得到符合要求的检索语句以及检索特征数据。进而,对检索特征数据和检索语句集合进行融合处理,得到检索文本,能够提高检索效率和检索准确性,然后根据预设的聚类标签对检索文本进行聚类处理,得到聚类文本集;最后对聚类文本集进行过滤处理,得到目标检索文本集,使得目标检索文本集的检索文本与检索意图的相关性更高,从而提高了信息检索的准确性。
[0145]
请参阅图8,本技术实施例还提供一种基于知识锚点的检索装置,可以实现上述基于知识锚点的检索方法,该装置包括:
[0146]
数据获取模块801,用于获取知识锚点数据;
[0147]
数据预处理模块802,用于通过对知识锚点数据进行实体特征改写,得到知识锚点语句;
[0148]
关键字召回模块803,用于根据预设的关键字和字典树对知识锚点语句进行召回处理,得到检索语句集合;
[0149]
检索模块804,用于通过预设的检索模型对知识锚点语句进行检索处理,得到检索特征数据;
[0150]
融合模块805,用于对检索特征数据和检索语句集合进行融合处理,得到检索文本;
[0151]
聚类模块806,用于根据预设的聚类标签对检索文本进行聚类处理,得到聚类文本集;
[0152]
过滤模块807,用于对聚类文本集进行过滤处理,得到目标检索文本集。
[0153]
该基于知识锚点的检索装置的具体实施方式与上述基于知识锚点的检索方法的具体实施例基本相同,在此不再赘述。
[0154]
本技术实施例还提供了一种电子设备,电子设备包括:存储器、处理器、存储在存储器上并可在处理器上运行的程序以及用于实现处理器和存储器之间的连接通信的数据总线,程序被处理器执行时实现上述基于知识锚点的检索方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
[0155]
请参阅图9,图9示意了另一实施例的电子设备的硬件结构,电子设备包括:
[0156]
处理器901,可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本技术实施例所提供的技术方案;
[0157]
存储器902,可以采用只读存储器(readonlymemory,rom)、静态存储设备、动态存储设备或者随机存取存储器(randomaccessmemory,ram)等形式实现。存储器902可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器902中,并由处理器901来调用执行本技术实施例的基于知识锚点的检索方法;
[0158]
输入/输出接口903,用于实现信息输入及输出;
[0159]
通信接口904,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信;
[0160]
总线905,在设备的各个组件(例如处理器901、存储器902、输入/输出接口903和通信接口904)之间传输信息;
[0161]
其中处理器901、存储器902、输入/输出接口903和通信接口904通过总线905实现彼此之间在设备内部的通信连接。
[0162]
本技术实施例还提供了一种存储介质,存储介质为计算机可读存储介质,用于计算机可读存储,存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现上述基于知识锚点的检索方法。
[0163]
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0164]
本技术实施例描述的实施例是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
[0165]
本领域技术人员可以理解的是,图1-7中示出的技术方案并不构成对本技术实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
[0166]
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0167]
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
[0168]
本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖
不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0169]
应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
[0170]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0171]
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0172]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0173]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例的方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等各种可以存储程序的介质。
[0174]
以上参照附图说明了本技术实施例的优选实施例,并非因此局限本技术实施例的权利范围。本领域技术人员不脱离本技术实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本技术实施例的权利范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1