CN111506705B - 一种信息查询方法、装置及电子设备 - Google Patents
一种信息查询方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111506705B CN111506705B CN202010287411.9A CN202010287411A CN111506705B CN 111506705 B CN111506705 B CN 111506705B CN 202010287411 A CN202010287411 A CN 202010287411A CN 111506705 B CN111506705 B CN 111506705B
- Authority
- CN
- China
- Prior art keywords
- phrase
- pair
- phrases
- global
- word segmentation
- 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
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/35—Clustering; Classification
-
- 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
-
- 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 Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明实施例提供了一种信息查询方法、装置及电子设备。该方法中,获得查询关键字;对查询关键字进行分词处理,得到分词结果;判断分词结果中,是否包含预设的多个上下文相关词中的词;如果包含,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对,目标词组为:分词结果中的、与分词结果包含的上下文相关词相邻的词组;在查询到时,以目标同义词组对中除目标词组以外的同义词组,替换分词结果中的目标词组,得到扩展后分词结果;以分词结果和扩展后分词结果作为查询依据,查询分词结果对应的匹配信息;基于分词结果对应的匹配信息,确定查询关键字对应的匹配信息。本发明可以提高信息查询时,所查找到的匹配信息的准确率。
Description
技术领域
本发明涉及信息查询技术领域,特别是涉及一种信息查询方法、装置及电子设备。
背景技术
在信息查询技术领域中,用户在搜索引擎中输入查询关键字,搜索引擎从信息集合中,查找该查询关键字的匹配信息。其中,查询关键字的匹配信息为包含有查询关键字中的词语的信息。由于语言表达具有多样性,针对同一种事物,用户所输入的描述该事物的查询关键字,与信息集合中对该事物的描述可能不同,因此,有时会有查找不到匹配信息的情况。
为了提高匹配信息的查找成功率,现有的信息查询方法中,对查询关键字进行分词处理后,针对分词得到的每个词语,在全局同义词典中获得该分词的同义词语;以该词语和该词语的同义词语为查询依据,从信息集合中,查找该词语对应的匹配信息;其中,全局同义词典中的同义词语为在不同的上下文环境中,均具有相同含义的词语。
然而,发明人在实现本发明的过程中发现,现有技术至少存在如下问题:
针对同一词语,在不同的上下文环境中,该词语所表达意义是不同的。因此,现有的信息查询方法中,当利用与查询关键字中的分词所表达意义不同的同义词语去查找匹配信息时,可能会查找到错误的匹配信息。例如,对于“红豆”这一词语,在“吃红豆”这一上下文环境中表达的意义为:农作物红豆,而在“听红豆”这一上下文环境中表达的意义则为:歌曲红豆。然而,现有的信息查询方法中,针对于查询关键字“听王菲歌曲红豆”分词得到的“红豆”这一词语,在全局同义词典中查询到了“赤豆”这一同义词语,若利用“赤豆”去查找匹配信息,则会查找到错误的匹配信息。
发明内容
本发明实施例的目的在于提供一种信息查询方法、装置及电子设备,以提高信息查询时,所查找到的匹配信息的准确率。具体技术方案如下:
第一方面,本发明实施例提供了一种信息查询方法,所述方法包括:
获得查询关键字;
对所述查询关键字进行分词处理,得到分词结果;
判断所述分词结果中,是否包含预设的多个上下文相关词中的词;
如果包含,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对;其中,所述目标词组为:所述分词结果中的、与所述分词结果包含的上下文相关词相邻的词组;
在查询到时,以所述目标同义词组对中除所述目标词组以外的同义词组,替换所述分词结果中的所述目标词组,得到扩展后分词结果;
以所述分词结果和所述扩展后分词结果作为查询依据,查询所述分词结果对应的匹配信息;
基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息;
其中,所述多个上下文相关词为:对预设的多个全局词组的每一全局词组,去除该全局词组所包含的、属于同义词组对中的同义词组后,所剩余的内容;预设的任一全局词组中均包含有非全局词组;所述同义词组对中的两个同义词组均为:包含于全局词组中的非全局词组;全局词组为在不同的上下文语言环境中具有相同含义的词组,非全局词组为在不同的上下文语言环境中具有不同含义的词组。
可选地,所述预设的多个同义词组对和所述预设的多个全局词组的生成方式包括:
获得多个语句对;其中,每个语句对中的两个语句包含有语义相同的词组,语义相同的词组分别属于不同的语句;
分别将每个语句对输入至预先训练完成的词组对生成模型,得到每个语句对中的两个语句所包含的各个词组对;其中,每个词组对中的两个词组分别属于不同的语句且语义相同;
对所得到的各个词组对中的词组进行分类,得到多个全局词组,以及多个非全局词组;
针对得到的每一非全局词组,若该非全局词组包含于所得到的任一全局词组中,将该非全局词组所属的词组对确定为一个预设的同义词组对;
针对得到的每一全局词组,若该全局词组包含有所确定的同义词组对中的同义词组,将该全局词组确定为一个预设的全局词组。
可选地,所述词组对生成模型的训练过程为:
获得多个样本语句对;其中,每个样本语句对中的两个样本语句包含有语义相同的样本词组,语义相同的样本词组分别属于不同的样本语句;
获得每个样本语句对的标注信息,每个样本语句对的标注信息包括:该样本语句对中每个样本词组对的翻译概率,和每个样本词组对中的两个样本词组各自所包含的词语之间的转移概率,每个样本词组对中的两个样本词组分别属于不同的样本语句且语义相同;
针对每个样本语句对,将该样本语句对输入至预设的神经网络模型进行词组对生成处理,得到该样本语句对中的各个预测词组对;根据所得到的每个预测词组对,计算该预测词组对的翻译概率,和该预测词组对中的两个预测词组各自所包含的词语之间的转移概率;
基于所得到的翻译概率与所述标注信息中的翻译概率之间的差异,以及所得到的转移概率与所述标注信息中的转移概率之间的差异,计算该神经网络模型的损失值;当损失值小于预设的损失值阈值时,完成训练,得到训练完成的词组对生成模型。
可选地,每个样本语句对所包括的两个样本语句中,一个样本语句为所述信息集合的一个历史查询关键字,另一个样本语句为所述信息集合中,该历史查询关键字对应的、已被点击查看过的信息的标题。
可选地,基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息之前,所述方法还包括:
如果所述分词结果中未包含预设的多个上下文相关词中的词,或者,如果从预设的多个同义词组对中,未查询到所述目标同义词组对,则以所述分词结果作为查询依据,查询所述分词结果对应的匹配信息。
第二方面,本发明实施例提供了一种信息查询装置,所述装置包括:
第一获得模块,用于获得查询关键字;
分词模块,用于对所述查询关键字进行分词处理,得到分词结果;
判断模块,用于判断所述分词结果中,是否包含预设的多个上下文相关词中的词;
第一查询模块,用于在所述分词结果中包含预设的多个上下文相关词中的词的情况下,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对;其中,所述目标词组为:所述分词结果中的、与所述分词结果包含的上下文相关词相邻的词组;
替换模块,用于在查询到时,以所述目标同义词组对中除所述目标词组以外的同义词组,替换所述分词结果中的所述目标词组,得到扩展后分词结果;
第二查询模块,用于以所述分词结果和所述扩展后分词结果作为查询依据,查询所述分词结果对应的匹配信息;
第一确定模块,用于基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息;
其中,所述多个上下文相关词为:对预设的多个全局词组的每一全局词组,去除该全局词组所包含的、属于同义词组对中的同义词组后,所剩余的内容;预设的任一全局词组中均包含有非全局词组;所述同义词组对中的两个同义词组均为:包含于全局词组中的非全局词组;全局词组为在不同的上下文语言环境中具有相同含义的词组,非全局词组为在不同的上下文语言环境中具有不同含义的词组。
可选地,所述装置还包括:
第二获得模块,用于获得多个语句对;其中,每个语句对中的两个语句包含有语义相同的词组,语义相同的词组分别属于不同的语句;
第一输入模块,用于分别将每个语句对输入至预先训练完成的词组对生成模型,得到每个语句对中的两个语句所包含的各个词组对;其中,每个词组对中的两个词组分别属于不同的语句且语义相同;
分类模块,用于对所得到的各个词组对中的词组进行分类,得到多个全局词组,以及多个非全局词组;
第二确定模块,用于针对得到的每一非全局词组,若该非全局词组包含于所得到的任一全局词组中,将该非全局词组所属的词组对确定为一个预设的同义词组对;
第三确定模块,用于针对得到的每一全局词组,若该全局词组包含有所确定的同义词组对中的同义词组,将该全局词组确定为一个预设的全局词组。
可选地,所述装置还包括:
第三获得模块,用于获得多个样本语句对;其中,每个样本语句对中的两个样本语句包含有语义相同的样本词组,语义相同的样本词组分别属于不同的样本语句;
第四获得模块,用于获得每个样本语句对的标注信息,每个样本语句对的标注信息包括:该样本语句对中每个样本词组对的翻译概率,和每个样本词组对中的两个样本词组各自所包含的词语之间的转移概率,每个样本词组对中的两个样本词组分别属于不同的样本语句且语义相同;
第二输入模块,用于针对每个样本语句对,将该样本语句对输入至预设的神经网络模型进行词组对生成处理,得到该样本语句对中的各个预测词组对;根据所得到的每个预测词组对,计算该预测词组对的翻译概率,和该预测词组对中的两个预测词组各自所包含的词语之间的转移概率;
计算模块,用于基于所得到的翻译概率与所述标注信息中的翻译概率之间的差异,以及所得到的转移概率与所述标注信息中的转移概率之间的差异,计算该神经网络模型的损失值;当损失值小于预设的损失值阈值时,完成训练,得到训练完成的词组对生成模型。
可选地,每个样本语句对所包括的两个样本语句中,一个样本语句为所述信息集合的一个历史查询关键字,另一个样本语句为所述信息集合中,该历史查询关键字对应的、已被点击查看过的信息的标题。
可选地,所述装置还包括:
第三查询模块,用于在基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息之前,如果所述分词结果中未包含预设的多个上下文相关词中的词,或者,如果从预设的多个同义词组对中,未查询到所述目标同义词组对,则以所述分词结果作为查询依据,查询所述分词结果对应的匹配信息。
第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的信息查询方法步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的信息查询方法步骤。
第五方面,本发明实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的信息查询方法步骤。
本发明实施例提供的方案,获得查询关键字;对查询关键字进行分词处理,得到分词结果;判断分词结果中,是否包含预设的多个上下文相关词中的词;如果包含,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对,目标词组为:分词结果中的、与分词结果包含的上下文相关词相邻的词组;在查询到时,以目标同义词组对中除目标词组以外的同义词组,替换分词结果中的目标词组,得到扩展后分词结果;以分词结果和扩展后分词结果作为查询依据,查询分词结果对应的匹配信息;基于分词结果对应的匹配信息,确定查询关键字对应的匹配信息。可见,本方案是在分词结果中具有上下文相关词的前提之下,利用同义词组对分词结果进行扩展,从而可以避免在不相关的上下文语言环境中,使用与查询关键字中的分词结果所表达意义不同的内容去查找匹配信,因此,本方案可以提高信息查询时,所查找到的匹配信息的准确率。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的一种信息查询方法的流程图;
图2为图1所示的方法中,多个同义词组对和多个全局词组的生成方式的流程图;
图3为图2所示的生成方式中,词组对生成模型的训练过程的流程图;
图4为本发明实施例提供的一种翻译模型的训练流程图;
图5为利用图4训练完成的翻译模型生成预设的同义词组对、预设的全局词组和预设的上下文相关词的流程图;
图6为利用图5生成的预设的同义词组对、预设的全局词组和预设的上下文相关词的查询方法的流程图;
图7为本发明实施例提供的一种信息查询装置的结构示意图;
图8为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
为了提高信息查询时,所查找到的匹配信息的准确率,本发明实施例提供了一种信息查询方法、装置及电子设备。
需要说明的是,本发明实施例提供的一种信息查询方法的执行主体,可以为一种信息查询装置,该装置可以应用于电子设备中。可以理解的是,该信息查询装置可以为该电子设备所安装的具有信息查询功能的应用程序中的一个软件功能模块。在具体应用中,该电子设备可以为智能手机、计算机、平板设备、医疗设备、娱乐设备、健身设备,或个人数字助理等。
本发明实施例中,预先设置了多个同义词组对、多个全局词组以及多个上下文相关词。其中,全局词组为在不同的上下文语言环境中具有相同含义的词组,例如,高速公路、东方之珠、献爱心、折爱心以及北京天安门等等。而且,预先设置的任一全局词组均包含有非全局词组,其中,非全局词组为在不同的上下文语言环境中具有不同含义的词组,例如,红豆、非诚勿扰以及爱心等等。例如,预先设置的一全局词组为吃红豆,其中,红豆为一非全局词组。又例如,预先设置的一全局词组为献爱心,其中,爱心为一非全局词组。预先设置的同义词组对中的两个同义词组,语义相同且均为包含于全局词组中的非全局词组,也就是说,预设的多个同义词组对中的两个同义词组,均为在不同的上下文语言环境中具有不同含义的词组。
并且,本发明实施例中所预设的多个上下文相关词为:对预设的多个全局词组的每一全局词组,去除该全局词组所包含的、属于同义词组对中的同义词组后,所剩余的内容。例如,对全局词组“献爱心”,去除属于“爱心”-“桃心”这一同义词组对中的“爱心”这一同义词组后,所剩余“献”这个上下文相关词。可以理解的是,本发明实施例中,预设的多个上下文相关词以及预设的多个同义词组对中的同义词组,均是预设的多个全局词组中获得的。
为了方案清楚及布局清晰,后续对本发明实施例预先设置的多个同义词组对以及多个全局词组的生成方式进行示例性的说明。
另外,本发明实施例中所提到的不同的上下文语言环境,是指分词结果中的上下文相关词的不同,而非文章段落中的上下文语言环境的不同。
首先,对本发明实施例提供的信息查询方法进行详细说明。如图1所示,该方法可以包括以下步骤:
S11:获得查询关键字。
这里,查询关键字可以为用户在具有信息查询功能的应用程序中所输入的查询关键字。例如,在应用程序的搜索引擎中所输入的查询关键字。该查询关键字具体可以为词语、词组或者语句。可以理解的是,所谓词组,是由多个词语所组成的;所谓语句,是由一个词语或句法上有关连的一组词语构成的句子。
S12:对查询关键字进行分词处理,得到分词结果。
这里,对查询关键字进行分词处理,可以采用任一种能够实现分词的分词处理方法,例如最大正向匹配法、逆向最大匹配法、最少切分法、双向匹配法,或基于词的频度统计的分词方法等等。由于对查询关键字进行分词处理非本发明的发明点,且与现有技术相同或相似,故此处不再赘述。
本发明实施例中,对查询关键字进行分词处理得到的分词结果可以为一个或多个。所得到的分词结果,可以包括:含有上下文相关词的词组,不含有上下文相关词的词组以及不含有上下文相关词的词语。例如,对“北京哪里的烤鸭最好吃”这一查询关键字进行分词处理,可以得到“北京”、“哪里”、“烤鸭”以及“最好吃”这几个分词结果。其中,“哪里”、“北京”和“烤鸭”均为不含有上下文相关词的词语,“最好吃”为含有上下文相关词“最”的词组。为了方案清楚及布局清晰,将在S13-S17中,对含有上下文相关词的词组对应的匹配信息的查询方法进行说明。在S13-S17之后,对不含有上下文相关词的词组以及不含有上下文相关词的词语,所对应的匹配信息的查询方法进行说明。
S13:判断分词结果中,是否包含预设的多个上下文相关词中的词。
得到查询关键字的分词结果后,可以判断分词结果中是否包含预设的多个上下文相关词中的词。通过这一判断,可以确定出分词结果中是否存在上下文语言环境。
具体来说,当分词结果为一个时,可以针对该分词结果,判断该分词结果中是否包含预设的多个上下文相关词中的词。当分词结果为多个时,可以针对每个分词结果,判断该分词结果中是否包含预设的多个上下文相关词中的词。
S14:如果包含,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对。
其中,目标词组为:分词结果中的、与分词结果包含的上下文相关词相邻的词组。
如果分词结果中包含预设的多个上下文相关词中的词,则可以将该分词结果中与该分词结果所包含的上下文相关词相邻的词组,确定为目标词组。所确定的目标词组可能为全局词组,也可能为非全局词组。如果目标词组为非全局词组,则该目标词组可能存在同义词组,也可能不存在同义词组。本发明实施例的目的是要:针对分词结果中的非全局词组,找到该非全局词组的同义词组,进而对分词结果进行扩展。因而,在确定出目标词组后,可以进一步地从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对。由于同义词组对中的两个同义词组语义相同且均为非全局词组。查找目标同义词组对实际上是要找到:分词结果中的非全局词组的同义词组。这一过程也是判断目标词组是否为具有同义词组的非全局词组的过程。
S15:在查询到时,以目标同义词组对中除目标词组以外的同义词组,替换分词结果中的目标词组,得到扩展后分词结果。
如果查询到包含有目标词组的目标同义词组对,说明找到了目标词组的同义词组,该同义词组的语义与目标词组在分词结果中的语义相同,因而,可以将分词结果中的目标词组替换为该同义词组,得到扩展后分词结果。
S16:以分词结果和扩展后分词结果作为查询依据,查询分词结果对应的匹配信息。
为了提高匹配信息的查找成功率,在得到扩展后分词结果后,可以以分词结果和该扩展后分词结果作为查询依据,查询分词结果对应的匹配信息。具体的,可以从预设的信息集合中,查询包含有分词结果的信息、包含有扩展后分词结果的信息,以及查询既包含有分词结果又包含有扩展后分词结果的信息。当然,也可以从预设的信息集合中,分别查询包含有分词结果的信息以及包含有扩展后分词结果的信息。
下面举例说明步骤S13-S16。假设有一分词结果为“琅玡榜电视剧”,该分词结果中包含有预设的一个上下文相关词“电视剧”;该分词结果中的目标词组为:与上下文相关词“电视剧”相邻的词组“琅玡榜”;从预设的多个同义词组对中,查询以“琅玡榜”作为一个同义词组的目标同义词组对,如“琅玡榜”-“琅琊榜”,那么,可以用“琅琊榜”替换该分词结果“琅玡榜电视剧”中的“琅玡榜”,得到扩展后分词结果“琅琊榜电视剧”。然后,以“琅玡榜电视剧”和“琅琊榜电视剧”作为查询依据,查询预设的信息集合,得到这两个分词对应的匹配信息。
S17:基于分词结果对应的匹配信息,确定查询关键字对应的匹配信息。
这里,基于分词结果对应的匹配信息,确定该查询关键字对应的匹配信息的具体实现方式存在多种。示例性的,针对分词结果为一个的情况,可以将该分词结果对应的匹配信息,作为查询关键字对应待匹配信息。针对分词结果为多个的情况,可以将各个分词结果对应的匹配信息,均作为查询关键字对应的匹配信息。另外,针对分词结果为多个的情况,鉴于每个分词结果可能对应多个匹配信息,查询关键字的各个分词结果所对应的匹配信息加起来的数量可能较多。因此,在实际应用中,可以对各个分词结果对应的匹配信息按照预定的规则进行筛选,将筛选出的匹配信息作为该查询关键字对应的匹配信息。在筛选时,可以综合考虑匹配信息被点击的次数、匹配信息与查询关键字的相关度以及用户的查询习惯等多方面的因素,对匹配信息进行排序,从而将排序较为靠前的匹配信息作为所要筛选出的匹配信息。关于对匹配信息进行排序的具体实现方式,非本发明实施例的发明点,这里不做赘述。
本发明实施例提供的方案,获得查询关键字;对查询关键字进行分词处理,得到分词结果;判断分词结果中,是否包含预设的多个上下文相关词中的词;如果包含,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对,目标词组为:分词结果中的、与分词结果包含的上下文相关词相邻的词组;在查询到时,以目标同义词组对中除目标词组以外的同义词组,替换分词结果中的目标词组,得到扩展后分词结果;以分词结果和扩展后分词结果作为查询依据,查询分词结果对应的匹配信息;基于分词结果对应的匹配信息,确定查询关键字对应的匹配信息。可见,本方案是在分词结果中具有上下文相关词的前提之下,利用同义词组对分词结果进行扩展,从而可以避免在不相关的上下文语言环境中,使用与查询关键字中的分词结果所表达意义不同的内容去查找匹配信,因此,本方案可以提高信息查询时,所查找到的匹配信息的准确率。
为了方案清楚及布局清晰,下面对本发明实施例预先设置的多个同义词组对以及多个全局词语的生成方式进行示例性的说明。
示例性的,在一种实现方式中,本发明实施例中预先设置的多个同义词组对以及多个全局词组的生成方式,如图2所示,可以包括以下步骤:
S21:获得多个语句对。
其中,每个语句对中的两个语句包含有语义相同的词组,语义相同的词组分别属于不同的语句。
示例性的,一个语句对包括语句1和语句2,语句1中的词组1和语句2中的词组2语义相同。
S22:分别将每个语句对输入至预先训练完成的词组对生成模型,得到每个语句对中的两个语句所包含的各个词组对。
其中,每个词组对中的两个词组分别属于不同的语句且语义相同。
示例性的,将一个语句对输入至词组对生成模型后,得到词组对1和词组对2,词组对1中的词组1和词组2语义相同,分别属于该语句对中的语句1和语句2;词组对2中的词组3和词组4语义相同,分别属于该语句对中的语句1和语句2。
为了布局清晰,对于词组对生成模型,将在下文中进行介绍。
可选地,词组对生成模型输出的每个词组对,可以对应有翻译概率和转移概率。其中,词组对所对应的翻译概率,可以表示词组对中的两个词组翻译彼此的准确性,而词组对所对应的转移概率,则可以表示词组对中的每个词组的语言合理性。这样,可以利用预设的翻译概率阈值和转移概率阈值,可以对词组对生成模型输出的各个词组对进一步进行筛选,筛选出翻译概率以及转移概率均比较高的各个词组对,进而,对筛选出的词组对中的词组进行分类,得到多个全局词组,以及多个非全局词组。
S23:对所得到的各个词组对中的词组进行分类,得到多个全局词组,以及多个非全局词组。
示例性的,在一种实现方式中,可以将所得到的每个词组对,输入至一个GBDT(Gradient Boosting Decision Tree,梯度提升决策树)模型中进行分类处理,得到该词组对中的词组为全局词组或非全局词组的分类结果。该GBDT模型的网络结构中,包含有多个特征提取模块,这些特征提取模块可以包括:用于提取词组对中的两个词组之间的词性距离的模块、用于提取词组对中的两个词组对应的垂直领域类型距离的模块、用于提取词组对所对应的翻译概率的模块,以及用于提取IDF(Inverse Document Frequency,反文档频率)距离的模块等等,基于所提取的特征,该GBDT模型可以输出词组对中的词组属于全局词组或非全局词组的结果。
S24:针对得到的每一非全局词组,若该非全局词组包含于所得到的任一全局词组中,将该非全局词组所属的词组对确定为一个预设的同义词组对。
在所得到的各个非全局词组中,将包含于所得到的任一全局词组的非全局词组筛选出来。对于筛选出来的每一非全局词组,其所在的全局词组中去除该非全局词组后剩余的内容,为该非全局词组的上下文相关词。由于非全局词组的语义和具体的上下文语言环境相关。那么,筛选非全局词组的过程,也就是确定出具有明确语义的非全局词组的过程,因此,可以将筛选出的非全局词组所属的词组对确定为一个预设的同义词组对,用于查询包含上述目标词组的目标同义词组对。
反过来说,如果一个非全局词组并不包含于所得到的任一全局词组中,那么,则无法确定该非全局词组的明确语义,故该非全局词组所属的词组对不能被确定为预设的同义词组对,不用被用于查询包含上述目标词组的目标同义词组对。
S25:针对得到的每一全局词组,若该全局词组包含有所确定的同义词组对中的同义词组,将该全局词组确定为一个预设的全局词组。
在确定出同义词组对后,在所得到的各个全局词组中,可以将包含有同义词组对中的同义词组的全局词组作为预设的全局词组。也就是说,预设的全局词组包含有预设的同义词组对中的同义词组,还包含有该同义词组的上下文相关词。
进一步地,针对每个预设的全局词组,将该全局词组包含的属于预设同义词组对中的同义词组去除后,所剩余的内容可以作为预设的上下文相关词。
示例性的,在另一种实现方式中,本发明实施例中预先设置的多个同义词组对以及多个全局词组的生成方式,可以包括如下步骤:
步骤1:获取一个预设的同义词典,该同义词典中包括多个同义词组对;
步骤2:获取多个全局词组;
步骤3:针对所获取的每一全局词组,判断该全局词组中是否包含有非全局词组,如果包含有非全局词组,判断预设的同义词典中是否存在包含该非全局词组的同义词组对,如果存在,将包含该非全局词组的同义词组对作为一个预设的同义词组对;
步骤4:针对所获取的每一全局词组,若该非全局词组中包含有预设的同义词组对中的同义词组,则将该全局词组作为一个预设的全局词组;
进一步地,针对每个预设的全局词组,将该全局词组包含的属于预设的同义词组对中的同义词组去除后,所剩余的内容作为一个预设的上下文相关词。
在实际应用中,预设的同义词组对以及预设的全局词组的生成方式还有多种,本发明对二者的生成方式并不限定。只要满足:预设的任一同义词组对中的两个同义词组均为包含于全局词组中的非全局词组,以及预设的任一全局词组中均包含有非全局词组,且该非全局词组包含于预设的某一同义词组对即可。生成预设的同义词组对以及预设的全局词组后,针对每个预设的全局词组,将该全局词组包含的属于预设的同义词组对中的同义词组去除后,所剩余的内容即可作为一个预设的上下文相关词。
为了方案清楚,下面对词组对生成模型的训练过程进行示例性的说明。如图3所示,该训练过程可以包括:
S31:获得多个样本语句对。
为了训练词组对生成模型,可以获得多个样本语句,每个样本语句对所包括的两个样本语句包含有语义相同的样本词组,语义相同的样本词组分别属于不同的样本语句。例如,样本语句对中样本语句1中的样本词组1,和样本语句2中的样本词组2的语义相同。
可选地,每个样本语句对所包括的两个样本语句中,一个样本语句为上述的信息集合的一个历史查询关键字,另一个样本语句为上述的信息集合中,该历史查询关键字对应的、已被点击查看过的信息的标题。
可以理解的,在历史查询关键字对应的信息标题中,用户点击查看过的信息标题往往与用于的查询意图相同或相近,那么,将历史查询关键字作为一个样本语句,将该历史查询关键字对应的、已被点击查看过的信息的标题作为另一个样本语句,所构成的样本语句对中往往包含有上述的语义相同的样本词组。因而,这样的样本语句对可以作为训练样本。
S32:获得每个样本语句对的标注信息,每个样本语句对的标注信息包括:该样本语句对中每个样本词组对的翻译概率,和每个样本词组对中的两个样本词组各自所包含的词语之间的转移概率,每个样本词组对中的两个样本词组分别属于不同的样本语句且语义相同。
翻译概率是指具有相同语义的两个词组能够翻译彼此的概率。翻译概率可以表示词组对中的两个词组能够翻译彼此的准确性。例如,样本语句对“好看的烧脑电影-精彩的悬疑片”中,包含有语义相同的样本词组对“烧脑电影-悬疑片”,样本词组“烧脑电影”与“悬疑片”之间的翻译概率可以为标注1。需要说明的是,这里所标注的翻译概率的具体数值仅仅作为示例,并不构成对本发明实施例的限定。
转移概率是指词语转移到另一词语的概率。对于词组而言,词组所对应的转移概率可以表示词组所包含的词语之间的语言合理性。具体而言,词组中的词语1与词语2之间的转移概率,可以是词语1词语2这一词组的出现次数与词语1的出现次数的比值。例如,对于样本词组“烧脑电影”,其中的词语“烧脑”和“电影”之间可以具有转移概率,该转移概率为“烧脑电影”的出现次数与“烧脑”的出现次数的比值。又例如,对于样本词组“悬疑片”,其中的词语“悬疑”和“片”之间可以具有转移概率,该转移概率为“悬疑片”的出现次数与“悬疑”的出现次数的比值。
为了布局清晰,将在下文中介绍标注每个样本词组对的翻译概率的方式,以及标注每个样本词组对中的两个样本词组各自所包含的词语之间的转移概率的方式。
S33:针对每个样本语句对,将该样本语句对输入至预设的神经网络模型进行词组对生成处理,得到该样本语句对中的各个预测词组对;根据所得到的每个预测词组对,计算该预测词组对的翻译概率,和该预测词组对中的两个预测词组各自所包含的词语之间的转移概率。
将每个样本语句对输入至预设的神经网络模型后,可以得到该模型输出的该样本语句对中的各个预测词组对。进一步地,针对每个预测词组对,可以计算该预测词组对的翻译概率,和该预测词组对中的两个预测词组各自所包含的词语之间的转移概率,以便于进一步比较计算得到的翻译概率和标注的翻译概率,以及比较计算得到的转移概率和标注的翻译概率。
为了布局清晰,将在下文中介绍计算预测词组对的翻译概率的方式,以及计算预测词组对中的两个预测词组各自所包含的词语之间的转移概率的方式。
S34:基于所得到的翻译概率与标注信息中的翻译概率之间的差异,以及所得到转移概率与标注信息中的转移概率之间的差异,计算该神经网络模型的损失值;当损失值小于预设的损失值阈值时,完成训练,得到训练完成的词组对生成模型。
通过以上步骤训练完成词组对生成模型后,可利用该词组对生成模型生成多个词组对,进一步,基于所生成的多个词组对生成预先设定的同义词组对和预先设定的全局词组。
下面对标注每个样本词组对的翻译概率的方式进行介绍。
在分别为每个样本语句对标注其标注信息时,为了提高标注信息的准确性,可以在开始训练词组对生成模型之前,训练一个词语对生成模型。该词语对生成模型,基于多个第一训练样本以及每个第一训练样本的标注信息训练获得。其中,每个第一训练样本均包括两个语句,且所包括的两个语句之间,具有相同语义的词语;每个第一训练样本的标注信息为该第一训练样本所包含的两个语句之间,具有相同语义的词语的翻译概率;可见,与训练词组对生成模型所使用的标注信息不同的是,第二标注信息中的翻译概率,是词语与词语之间的翻译概率,而训练词组对生成模型所使用的标注信息中的翻译概率,是词组与词组之间的翻译概率。关于该词语对生成模型的训练过程,与词组对生成模型的训练过程相似,这里不再赘述。
可以理解的是,当该词语对生成模型训练完成后,将步骤S31中所获得的样本语句对输入至该词语对生成模型后,该词语对生成模型可以输出样本语句对所包含的两个样本语句之间,具有相同语义的各个词语对的翻译概率。这样,根据该词语对生成模型所输出的具有相同语义的各个词语对的翻译概率,便可以进一步在样本语句对中,标注出具有相同语义的样本词组与样本词组之间的翻译概率。
本发明实施例中,在计算预测词组对的翻译概率时,也可以利用上述训练好的词语对生成模型来计算。
下面对标注每个样本词组对中的两个样本词组各自所包含的词语之间的转移概率的方式进行介绍。
在分别为每个样本语句对标注该样本语句对的标注信息时,为了提高标注信息的语言合理性,在开始训练词组对生成模型之前,还可以训练一个语言合理性的评估模型。该评估模型可以基于第二训练样本以及第二训练样本的标注信息训练获得;其中,第二训练样本为包含有词组的语句或词组,第二训练样本的标注信息为词组中的词语之间的转移概率。
可以理解的是,当该评估模型训练完成后,将步骤S31中所获得样本语句对中的样本语句输入至该评估模型,便可以得到每个样本语句所包含样本词组中的词语之间的转移概率。关于该评估模型的训练过程,与词组对生成模型和词语对生成模型的训练过程大致相似,这里不再赘述。在实际应用中,该语言合理性的评估模型可以为N-gram语言模型等等,并不局限于此。
本发明实施例中,在计算预测词组对中的两个预测词组各自所包含的词语之间的转移概率时,也可以利用上述训练好的评估模型来计算。
下面对本发明实施例中,不含有上下文相关词的词组以及不含有上下文相关词的词语,所对应的匹配信息的查询方法进行说明。
可选地,在一种实现方式中,在基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息之前,图1所示实施例提供的信息查询方法,还可以包括:
如果分词结果中未包含预设的多个上下文相关词中的词,或者,如果从预设的多个同义词组对中,未查询到目标同义词组对,则以分词结果作为查询依据,查询分词结果对应的匹配信息。
这里,如果分词结果中未包含预设的多个上下文相关词中的词,那么该分词结果可能是不含有上下文相关词的词组,如“川贝枇杷膏”和“藿香正气水”;也可能是不含有上下文相关词的词语,如“狮子”、“冰箱”以及“乌鲁木齐”等等。因此,对于这两种情况,可以直接以该分词结果作为查询依据,查询分词结果对应的匹配信息。具体的,可以在预设的信息集合中查询分词结果对应的匹配信息。
另外,如果从预设的多个同义词组对中,未查询到所述目标同义词组对,说明无法查询到目标词组的同义词组,无法对分词结果进行扩展。对于这种情况,可以以该分词结果作为查询依据,查询分词结果对应的匹配信息。具体的,可以在预设的信息集合中查询分词结果对应的匹配信息。
可以理解的是,如果查询关键字的分词结果既有含有上下文相关词的词组、又有不含有上下文相关词的词组和/或词语,那么,针对不同的分词结果,采用对应的查询方法执行匹配信息的查询。在查询关键字的各个分词结果所分别对应的匹配信息查询成功后,再基于查询关键字的所有分词结果对应的匹配信息,确定查询关键字对应的匹配信息。其中,关于每个分词结果对应的匹配信息确定后,如何基于这些匹配信息,确定查询关键字对应的匹配信息的具体实现方式,在S17中已经进行过详细说明,此处不再赘述。
图4为本发明实施例提供的一种翻译模型的训练流程图。
在图4中,一种翻译模型的训练流程,可以包括如下步骤:
S41:获取搜索日志。
搜索日志中包括:用户输入的历史查询关键字,和对应的查询到的内容的标题。
S42:根据搜索日志,建立平行语料库。
平行语料库包括的是样本语句-样本语句的对应关系,即包括的是多个样本语句对。在每个样本语句对中,将一个历史查询关键字作为一个样本语句,将该历史查询关键字对应的、已被点击查看的内容的标题作为另一个样本语句。
在建立好平行语料库后,可以对其中的每个样本语句对中的两个样本语句分别进行分词预处理。
S43:基于每个样本语句进行语言模型的训练。
所训练的语言模型用于学习:词组中的词语与词语之间的转移概率。
具体来说,获得样本语句对中的样本词组对,获得每个样本词组对中的两个样本词组各自所包含的词语之间的转移概率,基于样本词组,以及样本词组所包含的词语之间的转移概率来训练语言模型。
S44:基于样本语句对训练word-based翻译模型。
所训练的word-based翻译模型用于学习:词语-词语的对齐关系。例如,好看-精彩,烧脑-悬疑片。
利用该word-based翻译模型可以生成样本语句对中的词语-词语的对齐关系。
S45:基于语言模型和word-based翻译模型,训练phase-based翻译模型。
所训练的phase-based翻译模型用于学习:词组-词组的对应关系。
通过图4所示实施例,可以训练得到phase-based翻译模型,该模型可以学习到样本语句对中的样本词组-样本词组的对应关系。
图5为利用图4训练完成的翻译模型生成预设的同义词组对、预设的全局词组和预设的上下文相关词的流程图。
在图5中,利用图4训练完成的翻译模型生成预设的同义词组对、预设的全局词组和预设的上下文相关词的流程,可以包括如下步骤:
S51:获取搜索日志。
搜索日志中包括:用户输入的历史查询关键字,和对应的查询到的内容的标题。
S52:根据搜索日志,获得多个语句对。
在每个语句对中,将一个历史查询关键字作为一个样本语句,将该历史查询关键字对应的查询到的内容的标题作为另一个样本语句。
S53:将多个语句对输入训练好的phase-based翻译模型,得到每个语句对中的两个语句所包含的各个词组对。
每个词组对中的两个词组分别属于不同的语句且语义相同。
S54:利用GBDT模型对得到的各个词组对中的词组进行分类,得到多个全局词组,以及多个非全局词组。
S55:生成预设的同义词组对和预设的全局词组。
针对得到的每一非全局词组,若该非全局词组包含于所得到的任一全局词组中,将该非全局词组所属的词组对确定为一个预设的同义词组对。
针对得到的每一全局词组,若该全局词组包含有所确定的同义词组对中的同义词组,将该全局词组确定为一个预设的全局词组。
S56:生成预设的上下文相关词。
针对每个预设的全局词组,将该全局词组包含的属于预设同义词组对中的同义词组去除后,所剩余的内容可以作为预设的上下文相关词。
通过图5所示实施例,可以生成预设的同义词组对和预设的全局词组,还可以生成预设的上下文相关词。
图6为利用图5生成的预设的同义词组对、预设的全局词组和预设的上下文相关词的查询方法的流程图。
在图6中,利用图5生成的预设的同义词组对、预设的全局词组和预设的上下文相关词的查询方法的流程,可以包括如下步骤:
S61:获得查询关键字,并查询关键字进行分词处理,得到多个分词结果。
S62:判断每个分词结果中,是否包含预设的多个上下文相关词中的词。
对于包含预设的多个上下文相关词中的词的分词结果,转到S63。
对于不包含预设的多个上下文相关词中的词的分词结果,转到S66。
S63:从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对。
目标词组为:分词结果中的、与分词结果包含的上下文相关词相邻的词组。
如果查询到,转到步骤64,如果未查询到,转到S66。
S64:以目标同义词组对中除目标词组以外的同义词组,替换分词结果中的目标词组,得到扩展后分词结果。
S65:以分词结果和扩展后分词结果作为查询依据,查询分词结果对应的匹配信息。
执行S65后,转到S67。
S66:以分词结果作为查询依据,查询分词结果对应的匹配信息。
执行S66后,转到S67。
S67:对各个匹配信息进行排序。
可以综合考虑匹配信息被点击的次数、匹配信息与查询关键字的相关度以及用户的查询习惯等多方面的因素,对匹配信息进行排序。
S68:基于排序后的匹配信息,确定查询关键字对应的匹配信息。
示例性的,将排序较为靠前的匹配信息作为查询关键字对应的的匹配信息。
通过图6所示实施例,在分词结果中具有上下文相关词的前提之下,利用同义词组对分词结果进行扩展,从而可以避免在不相关的上下文语言环境中,使用与查询关键字中的分词结果所表达意义不同的内容去查找匹配信,因此,可以提高信息查询时,所查找到的匹配信息的准确率。
相应于上述的一种信息查询方法,本发明实施例还提供了一种信息查询装置,如图7所示,该装置可以包括:
第一获得模块701,用于获得查询关键字;
分词模块702,用于对所述查询关键字进行分词处理,得到分词结果;
判断模块703,用于判断所述分词结果中,是否包含预设的多个上下文相关词中的词;
第一查询模块704,用于在所述分词结果中包含预设的多个上下文相关词中的词的情况下,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对;其中,所述目标词组为:所述分词结果中的、与所述分词结果包含的上下文相关词相邻的词组;
替换模块705,用于在查询到时,以所述目标同义词组对中除所述目标词组以外的同义词组,替换所述分词结果中的所述目标词组,得到扩展后分词结果;
第二查询模块706,用于以所述分词结果和所述扩展后分词结果作为查询依据,查询所述分词结果对应的匹配信息;
第一确定模块707,用于基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息;
其中,所述多个上下文相关词为:对预设的多个全局词组的每一全局词组,去除该全局词组所包含的、属于同义词组对中的同义词组后,所剩余的内容;预设的任一全局词组中均包含有非全局词组;所述同义词组对中的两个同义词组均为:包含于全局词组中的非全局词组;全局词组为在不同的上下文语言环境中具有相同含义的词组,非全局词组为在不同的上下文语言环境中具有不同含义的词组。
本发明实施例提供的方案,获得查询关键字;对查询关键字进行分词处理,得到分词结果;判断分词结果中,是否包含预设的多个上下文相关词中的词;如果包含,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对,目标词组为:分词结果中的、与分词结果包含的上下文相关词相邻的词组;在查询到时,以目标同义词组对中除目标词组以外的同义词组,替换分词结果中的目标词组,得到扩展后分词结果;以分词结果和扩展后分词结果作为查询依据,查询分词结果对应的匹配信息;基于分词结果对应的匹配信息,确定查询关键字对应的匹配信息。可见,本方案是在分词结果中具有上下文相关词的前提之下,利用同义词组对分词结果进行扩展,从而可以避免在不相关的上下文语言环境中,使用与查询关键字中的分词结果所表达意义不同的内容去查找匹配信,因此,本方案可以提高信息查询时,所查找到的匹配信息的准确率。
可选地,所述装置还包括:
第二获得模块,用于获得多个语句对;其中,每个语句对中的两个语句包含有语义相同的词组,语义相同的词组分别属于不同的语句;
第一输入模块,用于分别将每个语句对输入至预先训练完成的词组对生成模型,得到每个语句对中的两个语句所包含的各个词组对;其中,每个词组对中的两个词组分别属于不同的语句且语义相同;
分类模块,用于对所得到的各个词组对中的词组进行分类,得到多个全局词组,以及多个非全局词组;
第二确定模块,用于针对得到的每一非全局词组,若该非全局词组包含于所得到的任一全局词组中,将该非全局词组所属的词组对确定为一个预设的同义词组对;
第三确定模块,用于针对得到的每一全局词组,若该全局词组包含有所确定的同义词组对中的同义词组,将该全局词组确定为一个预设的全局词组。
可选地,所述装置还包括:
第三获得模块,用于获得多个样本语句对;其中,每个样本语句对中的两个样本语句包含有语义相同的样本词组,语义相同的样本词组分别属于不同的样本语句;
第四获得模块,用于获得每个样本语句对的标注信息,每个样本语句对的标注信息包括:该样本语句对中每个样本词组对的翻译概率,和每个样本词组对中的两个样本词组各自所包含的词语之间的转移概率,每个样本词组对中的两个样本词组分别属于不同的样本语句且语义相同;
第二输入模块,用于针对每个样本语句对,将该样本语句对输入至预设的神经网络模型进行词组对生成处理,得到该样本语句对中的各个预测词组对;根据所得到的每个预测词组对,计算该预测词组对的翻译概率,和该预测词组对中的两个预测词组各自所包含的词语之间的转移概率;
计算模块,用于基于所得到的翻译概率与所述标注信息中的翻译概率之间的差异,以及所得到的转移概率与所述标注信息中的转移概率之间的差异,计算该神经网络模型的损失值;当损失值小于预设的损失值阈值时,完成训练,得到训练完成的词组对生成模型。
可选地,每个样本语句对所包括的两个样本语句中,一个样本语句为所述信息集合的一个历史查询关键字,另一个样本语句为所述信息集合中,该历史查询关键字对应的、已被点击查看过的信息的标题。
可选地,所述装置还包括:
第三查询模块,用于在基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息之前,如果所述分词结果中未包含预设的多个上下文相关词中的词,或者,如果从预设的多个同义词组对中,未查询到所述目标同义词组对,则以所述分词结果作为查询依据,查询所述分词结果对应的匹配信息。
本发明实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,实现上述实施例中任一所述的信息查询方法,以获得相同的技术效果。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中任一所述的信息查询方法,以获得相同的技术效果。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的信息查询方法,以获得相同的技术效果。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置/电子设备/存储介质/计算机程序产品等实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (9)
1.一种信息查询方法,其特征在于,所述方法包括:
获得查询关键字;
对所述查询关键字进行分词处理,得到分词结果;
判断所述分词结果中,是否包含预设的多个上下文相关词中的词;
如果包含,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对;其中,所述目标词组为:所述分词结果中的、与所述分词结果包含的上下文相关词相邻的词组;
在查询到时,以所述目标同义词组对中除所述目标词组以外的同义词组,替换所述分词结果中的所述目标词组,得到扩展后分词结果;
以所述分词结果和所述扩展后分词结果作为查询依据,查询所述分词结果对应的匹配信息;
基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息;
其中,所述多个上下文相关词为:对预设的多个全局词组的每一全局词组,去除该全局词组所包含的、属于同义词组对中的同义词组后,所剩余的内容;预设的任一全局词组中均包含有非全局词组;所述同义词组对中的两个同义词组均为:包含于全局词组中的非全局词组;全局词组为在不同的上下文语言环境中具有相同含义的词组,非全局词组为在不同的上下文语言环境中具有不同含义的词组;
所述预设的多个同义词组对和所述预设的多个全局词组的生成方式包括:
获得多个语句对;其中,每个语句对中的两个语句包含有语义相同的词组,语义相同的词组分别属于不同的语句;
分别将每个语句对输入至预先训练完成的词组对生成模型,得到每个语句对中的两个语句所包含的各个词组对;其中,每个词组对中的两个词组分别属于不同的语句且语义相同;
对所得到的各个词组对中的词组进行分类,得到多个全局词组,以及多个非全局词组;
针对得到的每一非全局词组,若该非全局词组包含于所得到的任一全局词组中,将该非全局词组所属的词组对确定为一个预设的同义词组对;
针对得到的每一全局词组,若该全局词组包含有所确定的同义词组对中的同义词组,将该全局词组确定为一个预设的全局词组。
2.根据权利要求1所述的方法,其特征在于,所述词组对生成模型的训练过程为:
获得多个样本语句对;其中,每个样本语句对中的两个样本语句包含有语义相同的样本词组,语义相同的样本词组分别属于不同的样本语句;
获得每个样本语句对的标注信息,每个样本语句对的标注信息包括:该样本语句对中每个样本词组对的翻译概率,和每个样本词组对中的两个样本词组各自所包含的词语之间的转移概率,每个样本词组对中的两个样本词组分别属于不同的样本语句且语义相同;
针对每个样本语句对,将该样本语句对输入至预设的神经网络模型进行词组对生成处理,得到该样本语句对中的各个预测词组对;根据所得到的每个预测词组对,计算该预测词组对的翻译概率,和该预测词组对中的两个预测词组各自所包含的词语之间的转移概率;
基于所得到的翻译概率与所述标注信息中的翻译概率之间的差异,以及所得到的转移概率与所述标注信息中的转移概率之间的差异,计算该神经网络模型的损失值;当损失值小于预设的损失值阈值时,完成训练,得到训练完成的词组对生成模型。
3.根据权利要求2所述的方法,其特征在于,每个样本语句对所包括的两个样本语句中,一个样本语句为所述信息集合的一个历史查询关键字,另一个样本语句为所述信息集合中,该历史查询关键字对应的、已被点击查看过的信息的标题。
4.根据权利要求1所述的方法,其特征在于,基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息之前,所述方法还包括:
如果所述分词结果中未包含预设的多个上下文相关词中的词,或者,如果从预设的多个同义词组对中,未查询到所述目标同义词组对,则以所述分词结果作为查询依据,查询所述分词结果对应的匹配信息。
5.一种信息查询装置,其特征在于,所述装置包括:
第一获得模块,用于获得查询关键字;
分词模块,用于对所述查询关键字进行分词处理,得到分词结果;
判断模块,用于判断所述分词结果中,是否包含预设的多个上下文相关词中的词;
第一查询模块,用于在所述分词结果中包含预设的多个上下文相关词中的词的情况下,从预设的多个同义词组对中,查询包含有目标词组的目标同义词组对;其中,所述目标词组为:所述分词结果中的、与所述分词结果包含的上下文相关词相邻的词组;
替换模块,用于在查询到时,以所述目标同义词组对中除所述目标词组以外的同义词组,替换所述分词结果中的所述目标词组,得到扩展后分词结果;
第二查询模块,用于以所述分词结果和所述扩展后分词结果作为查询依据,查询所述分词结果对应的匹配信息;
第一确定模块,用于基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息;
其中,所述多个上下文相关词为:对预设的多个全局词组的每一全局词组,去除该全局词组所包含的、属于同义词组对中的同义词组后,所剩余的内容;预设的任一全局词组中均包含有非全局词组;所述同义词组对中的两个同义词组均为:包含于全局词组中的非全局词组;全局词组为在不同的上下文语言环境中具有相同含义的词组,非全局词组为在不同的上下文语言环境中具有不同含义的词组;
所述装置还包括:
第二获得模块,用于获得多个语句对;其中,每个语句对中的两个语句包含有语义相同的词组,语义相同的词组分别属于不同的语句;
第一输入模块,用于分别将每个语句对输入至预先训练完成的词组对生成模型,得到每个语句对中的两个语句所包含的各个词组对;其中,每个词组对中的两个词组分别属于不同的语句且语义相同;
分类模块,用于对所得到的各个词组对中的词组进行分类,得到多个全局词组,以及多个非全局词组;
第二确定模块,用于针对得到的每一非全局词组,若该非全局词组包含于所得到的任一全局词组中,将该非全局词组所属的词组对确定为一个预设的同义词组对;
第三确定模块,用于针对得到的每一全局词组,若该全局词组包含有所确定的同义词组对中的同义词组,将该全局词组确定为一个预设的全局词组。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第三获得模块,用于获得多个样本语句对;其中,每个样本语句对中的两个样本语句包含有语义相同的样本词组,语义相同的样本词组分别属于不同的样本语句;
第四获得模块,用于获得每个样本语句对的标注信息,每个样本语句对的标注信息包括:该样本语句对中每个样本词组对的翻译概率,和每个样本词组对中的两个样本词组各自所包含的词语之间的转移概率,每个样本词组对中的两个样本词组分别属于不同的样本语句且语义相同;
第二输入模块,用于针对每个样本语句对,将该样本语句对输入至预设的神经网络模型进行词组对生成处理,得到该样本语句对中的各个预测词组对;根据所得到的每个预测词组对,计算该预测词组对的翻译概率,和该预测词组对中的两个预测词组各自所包含的词语之间的转移概率;
计算模块,用于基于所得到的翻译概率与所述标注信息中的翻译概率之间的差异,以及所得到的转移概率与所述标注信息中的转移概率之间的差异,计算该神经网络模型的损失值;当损失值小于预设的损失值阈值时,完成训练,得到训练完成的词组对生成模型。
7.根据权利要求6所述的装置,其特征在于,每个样本语句对所包括的两个样本语句中,一个样本语句为所述信息集合的一个历史查询关键字,另一个样本语句为所述信息集合中,该历史查询关键字对应的、已被点击查看过的信息的标题。
8.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第三查询模块,用于在基于所述分词结果对应的匹配信息,确定所述查询关键字对应的匹配信息之前,如果所述分词结果中未包含预设的多个上下文相关词中的词,或者,如果从预设的多个同义词组对中,未查询到所述目标同义词组对,则以所述分词结果作为查询依据,查询所述分词结果对应的匹配信息。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010287411.9A CN111506705B (zh) | 2020-04-13 | 2020-04-13 | 一种信息查询方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010287411.9A CN111506705B (zh) | 2020-04-13 | 2020-04-13 | 一种信息查询方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111506705A CN111506705A (zh) | 2020-08-07 |
CN111506705B true CN111506705B (zh) | 2023-07-21 |
Family
ID=71875973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010287411.9A Active CN111506705B (zh) | 2020-04-13 | 2020-04-13 | 一种信息查询方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111506705B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113673245A (zh) * | 2021-07-15 | 2021-11-19 | 北京三快在线科技有限公司 | 实体识别方法、装置、电子设备及可读存储介质 |
CN113988047A (zh) * | 2021-09-26 | 2022-01-28 | 北京捷通华声科技股份有限公司 | 一种语料筛选方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678576A (zh) * | 2013-12-11 | 2014-03-26 | 华中师范大学 | 基于动态语义分析的全文检索*** |
CN105096942A (zh) * | 2014-05-21 | 2015-11-25 | 清华大学 | 语义分析方法和装置 |
CN109325233A (zh) * | 2018-09-27 | 2019-02-12 | 北京安云世纪科技有限公司 | 全局语义理解方法、装置、计算机设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9002869B2 (en) * | 2007-06-22 | 2015-04-07 | Google Inc. | Machine translation for query expansion |
-
2020
- 2020-04-13 CN CN202010287411.9A patent/CN111506705B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678576A (zh) * | 2013-12-11 | 2014-03-26 | 华中师范大学 | 基于动态语义分析的全文检索*** |
CN105096942A (zh) * | 2014-05-21 | 2015-11-25 | 清华大学 | 语义分析方法和装置 |
CN109325233A (zh) * | 2018-09-27 | 2019-02-12 | 北京安云世纪科技有限公司 | 全局语义理解方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111506705A (zh) | 2020-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11182435B2 (en) | Model generation device, text search device, model generation method, text search method, data structure, and program | |
CN106156204B (zh) | 文本标签的提取方法和装置 | |
US8892550B2 (en) | Source expansion for information retrieval and information extraction | |
KR101173556B1 (ko) | 토픽맵 기반 색인 장치, 토픽맵 기반 검색 장치, 토픽맵 기반 검색 시스템 및 그 방법 | |
CN103136352B (zh) | 基于双层语义分析的全文检索*** | |
Hamed et al. | A Question Answering System on Holy Quran Translation Based on Question Expansion Technique and Neural Network Classification. | |
US20160041986A1 (en) | Smart Search Engine | |
Varma et al. | IIIT Hyderabad at TAC 2009. | |
Meij et al. | Learning semantic query suggestions | |
US20090254540A1 (en) | Method and apparatus for automated tag generation for digital content | |
EP2206057A1 (en) | Nlp-based entity recognition and disambiguation | |
US20170185672A1 (en) | Rank aggregation based on a markov model | |
JP2011118689A (ja) | 検索方法及びシステム | |
US20190266286A1 (en) | Method and system for a semantic search engine using an underlying knowledge base | |
CN111506705B (zh) | 一种信息查询方法、装置及电子设备 | |
Huang et al. | An approach on Chinese microblog entity linking combining *** encyclopaedia and word2vec | |
Yusuf et al. | Query expansion method for quran search using semantic search and lucene ranking | |
Wang et al. | The Copenhagen team participation in the factuality task of the competition of automatic identification and verification of claims in political debates of the CLEF-2018 fact checking lab | |
CN111274366A (zh) | 搜索推荐方法及装置、设备、存储介质 | |
CN113505196B (zh) | 基于词性的文本检索方法、装置、电子设备及存储介质 | |
Saeidi et al. | Context-enhanced concept disambiguation in wikification | |
Li et al. | Complex query recognition based on dynamic learning mechanism | |
Cudré-Mauroux | Semantic Search. | |
Ofoghi et al. | A semantic approach to boost passage retrieval effectiveness for question answering | |
Kalender et al. | THINKER-entity linking system for Turkish language |
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 |