一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于搜索语句的搜索方法、装置、设备及存储介质与流程

2022-04-14 02:03:46 来源:中国专利 TAG:


1.本发明涉及大数据领域,尤其涉及一种基于搜索语句的搜索方法、装置、设备及存储介质。


背景技术:

2.随着大数据的应用和发展,如何对数据进行精确搜索成为当前亟需解决的问题,在绝大多数的搜索引擎中,通过共现词的统计从而确定数据对象与搜索语句的关联度。
3.现有基于搜索语句的搜索方法,搜索维度单一,搜索语句与数据对象之间的语义联系得不到体现,从而导致搜索准确率低下。


技术实现要素:

4.本发明的主要目的在于解决现有基于搜索语句的搜索方法准确性低的问题。
5.本发明第一方面提供了一种基于搜索语句的搜索方法,包括:
6.获取用户输入的搜索语句和预设搜索资源池中的文本数据集,分别对所述搜索语句和所述文本数据集中的每条文本数据进行分词,以及分别对分词的结果进行向量化编码,分别得到至少一个搜索关键词向量和多个文本分词向量;
7.对所述至少一个搜索关键词向量和所述多个文本分词向量进行命名实体识别;
8.对所述至少一个搜索关键词向量和所述多个文本分词向量进行语义角色预测;
9.基于所述至少一个搜索关键词向量和所述多个文本分词向量,计算所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度,并基于命名实体识别的结果,计算所述搜索语句与所述文本数据集中每条文本数据之间的实体相似度,以及基于语义角色预测的结果,计算所述搜索语句与所述文本数据集中每条文本数据之间的语义角色相似度;
10.基于预设的计算规则,对所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度、语义角色相似度以及实体相似度中的至少一种相似度进行计算,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度;
11.获取每条所述文本数据对应的网页链接,按照所述全局相似度的大小,对所述网页链接进行降序排序,并将排序结果在所述终端输出显示。
12.可选的,在本发明第一方面的第一种实现方式中,所述对所述至少一个搜索关键词向量和所述多个文本分词向量进行命名实体识别包括:
13.获取预设的初始训练数据集,并基于所述至少一个搜索关键词向量和所述多个文本分词向量构建待识别数据集;
14.以所述初始训练数据集为第一轮训练数据集,对预设的命名实体识别模型进行第一轮监督训练;
15.基于第一轮监督训练后的命名实体识别模型对所述待识别数据集进行命名实体识别与标注,得到弱标注的待识别数据集;
16.从本轮得到的弱标注的待识别数据集中提取子集,并将该子集加入所述初始训练
数据集中,得到第二轮训练数据集,并基于第二轮训练数据集对第一轮监督训练后的命名实体识别模型再次进行监督训练,如此进行多轮训练,直至所述命名实体识别模型收敛时,输出当前轮次中待识别数据集的实体识别与标注的结果。
17.可选的,在本发明第一方面的第二种实现方式中,所述以所述初始训练数据集为第一轮训练数据集,对预设的命名实体识别模型进行第一轮监督训练包括:
18.调用所述命名实体识别模型中的crf层网络对所述第一轮训练数据集进行处理,得到所述第一轮训练数据集中每个句子的概率矩阵;
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.迭代训练单元,用于从本轮得到的弱标注的待识别数据集中提取子集,并将该子集加入所述初始训练数据集中,得到第二轮训练数据集,并基于第二轮训练数据集对第一轮监督训练后的命名实体识别模型再次进行监督训练,如此进行多轮训练,直至所述命名实体识别模型收敛时,输出当前轮次中待识别数据集的实体识别与标注的结果。
48.可选的,在本发明第二方面的第二种实现方式中,所述监督训练单元用于:
49.调用所述命名实体识别模型中的crf层网络对所述第一轮训练数据集进行处理,得到所述第一轮训练数据集中每个句子的概率矩阵;
50.基于维特比算法对每个句子的概率矩阵进行计算,得到最优标注序列;
51.根据所述最优标注序列中的识别结果与第一轮训练数据集中标注结果,调整所述命名实体识别模型的参数。
52.可选的,在本发明第二方面的第三种实现方式中,所述语义角色预测模块具体包括:
53.词性分析单元,用于基于预设的词性分析模型,依次对目标向量进行正序词性分析和逆序词性分析,并根据分析的结果确定目标向量对应分词的词性类型,其中,所述目标向量包括所述至少一个搜索关键词向量和所述多个文本向量;
54.向量获取单元,用于根据所述目标向量对应分词的词性类型,在预设的词性向量库中查找所述目标向量对应分词的词性向量;
55.角色分析单元,用于基于预设的角色分析模型,依次对所述目标向量对应分词的词性向量进行正序语义角色分析和逆序语义角色分析,并根据分析的结果确定所述搜索关键词向量的语义角色类型和每个所述文本分词向量的语义角色类型。
56.可选的,在本发明第二方面的第四种实现方式中,所述角色分析单元具体用于:
57.基于预设的角色分析模型,依次对所述目标向量对应分词的词性向量进行正序语义角色分析和逆序语义角色分析,得到每个词性向量对应的第一输出向量和第二输出向量;
58.根据预设的概率函数,对每个词性向量对应的第二输出向量和第二输出向量进行计算,得到每个词性向量对应分词的语义角色概率向量;
59.基于最大值自变量点集算法,对每个词性向量对应分词的语义角色概率向量进行处理,得到用于表示语义角色类型的序号;
60.根据所述用于表示语义角色类型的序号,确定所述搜索关键词向量的语义角色类型和每个所述文本分词向量的语义角色类型。
61.可选的,在本发明第二方面的第五种实现方式中,所述全局相似度计算模块具体包括:
62.第一计算单元,用于当所述搜索关键词向量的数量在第一预设范围内时,以所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度作为全局相似度;
63.第二计算单元,用于当所述搜索关键词向量的数量在第二预设范围内时,将所述搜索语句与所述文本数据集中每条文本数据之间的实体相似度与语义角色相似度相乘,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度。
64.可选的,在本发明第二方面的第六种实现方式中,所述全局相似度计算模块具体包括:
65.第一计算单元,用于当所述搜索关键词向量的数量在第一预设范围内时,以所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度作为全局相似度;
66.第二计算单元,用于当所述搜索关键词向量的数量在第二预设范围内时,将所述搜索语句与所述文本数据集中每条文本数据之间的实体相似度与语义角色相似度相乘,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度;
67.第三计算单元,用于当所述搜索关键词向量的数量在第三预设范围内时,将所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度与语义角色相似度相乘,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度;
68.第四计算单元,用于当所述搜索关键词向量的数量在第四预设范围内时,将所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度依次与语义角色相似度以及实体相似度相乘,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度。
69.本发明第三方面提供了一种基于搜索语句的搜索设备,包括:存储器和至少一个处理器,所述存储器中存储有指令;所述至少一个处理器调用所述存储器中的所述指令,以使得所述基于搜索语句的搜索设备执行上述的基于搜索语句的搜索方法。
70.本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的基于搜索语句的搜索方法。
71.本发明提供的技术方案中,通过获取搜索语句和搜索资源池中的文本数据集,并对其分词及向量化编码,生成相应的向量,其次对生成的向量依次进行命名实体识别和语义角色预测,然后分别计算搜索语句与文本数据集中每条数据之间的文本相似度、实体相似度以及语义角色相似度,最后根据预设的计算规则,对文本相似度、实体相似度以及语义角色相似度进行计算,从而得到全局相似度,最后将按照全局相似度的大小,对文本数据集中对应的网页链接降序显示。本发明通过文本维度、实体维度以及语义角色维度对搜索语句进行数据匹配,搜索更加准确。
附图说明
72.图1为本发明实施例中基于搜索语句的搜索方法的第一个实施例示意图;
73.图2为本发明实施例中基于搜索语句的搜索方法的第二个实施例示意图;
74.图3为本发明实施例中基于搜索语句的搜索方法的第三个实施例示意图;
75.图4为本发明实施例中基于搜索语句的搜索方法的第四个实施例示意图;
76.图5为本发明实施例中基于搜索语句的搜索装置的一个实施例示意图;
77.图6为本发明实施例中基于搜索语句的搜索装置的另一个实施例示意图;
78.图7为本发明实施例中基于搜索语句的搜索设备的一个实施例示意图。
具体实施方式
79.本发明实施例提供了一种基于搜索语句的搜索方法、装置、设备及存储介质,搜索结果更加准确。
80.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理
解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
81.本发明中的服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
82.为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中基于搜索语句的搜索方法的一个实施例包括:
83.101、获取用户输入的搜索语句和预设搜索资源池中的文本数据集,分别对搜索语句和文本数据集中的每条文本数据进行分词,以及分别对分词的结果进行向量化编码,分别得到至少一个搜索关键词向量和多个文本分词向量;
84.可以理解的是,基于不同搜索引擎下对应的搜索资源池之间可能存在差异,搜索资源池通过网页爬虫的方式对网页内容进行爬取从而构建索引数据库,进而服务器根据特定的匹配算法对用户输入的搜索语句进行处理,匹配出相应的网页文本,文本数据集中的文本数据即网页爬虫所爬取的网页数据。
85.具体的,服务器通过调用分词工具来对搜索语句和文本数据集中的每条文本数据进行分词,例如jieba、snownlp、pkuseg等,本实施例对其不做限定。受限于搜索语句的长度,服务器将其划分为至少一个分词,进而将每个分词向量化编码为对应的搜索关键词向量。
86.为便于计算处理,服务器基于预设的词汇表(vocabulary)对每个分词进行one-hot编码,从而将原本的文本表示转换为向量表示,以便于网络模型进行计算处理。例如服务器首先从训练文档中抽取出10000个唯一不重复的单词组成词汇表,其次对这10000个单词进行one-hot编码,得到的每个单词都是一个10000维的向量,向量每个维度的值只有0或者1,假如单词ants在词汇表中的出现位置为第3个,那么ants的向量就是一个第三维度取值为1,其他维度都为0的10000维的向量。具体的,例如搜索语句为“the dog barked at the mailman”,那么服务器基于这个句子,可以构建一个大小为5的词汇表(忽略大小写和标点符号):("the","dog","barked","at","mailman"),进一步对这个词汇表的单词进行编号0-4。那么“dog”就可以被表示为一个5维向量[0,1,0,0,0]。
[0087]
102、对至少一个搜索关键词向量和多个文本分词向量进行命名实体识别;
[0088]
可以理解的是,命名实体识别是从非结构化文本中识别具有特定意义的实体,例如人名、地名、机构名、专有名词等。服务器分别对搜索关键词向量和文本分词向量进行命名实体识别,具体的,服务器首先识别出实体的边界,然后识别实体对应的类别,识别方法如基于条件随机场(crf,conditional random field)的命名实体识别、基于多特征的命名实体识别等,本实施例对其不做限定。
[0089]
103、对至少一个搜索关键词向量和多个文本分词向量进行语义角色预测;
[0090]
可以理解的是,语义角色预测(srl,semantic role labeling)是句子分析的核心
任务之一,服务器通过对搜索关键词向量和文本分析向量进行语义角色预测,从而恢复其中的谓词-论元结构,进而做出基本判断:“谁对谁做了什么”,“何时”与“哪里”,其中,谓词是指一个句子中对于主语的描述或判断的词,通常为一个动词;论元是指在一个句子中和谓词搭配的名词;语义角色是指在论元的基础上指出其与动词搭配时担任的角色或作用,例如时间、地点、施事者、受事者、客体、经验者、受益者、工具、目标、来源等。具体的,服务器可采用基于浅层句法分析等方式来对搜索关键词向量和文本分词向量进行语义角色预测,本实施例中对服务器进行语义角色预测的方式不做限定。
[0091]
104、基于至少一个搜索关键词向量和多个文本分词向量,计算搜索语句与文本数据集中每条文本数据之间的文本相似度,并基于命名实体识别的结果,计算搜索语句与文本数据集中每条文本数据之间的实体相似度,以及基于语义角色预测的结果,计算搜索语句与文本数据集中每条文本数据之间的语义角色相似度;
[0092]
可以理解的是,服务器从多个维度来衡量搜索语句和文本数据集中每条文本数据之间的相似度,将每个维度下对应的相似度作为全局相似度的相似度分量,相似度分量包括文本相似度(即字符之间相似度)、语义角色相似度以及命名实体相似度。
[0093]
具体的,服务器可基于欧几里得距离(euclidean distance)、皮尔森相关系数(pearson correlation coefficient)、余弦相似定理等相似度算法来计算搜索语句a中每个搜索关键词向量a与文本数据b中每个文本分词向量b之间的相似度,本实施例对其不做限定。进而服务器将计算得到的每个相似度求和,得到搜索语句a与文本数据b之间的文本相似度,例如搜索语句a对应的搜索关键词向量包a1、a2,文本数据b对应的文本分词向量包括b1、b2、b3,则搜索语句a与文本数据b之间的文本相似度t_sim(a,b)=t_sim(a1,b1) t_sim(a1,b2) t_sim(a1,b3) t_sim(a2,b1) t_sim(a2,b2) t_sim(a2,b3)。
[0094]
进一步的,语义角色相似度和命名实体相似度的计算方式,请分别参考公式一和公式二。
[0095][0096]
其中,p_sim(a,b)为搜索语句a与文本数据b之间的语义角色相似度,|a|为搜索语句a中的词性序列总数,p_seq
a,b
为搜索语句a与文本数据b中出现重叠词性的总数。
[0097][0098]
类似的,n_sim(a,b)为搜索语句a与文本数据b之间的命名实体相似度,|a|为搜索语句a中的命名实体总数,p_seq
a,b
为搜索语句a与文本数据b中出现重叠实体类型的实体总数。
[0099]
105、基于预设的计算规则,对搜索语句与文本数据集中每条文本数据之间的文本相似度、语义角色相似度以及实体相似度中的至少一种相似度进行计算,得到搜索语句与文本数据集中每条文本数据之间的全局相似度;
[0100]
可以理解的是,全局相似度是基于文本相似度、语义相似度以及实体相似度中的至少一种相似度做进一步计算,可根据实际业务场景选择至少一种相似度来计算全局相似
度,当仅选择一种相似度时则直接将其作为全局相似度,当选择两种或三种(即全部)相似度时,则依次将每种相似度相乘,将最后相乘或累乘的结果作为全局相似度。优选的,服务器尽可能选择较多种的相似度,从而以多个维度来计算得到全局相似度,请参考公式三:
[0101]
sim(a,b)=t_sim(a,b)*p_sim(a,b)*n_sim(a,b)
[0102]
公式三
[0103]
其中,t_sim(a,b)为文本相似度,p_sim(a,b)为语义角色相似度,n_sim(a,b)为实体相似度,a为搜索语句,b为文本数据。
[0104]
106、获取每条文本数据对应的网页链接,按照全局相似度的大小,对网页链接进行降序排序,并将排序结果在所述终端输出显示。
[0105]
可以理解的是,文本数据为服务对原始的网页进行数据爬虫(web crawler)而获得的静态文本资源,进而服务器以静态文本资源为计算对象,执行自然语言处理任务(nlp,natural language processing),得到搜索语句与每个静态文本资源之间的全局相似度,进而对静态文本资源对应的原始网页的网页链接进行降序排序,让用户优先浏览到与该搜索语句关联最紧密的网页。当用户点击网页链接时,通过网页链接元素中包含的统一资源定位符(url)快速跳转至对应网页内容中。
[0106]
本实施例中,通过文本维度、实体维度以及语义角色维度对搜索语句进行数据匹配,搜索更加准确。
[0107]
参阅图2,本发明实施例中基于搜索语句的搜索方法的第二个实施例包括:
[0108]
201、获取用户输入的搜索语句和预设搜索资源池中的文本数据集,分别对搜索语句和文本数据集中的每条文本数据进行分词,以及分别对分词的结果进行向量化编码,分别得到至少一个搜索关键词向量和多个文本分词向量;
[0109]
其中,步骤201与上述步骤101的执行步骤类似,具体此处不再赘述。
[0110]
202、获取预设的初始训练数据集,并基于至少一个搜索关键词向量和多个文本分词向量构建待识别数据集;
[0111]
可以理解的是,初始训练数据集可以为网络中公开的实体识别训练数据集,例如各个领域内的现象词汇、人名、地名等。
[0112]
203、以初始训练数据集为第一轮训练数据集,对预设的命名实体识别模型进行第一轮监督训练;
[0113]
可以理解的是,服务器调用命名实体识别模型中的crf层网络对第一轮训练数据集进行处理,得到第一轮训练数据集中每个句子的概率矩阵,其次基于维特比算法对每个句子的概率矩阵进行计算,得到最优标注序列,最后根据所述最优标注序列中的识别结果与第一轮训练数据集中标注结果,调整所述命名实体识别模型的参数,从而结束第一轮监督训练。
[0114]
具体的,服务器调用命名实体识别模型中的crf层网络,通过条件随机场算法将输入的第一轮训练数据集中的每个数据,根据条件概率输出为满足马尔可夫随机场的概率矩阵。其中,概率矩阵由每个句子中的所有单词对应的标签概率序列组成,而标签概率序列用于表示某个单词与每个实体标签之间的概率分布。而维特比算法(viterbi algorithm)是一种动态规划算法,服务器通过该算法对概率矩阵进行解码,从确定其中的最优标注序列。
[0115]
进一步的,服务器可通过观察实际识别结果与原始标注结果之间的偏差,从而衡
量命名实体识别模型的识别准确性,优选的,服务器可通过损失函数对这种偏差进行量化计算,得到相应的损失值,当该损失值小于预设阈值或达到最小值时,表示当前命名实体识别模型达到最优性能。
[0116]
204、基于第一轮监督训练后的命名实体识别模型对待识别数据集进行命名实体识别与标注,得到弱标注的待识别数据集;
[0117]
可以理解的是,经过第一轮监督训练后的命名实体识别模型可以粗精度地对实体进行识别,并将对应的识别结果进行标注,其结果虽然准确性不高,但可以对待识别的数据集进行弱标注,从而将弱标注的数据集用于命名识别模型的下一轮监督训练,通过待识别数据自学习的方式实现样本的更新。
[0118]
205、从本轮得到的弱标注的待识别数据集中提取子集,并将该子集加入初始训练数据集中,得到第二轮训练数据集,并基于第二轮训练数据集对第一轮监督训练后的命名实体识别模型再次进行监督训练,如此进行多轮训练,直至命名实体识别模型收敛时,输出当前轮次中待识别数据集的实体识别与标注的结果;
[0119]
应当理解的是,服务器所抽取的子集是由弱标注的待识别数据集中句子的置信度大于等于置信度阈值的句子组成,其中,句子的置信度是指该句子中所有被标注为实体的单词的识别标签的平均概率值。优选的,置信度阈值是0.8。以句子“tony and tom arefriends”为例,识别出各单词的识别标签依次为b-person o b-person o o,假设识别标签的概率值依次为78%、90%、88%、91%、89%,则该句子中所有被标注为实体的单词的识别标签的平均概率值=(78% 88%)/2=0.83,该句子的置信度0.83大于置信度阈值0.8,则该句子会被选入子集。
[0120]
206、对至少一个搜索关键词向量和多个文本分词向量进行语义角色预测;
[0121]
207、基于至少一个搜索关键词向量和多个文本分词向量,计算搜索语句与文本数据集中每条文本数据之间的文本相似度,并基于命名实体识别的结果,计算搜索语句与文本数据集中每条文本数据之间的实体相似度,以及基于语义角色预测的结果,计算搜索语句与文本数据集中每条文本数据之间的语义角色相似度;
[0122]
208、基于预设的计算规则,对搜索语句与文本数据集中每条文本数据之间的文本相似度、语义角色相似度以及实体相似度中的至少一种相似度进行计算,得到搜索语句与文本数据集中每条文本数据之间的全局相似度;
[0123]
209、获取每条文本数据对应的网页链接,按照全局相似度的大小,对网页链接进行降序排序,并将排序结果在所述终端输出显示。
[0124]
其中,步骤206-209与上述步骤103-106的执行步骤类似,具体此处不再赘述。
[0125]
本实施例中,详细描述了对搜索语句和文本数据进行命名实体识别的过程,通过同时以训练样本和待识别样本对命名实体识别模型进行多轮监督训练,以及待识别样本自学习,从而让识别结果更加准确。
[0126]
参阅图3,本发明实施例中基于搜索语句的搜索方法的第三个实施例包括:
[0127]
301、获取用户输入的搜索语句和预设搜索资源池中的文本数据集,分别对搜索语句和文本数据集中的每条文本数据进行分词,以及分别对分词的结果进行向量化编码,分别得到至少一个搜索关键词向量和多个文本分词向量;
[0128]
302、对至少一个搜索关键词向量和多个文本分词向量进行命名实体识别;
[0129]
其中,步骤301-302与上述步骤101-102的执行步骤类似,具体此处不再赘述。
[0130]
303、基于预设的词性分析模型,依次对目标向量进行正序词性分析和逆序词性分析,并根据分析的结果确定目标向量对应分词的词性类型,其中,目标向量包括至少一个搜索关键词向量和多个文本向量;
[0131]
可以理解的是,鉴于词性分析时不仅需考虑自身的属性,还需考虑前后词之间的依赖关系,最终确定词性,因此词性分析的顺序会对分析结果产生一定影响。本实施例中,服务器从正序和逆序进行词性分析,得到相应的词性概率向量,并分别为其设定相应的权重后求和,得到最终的词性概率向量。优选的,正序词性分析的词性概率向量与逆序词性概率向量之间的权重比为3:1。进一步的,服务器通过最大自变量函数对最终的词性概率向量进行计算,得到最终的词性类型序号,从而确定分词对应的词性类型,例如动词、名词、形容词等。
[0132]
304、根据目标向量对应分词的词性类型,在预设的词性向量库中查找目标向量对应分词的词性向量;
[0133]
可以理解的是,为便于使用该词性类型进行角色分析计算,服务器将词性类型转换为对应的词性向量,具体的,服务器根据预设的词性向量库对词性类型进行匹配,得到相应的向量表示。
[0134]
305、基于预设的角色分析模型,依次对目标向量对应分词的词性向量进行正序语义角色分析和逆序语义角色分析,并根据分析的结果确定搜索关键词向量的语义角色类型和每个文本分词向量的语义角色类型;
[0135]
应当理解的是,服务器首先基于预设的角色分析模型,依次对词性向量进行正序语义角色分析和逆序语义角色分析,得到每个词性向量对应的第一输出向量和第二输出向量;然后根据预设的概率函数,对每个词性向量对应的第二输出向量和第二输出向量进行计算,得到每个词性向量对应分词的语义角色概率向量;最后基于最大值自变量点集算法,对每个词性向量对应分词的语义角色概率向量进行处理,得到用于表示语义角色类型的序号以确定搜索关键词向量和每个文本分词向量的语义角色类型。服务器对分词的语义角色分析的过程同词性分析过程相似,同样是正序结合逆序分析,得到正序语义角色概率向量和逆序语义角色概率向量,同样可以引入相应的权重对其进行加权求和,得到分词对应的语义角色概率向量。服务器通过最大值自变量点集(argmax)可以获取分词对应的语义角色概率向量为最大值时分词对应的语义角色类型的序号。
[0136]
306、基于至少一个搜索关键词向量和多个文本分词向量,计算搜索语句与文本数据集中每条文本数据之间的文本相似度,并基于命名实体识别的结果,计算搜索语句与文本数据集中每条文本数据之间的实体相似度,以及基于语义角色预测的结果,计算搜索语句与文本数据集中每条文本数据之间的语义角色相似度;
[0137]
307、基于预设的计算规则,对搜索语句与文本数据集中每条文本数据之间的文本相似度、语义角色相似度以及实体相似度中的至少一种相似度进行计算,得到搜索语句与文本数据集中每条文本数据之间的全局相似度;
[0138]
308、获取每条文本数据对应的网页链接,按照全局相似度的大小,对网页链接进行降序排序,并将排序结果在所述终端输出显示。
[0139]
其中,步骤306-308与上述步骤104-106的执行步骤类似,具体此处不再赘述。
[0140]
本实施例中,详细描述对搜索语句和文本数据进行语义角色预测的过程,通过正反向词性分析以及正反向语义角色分析,从而提高预测结果的准确性。
[0141]
参阅图4,本发明实施例中基于搜索语句的搜索方法的第四个实施例包括:
[0142]
401、获取用户输入的搜索语句和预设搜索资源池中的文本数据集,分别对搜索语句和文本数据集中的每条文本数据进行分词,以及分别对分词的结果进行向量化编码,分别得到至少一个搜索关键词向量和多个文本分词向量;
[0143]
402、对至少一个搜索关键词向量和多个文本分词向量进行命名实体识别;
[0144]
403、对至少一个搜索关键词向量和多个文本分词向量进行语义角色预测;
[0145]
404、基于至少一个搜索关键词向量和多个文本分词向量,计算搜索语句与文本数据集中每条文本数据之间的文本相似度,并基于命名实体识别的结果,计算搜索语句与文本数据集中每条文本数据之间的实体相似度,以及基于语义角色预测的结果,计算搜索语句与文本数据集中每条文本数据之间的语义角色相似度;
[0146]
其中,步骤401-404与上述步骤101-105的执行步骤类似,具体此处不再赘述。
[0147]
405、当搜索关键词向量的数量在第一预设范围内时,以搜索语句与文本数据集中每条文本数据之间的文本相似度作为全局相似度;
[0148]
可以理解的是,服务器通过解析搜索关键词中分词数量,从而确定对应全局相似度的计算方式。例如在本实施例中第一预设范围为k∈[1,3]且k为整数,鉴于搜索语句较短,关键词较少,故在全局相似度中不考虑语义角色相似度和命名实体相似度,将搜索语句与文本数据之间的文本相似度作为全局相似度;
[0149]
406、当搜索关键词向量的数量在第二预设范围内时,将搜索语句与文本数据集中每条文本数据之间的实体相似度与语义角色相似度相乘,得到搜索语句与文本数据集中每条文本数据之间的全局相似度;
[0150]
可以理解的是,例如第二预设范围为k∈[3,5]且k为整数,服务器将搜索语句与文本数据之间的命名实体相似度与语义角色相似度相乘,作为全局相似度。
[0151]
407、当搜索关键词向量的数量在第三预设范围内时,将搜索语句与文本数据集中每条文本数据之间的文本相似度与语义角色相似度相乘,得到搜索语句与文本数据集中每条文本数据之间的全局相似度;
[0152]
可以理解的是,例如本实施例中第三预设范围为k∈[5,7]且k为整数,服务器将搜索语句与文本数据之间的文本相似度与语义角色相似度相乘,作为全局相似度。
[0153]
408、当搜索关键词向量的数量在第四预设范围内时,将搜索语句与文本数据集中每条文本数据之间的文本相似度依次与语义角色相似度以及实体相似度相乘,得到搜索语句与文本数据集中每条文本数据之间的全局相似度;
[0154]
可以理解的是,例如本实施例中第四预设范围为k∈(7,∞)且k为整数,此时搜索语句过长,包含过多的关键词,服务器将搜索语句与文本数据之间的文本相似度、命名实体相似度以及语义角色相似度依次相乘,作为全局相似度。
[0155]
409、获取每条文本数据对应的网页链接,按照全局相似度的大小,对网页链接进行降序排序,并将排序结果在所述终端输出显示。
[0156]
其中,步骤409与上述步骤106的执行步骤类似,具体此处不再赘述。
[0157]
本实施例中,详细描述了全局相似度的计算过程,通过搜索语句中搜索关键词的
个数灵活调整全局相似度的计算方式,以提高搜索效率,合理分配计算资源。
[0158]
上面对本发明实施例中基于搜索语句的搜索方法进行了描述,下面对本发明实施例中基于搜索语句的搜索装置进行描述,请参阅图5,本发明实施例中基于搜索语句的搜索装置的一个实施例包括:
[0159]
词向量生成模块501,用于获取用户输入的搜索语句和预设搜索资源池中的文本数据集,分别对所述搜索语句和所述文本数据集中的每条文本数据进行分词,以及分别对分词的结果进行向量化编码,分别得到至少一个搜索关键词向量和多个文本分词向量;
[0160]
命名实体识别模块502,用于对所述至少一个搜索关键词向量和所述多个文本分词向量进行命名实体识别;
[0161]
语义角色预测模块503,用于对所述至少一个搜索关键词向量和所述多个文本分词向量进行语义角色预测;
[0162]
相似度分量计算模块504,用于基于所述至少一个搜索关键词向量和所述多个文本分词向量,计算所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度,并基于命名实体识别的结果,计算所述搜索语句与所述文本数据集中每条文本数据之间的实体相似度,以及基于语义角色预测的结果,计算所述搜索语句与所述文本数据集中每条文本数据之间的语义角色相似度;
[0163]
全局相似度计算模块505,用于基于预设的计算规则,对所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度、语义角色相似度以及实体相似度中的至少一种相似度进行计算,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度;
[0164]
可视化模块506,用于获取每条所述文本数据对应的网页链接,按照所述全局相似度的大小,对所述网页链接进行降序排序,并将排序结果在所述终端输出显示。
[0165]
本实施例中,通过文本维度、实体维度以及语义角色维度对搜索语句进行数据匹配,搜索更加准确。
[0166]
参阅图6,本发明实施例中基于搜索语句的搜索装置的另一个实施例包括:
[0167]
词向量生成模块501,用于获取用户输入的搜索语句和预设搜索资源池中的文本数据集,分别对所述搜索语句和所述文本数据集中的每条文本数据进行分词,以及分别对分词的结果进行向量化编码,分别得到至少一个搜索关键词向量和多个文本分词向量;
[0168]
命名实体识别模块502,用于对所述至少一个搜索关键词向量和所述多个文本分词向量进行命名实体识别;
[0169]
语义角色预测模块503,用于对所述至少一个搜索关键词向量和所述多个文本分词向量进行语义角色预测;
[0170]
相似度分量计算模块504,用于基于所述至少一个搜索关键词向量和所述多个文本分词向量,计算所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度,并基于命名实体识别的结果,计算所述搜索语句与所述文本数据集中每条文本数据之间的实体相似度,以及基于语义角色预测的结果,计算所述搜索语句与所述文本数据集中每条文本数据之间的语义角色相似度;
[0171]
全局相似度计算模块505,用于基于预设的计算规则,对所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度、语义角色相似度以及实体相似度中的至少一种
相似度进行计算,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度;
[0172]
可视化模块506,用于获取每条所述文本数据对应的网页链接,按照所述全局相似度的大小,对所述网页链接进行降序排序,并将排序结果在所述终端输出显示。
[0173]
其中,所述命名实体识别模块502具体包括:
[0174]
数据集构建单元5021,用于获取预设的初始训练数据集,并基于所述至少一个搜索关键词向量和所述多个文本分词向量构建待识别数据集;
[0175]
监督训练单元5022,用于以所述初始训练数据集为第一轮训练数据集,对预设的命名实体识别模型进行第一轮监督训练;
[0176]
识别标注单元5023,用于基于第一轮监督训练后的命名实体识别模型对所述待识别数据集进行命名实体识别与标注,得到弱标注的待识别数据集;
[0177]
迭代训练单元5024,用于从本轮得到的弱标注的待识别数据集中提取子集,并将该子集加入所述初始训练数据集中,得到第二轮训练数据集,并基于第二轮训练数据集对第一轮监督训练后的命名实体识别模型再次进行监督训练,如此进行多轮训练,直至所述命名实体识别模型收敛时,输出当前轮次中待识别数据集的实体识别与标注的结果。
[0178]
其中,所述监督训练单元5022用于:
[0179]
调用所述命名实体识别模型中的crf层网络对所述第一轮训练数据集进行处理,得到所述第一轮训练数据集中每个句子的概率矩阵;
[0180]
基于维特比算法对每个句子的概率矩阵进行计算,得到最优标注序列;
[0181]
根据所述最优标注序列中的识别结果与第一轮训练数据集中标注结果,调整所述命名实体识别模型的参数。
[0182]
其中,所述语义角色预测模块503具体包括:
[0183]
词性分析单元5031,用于基于预设的词性分析模型,依次对目标向量进行正序词性分析和逆序词性分析,并根据分析的结果确定目标向量对应分词的词性类型,其中,所述目标向量包括所述至少一个搜索关键词向量和所述多个文本向量;
[0184]
向量获取单元5032,用于根据所述目标向量对应分词的词性类型,在预设的词性向量库中查找所述目标向量对应分词的词性向量;
[0185]
角色分析单元5033,用于基于预设的角色分析模型,依次对所述目标向量对应分词的词性向量进行正序语义角色分析和逆序语义角色分析,并根据分析的结果确定所述搜索关键词向量的语义角色类型和每个所述文本分词向量的语义角色类型。
[0186]
其中,所述角色分析单元5033具体用于:
[0187]
基于预设的角色分析模型,依次对所述目标向量对应分词的词性向量进行正序语义角色分析和逆序语义角色分析,得到每个词性向量对应的第一输出向量和第二输出向量;
[0188]
根据预设的概率函数,对每个词性向量对应的第二输出向量和第二输出向量进行计算,得到每个词性向量对应分词的语义角色概率向量;
[0189]
基于最大值自变量点集算法,对每个词性向量对应分词的语义角色概率向量进行处理,得到用于表示语义角色类型的序号;
[0190]
根据所述用于表示语义角色类型的序号,确定所述搜索关键词向量的语义角色类
型和每个所述文本分词向量的语义角色类型。
[0191]
其中,所述全局相似度计算模块505具体包括:
[0192]
第一计算单元5051,用于当所述搜索关键词向量的数量在第一预设范围内时,以所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度作为全局相似度;
[0193]
第二计算单元5052,用于当所述搜索关键词向量的数量在第二预设范围内时,将所述搜索语句与所述文本数据集中每条文本数据之间的实体相似度与语义角色相似度相乘,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度;
[0194]
第三计算单元5053,用于当所述搜索关键词向量的数量在第三预设范围内时,将所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度与语义角色相似度相乘,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度;
[0195]
第四计算单元5054,用于当所述搜索关键词向量的数量在第四预设范围内时,将所述搜索语句与所述文本数据集中每条文本数据之间的文本相似度依次与语义角色相似度以及实体相似度相乘,得到所述搜索语句与所述文本数据集中每条文本数据之间的全局相似度。
[0196]
本发明实施例中,模块化的设计让基于搜索语句的搜索装置各部位的硬件专注于某一功能的实现,最大化实现了硬件的性能,同时模块化的设计也降低了装置的模块之间的耦合性,更加方便维护。
[0197]
上面图5和图6从模块化功能实体的角度对本发明实施例中的基于搜索语句的搜索装置进行详细描述,下面从硬件处理的角度对本发明实施例中基于搜索语句的搜索设备进行详细描述。
[0198]
图7是本发明实施例提供的一种基于搜索语句的搜索设备的结构示意图,该基于搜索语句的搜索设备700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)710(例如,一个或一个以上处理器)和存储器720,一个或一个以上存储应用程序733或数据732的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器720和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对基于搜索语句的搜索设备700中的一系列指令操作。更进一步地,处理器710可以设置为与存储介质730通信,在基于搜索语句的搜索设备700上执行存储介质730中的一系列指令操作。
[0199]
基于搜索语句的搜索设备700还可以包括一个或一个以上电源740,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口760,和/或,一个或一个以上操作系统731,例如windows serve,mac os x,unix,linux,freebsd等等。本领域技术人员可以理解,图7示出的基于搜索语句的搜索设备结构并不构成对基于搜索语句的搜索设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0200]
本发明还提供一种基于搜索语句的搜索设备,所述基于搜索语句的搜索设备包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述各实施例中的所述基于搜索语句的搜索方法的步骤。
[0201]
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述
基于搜索语句的搜索方法的步骤。
[0202]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0203]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0204]
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献