CN113535896B - 搜索方法、装置、电子设备及存储介质 - Google Patents
搜索方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113535896B CN113535896B CN202110700012.5A CN202110700012A CN113535896B CN 113535896 B CN113535896 B CN 113535896B CN 202110700012 A CN202110700012 A CN 202110700012A CN 113535896 B CN113535896 B CN 113535896B
- Authority
- CN
- China
- Prior art keywords
- entity
- search text
- vertical
- search
- words
- 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 62
- 238000012545 processing Methods 0.000 claims description 54
- 238000012549 training Methods 0.000 claims description 33
- 230000004927 fusion Effects 0.000 claims description 27
- 230000002452 interceptive effect Effects 0.000 claims description 24
- 238000002372 labelling Methods 0.000 claims description 22
- 230000007246 mechanism Effects 0.000 claims description 15
- 230000002457 bidirectional effect Effects 0.000 claims description 14
- 230000015654 memory Effects 0.000 claims description 12
- 230000003993 interaction Effects 0.000 claims description 11
- 238000012216 screening Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 2
- 238000002790 cross-validation Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000011159 matrix material Substances 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
- 230000008569 process Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000007704 transition Effects 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/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开关于一种搜索方法、装置、电子设备及存储介质,该识别方法包括:接收搜索文本;将搜索文本与垂类实体库中的实体词进行实体匹配,得到搜索文本包含的实体词;确定搜索文本包含的字符;将搜索文本中包含的字符与实体词输入到实体识别模型中,得到搜索文本的实体识别结果;实体识别模型对搜索文本中包含的字符与搜索文本包含的实体词之间的关系进行学习得到关系学习结果,并基于关系学习结果和搜索文本中包含的字符确定所述搜索文本的实体识别结果;根据实体识别结果,进行内容搜索。本公开由于可以对搜索文本中包含的字符和实体词之间的关系进行学习,可以学习到实体词的语义信息和边界信息,从而可以提高实体识别效果,进而提高搜索准确性。
Description
技术领域
本公开涉及互联网技术,尤其涉及一种搜索方法、装置、电子设备及存储介质。
背景技术
在搜索场景中,经常需要使用实体识别进行搜索查询理解,实体识别主要应用于搜索结果召回、意图识别和实体链接等业务上,实体识别的质量将直接影响到用户的搜索体验。实体识别全称为命名实体识别(Named Entity Recognition,NER),指识别文本中有意义的实体。通常的命名实体包括:人名、地名和机构名等。在短视频的搜索业务上,为了探索用户的兴趣和爱好,为用户生成兴趣用户画像,需要更多的实体来刻画用户兴趣。
在实体识别领域中,最早使用机器学习中的HMM(Hidden Markov Model,隐马尔可夫模型)和CRF(Conditional Random Field,条件随机场)进行实体识别。随着深度学习的发展,基于神经网络的模型越发的普遍且效果提升较为明显。后来随着预训练模型的兴起,越来越多的模型开始在大规模语料上训练预训练模型,然后在下游任务进行微调,取得了更好的效果。随着学者对实体识别任务的深入研究,现在越来越多的人开始研究基于词汇增强的模型,以使得模型能够利用词汇的语义信息和边界(span)信息。
相关技术中,使用基于BERT的模型进行搜索文本实体识别。而基于BERT的搜索文本实体识别技术的方案,是基于字粒度的,完全依赖于编码器的编码信息以及解码器学习到的概率转移矩阵,这就存在以下几个问题:当数据集规模较小时,模型学习不充分,会导致模型的预测效果变差;当预测数据中的实体,模型在训练数据中未见过时,大部分情况下模型的预测结果是不理想的;在搜索场景下,用户的搜索文本一般目的性较强,比较简短,而导致实体上下文信息不足,模型无法学习到实体的上下文信息。可见,相关技术使用基于BERT进行搜索文本实体识别的技术方案,识别效果较差,导致搜索结果的准确性较低。
发明内容
本公开提供一种搜索方法、装置、电子设备及存储介质,以至少解决相关技术中实体识别效果差、搜索结果准确性低的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种搜索方法,包括:
接收搜索文本;
将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词;
确定所述搜索文本中包含的字符;
将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中,得到所述搜索文本的实体识别结果;其中,所述实体识别模型对所述搜索文本中包含的字符与所述搜索文本包含的实体词之间的关系进行学习得到关系学习结果,并基于所述关系学习结果和所述搜索文本中包含的字符确定所述搜索文本的实体识别结果;
根据所述实体识别结果,进行内容搜索。
可选的,将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中,得到所述搜索文本的实体识别结果,包括:
将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中;
通过所述实体识别模型分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码;
通过实体识别模型对所述字符编码和实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果;
通过实体识别模型将所述关系学习结果和字符编码进行融合,得到融合信息,并对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
可选的,所述实体识别模型包括双向长短期记忆网络LSTM;
所述通过实体识别模型分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码,包括:
通过所述双向LSTM分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码。
可选的,所述实体识别模型包括注意力机制;
所述通过实体识别模型对所述字符编码和实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果,包括:
通过注意力机制分别对所述字符编码和所述实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果。
可选的,所述对所述融合信息进行解码,得到所述搜索文本的实体识别结果,包括:
通过条件随机场对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
可选的,在所述将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词之后,还包括:
若所述搜索文本包含一个实体词且所述实体词为所述搜索文本,则将所述实体词确定为所述搜索文本的实体识别结果。
可选的,所述将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词,包括:
根据所述垂类实体库,建立与每个垂类对应的前缀树;
遍历每个垂类对应的前缀树,对所述搜索文本进行实体匹配,得到所述搜索文本包含的实体词以及实体词所属的垂类。
可选的,还包括:
若所述实体词同时属于多个垂类,则分别确定每个垂类中所述实体词的搜索热度;
将所述搜索热度最高的垂类作为所述实体词所属的垂类。
可选的,在将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中之前,还包括:
获取待作为训练样本的搜索文本样本;
将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注;
将训练样本中的搜索文本样本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本样本包含的实体词;
根据所述搜索文本样本、实体词标注和搜索文本样本包含的实体词,对初始的实体识别模型进行训练,得到训练完成的实体识别模型。
可选的,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配之前,还包括:
确定所述搜索文本样本所属的垂类;
所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注,包括:
根据所述搜索文本样本所属的垂类,将所述垂类实体库中所述垂类下的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注。
可选的,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配之前,还包括:
确定所述垂类实体库中属于多个垂类的实体词;
获取所述属于多个垂类的实体词在每个垂类中的页面浏览量,并确定所述属于多个垂类的实体词在所述多个垂类中的总页面浏览量;
将每个垂类的页面浏览量与所述总页面浏览量的比例确定为每个垂类的搜索热度;
将所述属于多个垂类的实体词从搜索热度小于热度阈值的垂类中去掉。
可选的,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注之后,还包括:
若所述实体词标注在所述搜索文本样本中的出现位置为预设出现位置,或者所述实体词标注在所述搜索文本样本中的结尾位置为预设结尾位置,则丢弃所述搜索文本样本和对应的实体词标注。
可选的,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注之后,还包括:
在同一垂类下,将包含相同实体词标注的搜索文本样本划分为一份数据,得到同一垂类下的多份数据;
将所述多份数据中的一份数据作为预测目标,并根据其他份数据,通过双向LSTM和CRF模型预测所述预测目标对应实体词的概率;
若所述概率大于或等于概率阈值且该实体词与预测目标中的实体词标注相同,则保留所述预测目标中的搜索文本样本和对应的实体词标注;若所述概率小于概率阈值或者该实体词与预测目标中的实体词标注不同,则丢弃所述预测目标。
根据本公开实施例的第二方面,提供一种搜索装置,包括:
接收模块,被配置为执行接收搜索文本;
实体匹配模块,被配置为执行将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词;
字符确定模块,被配置为执行确定所述搜索文本中包含的字符;
实体识别模块,被配置为执行将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中,得到所述搜索文本的实体识别结果;其中,所述实体识别模型对所述搜索文本中包含的字符与所述搜索文本包含的实体词之间的关系进行学习得到关系学习结果,并基于所述关系学习结果和所述搜索文本中包含的字符确定所述搜索文本的实体识别结果;
内容搜索模块,被配置为执行根据所述实体识别结果,进行内容搜索。
可选的,所述实体识别模块包括:
输入单元,被配置为执行将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中;
编码单元,被配置为执行通过实体识别模型分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码;
交互处理单元,被配置为执行通过实体识别模型对所述字符编码和实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果;
解码单元,被配置为执行通过实体识别模型将所述关系学习结果和字符编码进行融合,得到融合信息,并对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
可选的,所述实体识别模型包括双向长短期记忆网络LSTM;
所述编码单元具体被配置为执行:
通过所述双向LSTM分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码。
可选的,所述实体识别模型包括注意力机制;
所述交互处理单元具体被配置为执行:
通过注意力机制分别对所述字符编码和所述实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果。
可选的,所述解码单元包括:
解码子单元,被配置为执行通过条件随机场对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
可选的,所述装置还包括:
实体识别结果确定模块,被配置为执行若所述搜索文本包含一个实体词且所述实体词为所述搜索文本,则将所述实体词确定为所述搜索文本的实体识别结果。
可选的,所述实体匹配模块包括:
前缀树建立单元,被配置为执行根据所述垂类实体库,建立与每个垂类对应的前缀树;
实体匹配单元,被配置为执行遍历每个垂类对应的前缀树,对所述搜索文本进行实体匹配,得到所述搜索文本包含的实体词以及实体词所属的垂类。
可选的,所述装置还包括:
搜索热度确定模块,被配置为执行若所述实体词同时属于多个垂类,则分别确定每个垂类中所述实体词的搜索热度;
垂类确定模块,被配置为执行将所述搜索热度最高的垂类作为所述实体词所属的垂类。
可选的,所述装置包括:
搜索文本样本获取模块,被配置为执行获取待作为训练样本的搜索文本样本;
实体标注模块,被配置为执行将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注;
实体匹配模块,被配置为执行将训练样本中的搜索文本样本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本样本包含的实体词;
模型训练模块,被配置为执行根据所述搜索文本样本、实体词标注和搜索文本样本包含的实体词,对初始的实体识别模型进行训练,得到训练完成的实体识别模型。
可选的,所述装置还包括:
文本垂类确定模块,被配置为执行确定所述搜索文本样本所属的垂类;
所述实体标注模块包括:
实体标注单元,被配置为执行根据所述搜索文本样本所属的垂类,将所述垂类实体库中所述垂类下的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注。
可选的,所述装置还包括:
实体词确定模块,被配置为执行确定所述垂类实体库中属于多个垂类的实体词;
浏览量获取模块,被配置为执行获取所述属于多个垂类的实体词在每个垂类中的页面浏览量,并确定所述属于多个垂类的实体词在所述多个垂类中的总页面浏览量;
搜索热度确定模块,被配置为执行将每个垂类的页面浏览量与所述总页面浏览量的比例确定为每个垂类的搜索热度;
实体去噪模块,被配置为执行将所述属于多个垂类的实体词从搜索热度小于热度阈值的垂类中去掉。
可选的,所述装置还包括:
样本筛选模块,被配置为执行若所述实体词标注在所述搜索文本样本中的出现位置为预设出现位置,或者所述实体词标注在所述搜索文本样本中的结尾位置为预设结尾位置,则丢弃所述搜索文本样本和对应的实体词标注。
可选的,所述装置还包括:
垂类数据划分模块,被配置为执行在同一垂类下,将包含相同实体词标注的搜索文本样本划分为一份数据,得到同一垂类下的多份数据;
概率预测模块,被配置为执行将所述多份数据中的一份数据作为预测目标,并根据其他份数据,通过双向LSTM和CRF模型预测所述预测目标对应实体词的概率;
预测目标处理模块,被配置为执行若所述概率大于或等于概率阈值且该实体词与预测目标中的实体词标注相同,则保留所述预测目标中的搜索文本样本和对应的实体词标注;若所述概率小于概率阈值或者该实体词与预测目标中的实体词标注不同,则丢弃所述预测目标。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面所述的搜索方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面所述的搜索方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现如第一方面所述的搜索方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
本公开实施例通过将搜索文本与垂类实体库中的实体词进行实体匹配,得到搜索文本包含的实体词,将搜索文本中包含的字符和实体词输入到实体识别模型中,通过实体识别模型对搜索文本中包含的字符和实体词之间的关系进行学习,基于关系学习结果和搜索文本中包含的字符确定搜索文本的实体识别结果,根据实体识别结果进行内容搜索,由于通过实体识别模型可以对搜索文本中包含的字符和实体词之间的关系进行学习,可以学习到实体词的语义信息和边界信息,从而可以提高实体识别效果,进而提高搜索准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种搜索方法的流程图;
图2是根据一示例性实施例示出的一种搜索方法的流程图;
图3是本公开实施例中的实体识别模型的结构示意图;
图4是根据一示例性实施例示出的一种搜索方法的流程图;
图5是根据一示例性实施例示出的一种搜索装置的框图;
图6是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种搜索方法的流程图,如图1所示,该搜索方法用于服务器等电子设备中,包括以下步骤。
在步骤S11中,接收搜索文本。
在步骤S12中,将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词。
其中,垂类实体库是通过对站内资源进行整合,处理站内的搜索文本并进行清洗,得到的在每个垂类下搜索文本中存在的实体词。所述垂类指垂直领域,在同一垂直领域下,用户具有类似的需求、爱好等等,例如,垂类可以包括人名、影视剧、品牌等等。
可以将搜索文本与垂类实体库中的实体词进行正向最大匹配,来实现实体匹配,得到搜索文本包含的实体词,还可以得到实体词对应的垂类。
在一个示例性实施例中,所述将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词,包括:根据所述垂类实体库,建立与每个垂类对应的前缀树;遍历每个垂类对应的前缀树,对所述搜索文本进行实体匹配,得到所述搜索文本包含的实体词以及实体词所属的垂类。
其中,所述前缀树又称字典树、单词查找树,是一种树形结构,是一种哈希树的变种,主要是利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。
在垂类实体库中,对应每个垂类存储了该垂类下的所有实体词,为了提高实体匹配的效率,可以建立与每个垂类对应的前缀树。在将搜索文本与垂类实体库中的实体词进行匹配时,基于正向最大匹配,按照搜索文本中的每个字符的顺序,分别遍历每个垂类对应的前缀树,确定以该字符为起始字符的实体词,得到搜索文本包含的实体词以及实体词所属的垂类。通过建立前缀树来实现实体匹配,提高了实体匹配的效率。
在一个示例性实施例中,所述方法还包括:若所述实体词同时属于多个垂类,则分别确定每个垂类中所述实体词的搜索热度;将所述搜索热度最高的垂类作为所述实体词所属的垂类。
在一个实体词同时属于多个垂类时,分别计算该实体词在每个垂类下对应的页面浏览量(Page View,PV),并计算该实体词在这多个垂类中的总的页面浏览量,计算每个垂类对应的页面浏览量在总的页面浏览量中的比例,将该比例作为搜索热度,比较多个垂类的搜索热度,将搜索热度最高的垂类作为实体词所属的垂类。将搜索热度高的垂类作为实体词所属的垂类,表明该垂类是大部分用户要浏览的垂类,从而可以很好的理解用户的意图,提高实体识别的准确性。
在步骤S13中,确定所述搜索文本中包含的字符。
按照字符对所述搜索文本进行切分,得到所述搜索文本中包含的字符。
在步骤S14中,将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中,得到所述搜索文本的实体识别结果;其中,所述实体识别模型对所述搜索文本中包含的字符与所述搜索文本包含的实体词之间的关系进行学习得到关系学习结果,并基于所述关系学习结果和所述搜索文本中包含的字符确定所述搜索文本的实体识别结果。
将搜索文本中包含的字符与搜索文本包含的实体词输入到实体识别模型中,实体识别模型对搜索文本中包含的字符和实体词之间的关系进行学习,以学习到实体词的语义信息和边界信息,得到关系学习结果,基于关系学习结果和搜索文本中包含的字符确定搜索文本的实体识别结果。
在步骤S15中,根据所述实体识别结果,进行内容搜索。
在得到实体识别结果后,根据实体识别结果在数据库中进行内容搜索,以搜索到与所述实体识别结果中的实体词对应的内容。
本示例性实施例提供的搜索方法,通过将搜索文本与垂类实体库中的实体词进行实体匹配,得到搜索文本包含的实体词,将搜索文本中包含的字符和实体词输入到实体识别模型中,通过实体识别模型对搜索文本中包含的字符和实体词之间的关系进行学习,基于关系学习结果和搜索文本中包含的字符确定搜索文本的实体识别结果,根据实体识别结果进行内容搜索,由于通过实体识别模型可以对搜索文本中包含的字符和实体词之间的关系进行学习,可以学习到实体词的语义信息和边界信息,从而可以提高实体识别效果,进而提高搜索准确性。
图2是根据一示例性实施例示出的一种搜索方法的流程图,如图2所示,该搜索方法用于服务器等电子设备中,包括以下步骤。
在步骤S21中,接收搜索文本。
在步骤S22中,将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词。
在步骤S23中,确定所述搜索文本中包含的字符。
在步骤S24中,将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中。
在步骤S25中,通过所述实体识别模型分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码。
图3是本公开实施例中的实体识别模型的结构示意图,如图3所示,实体识别模型包括输入层、编码层、交互层和解码层。输入层用于输入搜索文本中的每个字符的字符向量和经实体匹配得到的各个实体词的词向量,字符向量和实体词的词向量是在搜索文本语料中通过word2vec的方法进行词向量的学习得到的。编码层用于分别对搜索文本中的每个字符和每个实体词进行编码处理,得到每个字符对应的字符编码和每个实体词的实体词编码。
在一个示例性实施例中,所述实体识别模型包括双向LSTM;所述通过实体识别模型分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码,包括:通过所述双向LSTM分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码。
如图3所示,实体识别模型中的编码层使用的是双向LSTM(Long Short-TermMemory,长短期记忆网络),即Bi-LSTM,每个LSTM单元均共享权重,输入层输出的每个字符的字符向量和词向量分别输入双向LSTM中的每个LSTM单元,每个LSTM单元对输入的字符向量或者词向量结合上下文信息进行编码,得到搜索文本中每个字符的字符编码和每个实体词的实体词编码。通过使用双向LSTM来对搜索文本中的每个字符和每个实体词进行编码,得到的字符编码或实体词编码充分结合了上下文信息,可以提高后续实体识别的准确性。
在步骤S26中,通过实体识别模型对所述字符编码和实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果。
搜索文本中上下文信息很少,因此传统的实体识别模型并不能取得很好的效果。为了更好的处理搜索文本的实体识别任务,本公开使用一种基于词汇增强的实体识别模型,引入词汇信息可以强化实体边界,特别是对于上下文信息不足的实体边界更加有效。
如图3所示,通过编码层对搜索文本中的每个字符和每个实体词进行编码后,每个字符的字符编码和每个实体词的实体词编码分别输入交互层,交互层主要是对每个字符的字符编码和每个实体词的实体词编码进行交互处理,以充分学习实体词的边界信息,得到所述字符和所述实体词之间的关系学习结果。
在一个示例性实施例中,所述实体识别模型包括注意力机制;所述通过实体识别模型对所述字符编码和实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果,包括:通过注意力机制分别对所述字符编码和所述实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果。
实体识别模型中的交互层使用注意力机制来进行交互处理,以注意力的方式将实体词的语义信息和边界信息融入到编码信息中。具体计算方式如下:
eij=a(si,hj)
其中,si为搜索文本中第i个字符的字符编码,hj为实体词中第j个实体词编码,eij表示第i个字符和第j个实体词的相关性信息,N为搜索文本中匹配到的实体词的数量,ci为第i个字符的交互信息,即关系学习结果。通过上述公式得到搜索文本中每个字符的交互信息ci。通过注意力机制(Attention)的方式,使得和实体词相关的字符得到实体词的语义信息,另外由于和实体词相关的字符都会学习相关的实体词信息,因此也会得到实体词的边界信息。
本公开的实体识别模型中,通过引入了注意力机制,将知识图谱即垂类实体库中的实体数据信息引入到实体识别模型中,使得实体识别模型能够更好的对搜索文本中的实体进行识别和判断。例如,搜索文本为“XXX演技”。相关技术只能通过文本本身的文本特征(pattern)和信息对实体“XXX”进行识别,而本公开的实体识别模型中可以引入明星知识图谱中的人名实体“XXX”的信息,这样实体识别模型不仅可以使用文本本身的文本特征和信息,而且可以使用外部的知识,使得实体识别模型很容易判断出“XXX”是个明星实体。又如,搜索文本为“X城Y游乐园”,使用相关技术的模型进行预测时,模型通过文本特征的学习,大概率会识别出“X城”为地名,“Y游乐园”为游乐场,但是这是错误的,因为“X城Y游乐园”是一本小说的名字,但是使用了知识图谱信息后,可以获取到小说实体名“X城Y游乐园”,当把这个信息输入给实体识别模型,那么实体识别模型就会避免刚才的错误,很容易识别出这是一本小说。
通过引入垂类实体库中的知识图谱实体数据,通过注意力机制来对搜索文本中的每个字符编码和实体词编码进行交互处理,使得每个字符能够学习到实体词的语义信息和边界信息,能够提升实体识别的准确性。
在步骤S27中,通过实体识别模型将所述关系学习结果和字符编码进行融合,得到融合信息,并对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
通过实体识别模型中的解码层将交互层得到的每个字符的关系学习结果和对应的字符编码进行融合,得到每个字符的融合信息,并对每个字符的融合信息进行解码,得到实体识别结果。
在一个示例性实施例中,所述对所述融合信息进行解码,得到所述搜索文本的实体识别结果,包括:通过条件随机场对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
其中,条件随机场(conditional random field,简称CRF),是一种鉴别式机率模型,是随机场的一种,常用于标注或分析序列资料,如自然语言文字或是生物序列。
通过条件随机场对融合信息进行解码,可以很好的识别出搜索文本中的实体,提高实体识别的准确性。
在步骤S28中,根据所述实体识别结果,进行内容搜索。
本示例性实施例公开的搜索方法,通过将搜索文本与垂类实体库中的实体词进行实体匹配,得到搜索文本包含的实体词,通过实体识别模型分别对搜索文本中的每个字符和每个实体词进行编码处理,得到字符编码和实体词编码,对字符编码和实体词编码进行交互处理,得到字符和实体词之间的关系学习结果,将关系学习结果和字符编码进行融合,得到融合信息,并对融合信息进行解码,得到实体识别结果,进而根据实体识别结果进行内容搜索,由于基于垂类实体库匹配出搜索文本中的实体词,并对字符编码和实体词编码进行交互处理,使得每个字符可以学习到实体词的语义信息和边界信息,从而可以提高实体识别的准确性,解决了相关技术中实体识别效果差的问题,进而可以提高搜索结果的准确性。
在上述技术方案的基础上,在所述将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词之后,还包括:若所述搜索文本包含一个实体词且所述实体词为所述搜索文本,则将所述实体词确定为所述搜索文本的实体识别结果。
在经过实体匹配后,如果搜索文本仅包含一个实体词,而该实体词是搜索文本本身,那么将该实体词作为搜索文本的实体识别结果。在短视频领域,在热门垂类下,40%的搜索文本就是实体词,因此在搜索文本包含一个实体词且该实体词就是搜索文本时,将该实体词作为实体识别结果,而不用再使用实体识别模型进行识别,可以提高实体识别的效率。
图4是根据一示例性实施例示出的一种所述方法的流程图,如图4所示,该搜索方法用于服务器等电子设备中,包括以下步骤。
在步骤S41中,获取待作为训练样本的搜索文本样本。
可以从数据库中获取用户的搜索文本样本,将这些搜索文本样本作为后续的训练样本。
在步骤S42中,将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注。
本公开通过远程监督实体对齐的方式来标注数据集。远程监督是一种利用知识库语料来对齐训练预料的方法。本公开将垂类实体库中的数据作为知识库语料,来实现对搜索文本的实体标注。
通过正向最大匹配,将垂类实体库中的实体对齐到用户的搜索文本样本中,得到搜索文本样本中的实体词标注。例如垂类实体库中包含人名“XX”和影视剧名“神探XX”,当用户搜索文本为“神探XX剧情”时,通过正向最大匹配得到的实体是“神探XX”,通过这种实体对齐的方式可以得到大规模的标注数据。
在对搜索文本样本进行标注时,可以采用BIOES的标注策略,例如用户的搜索文本为“XX演唱Y”,则使用BIOES的标注策略得到的标注结果为“X(B-star)X(E-star)演唱Y(S-song)”,采用BIOES的标注策略可最大的保留训练数据的信息。
在得到搜索文本样本中的实体词标注后,将该搜索文本样本和对应的实体词标注作为训练样本,以对实体识别模型进行训练。
通过上述远程监督的方式获得的标注数据会存在一些噪声数据,比如用户搜索文本为“中国城市人口”,垂类实体库中有一个影视剧的实体“中国城市”,通过正向最大匹配得到的结果中会将“中国城市”标注为影视剧实体,这显然是不对的。为此可通过下述的方式进行实体去噪,去噪方案包括垂类重复实体去噪、尾部实体去噪、实体位置去噪和交叉验证去噪。
在一个示例性实施例中,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配之前,还包括:确定所述搜索文本样本所属的垂类;
所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注,包括:根据所述搜索文本样本所属的垂类,将所述垂类实体库中所述垂类下的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注。
可通过垂类重复实体去噪的方式,对标注后的训练样本进行去噪。不同的垂类可能有相同的实体词。因此用各个垂类的实体词去匹配对应垂类的搜索文本样本,可以有效的减少噪声数据。首先确定每个搜索文本样本所属的垂类,然后在进行正向最大匹配时,只需将搜索文本样本与垂类实体库中所述搜索文本样本所属垂类下的实体词进行正向最大匹配,得到搜索文本样本在该垂类下的实体词标注。
例如,垂类实体库中在明星垂类下有人名实体“AB”,在品牌垂类下有品牌实体“AB”,当用户的搜索文本样本为“AB球鞋”时,如果不区分搜索文本所属垂类,那么“AB球鞋”中的“AB”会被打成“人名”和“品牌”类型,这显然没有办法确定实体的类型,如果将明星垂类的实体词去匹配明星垂类的搜索文本样本,将品牌垂类的实体词去匹配品牌垂类的搜索文本样本,则将大大减少这种噪声数据。
在一个示例性实施例中,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配之前,还包括:确定所述垂类实体库中属于多个垂类的实体词;获取所述属于多个垂类的实体词在每个垂类中的页面浏览量,并确定所述属于多个垂类的实体词在所述多个垂类中的总页面浏览量;将每个垂类的页面浏览量与所述总页面浏览量的比例确定为每个垂类的搜索热度;将所述属于多个垂类的实体词从搜索热度小于热度阈值的垂类中去掉。
还可以使用尾部实体去噪的方式,对垂类实体库中的实体词进行去噪。在垂类实体库中,一个实体词属于多个垂类时,分别确定该实体词在每个垂类下的搜索热度,即获取实体词在每个垂类中的页面浏览量,并基于该实体词在每个垂类中的页面浏览量,确定该实体词在所述多个垂类中的总页面浏览量,将每个垂类的页面浏览量与总页面浏览量的比例确定为对应垂类的搜索热度,将每个垂类的搜索热度分别与热度阈值进行比较,将该实体词从搜索热度小于热度阈值的垂类中去掉。
搜索热度指标计算的是某一实体在垂类所对应意图下的辨识度,辨识度越高,证明该实体在该垂类下是非常重要且歧义较小的。例如,在影视垂类下,用户的搜索文本为“亲亲电影片段”,用户想要搜索的是亲吻片段,而当影视实体库中包含“亲亲”这个电影时,通过远程监督进行匹配,会将“亲亲”识别成电影名,这明显是有问题的,而通过确定搜索热度,可以计算出在影视垂类下搜索热度是偏小的(因为“亲亲”本身应该在其他意图也是频繁出现的,比如音乐等,因此影视垂类下的搜索是较小的),因此确定“亲亲”这个实体词属于尾部实体,应该丢掉。
通过上述尾部实体降噪的方式,可以减少用户搜索意图较低的数据,保留用户搜索意图较高的数据。
在一个示例性实施例中,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注之后,还包括:
若所述实体词标注在所述搜索文本样本中的出现位置为预设出现位置,或者所述实体词标注在所述搜索文本样本中的结尾位置为预设结尾位置,则丢弃所述搜索文本样本和对应的实体词标注。
因为垂类实体库中的垂类是不可能覆盖所有实体的,因此可能存在误匹配的问题。例如,在垂类实体库在综艺垂类下有综艺实体词“笑起来真好看”,在歌曲垂类下没有歌曲实体词“你笑起来真好看”,那么对于用户的搜索文本“你笑起来真好看”,在进行匹配时会匹配到综艺垂类中的实体词“笑起来真好看”,这显然是错误的标注数据,为了防止这种噪声数据的错误标注,可以使用尾部实体去噪方式进行去噪,将实体词在搜索文本样本中预设出现位置出现或者预设结尾位置结尾的搜索文本样本和实体词标注作为噪声数据丢掉,即不将这种数据作为训练样本,以提高模型训练的准确性。其中,预设出现位置例如可以是第二个字,预设结尾位置可以是倒数第二个字。
在一个示例性实施例中,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注之后,还包括:
在同一垂类下,将包含相同实体词标注的搜索文本样本划分为一份数据,得到同一垂类下的多份数据;
将所述多份数据中的一份数据作为预测目标,并根据其他份数据,通过双向LSTM和CRF模型预测所述预测目标的概率;
若所述概率大于或等于概率阈值且该实体词与预测目标中的实体词标注相同,则保留所述预测目标中的搜索文本样本和对应的实体词标注;若所述概率小于概率阈值或者该实体词与预测目标中的实体词标注不同,则丢弃所述预测目标。
还可以通过双向LSTM和CRF模型进行交叉验证去噪。一个垂类下会包含多个实体词,将同一垂类下,包含相同实体词标注的搜索文本样本划分为一份数据,从而得到同一垂类下的多份数据,将其中的一份数据作为预测目标,并使用其他份数据,通过双向LSTM和CRF模型(即BiLSTM+CRF模型)来预测所述预测目标对应实体词的概率,若所述概率大于或等于概率阈值且该实体词与预测目标中的实体词标注相同,则确定该标注实体是置信的,保留所述预测目标中的搜索文本样本和对应的实体词标注,确定其余的预测目标是不置信的,即若所述概率小于概率阈值或者该实体词与预测目标中的实体词标注不同,则确定该预测目标中的所有数据是不置信的,丢弃预测目标中的所有数据。通过这种方式,可以将已有的标注数据浓缩为高质量的标注数据。
在步骤S43中,将训练样本中的搜索文本样本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本样本包含的实体词。
按照上述示例性实施例中的实体匹配方式,将训练样本中的搜索文本与垂类实体库中的实体词进行实体匹配,得到搜索文本包含的实体词。
在步骤S44中,根据所述搜索文本样本、实体词标注和搜索文本样本包含的实体词,对初始的实体识别模型进行训练,得到训练完成的实体识别模型。
将搜索文本样本中包含的字符和实体词输入到初始的实体识别模型中,得到搜索文本样本的实体识别结果,基于搜索文本样本的实体识别结果和实体词标注,对初始的实体识别模型的网络参数进行调整,迭代执行输入搜索文本样本中包含的字符和实体词以及调整网络参数的操作,直至满足训练结束条件,得到训练完成的实体识别模型。其中,所述初始的实体识别模型可以是网络参数随机初始化得到的模型。
在步骤S45中,接收搜索文本。
在步骤S46中,将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词。
在步骤S47中,确定所述搜索文本中包含的字符。
在步骤S48中,将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中,得到所述搜索文本的实体识别结果;其中,所述实体识别模型对所述搜索文本中包含的字符与所述搜索文本包含的实体词之间的关系进行学习得到关系学习结果,并基于所述关系学习结果和所述搜索文本中包含的字符确定所述搜索文本的实体识别结果。
在步骤S49中,根据所述实体识别结果,进行内容搜索。
本示例性实施例提供的搜索方法,通过获取待作为训练样本的搜索文本样本,将垂类实体库中的实体词与搜索文本样本进行正向最大匹配,得到搜索文本样本中的实体词标注,并将实体词标注和搜索文本作为训练样本,基于训练样本对实体识别模型进行训练,由于通过垂类实体库中的数据来对搜索文本样本进行标注,实现了通过远程监督的方式来标注数据,解决了深度学习模型需要大量人工标注数据的问题,提高了数据标注的效率。
图5是根据一示例性实施例示出的一种搜索装置的框图。参照图5,该装置包括接收模块51、实体匹配模块52、字符确定模块53、实体识别模块54和内容搜索模块55。
该接收模块51被配置为执行接收搜索文本;
该实体匹配模块52被配置为执行将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词;
该字符确定模块53被配置为执行确定所述搜索文本中包含的字符;
该实体识别模块54被配置为执行将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中,得到所述搜索文本的实体识别结果;其中,所述实体识别模型对所述搜索文本中包含的字符与所述搜索文本包含的实体词之间的关系进行学习得到关系学习结果,并基于所述关系学习结果和所述搜索文本中包含的字符确定所述搜索文本的实体识别结果;
该内容搜索模块55被配置为执行根据所述实体识别结果,进行内容搜索。
可选的,所述实体识别模块包括:
输入单元,被配置为执行将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中;
编码单元,被配置为执行通过实体识别模型分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码;
交互处理单元,被配置为执行通过实体识别模型对所述字符编码和实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果;
解码单元,被配置为执行通过实体识别模型将所述关系学习结果和字符编码进行融合,得到融合信息,并对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
可选的,所述实体识别模型包括双向长短期记忆网络LSTM;
所述编码单元具体被配置为执行:
通过所述双向LSTM分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码。
可选的,所述实体识别模型包括注意力机制;
所述交互处理单元具体被配置为执行:
通过注意力机制分别对所述字符编码和所述实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果。
可选的,所述解码单元包括:
解码子单元,被配置为执行通过条件随机场对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
可选的,所述装置还包括:
实体识别结果确定模块,被配置为执行若所述搜索文本包含一个实体词且所述实体词为所述搜索文本,则将所述实体词确定为所述搜索文本的实体识别结果。
可选的,所述实体匹配模块包括:
前缀树建立单元,被配置为执行根据所述垂类实体库,建立与每个垂类对应的前缀树;
实体匹配单元,被配置为执行遍历每个垂类对应的前缀树,对所述搜索文本进行实体匹配,得到所述搜索文本包含的实体词以及实体词所属的垂类。
可选的,所述装置还包括:
搜索热度确定模块,被配置为执行若所述实体词同时属于多个垂类,则分别确定每个垂类中所述实体词的搜索热度;
垂类确定模块,被配置为执行将所述搜索热度最高的垂类作为所述实体词所属的垂类。
可选的,所述装置包括:
搜索文本样本获取模块,被配置为执行获取待作为训练样本的搜索文本样本;
实体标注模块,被配置为执行将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注;
实体匹配模块,被配置为执行将训练样本中的搜索文本样本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本样本包含的实体词;
模型训练模块,被配置为执行根据所述搜索文本样本、实体词标注和搜索文本样本包含的实体词,对初始的实体识别模型进行训练,得到训练完成的实体识别模型。
可选的,所述装置还包括:
文本垂类确定模块,被配置为执行确定所述搜索文本样本所属的垂类;
所述实体标注模块包括:
实体标注单元,被配置为执行根据所述搜索文本样本所属的垂类,将所述垂类实体库中所述垂类下的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注。
可选的,所述装置还包括:
实体词确定模块,被配置为执行确定所述垂类实体库中属于多个垂类的实体词;
浏览量获取模块,被配置为执行获取所述属于多个垂类的实体词在每个垂类中的页面浏览量,并确定所述属于多个垂类的实体词在所述多个垂类中的总页面浏览量;
搜索热度确定模块,被配置为执行将每个垂类的页面浏览量与所述总页面浏览量的比例确定为每个垂类的搜索热度;
实体去噪模块,被配置为执行将所述属于多个垂类的实体词从搜索热度小于热度阈值的垂类中去掉。
可选的,所述装置还包括:
样本筛选模块,被配置为执行若所述实体词标注在所述搜索文本样本中的出现位置为预设出现位置,或者所述实体词标注在所述搜索文本样本中的结尾位置为预设结尾位置,则丢弃所述搜索文本样本和对应的实体词标注。
可选的,所述装置还包括:
垂类数据划分模块,被配置为执行在同一垂类下,将包含相同实体词标注的搜索文本样本划分为一份数据,得到同一垂类下的多份数据;
概率预测模块,被配置为执行将所述多份数据中的一份数据作为预测目标,并根据其他份数据,通过双向LSTM和CRF模型预测所述预测目标对应实体词的概率;
预测目标处理模块,被配置为执行若所述概率大于或等于概率阈值且该实体词与预测目标中的实体词标注相同,则保留所述预测目标中的搜索文本样本和对应的实体词标注;若所述概率小于概率阈值或者该实体词与预测目标中的实体词标注不同,则丢弃所述预测目标。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6是根据一示例性实施例示出的一种电子设备的框图。例如,电子设备600可以被提供为一服务器。参照图6,电子设备600包括处理组件622,其进一步包括一个或多个处理器,以及由存储器632所代表的存储器资源,用于存储可由处理组件622的执行的指令,例如应用程序。存储器1332中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件622被配置为执行指令,以执行上述搜索方法。
电子设备600还可以包括一个电源组件626被配置为执行电子设备600的电源管理,一个有线或无线网络接口650被配置为将电子设备600连接到网络,和一个输入输出(I/O)接口658。电子设备600可以操作基于存储在存储器632的操作系统,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器632,上述指令可由电子设备600的处理组件622执行以完成上述搜索方法。可选地,计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时实现上述搜索方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (26)
1.一种搜索方法,其特征在于,包括:
接收搜索文本;
将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词;
确定所述搜索文本中包含的字符;
将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中,得到所述搜索文本的实体识别结果;其中,所述实体识别模型对所述搜索文本中包含的字符与所述搜索文本包含的实体词之间的关系进行学习得到关系学习结果,并基于所述关系学习结果和所述搜索文本中包含的字符确定所述搜索文本的实体识别结果;
根据所述实体识别结果,进行内容搜索;
将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中,得到所述搜索文本的实体识别结果,包括:
将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中;
通过所述实体识别模型分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码;
通过实体识别模型对所述字符编码和实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果;所述关系学习结果是学习所述实体词的语义信息和边界信息后得到的;
通过实体识别模型将所述关系学习结果和字符编码进行融合,得到融合信息,并对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
2.根据权利要求1所述的方法,其特征在于,所述实体识别模型包括双向长短期记忆网络LSTM;
所述通过实体识别模型分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码,包括:
通过所述双向LSTM分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码。
3.根据权利要求1所述的方法,其特征在于,所述实体识别模型包括注意力机制;
所述通过实体识别模型对所述字符编码和实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果,包括:
通过注意力机制分别对所述字符编码和所述实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果。
4.根据权利要求1所述的方法,其特征在于,所述对所述融合信息进行解码,得到所述搜索文本的实体识别结果,包括:
通过条件随机场对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
5.根据权利要求1-4任一项所述的方法,其特征在于,在所述将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词之后,还包括:
若所述搜索文本包含一个实体词且所述实体词为所述搜索文本,则将所述实体词确定为所述搜索文本的实体识别结果。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词,包括:
根据所述垂类实体库,建立与每个垂类对应的前缀树;
遍历每个垂类对应的前缀树,对所述搜索文本进行实体匹配,得到所述搜索文本包含的实体词以及实体词所属的垂类。
7.根据权利要求6所述的方法,其特征在于,还包括:
若所述实体词同时属于多个垂类,则分别确定每个垂类中所述实体词的搜索热度;
将所述搜索热度最高的垂类作为所述实体词所属的垂类。
8.根据权利要求1-4任一项所述的方法,其特征在于,在将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中之前,还包括:
获取待作为训练样本的搜索文本样本;
将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注;
将训练样本中的搜索文本样本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本样本包含的实体词;
根据所述搜索文本样本、实体词标注和搜索文本样本包含的实体词,对初始的实体识别模型进行训练,得到训练完成的实体识别模型。
9.根据权利要求8所述的方法,其特征在于,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配之前,还包括:
确定所述搜索文本样本所属的垂类;
所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注,包括:
根据所述搜索文本样本所属的垂类,将所述垂类实体库中所述垂类下的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注。
10.根据权利要求8所述的方法,其特征在于,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配之前,还包括:
确定所述垂类实体库中属于多个垂类的实体词;
获取所述属于多个垂类的实体词在每个垂类中的页面浏览量,并确定所述属于多个垂类的实体词在所述多个垂类中的总页面浏览量;
将每个垂类的页面浏览量与所述总页面浏览量的比例确定为每个垂类的搜索热度;
将所述属于多个垂类的实体词从搜索热度小于热度阈值的垂类中去掉。
11.根据权利要求8所述的方法,其特征在于,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注之后,还包括:
若所述实体词标注在所述搜索文本样本中的出现位置为预设出现位置,或者所述实体词标注在所述搜索文本样本中的结尾位置为预设结尾位置,则丢弃所述搜索文本样本和对应的实体词标注。
12.根据权利要求8所述的方法,其特征在于,在所述将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注之后,还包括:
在同一垂类下,将包含相同实体词标注的搜索文本样本划分为一份数据,得到同一垂类下的多份数据;
将所述多份数据中的一份数据作为预测目标,并根据其他份数据,通过双向LSTM和CRF模型预测所述预测目标对应实体词的概率;
若所述概率大于或等于概率阈值且该实体词与预测目标中的实体词标注相同,则保留所述预测目标中的搜索文本样本和对应的实体词标注;若所述概率小于概率阈值或者该实体词与预测目标中的实体词标注不同,则丢弃所述预测目标。
13.一种搜索装置,其特征在于,包括:
接收模块,被配置为执行接收搜索文本;
实体匹配模块,被配置为执行将所述搜索文本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本包含的实体词;
字符确定模块,被配置为执行确定所述搜索文本中包含的字符;
实体识别模块,被配置为执行将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中,得到所述搜索文本的实体识别结果;其中,所述实体识别模型对所述搜索文本中包含的字符与所述搜索文本包含的实体词之间的关系进行学习得到关系学习结果,并基于所述关系学习结果和所述搜索文本中包含的字符确定所述搜索文本的实体识别结果;
内容搜索模块,被配置为执行根据所述实体识别结果,进行内容搜索;
所述实体识别模块包括:
输入单元,被配置为执行将所述搜索文本中包含的字符与所述搜索文本包含的实体词输入到实体识别模型中;
编码单元,被配置为执行通过实体识别模型分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码;
交互处理单元,被配置为执行通过实体识别模型对所述字符编码和实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果;所述关系学习结果是学习所述实体词的语义信息和边界信息后得到的;
解码单元,被配置为执行通过实体识别模型将所述关系学习结果和字符编码进行融合,得到融合信息,并对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
14.根据权利要求13所述的装置,其特征在于,所述实体识别模型包括双向长短期记忆网络LSTM;
所述编码单元具体被配置为执行:
通过所述双向LSTM分别对所述字符和所述实体词进行编码处理,得到字符编码和实体词编码。
15.根据权利要求13所述的装置,其特征在于,所述实体识别模型包括注意力机制;
所述交互处理单元具体被配置为执行:
通过注意力机制分别对所述字符编码和所述实体词编码进行交互处理,得到所述字符和所述实体词之间的关系学习结果。
16.根据权利要求13所述的装置,其特征在于,所述解码单元包括:
解码子单元,被配置为执行通过条件随机场对所述融合信息进行解码,得到所述搜索文本的实体识别结果。
17.根据权利要求13-16任一项所述的装置,其特征在于,所述装置还包括:
实体识别结果确定模块,被配置为执行若所述搜索文本包含一个实体词且所述实体词为所述搜索文本,则将所述实体词确定为所述搜索文本的实体识别结果。
18.根据权利要求13-16任一项所述的装置,其特征在于,所述实体匹配模块包括:
前缀树建立单元,被配置为执行根据所述垂类实体库,建立与每个垂类对应的前缀树;
实体匹配单元,被配置为执行遍历每个垂类对应的前缀树,对所述搜索文本进行实体匹配,得到所述搜索文本包含的实体词以及实体词所属的垂类。
19.根据权利要求18所述的装置,其特征在于,所述装置还包括:
搜索热度确定模块,被配置为执行若所述实体词同时属于多个垂类,则分别确定每个垂类中所述实体词的搜索热度;
垂类确定模块,被配置为执行将所述搜索热度最高的垂类作为所述实体词所属的垂类。
20.根据权利要求13-16任一项所述的装置,其特征在于,所述装置包括:
搜索文本样本获取模块,被配置为执行获取待作为训练样本的搜索文本样本;
实体标注模块,被配置为执行将垂类实体库中的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注;
实体匹配模块,被配置为执行将训练样本中的搜索文本样本与垂类实体库中的实体词进行实体匹配,得到所述搜索文本样本包含的实体词;
模型训练模块,被配置为执行根据所述搜索文本样本、实体词标注和搜索文本样本包含的实体词,对初始的实体识别模型进行训练,得到训练完成的实体识别模型。
21.根据权利要求20所述的装置,其特征在于,所述装置还包括:
文本垂类确定模块,被配置为执行确定所述搜索文本样本所属的垂类;
所述实体标注模块包括:
实体标注单元,被配置为执行根据所述搜索文本样本所属的垂类,将所述垂类实体库中所述垂类下的实体词与所述搜索文本样本进行正向最大匹配,得到所述搜索文本样本中的实体词标注。
22.根据权利要求20所述的装置,其特征在于,所述装置还包括:
实体词确定模块,被配置为执行确定所述垂类实体库中属于多个垂类的实体词;
浏览量获取模块,被配置为执行获取所述属于多个垂类的实体词在每个垂类中的页面浏览量,并确定所述属于多个垂类的实体词在所述多个垂类中的总页面浏览量;
搜索热度确定模块,被配置为执行将每个垂类的页面浏览量与所述总页面浏览量的比例确定为每个垂类的搜索热度;
实体去噪模块,被配置为执行将所述属于多个垂类的实体词从搜索热度小于热度阈值的垂类中去掉。
23.根据权利要求20所述的装置,其特征在于,所述装置还包括:
样本筛选模块,被配置为执行若所述实体词标注在所述搜索文本样本中的出现位置为预设出现位置,或者所述实体词标注在所述搜索文本样本中的结尾位置为预设结尾位置,则丢弃所述搜索文本样本和对应的实体词标注。
24.根据权利要求20所述的装置,其特征在于,所述装置还包括:
垂类数据划分模块,被配置为执行在同一垂类下,将包含相同实体词标注的搜索文本样本划分为一份数据,得到同一垂类下的多份数据;
概率预测模块,被配置为执行将所述多份数据中的一份数据作为预测目标,并根据其他份数据,通过双向LSTM和CRF模型预测所述预测目标对应实体词的概率;
预测目标处理模块,被配置为执行若所述概率大于或等于概率阈值且该实体词与预测目标中的实体词标注相同,则保留所述预测目标中的搜索文本样本和对应的实体词标注;若所述概率小于概率阈值或者该实体词与预测目标中的实体词标注不同,则丢弃所述预测目标。
25.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至12任一项所述的搜索方法。
26.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至12任一项所述的搜索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110700012.5A CN113535896B (zh) | 2021-06-23 | 2021-06-23 | 搜索方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110700012.5A CN113535896B (zh) | 2021-06-23 | 2021-06-23 | 搜索方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113535896A CN113535896A (zh) | 2021-10-22 |
CN113535896B true CN113535896B (zh) | 2024-04-19 |
Family
ID=78096557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110700012.5A Active CN113535896B (zh) | 2021-06-23 | 2021-06-23 | 搜索方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113535896B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114141384A (zh) * | 2022-01-30 | 2022-03-04 | 北京欧应信息技术有限公司 | 用于检索医学数据的方法、设备和介质 |
CN117290563A (zh) * | 2023-11-22 | 2023-12-26 | 北京小米移动软件有限公司 | 垂类搜索方法及装置、搜索系统、存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372060A (zh) * | 2016-08-31 | 2017-02-01 | 北京百度网讯科技有限公司 | 搜索文本的标注方法和装置 |
CN110069631A (zh) * | 2019-04-08 | 2019-07-30 | 腾讯科技(深圳)有限公司 | 一种文本处理方法、装置以及相关设备 |
CN111428493A (zh) * | 2020-03-06 | 2020-07-17 | 中国平安人寿保险股份有限公司 | 实体关系获取方法、装置、设备及存储介质 |
CN112417859A (zh) * | 2020-11-24 | 2021-02-26 | 北京明略昭辉科技有限公司 | 意图识别方法、系统、计算机设备及计算机可读存储介质 |
CN112800775A (zh) * | 2021-01-28 | 2021-05-14 | 科大讯飞股份有限公司 | 语义理解方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190197176A1 (en) * | 2017-12-21 | 2019-06-27 | Microsoft Technology Licensing, Llc | Identifying relationships between entities using machine learning |
-
2021
- 2021-06-23 CN CN202110700012.5A patent/CN113535896B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372060A (zh) * | 2016-08-31 | 2017-02-01 | 北京百度网讯科技有限公司 | 搜索文本的标注方法和装置 |
CN110069631A (zh) * | 2019-04-08 | 2019-07-30 | 腾讯科技(深圳)有限公司 | 一种文本处理方法、装置以及相关设备 |
CN111428493A (zh) * | 2020-03-06 | 2020-07-17 | 中国平安人寿保险股份有限公司 | 实体关系获取方法、装置、设备及存储介质 |
CN112417859A (zh) * | 2020-11-24 | 2021-02-26 | 北京明略昭辉科技有限公司 | 意图识别方法、系统、计算机设备及计算机可读存储介质 |
CN112800775A (zh) * | 2021-01-28 | 2021-05-14 | 科大讯飞股份有限公司 | 语义理解方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113535896A (zh) | 2021-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108829722B (zh) | 一种远程监督的Dual-Attention关系分类方法及系统 | |
WO2021147726A1 (zh) | 信息抽取方法、装置、电子设备及存储介质 | |
CN110516253B (zh) | 中文口语语义理解方法及系统 | |
CN113535896B (zh) | 搜索方法、装置、电子设备及存储介质 | |
CN111160031A (zh) | 一种基于词缀感知的社交媒体命名实体识别方法 | |
CN112989005A (zh) | 一种基于分阶段查询的知识图谱常识问答方法及系统 | |
CN113255294B (zh) | 命名实体识别模型训练方法、识别方法及装置 | |
CN110390049B (zh) | 一种面向软件开发问题的答案自动生成方法 | |
CN111814477B (zh) | 一种基于争议焦点实体的争议焦点发现方法、装置及终端 | |
CN116955699B (zh) | 一种视频跨模态搜索模型训练方法、搜索方法及装置 | |
CN110210036A (zh) | 一种意图识别方法及装置 | |
CN113408287B (zh) | 实体识别方法、装置、电子设备及存储介质 | |
CN115329766B (zh) | 一种基于动态词信息融合的命名实体识别方法 | |
CN116661805B (zh) | 代码表示的生成方法和装置、存储介质及电子设备 | |
CN113468891A (zh) | 文本处理方法以及装置 | |
US20230043735A1 (en) | Technology trend prediction method and system | |
CN117556276B (zh) | 用于确定文本和视频之间的相似度的方法和装置 | |
CN115115984A (zh) | 视频数据处理方法、装置、程序产品、计算机设备和介质 | |
CN116680392A (zh) | 一种关系三元组的抽取方法和装置 | |
CN112989839A (zh) | 一种基于关键词特征嵌入语言模型的意图识别方法及系统 | |
CN116340507A (zh) | 一种基于混合权重和双通道图卷积的方面级情感分析方法 | |
CN115081445A (zh) | 一种基于多任务学习的短文本实体消歧方法 | |
CN113515945B (zh) | 一种获取文本信息的方法、装置、设备及存储介质 | |
CN111414439B (zh) | 复杂尾实体拆分链接方法、装置、电子设备和存储介质 | |
CN116629387B (zh) | 一种用于训练缺失条件下的文本处理方法及处理系统 |
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 |