CN112149005B - 用于确定搜索结果的方法、装置、设备和可读存储介质 - Google Patents
用于确定搜索结果的方法、装置、设备和可读存储介质 Download PDFInfo
- Publication number
- CN112149005B CN112149005B CN201910567287.9A CN201910567287A CN112149005B CN 112149005 B CN112149005 B CN 112149005B CN 201910567287 A CN201910567287 A CN 201910567287A CN 112149005 B CN112149005 B CN 112149005B
- Authority
- CN
- China
- Prior art keywords
- search
- similarity
- keyword
- entity
- determining
- 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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0639—Item locations
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种用于确定搜索结果的方法、装置、设备和可读存储介质。所述用于确定搜索结果的方法包括:基于搜索关键词获取至少一个搜索候选结果;对于所述至少一个搜索候选结果中的每个搜索候选结果,确定所述搜索候选结果与搜索关键词之间的相似度,在所述搜索候选结果与搜索关键词之间的相似度满足相似度条件的情况下将所述搜索候选结果确定为所述搜索结果,其中,确定所述搜索候选结果与搜索关键词之间的相似度包括:确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度。
Description
技术领域
本公开涉及搜索技术领域,具体的涉及一种用于确定搜索结果的方法、装置、设备和可读存储介质。
背景技术
随着互联网的迅猛发展,网络数据量不断增加,用户可以利用搜索技术基于搜索关键词来查找所需的信息。基于搜索关键词获取的搜索结果可以应用在很多的应用场景之中,诸如查找商户位置,信息检索等。准确的搜索结果有助于从海量数据中更快的找到用户想要的信息。然而,现有的确定搜索结果的方法只关注于搜索关键词与搜索结果之间的文本相似性,或者基于历史搜索数据来确定搜索结果,例如,利用用户满意度来对搜索结果进行搜索评价,将用户满意度最高的搜索结果作为最终的搜索结果,这使得搜索结果的准确性较低,甚至无法提供符合用户搜索预期的信息,降低了用户体验。
发明内容
本公开提供一种用于确定搜索结果的方法,用于提高搜索结果的准确性,从而保证查找到的搜索结果符合用户的搜索预期。
根据本公开的一方面,提供了一种用于确定搜索结果的方法,包括:基于搜索关键词获取至少一个搜索候选结果;对于所述至少一个搜索候选结果中的每个搜索候选结果,确定所述搜索候选结果与搜索关键词之间的相似度,在所述搜索候选结果与搜索关键词之间的相似度满足相似度条件的情况下将所述搜索候选结果确定为所述搜索结果,其中,确定所述搜索候选结果与搜索关键词之间的相似度包括:确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度。
根据本公开的一些实施例,确定所述搜索候选结果与搜索关键词之间的相似度还包括:确定所述搜索候选结果与搜索关键词之间的字词相似度,基于所述实体相似度和字词相似度确定所述所述搜索候选结果与搜索关键词之间的相似度。
根据本公开的一些实施例,确定所述搜索候选结果与搜索关键词之间的字词相似度包括以下中的至少一种:确定搜索候选结果与搜索关键词之间的字符相似度;确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度;以及确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度。
根据本公开的一些实施例,确定搜索候选结果与搜索关键词之间的字符相似度包括:基于搜索关键词中包括的字符被包括在搜索候选结果中的字符数目与搜索关键词中包括的字符的总数目的比值,确定搜索候选结果与搜索关键词之间的所述字符相似度。
根据本公开的一些实施例,确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度包括:对搜索候选结果进行分词以获得所述搜索候选结果包括的词语;对搜索关键词进行分词以获得所述搜索关键词包括的词语;基于搜索关键词中包括的词语被包括在搜索候选结果中的词语数目与搜索关键词中包括的词语的总数目的比值,确定所述搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度,其中,对搜索候选结果进行分词与对搜索关键词进行分词是基于相同的词典。
根据本公开的一些实施例,确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度包括:将搜索候选结果映射成第一词向量;将搜索关键词映射成第二词向量;基于所述第一词向量与第二词向量之间的词向量相似度,确定所述搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度。
根据本公开的一些实施例,所述用于确定搜索结果的方法还包括确定附加关键词,其中,确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度包括:基于所述附加关键词对搜索候选结果进行实体识别以获得第一实体关键词;基于所述附加关键词对搜索关键词进行实体识别以获得第二实体关键词;基于所述第一实体关键词与第二实体关键词确定所述实体相似度。
根据本公开的一些实施例,基于所述第一实体关键词与第二实体关键词确定所述实体相似度包括:获取所述第一实体关键词的经纬度坐标以及第二实体关键词的经纬度坐标;基于所述第一实体关键词的经纬度坐标以及第二实体关键词的经纬度坐标,确定所述第一实体关键词与第二实体关键词之间的地理距离;基于所述地理距离确定所述实体相似度。
根据本公开的一些实施例,基于所述第一实体关键词与第二实体关键词确定所述实体相似度包括:将所述第一实体关键词映射成第一实体词向量;所述第二实体关键词映射成第二实体词向量;基于所述第一实体词向量与第二实体词向量之间的词向量相似度确定所述实体相似度。
根据本公开的一些实施例,基于所述第一实体关键词与第二实体关键词确定所述实体相似度包括:基于所述第一实体关键词与第二实体关键词之间的字符相似度确定所述实体相似度,其中,所述第一实体关键词与第二实体关键词之间的字符相似度是第二实体关键词中包括的字符被包括在第一实体关键词中的字符数目与第二实体关键词中包括的字符的总数目的比值。
根据本公开的一些实施例,所述用于确定搜索结果的方法还包括:基于搜索候选结果与搜索关键词之间的实体相似度和字词相似度确定综合相似度;基于所述综合相似度确定所述搜索候选结果作为搜索结果的排列顺序。
根据本公开的另一方面,还提供了一种用于确定搜索结果的装置,包括:获取单元,配置成基于搜索关键词获取至少一个搜索候选结果;确定单元,配置成对于所述至少一个搜索候选结果中的每个搜索候选结果,确定所述搜索候选结果与搜索关键词之间的相似度,在所述搜索候选结果与搜索关键词之间的相似度满足相似度条件的情况下将所述搜索候选结果确定为所述搜索结果,其中,所述确定单元确定所述搜索候选结果与搜索关键词之间的相似度包括:确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度。
根据本公开的一些实施例,所述确定单元还配置成确定所述搜索候选结果与搜索关键词之间的字词相似度,基于所述实体相似度和字词相似度确定所述所述搜索候选结果与搜索关键词之间的相似度。
根据本公开的一些实施例,所述确定单元确定所述搜索候选结果与搜索关键词之间的字词相似度包括以下中的至少一种:确定搜索候选结果与搜索关键词之间的字符相似度;确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度;以及确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度。
根据本公开的一些实施例,所述确定单元确定搜索候选结果与搜索关键词之间的字符相似度包括:基于搜索关键词中包括的字符被包括在搜索候选结果中的字符数目与搜索关键词中包括的字符的总数目的比值,确定搜索候选结果与搜索关键词之间的字符相似度。
根据本公开的一些实施例,所述确定单元确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度包括:对搜索候选结果进行分词以获得所述搜索候选结果包括的词语;对搜索关键词进行分词以获得所述搜索关键词包括的词语;基于搜索关键词中包括的词语被包括在搜索候选结果中的词语数目与搜索关键词中包括的词语总数目的比值,确定所述搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度,其中,对搜索候选结果进行分词与对搜索关键词进行分词是基于相同的词典。
根据本公开的一些实施例,所述确定单元确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度包括:将搜索候选结果映射成第一词向量;将搜索关键词映射成第二词向量;基于所述第一词向量与第二词向量之间的词向量相似度,确定所述搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度。
根据本公开的一些实施例,所述获取单元还配置成获取附加关键词,所述确定单元确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度包括:基于所述附加关键词对搜索候选结果进行实体识别以获得第一实体关键词;基于所述附加关键词对搜索关键词进行实体识别以获得第二实体关键词;基于所述第一实体关键词与第二实体关键词确定所述实体相似度。
根据本公开的一些实施例,所述确定单元基于所述第一实体关键词与第二实体关键词确定所述实体相似度包括:获取所述第一实体关键词的经纬度坐标以及第二实体关键词的经纬度坐标;基于所述第一实体关键词的经纬度坐标以及第二实体关键词的经纬度坐标,确定所述第一实体关键词与第二实体关键词之间的地理距离;基于所述地理距离确定所述实体相似度。
根据本公开的一些实施例,所述确定单元基于所述第一实体关键词与第二实体关键词确定所述实体相似度包括:将所述第一实体关键词映射成第一实体词向量;将所述第二实体关键词映射成第二实体词向量;基于所述第一实体词向量与第二实体词向量之间的词向量相似度确定所述实体相似度。
根据本公开的一些实施例,所述确定单元基于所述第一实体关键词与第二实体关键词确定所述实体相似度包括:基于所述第一实体关键词与第二实体关键词之间的字符相似度确定所述实体相似度,其中,所述第一实体关键词与第二实体关键词之间的字符相似度是第二实体关键词中包括的字符被包括在第一实体关键词中的字符数目与第二实体关键词中包括的字符的总数目的比值。
根据本公开的一些实施例,所述确定单元还配置成:基于搜索候选结果与搜索关键词之间的实体相似度和字词相似度确定综合相似度;基于所述综合相似度确定所述搜索候选结果作为搜索结果的排列顺序。
根据本公开的又一方面,提供了一种用于确定搜索结果的设备,包括:一个或多个处理器;和一个或多个存储器,其中,所述存储器中存储有计算机可读代码,所述计算机可读代码当由所述一个或多个处理器运行时,执行如上所述的用于确定搜索结果的方法。
根据本公开的又一方面,提供了一种计算机可读存储介质,其上存储有指令,所述指令在被处理器执行时,使得所述处理器执行如上所述的用于确定搜索结果的方法。
利用本公开提供的用于确定搜索结果的方法,可以确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度作为搜索候选结果与搜索关键词之间的相似度,基于所述相似度确定搜索结果,能在基于搜索关键词查找到的至少一个搜索候选结果中准确的确定出搜索结果,保证查找到的搜索结果符合用户的搜索预期,提高用户的搜索体验。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本公开实施例的用于确定搜索结果的方法的流程图;
图2A示出了根据本公开的一些实施例的确定搜索结果的流程示意图;
图2B示出了根据本公开的另一些实施例的确定搜索结果的流程示意图;
图2C示出了图2A中示出的确定搜索结果的流程的具体示意图;
图3A示出了根据本公开实施例的确定排列顺序的流程示意图;
图3B示出了根据本公开实施例的确定排列顺序的场景示意图;
图4示出了根据本公开实施例的用于确定搜索结果的装置的示意性框图;
图5示出了根据本公开实施例的用于确定搜索结果的设备的示意性框图;
图6示出了根据本公开实施例的示例性计算设备的架构的示意图;
图7示出了根据本公开实施例的存储介质的示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本公开一部分的实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
本公开中使用了流程图用来说明根据本公开的实施例的方法的步骤。应当理解的是,前面或后面的步骤不一定按照顺序来精确的进行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作添加到这些过程中。
本公开提供了一种用于确定搜索结果的方法,以保证搜索结果的准确性,即,满足用户的搜索预期。图1示出了根据本公开实施例的用于确定搜索结果的方法的流程图。
如图1所示,首先,在步骤S101,基于搜索关键词获取至少一个搜索候选结果。例如,可以从用户获取诸如“浏阳蒸菜老店(马王堆店)”的搜索关键词,利用搜索引擎,可以基于所述搜索关键词获取一个或者多个结果。在本文中,将搜索引擎基于搜索关键词查找到的结果表示为搜索候选结果。例如,对应于搜索关键词“浏阳蒸菜老店(马王堆店)”的搜索候选结果可以是“浏阳蒸菜老店(古汉路店)”。
接着,在步骤S102,对于所述至少一个搜索候选结果中的每个搜索候选结果,确定所述搜索候选结果与搜索关键词之间的相似度,在所述搜索候选结果与搜索关键词之间的相似度满足相似度条件的情况下将所述搜索候选结果确定为所述搜索结果。
根据本公开实施例,对于获取的搜索候选结果中的每个搜索候选结果,可以确定其与搜索关键词之间的相似度,并基于所述相似度来确定该搜索候选结果是否符合搜索预期。例如,可以通过设置相似度阈值的方式来确定所述相似度条件,例如,在所述搜索候选结果与搜索关键词之间的相似度大于相似度阈值的情况下,将所述搜索候选结果确定为所述搜索结果。
根据本公开的用于确定搜索结果的方法,可以对所述至少一个搜索候选结果的准确性进行判断,从而确定最终的搜索结果。所述最终的搜索结果可以是一个,例如,可以将相似度最高的搜索候选结果作为所述搜索结果返回给用户。所述最终的搜索结果也可以是多个,例如,将多个搜索候选结果按照相似度进行排序,将经过排序的所述多个搜索候选结果作为所述搜索结果返回给用户,以供用户从中选择符合其搜索预期的搜索结果。
根据本公开实施例,确定所述搜索候选结果与搜索关键词之间的相似度可以包括:确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度。换句话说,在根据本公开的方法中,可以基于搜索候选结果与搜索关键词中的实体关键词的相似度来作为所述搜索候选结果与搜索关键词之间的相似度。所述实体关键词可以是文本(对应于搜索候选结果或者搜索关键词)中包含的诸如地名、人名、品牌名、机构名、专有名词等具有实体意义的词语(或者也可以是字符,在此不做限制)。
根据本公开实施例,所述用于确定搜索结果的方法还可以包括获取附加关键词。所述附加关键词用于进行实体识别以获得上述实体关键词。例如,可以由用户根据搜索预期来输入所述附加关键词。在此基础上,确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度包括:基于所述附加关键词对搜索候选结果进行实体识别以获得第一实体关键词,基于所述附加关键词对搜索关键词进行实体识别以获得第二实体关键词;基于所述第一实体关键词与第二实体关键词确定所述实体相似度。
所述实体识别也可以称为命名实体识别(Named Entity Recognition,NER),又称作“专名识别”,可以用于识别文本中具有特定实体意义的实体(即,上述实体关键词)。根据本公开实施例,可以基于能实现实体识别的实体识别算法来实现上述基于所述附加关键词进行实体识别以获得实体关键词的过程。所述实体识别算法诸如可以是条件随机场算法(Conditional Random Field,CRF)、实体识别深度学习算法等,在此不做限制。
作为搜索商户位置的示例,在用户期望搜索确定商户位置的搜索应用中,搜索关键词可以是“浏阳蒸菜老店(马王堆店)”,用户希望获得准确的商户位置信息(诸如,地理位置)。在此情形中,用户可以针对所述搜索关键词输入“地名”作为所述附加关键词,以用于分别地识别出搜索候选结果与搜索关键词中的实体关键词,即,要识别的实体关键词是与地名相关的词语。在此搜索商户位置的示例中,可以基于附加关键词“地名”对搜索关键词“浏阳蒸菜老店(马王堆店)”进行实体识别以获得第二实体关键词,诸如“马王堆”。还可以基于所述附加关键词“地名”对诸如“浏阳蒸菜老店(古汉路店)”的搜索候选结果进行实体识别以获得第一实体关键词,诸如“古汉路”。接着,可以基于所述第一实体关键词“马王堆”与第二实体关键词“古汉路”确定所述实体相似度,并基于所述实体相似度来判断搜索候选结果“浏阳蒸菜老店(古汉路店)”是否可以作为搜索关键词“浏阳蒸菜老店(马王堆店)”的搜索结果。
在根据本公开的其他搜索示例中,所述附加关键词还可以是除地名之外的其他词语,诸如品牌名。例如,用户的搜索目的(即,搜索预期)是为了获取与品牌有关的信息,在这种情形下,附加关键词可以是“品牌名”,即,要识别的实体关键词是与品牌相关的词语。举例来说,所述搜索关键词可以是“中街1946”,所述至少一个搜索候选结果可以包括“我们把8款网红雪糕吃了个遍,中街1946都不算优等生”(称为搜索候选结果1)和“沈阳中街冰点城食品有限公司”(称为搜索候选结果2)。在此搜索品牌的示例中,可以基于附加关键词“品牌名”对搜索关键词“中街1946”进行实体识别以获得第二实体关键词,诸如“中街1946”。还可以基于附加关键词“品牌名”对诸如“我们把8款网红雪糕吃了个遍,中街1946都不算优等生”的搜索候选结果1进行实体识别以获得第一实体关键词1,诸如“中街1946”,基于附加关键词“品牌名”对诸如“沈阳中街冰点城食品有限公司”的搜索候选结果2进行实体识别以获得第一实体关键词2,诸如“中街冰点城”。在根据本公开的方法中,可以基于所述第一实体关键词“中街1946”与第二实体关键词1“中街1946”(或者第二实体关键词2“中街冰点城”)确定所述实体相似度,并基于所述实体相似度来判断搜索候选结果1或者搜索候选结果2是否可以作为搜索关键词“中街1946”的搜索结果。
根据本公开的一个实施例,基于所述第一实体关键词与第二实体关键词确定所述实体相似度可以包括:获取所述第一实体关键词的经纬度坐标以及第二实体关键词的经纬度坐标;基于所述第一实体关键词的经纬度坐标以及第二实体关键词的经纬度坐标,确定所述第一实体关键词与第二实体关键词之间的地理距离,基于所述地理距离确定所述实体相似度。
上述基于地理距离确定实体相似度的方法可以适用于诸如搜索位置的实施例中。话句话说,通过上述地理距离来判断上述第一实体关键词与第二实体关键词的在地理位置上是否接近,从而确定所述搜索候选结果与搜索关键词在地理位置上是否接近,并基于此来确定所述搜索候选结果是否可以作为搜索结果。其中,所述第一实体关键词与第二实体关键词可以是与地名相关的实体。
具体的,在通过实体识别算法得到的第一实体关键词为“古汉路”,第二实体关键词为“马王堆”的示例中,可以通过调用诸如地图应用程序的应用程序接口(ApplicationProgram Interface,API)来获取所述“古汉路”和“马王堆”的经纬度坐标。例如,可以调用API接口,并向所述API接口输入“古汉路”,API接口在接收到输入信息后,可以返回对应于“古汉路”的经纬度坐标,表示为(LonA,LatA),其中,LonA表示“古汉路”的经度坐标,LatA表示“古汉路”的纬度坐标。接着,可以向所述API接口输入“马王堆”,API接口在接收到输入信息后,可以返回对应于“马王堆”的经纬度坐标,表示为(LonB,LatB),其中,LonB表示“马王堆”的经度坐标,LatB表示“马王堆”的纬度坐标。
以下将以“古汉路”的经纬度坐标(LonA,LatA)和“马王堆”的经纬度坐标(LonB,LatB)为例,详细介绍确定实体关键词“古汉路”与“马王堆”之间的地理距离的过程。为了便于描述,将“古汉路”表示为点A,将“马王堆”表示为点B。
经纬度坐标对应于地球上的经线和纬线,可以将地球视为一个近似标准的椭球体,其赤道半径为6378.140千米,极半径为6356.755千米,平均半径6371.004千米。在此,假设地球是一个标准的球体,那么它的半径就是地球的平均半径,记为R。以0度经线为基准,那么根据地球表面任意两点的经纬度坐标就可以计算出这两点间的地表距离,或者称为地理距离(这里忽略地球表面地形对计算带来的误差,仅仅是理论上的估算值)。
对于点A的经纬度坐标(LonA,LatA)和点B的经纬度坐标(LonB,LatB),按照0度经线的基准,需要对API接口返回的经纬度坐标进行以下换算处理:东经取经度的正值,即,(Longitude);西经取经度的负值,即,(-Longitude);北纬取90与纬度值的差,即,(90-Latitude);南纬取90与纬度值的和,即,(90+Latitude)。经过上述换算处理过后,点A的经过换算的经纬度坐标可以表示为(MLonA,MLatA),点B的经过换算的的经纬度坐标可以表示为(MLonB,MLatB)。接着,可以按照以下公式计算点A和点B之间的地理距离:
C=sin(MLatA)*sin(MLatB)*cos(MLonA-MLonB)+cos(MLatA)*cos(MLatB) (1)
Distance=R*Arccos(C)*Pi/180 (2)
这里,Distance表示点A与点B之间的地理距离,具有与R相同的单位,例如,在R取6371.004千米的情况下,Distance的单位也是千米。
基于以上公式(1)-(2)可以确定点A(实体关键词“古汉路”)以及点B(实体关键词“马王堆”)之间的地理距离Distance。在此实施例中,所述相似度条件可以是所述地理距离大于地理距离相似度阈值。即,在所述地理距离大于地理距离相似度阈值的情况下,将所述搜索候选结果“浏阳蒸菜老店(古汉路店)”确定为搜索结果,表示相比于搜索关键词,该搜索候选结果具有较高的相似性,可以作为满足搜索预期的搜索结果返回给用户。
上述基于第一实体关键词与第二实体关键词之间的地理距离来确定实体相似度的方法,有利于提高搜索结果的准确性。例如,在搜索关键词为“麦当劳(老街店)”的情况下,搜索候选结果可以是“麦当劳(东门店)”,如果仅考虑上述两个文本之间的文本相似度,很可能得出不满足搜索条件的结论。然而,根据本公开的方法,可以识别出搜索候选结果“麦当劳(东门店)”中的对应于地名的第一实体关键词“东门”以及识别出搜索关键词“麦当劳(老街店)”中的对应于地名的第二实体关键词“老街”。在实际的地图中,“东门”与“老街”可能对应于同一个地点的两个地名,或者,“东门”与“老街”可以是两条相邻的街道。在此情况下,基于“东门”与“老街”之间的地理距离确定的搜索结果更符合实际情况,即,更有利于获得准确的搜索结果,避免了仅考虑文本相似度带来的不准确性。
根据本公开的另一实施例,所述基于所述第一实体关键词与第二实体关键词确定所述实体相似度可以包括:将所述第一实体关键词映射成第一实体词向量,将所述第二实体关键词映射成第二实体词向量,基于所述第一实体词向量与第二实体词向量之间的词向量相似度确定所述实体相似度。
所述映射的过程可以通过分词嵌入(word embedding)算法来实现,所述映射可以是将文本映射成与其唯一对应的数值向量的过程。例如,可以将第一实体关键词“古汉路”映射成第一实体词向量E,将第二实体关键词“马王堆”映射成第二实体词向量F,将基于所述向量E和向量F之间的余弦相似度作为所述第一实体词向量与第二实体词向量之间的词向量相似度。下文,将介绍计算两个向量之间的余弦相似度的算法。
对于两个二维向量,诸如和/>所述向量/>和/>之间的余弦相似度可以表示为:
进一步地,对于两个多维向量,例如维数为n的两个向量: 和/>所述/>和/>之间的余弦相似度可以表示为:
基于以上公式(3)或者(4)可以确定所述第一实体词向量与第二实体词向量之间的余弦相似度,作为所述词向量相似度。基于所述词向量相似度可以确定所述实体关键词之间的相似度,从而根据相似度条件确定所述搜索候选结果是否可以作为所述搜索关键词的搜索结果。例如,在所述实体关键词之间的词向量相似度大于词向量相似度阈值的情况下,可以将所述搜索候选结果确定为搜索结果。
根据本公开的又一实施例,所述基于所述第一实体关键词与第二实体关键词确定所述实体相似度可以包括:基于所述第一实体关键词与第二实体关键词之间的字符相似度确定所述实体相似度,其中,所述第一实体关键词与第二实体关键词之间的字符相似度是第二实体关键词中包括的字符被包括在第一实体关键词中的字符数目与第二实体关键词中包括的字符的总数目的比值,并将所述比值作为所述字符相似度。其中,可以按照以下公式计算所述字符相似度:
其中,strdistance表示第一实体关键词与第二实体关键词之间的字符相似度,Num1表示第二实体关键词中包括的字符被包括在第一实体关键词中的字符数目,Num2表示第二实体关键词中包括的字符的总数目。
举例来说,所述第一实体关键词可以是品牌名“中街冰点城”,所述第二实体关键词可以是品牌名“中街1946”,其中,第二实体关键词中包括的字符被包括在第一实体关键词中的字符数目Num1是2,换句话说,“中街1946”中包括的字符被包括在“中街冰点城”中的字符数目是2(即,字符“中”和“街”)。“中街1946”中包括的字符的总数目Num2是6,则第一实体关键词“中街冰点城”与第二实体关键词“中街1946”之间的字符相似度strdistance≈0.3333。
上述计算实体关键词之间的字符相似度的方法中,比值中的分母为搜索关键词中的第二实体关键词的字符数目,分子为第二实体关键词中包括的字符被包括在第一实体关键词中的字符数目,换句话说,所述字符相似度考虑了第一实体关键词中的字符覆盖第二实体关键词中的字符的字符覆盖率。
以上描述了根据本公开的方法中,基于实体关键词之间的实体相似度来作为所述搜索候选结果与搜索关键词之间的相似度,从而基于所述相似度确定所述搜索候选结果是否可以作为所述搜索关键词的搜索结果。
根据本公开实施例,所述确定所述搜索候选结果与搜索关键词之间的相似度还可以包括:确定所述搜索候选结果与搜索关键词之间的字词相似度,基于所述实体相似度和字词相似度确定所述所述搜索候选结果与搜索关键词之间的相似度。
根据本公开实施例,确定所述搜索候选结果与搜索关键词之间的字词相似度可以包括以下中的至少一种:确定搜索候选结果与搜索关键词之间的字符相似度;确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度;以及确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度。例如,可以基于搜索候选结果与搜索关键词之间的字符相似度以及搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度来作为所述搜索候选结果与搜索关键词之间的字词相似度。
在上述实施例中,所述确定搜索候选结果与搜索关键词之间的字符相似度可以包括:基于搜索关键词中包括的字符被包括在搜索候选结果中的字符数目与搜索关键词中包括的字符的总数目的比值,确定搜索候选结果与搜索关键词之间的所述字符相似度。例如,将所述比值作为所述字符相似度。
在诸如搜索位置的示例中,用户输入的搜索关键词可能包括较少的字符数,诸如“七天竹子林店”,而搜索候选结果中可能包括较多的字符数,诸如“七天连锁酒店(竹子林店)”。类似地,可以按照以上公式(5)来确定搜索候选结果与搜索关键词之间的字符相似度str'distance,其中,Num1’为搜索关键词中包括的字符被包括在搜索候选结果中的字符数目,在此示例中是6,Num2’为搜索关键词中包括的字符的总数目,在此示例中是6,由此,计算得到的搜索候选结果与搜索关键词之间的字符相似度为1。基于此,上述搜索候选结果与搜索关键词之间的字符相似度考虑了搜索候选结果中的字符覆盖搜索关键词中的字符的字符覆盖率,更能直观地反映搜索候选结果对于搜索关键词的在字符方面的的覆盖程度,从而有利于获得准确的搜索结果。
在上述实施例中,确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度可以包括:对搜索候选结果进行分词以获得所述搜索候选结果包括的词语;对搜索关键词进行分词以获得所述搜索关键词包括的词语;基于搜索关键词中包括的词语被包括在搜索候选结果中的词语数目与搜索关键词中包括的词语的总数目的比值,确定所述搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度。例如,将所述比值作为所述词语相似度。
所述分词可以理解为将文本按照其含义分解成一个或多个词语的过程,例如,可以采用基于词典的分词算法来对所述搜索关键词和搜索候选结果进行分词。在此算法中,对搜索候选结果进行分词与对搜索关键词进行分词是基于相同的词典。例如,对于搜索关键词AABBCC,分词后得到词语可以是[AA,BB,CC],基于相同的词典的分词有助于避免不一致的分词划分结果。例如,在基于不同的词典进行分词的情况下,相同的文本AABBCC可能被分解为词语[AA,BB,CC],以及词语[AAB,BCC],即产生分词的不一致性,导致降低基于分词后的词语计算的词语相似度的准确性。此外,还可以采用基于序列标注的分词方法来进行上述分词的过程,诸如基于隐马尔可夫模型(Hidden Markov Model,HMM)的分词算法,需要注意的是,本公开并不限制实现分词的具体算法。
在对搜索关键词和搜索候选结果进行分词之后,可以按照以下公式计算所述词语相似度:
其中,wordcutdistance表示所述搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度,Num3表示搜索关键词中包括的词语被包括在搜索候选结果中的词语数目,Num4表示搜索关键词中包括的词语的总数目。
作为一个示例,搜索关键词可以是“意香鸡官桥太同店”,分词后的词语可以是[意香鸡,官桥,太同,店]。搜索候选结果可以是“意香鸡太同店”,分词后的词语可以是[意香鸡,太同,店],基于以上公式(6)可以计算得到词语相似度为0.75。
上述计算搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度的方法中,比值中的分母为搜索关键词中包括的词语的总数目,分子为搜索关键词中包括的词语被包括在搜索候选结果中的词语数目,换句话说,所述词语相似度考虑了搜索候选结果中的词语覆盖搜索关键词中的词语的词语覆盖率。更能直观地反映搜索候选结果对于搜索关键词的在词语方面的覆盖程度,从而有利于获得准确的搜索结果。
在上述实施例中,确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度可以包括:将搜索候选结果映射成第一词向量,将搜索关键词映射成第二词向量,基于所述第一词向量与第二词向量之间的词向量相似度,确定所述搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度。
此处,计算搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度的过程与结合公式(3)和公式(4)描述的过程类似,在此不再赘述。
根据本公开的方法中,在所述搜索候选结果与搜索关键词之间的相似度满足相似度条件的情况下将所述搜索候选结果确定为所述搜索结果可以包括:在所述搜索候选结果与搜索关键词之间的相似度大于相似度阈值的情况下,将所述搜索候选结果确定为所述搜索结果。换句话说,可以通过设置相似度阈值的方式来确定是否满足所述相似度条件,例如,在计算得到的相似度大于相似度阈值的情况下,确定满足所述相似度条件。
例如,如上所述的,在所述地理距离大于地理距离相似度阈值的情况下将所述搜索候选结果确定为搜索结果,以及在所述实体关键词之间的词向量相似度大于词向量相似度阈值的情况下将所述搜索候选结果确定为搜索结果。对于本公开中采用的计算相似度其他方法,诸如,计算搜索候选结果与搜索关键词之间的字符相似度的方法中,也可以设置字符相似度阈值,并在搜索候选结果与搜索关键词之间的字符相似度大于字符相似度阈值的情况下将所述搜索候选结果确定为搜索结果。根据本公开实施例,可以根据具体的搜索应用场景、搜索历史数据等来确定所述相似度阈值,在此不作限制。
图2A示出了根据本公开的一些实施例的确定搜索结果的流程示意图,图2B示出了根据本公开的另一些实施例的确定搜索结果的流程示意图,图2C示出了图2A中示出的确定搜索结果的流程的具体示意图。以下,将结合图2A-图2C对根据本公开的确定搜索结果的方法进行描述。
如图2A所示,首先,在步骤S201,输入搜索关键词,获取搜索候选结果。其中,所述搜索候选结果可以是一个也可以是多个。以下将以搜索关键词“浏阳蒸菜老店(马王堆店)”以及搜索候选结果“浏阳蒸菜老店(古汉路店)”为具体示例描述图2A。
如图2A所示,接着,在步骤S202,确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度,并确定是否满足相似度条件。其中,搜索候选结果中的实体关键词,即第一实体关键词可以是“古汉路”,搜索关键词中的实体关键词,即第二实体关键词可以是“马王堆”,然后,例如可以按照公式(1)-(2),基于实体关键词之间的地理距离来确定所述实体相似度,并判断所述实体相似度是否满足相似度条件,在满足相似度条件的情况下,将所述搜索候选结果确定为搜索结果。例如,在所述实体相似度大于实体相似度阈值的情况下,可以确定满足相似度条件。
接着,如图2A所示,所述方法还可以包括步骤S203,确定搜索候选结果与搜索关键词之间的字词相似度,并确定是否满足相似度条件。在图2A中示出的实施例中,可以首先计算所述实体相似度,在确定所述实体相似度满足相似度条件的情况下,可以不进行所述步骤S203,直接将所述搜索候选结果确定为搜索结果。在确定所述实体相似度不满足相似度条件的情况下,可以接着进行所述步骤S203,确定搜索候选结果与搜索关键词之间的字词相似度,并确定所述字词相似度是否满足相似度条件。
在根据本公开的另一些实施例中,例如,如图2B中所示出的,也可以首先进行所述步骤S203,确定搜索候选结果与搜索关键词之间的字词相似度,并确定是否满足相似度条件。在确定所述字词相似度满足相似度条件的情况下,可以不进行所述步骤S202,直接将所述搜索候选结果确定为搜索结果。在确定所述字词相似度不满足相似度条件的情况下,可以接着进行所述步骤S202,进以确定搜索候选结果与搜索关键词之间的实体相似度,并确定所述实体相似度是否满足相似度条件。
根据本公开实施例,确定所述搜索候选结果与搜索关键词之间的字词相似度可以包括以下中的至少一种:确定搜索候选结果与搜索关键词之间的字符相似度;确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度;以及确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度。如图2C中所示出的流程图中,所述步骤S203可以对应于步骤S204-S206。
具体的,如图2C所示,所述方法还可以包括步骤S204,确定搜索候选结果与搜索关键词之间的字符相似度,并确定是否满足相似度条件。例如,可以按照公式(5)来计算所述字符相似度,在上述示例中,搜索候选结果“浏阳蒸菜老店(古汉路店)”与搜索关键词“浏阳蒸菜老店(马王堆店)”之间的字符相似度可以是0.7,其中,搜索关键词中包括的字符被包括在搜索候选结果中的字符数目是7(对应于字符“浏”“阳”、“蒸”、“菜”、“老”、“店”以及“店”),搜索关键词中包括的字符的总数目是10。接着,例如,在所述字符相似度大于字符相似度阈值的情况下,可以确定满足相似度条件。
接着,如图2C所示,所述方法还可以包括步骤S205,确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度,并确定是否满足相似度条件。例如,可以按照公式(6)计算所述词语相似度。在上述示例中,经过分词,搜索候选结果可以包括词语[浏阳、蒸菜、老店、古汉路、店],搜索关键词可以包括词语[浏阳、蒸菜、老店、马王堆、店],由此,搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度可以是0.8,其中,搜索关键词中包括的词语被包括在搜索候选结果中的词语数目是4(对应于词语[浏阳、蒸菜、老店、店),搜索关键词中包括的词语的总数目是5。例如,在所述词语相似度大于词语相似度阈值的情况下,可以确定满足相似度条件。
接着,如图2C所示,所述方法还可以包括步骤S206,确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度,并确定是否满足相似度条件。例如,可以按照公式(3)-(4)计算所述词向量相似度。在上述示例中,所述搜索候选结果可以映射成第一词向量示意性地,/>以及所述搜索关键词可以映射成第二词向量/>示意性地,/>然后,基于公式(4)计算得到余弦相似度为0.907,即,词向量相似度为0.907。例如,在所述词向量相似度大于词向量相似度阈值的情况下,可以确定满足相似度条件。
在根据本公开的一些实施例中,可以进行以上步骤S202以及S204-S206中示出的算法来计算所述搜索候选结果与搜索关键词之间的相似度,例如,在对搜索结果的准确性要求较高的情况下。将满足以上步骤S202以及S204-S206中的相似度条件的搜索候选结果确定为搜索结果。换句话说,所述搜索候选结果的实体相似度、字符相似度、词语相似度以及词向量相似度均满足相似度条件。在根据本公开的其他实施例中,也可以仅进行图2C中示出的步骤S202以及S204-S206中一部分来计算所述搜索候选结果与搜索关键词之间的相似度,例如,仅进行步骤S202和步骤S204,即,仅计算所述搜索候选结果的实体相似度以及字符相似度。可以理解的是,根据本公开的实施例中,可以对以上步骤S202以及S204-S206示出的算法进行任意的组合,来计算所述搜索候选结果与搜索关键词之间的相似度,在此不再一一列举。
根据本公开实施例,所述方法还可以包括基于搜索候选结果与搜索关键词之间的实体相似度和字词相似度确定综合相似度;基于所述综合相似度确定所述搜索候选结果作为搜索结果的排列顺序。其中,所述字词相似度可以是包括以上字符相似度、词语相似度以及词向量相似度中的一种或多种。
图3A示出了根据本公开实施例的确定排列顺序的流程示意图。在图3A中示出的实施例中,基于以上实体相似度、字符相似度、词语相似度以及词向量相似度来确定所述综合相似度,并基于所述综合相似度来确定所述排列顺序。可以理解的是,在根据本公开的其他实施例中,还可以采用其他的方式来确定所述综合相似度,诸如,基于以上实体相似度和字符相似度,在此不再一一列举。
如图3A所示,首先,在步骤S301,输入搜索关键词,获取多个搜索候选结果,此步骤与以上步骤S201类似,在此不再赘述。接着,在步骤S302,对于多个搜索候选结果中的每个搜索候选结果,对计算得到的字符相似度、词语相似度、词向量相似度以及实体相似度进行加权求和,作为所述搜索候选结果的综合相似度。例如,可以基于以上步骤S202和步骤S204-S206来分别确定所述实体相似度、字符相似度、词语相似度以及词向量相似度,并对计算得到的相似度进行加权求和作为所述综合相似度。例如,可以将所述实体相似度、字符相似度、词语相似度以及词向量相似度直接进行相加来作为所述综合相似度,即,权重值均为1。又例如,可以对字符相似度、词语相似度、词向量相似度以及实体相似度分别设置不同的权重值,并将加权求和后的值作为所述综合相似度。可以根据具体的应用场景设置所述权重值,例如,在以上搜索位置的示例中,可以对基于地理距离确定的实体相似度设置较高的权重值,本公开对设置权重值的方法不作限制。
接着,在步骤S303,基于所述综合相似度确定所述搜索候选结果作为搜索结果的排列顺序。即,根据所述多个搜索候选结果的综合相似度的值来降序排列作为搜索结果的所述搜索候选结果。换句话说,返回给用户的多个搜索结果是基于综合相似度排序得到的,此处认为排列在前的搜索结果更接近于用户输入的搜索关键词,即认为排列在前的搜索结果更可能满足用户的搜索预期,由此可以向用户提供优化了排列顺序的多个搜索结果,避免了用户在多个搜索结果中查找顺序靠后的搜索结果,从而提高了用户的搜索体验。
图3B示出了根据本公开实施例的确定排列顺序的场景示意图。如图3B所示,首先可以在例如地图搜索应用程序中输入搜索关键词,诸如“浏阳蒸菜老店(马王堆店)”,所述地图搜索应用程序可以获取一个或多个搜索候选结果。在图3B中所示出的场景示意图中包括编号为1-6的6个搜索候选结果。
接着,利用根据本公开的用于确定搜索结果的方法可以分别对所述6个所述搜索候选结果中的每个搜索候选结果确定其综合相似度。例如,可以基于以上步骤S202和步骤S204-S206来分别确定所述实体相似度、字符相似度、词语相似度以及词向量相似度,并对计算得到的相似度进行加权求和作为所述综合相似度。其中,由于图3B的应用场景中的搜索关键词与地理相关联,可以对基于地理距离确定的实体相似度设置较高的权重值。例如,在计算所述综合相似度时,可以将所述字符相似度、词语相似度以及词向量相似度的权重值分别设置为1,并将所述实体相似度的权重值设置为1.5。
接着,可以基于所述综合相似度确定所述搜索候选结果作为搜索结果的排列顺序。在图3B中示出的场景中,将所有的搜索候选结果均作为搜索结果展示给诸如搜索用户,并且所述搜索候选结果按照综合相似度进行排序。例如,由于搜索候选结果1,即“浏阳蒸菜老店(古汉路店)”的实体关键词“古汉路”与搜索关键词中的实体关键词“马王堆”的地理距离较近,从而使得所述搜索候选结果1与搜索关键词之间的实体相似度较高,并且由于实体相似度具有较高的权重值,从而使得所述搜索候选结果1的综合相似度的数值大于其他搜索候选结果,即搜索候选结果2-6的综合相似度的数值。由此,在所述搜索应用程序中,可以将所述综合相似度的数值最大的搜索候选结果1排列在第一位。类似地,如图3B所示的,可以按照所述综合相似度确定搜索候选结果2-6作为搜索结果的排列顺序。
根据本公开提供的用于确定搜索结果的方法,可以确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度作为搜索候选结果与搜索关键词之间的相似度,基于所述相似度确定搜索结果,能在基于搜索关键词查找到的至少一个搜索候选结果中准确的确定出搜索结果,保证查找到的搜索结果符合用户的搜索预期,提高用户的搜索体验。
本公开还提供了一种用于确定搜索结果的装置。图4示出了根据本公开实施例的用于确定搜索结果的装置的示意性框图。如图4所示,所述装置1000可以包括获取单元1010以及确定单元1020。
所述获取单元1010可以配置成基于搜索关键词获取至少一个搜索候选结果。所述确定单元1020可以配置成对于所述至少一个搜索候选结果中的每个搜索候选结果,确定所述搜索候选结果与搜索关键词之间的相似度,在所述搜索候选结果与搜索关键词之间的相似度满足相似度条件的情况下将所述搜索候选结果确定为所述搜索结果。根据本公开实施例,所述确定单元1020确定所述搜索候选结果与搜索关键词之间的相似度包括:确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度。
根据本公开的一些实施例,所述确定单元1010还可以配置成确定所述搜索候选结果与搜索关键词之间的字词相似度,基于所述实体相似度和字词相似度确定所述所述搜索候选结果与搜索关键词之间的相似度。
根据本公开的一些实施例,所述确定单元1020确定所述搜索候选结果与搜索关键词之间的字词相似度包括以下中的至少一种:确定搜索候选结果与搜索关键词之间的字符相似度;确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度;以及确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度。
根据本公开的一些实施例,所述确定单元1020确定搜索候选结果与搜索关键词之间的字符相似度包括:基于搜索关键词中包括的字符被包括在搜索候选结果中的字符数目与搜索关键词中包括的字符的总数目的比值,确定搜索候选结果与搜索关键词之间的字符相似度。
根据本公开的一些实施例,所述确定单元1020确定搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度包括:对搜索候选结果进行分词以获得所述搜索候选结果包括的词语;对搜索关键词进行分词以获得所述搜索关键词包括的词语;基于搜索关键词中包括的词语被包括在搜索候选结果中的词语数目与搜索关键词中包括的词语总数目的比值,确定所述搜索候选结果中的词语与搜索关键词中的词语之间的词语相似度,其中,对搜索候选结果进行分词与对搜索关键词进行分词是基于相同的词典。
根据本公开的一些实施例,所述确定单元1020确定搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度包括:将搜索候选结果映射成第一词向量;将搜索关键词映射成第二词向量;基于所述第一词向量与第二词向量之间的词向量相似度,确定所述搜索候选结果的词向量与搜索关键词的词向量之间的词向量相似度。
根据本公开的一些实施例,所述获取单元1010还可以配置成获取附加关键词。所述确定单元1020确定搜索候选结果中的实体关键词与搜索关键词中的实体关键词之间的实体相似度包括:基于所述附加关键词对搜索候选结果进行实体识别以获得第一实体关键词;基于所述附加关键词对搜索关键词进行实体识别以获得第二实体关键词;基于所述第一实体关键词与第二实体关键词确定所述实体相似度。
根据本公开的一些实施例,所述确定单元1020基于所述第一实体关键词与第二实体关键词确定所述实体相似度包括:获取所述第一实体关键词的经纬度坐标以及第二实体关键词的经纬度坐标;基于所述第一实体关键词的经纬度坐标以及第二实体关键词的经纬度坐标,确定所述第一实体关键词与第二实体关键词之间的地理距离;基于所述地理距离确定所述实体相似度。
根据本公开的一些实施例,所述确定单元1020基于所述第一实体关键词与第二实体关键词确定所述实体相似度包括:将所述第一实体关键词映射成第一实体词向量;将所述第二实体关键词映射成第二实体词向量;基于所述第一实体词向量与第二实体词向量之间的词向量相似度确定所述实体相似度。
根据本公开的一些实施例,所述确定单元1020基于所述第一实体关键词与第二实体关键词确定所述实体相似度包括:基于所述第一实体关键词与第二实体关键词之间的字符相似度确定所述实体相似度,其中,所述第一实体关键词与第二实体关键词之间的字符相似度是第二实体关键词中包括的字符被包括在第一实体关键词中的字符数目与第二实体关键词中包括的字符的总数目的比值。
根据本公开的一些实施例,所述确定单元1020还配置成:基于搜索候选结果与搜索关键词之间的实体相似度和字词相似度确定综合相似度;基于所述综合相似度确定所述搜索候选结果作为搜索结果的排列顺序。
根据本公开的一些实施例,所述确定单元1020在所述搜索候选结果与搜索关键词之间的相似度大于相似度阈值的情况下,将所述搜索候选结果确定为所述搜索结果。
根据本公开的用于确定搜索结果的方法或装置,可以广泛应用于各类需要从海量数据中获取与输入信息(诸如,搜索关键词)相匹配的数据(诸如,搜索结果)的应用场景。例如,所述应用场景可以是确定商户位置,为了获取商户的位置信息,用户需要可以在地图应用程序中输入搜索关键词,但是,地图应用程序返回的搜索候选结果未必准确,可以应用本公开的方法确定准确的搜索结果,例如,基于综合相似度对搜索候选结果进行排序,以将最可能满足搜索预期的搜索结果呈现在搜索列表的首位。
进一步地,准确的搜索结果有利于提高后续的诸如商圈聚类、预测未知位置商户位置信息等的应用的准确性。所述商圈聚类可以是指根据相似的商户的聚集程度而形成商圈,对商户聚类形成商圈的过程中,需要多个商户的位置信息,诸如经纬度坐标,如果商户的位置信息不准确,则形成商圈则可能出现错误,由此需要根据本公开的方法来保证形成商圈的商户位置信息的准确性。预测未知位置的商户可以是指仅知道商户名称,需要根据其它已知位置的商户来预测未知位置的商户的位置。例如,商户1的位置信息是未知的,已知商户2的位置信息,而商户1和商户2相似,商户2位于商圈C,则可以认为商户1也位于商圈C。在此应用中,需要预先确定商户2以及商圈C的准确的位置信息,如果基于地图应用程序确定的商户2的地理位置不准确,将直接导致基于商户2确定的商户1的位置也不准确。由此需要根据本公开的方法来保证商户2以及商圈C的地理位置的准确性。
由此,根据本公开的方法可以应用于涉及搜索的应用场景,以确定输出信息(诸如搜索候选结果)与输入信息(诸如搜索关键词)的匹配程度,即用于确定输出信息与输入信息之间的相似度是否满足相似度条件。
此外,根据本公开的用于确定搜索结果的方法和装置还可以应用于诸如诸如机器翻译、自然语言理解、人机对话、信息检索等与人工智能相关应用领域。
根据本公开的又一方面,还提供了一种用于确定搜索结果的设备。图5示出了根据本公开实施例的用于确定搜索结果的设备2000的示意性框图。
如图5所示,所述设备2000可以包括一个或多个处理器2010,和一个或多个存储器2020。其中,所述存储器2020中存储有计算机可读代码,所述计算机可读代码当由所述一个或多个处理器2010运行时,可以执行如上所述的用于确定搜索结果的方法。
根据本公开实施例的方法或装置也可以借助于图6所示的计算设备3000的架构来实现。如图6所示,计算设备3000可以包括总线3010、一个或多个CPU3020、只读存储器(ROM)3030、随机存取存储器(RAM)3040、连接到网络的通信端口3050、输入/输出组件3060、硬盘3070等。计算设备3000中的存储设备,例如ROM 3030或硬盘3070可以存储本公开提供的用于确定搜索结果的方法的处理和/或通信使用的各种数据或文件以及CPU所执行的程序指令。计算设备800还可以包括用户界面3080。当然,图6所示的架构只是示例性的,在实现不同的设备时,根据实际需要,可以省略图6示出的计算设备中的一个或多个组件。
根据本公开的又一方面,还提供了一种计算机可读存储介质。图7示出了根据本公开的存储介质的示意图4000。
如图7所示,所述计算机存储介质4020上存储有计算机可读指令4010。当所述计算机可读指令4010由处理器运行时,可以执行参照以上附图描述的根据本公开实施例的用于确定搜索结果的方法。所述计算机可读存储介质包括但不限于例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。
本领域技术人员能够理解,本公开所披露的内容可以出现多种变型和改进。例如,以上所描述的各种设备或组件可以通过硬件实现,也可以通过软件、固件、或者三者中的一些或全部的组合实现。
此外,虽然本公开对根据本公开的实施例的系统中的某些单元做出了各种引用,然而,任何数量的不同单元可以被使用并运行在客户端和/或服务器上。所述单元仅是说明性的,并且所述系统和方法的不同方面可以使用不同单元。
本领域普通技术人员可以理解上述方法中的全部或部分的步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本公开并不限制于任何特定形式的硬件和软件的结合。
除非另有定义,这里使用的所有术语(包括技术和科学术语)具有与本公开所属领域的普通技术人员共同理解的相同含义。还应当理解,诸如在通常字典里定义的那些术语应当被解释为具有与它们在相关技术的上下文中的含义相一致的含义,而不应用理想化或极度形式化的意义来解释,除非这里明确地这样定义。
以上是对本公开的说明,而不应被认为是对其的限制。尽管描述了本公开的若干示例性实施例,但本领域技术人员将容易地理解,在不背离本公开的新颖教学和优点的前提下可以对示例性实施例进行许多修改。因此,所有这些修改都意图包含在权利要求书所限定的本公开范围内。应当理解,上面是对本公开的说明,而不应被认为是限于所公开的特定实施例,并且对所公开的实施例以及其他实施例的修改意图包含在所附权利要求书的范围内。本公开由权利要求书及其等效物限定。
Claims (14)
1.一种用于确定搜索结果的方法,包括:
基于搜索关键词获取至少一个搜索候选结果;
获取附加关键词;
对于所述至少一个搜索候选结果中的每个搜索候选结果,基于所述附加关键词确定所述搜索候选结果与所述搜索关键词之间的相似度,在所述搜索候选结果与所述搜索关键词之间的相似度满足相似度条件的情况下将所述搜索候选结果确定为所述搜索结果,
其中,基于所述附加关键词确定所述搜索候选结果与所述搜索关键词之间的相似度包括:
基于所述附加关键词对所述搜索候选结果进行实体识别以获得第一实体关键词;
基于所述附加关键词对所述搜索关键词进行实体识别以获得第二实体关键词;
基于所述第一实体关键词与所述第二实体关键词确定实体相似度。
2.根据权利要求1所述的方法,其中,确定所述搜索候选结果与所述搜索关键词之间的相似度还包括:确定所述搜索候选结果与所述搜索关键词之间的字词相似度,基于所述实体相似度和所述字词相似度确定所述搜索候选结果与所述搜索关键词之间的相似度。
3.根据权利要求2所述的方法,其中,确定所述搜索候选结果与所述搜索关键词之间的字词相似度包括以下中的至少一种:
确定所述搜索候选结果与所述搜索关键词之间的字符相似度;
确定所述搜索候选结果中的词语与所述搜索关键词中的词语之间的词语相似度;以及
确定所述搜索候选结果的词向量与所述搜索关键词的词向量之间的词向量相似度。
4.根据权利要求3所述的方法,其中,确定所述搜索候选结果与所述搜索关键词之间的字符相似度包括:
基于所述搜索关键词中包括的字符被包括在所述搜索候选结果中的字符数目与所述搜索关键词中包括的字符的总数目的比值,确定所述搜索候选结果与所述搜索关键词之间的所述字符相似度。
5.根据权利要求3所述的方法,其中,确定所述搜索候选结果中的词语与所述搜索关键词中的词语之间的词语相似度包括:
对所述搜索候选结果进行分词以获得所述搜索候选结果中的词语;
对所述搜索关键词进行分词以获得所述搜索关键词中的词语;
基于所述搜索关键词中的词语被包括在所述搜索候选结果中的词语数目与所述搜索关键词中的词语的总数目的比值,确定所述搜索候选结果中的词语与所述搜索关键词中的词语之间的词语相似度,其中,
对所述搜索候选结果进行分词与对所述搜索关键词进行分词是基于相同的词典。
6.根据权利要求3所述的方法,其中,确定所述搜索候选结果的词向量与所述搜索关键词的词向量之间的词向量相似度包括:
将所述搜索候选结果映射成第一词向量;
将所述搜索关键词映射成第二词向量;
基于所述第一词向量与第二词向量之间的词向量相似度,确定所述搜索候选结果的词向量与所述搜索关键词的词向量之间的词向量相似度。
7.根据权利要求1所述的方法,其中,基于所述第一实体关键词与所述第二实体关键词确定所述实体相似度包括:
获取所述第一实体关键词的经纬度坐标以及所述第二实体关键词的经纬度坐标;
基于所述第一实体关键词的经纬度坐标以及所述第二实体关键词的经纬度坐标,确定所述第一实体关键词与所述第二实体关键词之间的地理距离;
基于所述地理距离确定所述实体相似度。
8.根据权利要求1所述的方法,其中,基于所述第一实体关键词与所述第二实体关键词确定所述实体相似度包括:
将所述第一实体关键词映射成第一实体词向量;
将所述第二实体关键词映射成第二实体词向量;
基于所述第一实体词向量与所述第二实体词向量之间的词向量相似度确定所述实体相似度。
9.根据权利要求1所述的方法,其中,基于所述第一实体关键词与所述第二实体关键词确定所述实体相似度包括:
基于所述第一实体关键词与所述第二实体关键词之间的字符相似度确定所述实体相似度,其中,所述第一实体关键词与所述第二实体关键词之间的字符相似度是所述第二实体关键词中包括的字符被包括在所述第一实体关键词中的字符数目与所述第二实体关键词中包括的字符的总数目的比值。
10.根据权利要求2所述的方法,还包括:
所述实体相似度和所述字词相似度确定综合相似度;
基于所述综合相似度确定所述搜索候选结果作为搜索结果的排列顺序。
11.一种用于确定搜索结果的装置,包括:
获取单元,配置成基于搜索关键词获取至少一个搜索候选结果,以及获取附加关键词;
确定单元,配置成对于所述至少一个搜索候选结果中的每个搜索候选结果,基于所述附加关键词确定所述搜索候选结果与所述搜索关键词之间的相似度,在所述搜索候选结果与所述搜索关键词之间的相似度满足相似度条件的情况下将所述搜索候选结果确定为所述搜索结果,
其中,所述确定单元基于所述附加关键词确定所述搜索候选结果与所述搜索关键词之间的相似度包括:
基于所述附加关键词对所述搜索候选结果进行实体识别以获得第一实体关键词;
基于所述附加关键词对所述搜索关键词进行实体识别以获得第二实体关键词;
基于所述第一实体关键词与所述第二实体关键词确定实体相似度。
12.根据权利要求11所述的装置,所述确定单元还配置成确定所述搜索候选结果与所述搜索关键词之间的字词相似度,基于所述实体相似度和所述字词相似度确定所述搜索候选结果与所述搜索关键词之间的相似度。
13.一种用于确定搜索结果的设备,包括:
一个或多个处理器;和
一个或多个存储器,其中,所述存储器中存储有计算机可读代码,所述计算机可读代码当由所述一个或多个处理器运行时,执行权利要求1-10中任一项所述的用于确定搜索结果的方法。
14.一种计算机可读存储介质,其上存储有指令,所述指令在被处理器执行时,使得所述处理器执行如权利要求1-10中任一项所述的用于确定搜索结果的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910567287.9A CN112149005B (zh) | 2019-06-27 | 2019-06-27 | 用于确定搜索结果的方法、装置、设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910567287.9A CN112149005B (zh) | 2019-06-27 | 2019-06-27 | 用于确定搜索结果的方法、装置、设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112149005A CN112149005A (zh) | 2020-12-29 |
CN112149005B true CN112149005B (zh) | 2023-09-01 |
Family
ID=73868716
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910567287.9A Active CN112149005B (zh) | 2019-06-27 | 2019-06-27 | 用于确定搜索结果的方法、装置、设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112149005B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732870B (zh) * | 2020-12-31 | 2024-03-05 | 平安科技(深圳)有限公司 | 基于词向量的搜索方法、装置、设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102651031A (zh) * | 2012-03-31 | 2012-08-29 | 百度在线网络技术(北京)有限公司 | 一种用于提供搜索结果的方法与设备 |
CN104899322A (zh) * | 2015-06-18 | 2015-09-09 | 百度在线网络技术(北京)有限公司 | 搜索引擎及其实现方法 |
CN105843850A (zh) * | 2016-03-15 | 2016-08-10 | 北京百度网讯科技有限公司 | 搜索优化方法和装置 |
CN106610972A (zh) * | 2015-10-21 | 2017-05-03 | 阿里巴巴集团控股有限公司 | 查询改写方法及装置 |
US9798820B1 (en) * | 2016-10-28 | 2017-10-24 | Searchmetrics Gmbh | Classification of keywords |
CN108304585A (zh) * | 2018-03-06 | 2018-07-20 | 苏州大学 | 一种基于空间关键字搜索的结果数据选取方法及相关装置 |
CN109033140A (zh) * | 2018-06-08 | 2018-12-18 | 北京百度网讯科技有限公司 | 一种确定搜索结果的方法、装置、设备和计算机存储介质 |
CN109033370A (zh) * | 2018-07-27 | 2018-12-18 | 阿里巴巴集团控股有限公司 | 一种查找相似店铺的方法及装置、店铺接入的方法及装置 |
CN109657213A (zh) * | 2018-12-21 | 2019-04-19 | 北京金山安全软件有限公司 | 文本相似度检测方法、装置和电子设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110270828A1 (en) * | 2010-04-29 | 2011-11-03 | Microsoft Corporation | Providing search results in response to a search query |
US9009148B2 (en) * | 2011-12-19 | 2015-04-14 | Microsoft Technology Licensing, Llc | Clickthrough-based latent semantic model |
-
2019
- 2019-06-27 CN CN201910567287.9A patent/CN112149005B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102651031A (zh) * | 2012-03-31 | 2012-08-29 | 百度在线网络技术(北京)有限公司 | 一种用于提供搜索结果的方法与设备 |
CN104899322A (zh) * | 2015-06-18 | 2015-09-09 | 百度在线网络技术(北京)有限公司 | 搜索引擎及其实现方法 |
CN106610972A (zh) * | 2015-10-21 | 2017-05-03 | 阿里巴巴集团控股有限公司 | 查询改写方法及装置 |
CN105843850A (zh) * | 2016-03-15 | 2016-08-10 | 北京百度网讯科技有限公司 | 搜索优化方法和装置 |
US9798820B1 (en) * | 2016-10-28 | 2017-10-24 | Searchmetrics Gmbh | Classification of keywords |
CN108304585A (zh) * | 2018-03-06 | 2018-07-20 | 苏州大学 | 一种基于空间关键字搜索的结果数据选取方法及相关装置 |
CN109033140A (zh) * | 2018-06-08 | 2018-12-18 | 北京百度网讯科技有限公司 | 一种确定搜索结果的方法、装置、设备和计算机存储介质 |
CN109033370A (zh) * | 2018-07-27 | 2018-12-18 | 阿里巴巴集团控股有限公司 | 一种查找相似店铺的方法及装置、店铺接入的方法及装置 |
CN109657213A (zh) * | 2018-12-21 | 2019-04-19 | 北京金山安全软件有限公司 | 文本相似度检测方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112149005A (zh) | 2020-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109783655B (zh) | 一种跨模态检索方法、装置、计算机设备和存储介质 | |
CN111783419B (zh) | 地址相似度计算方法、装置、设备和存储介质 | |
CN110674419B (zh) | 地理信息检索方法、装置、电子设备及可读存储介质 | |
US8510236B1 (en) | Semi-supervised and unsupervised generation of hash functions | |
US20130238332A1 (en) | Automatic input signal recognition using location based language modeling | |
CN110489507B (zh) | 确定兴趣点相似度的方法、装置、计算机设备和存储介质 | |
CN110717010B (zh) | 一种文本处理方法及系统 | |
CN104199842A (zh) | 一种基于局部特征邻域信息的相似图片检索方法 | |
WO2018223331A1 (en) | Systems and methods for text attribute determination using conditional random field model | |
WO2017177965A1 (zh) | 一种基于时间顺序的轨迹匹配方法 | |
CN106649605B (zh) | 一种推广关键词的触发方法及装置 | |
CN112052670B (zh) | 地址文本分词方法、装置、计算机设备和存储介质 | |
CN116917887A (zh) | 使用基于注意力的排名系统的查询处理 | |
CN111141301A (zh) | 导航终点确定方法、装置、存储介质和计算机设备 | |
CN113868351A (zh) | 一种地址聚类方法、装置、电子设备及存储介质 | |
CN112149005B (zh) | 用于确定搜索结果的方法、装置、设备和可读存储介质 | |
CN117349423A (zh) | 一种模板匹配式水利领域知识问答模型 | |
CN109635004B (zh) | 一种数据库的对象描述提供方法、装置及设备 | |
CN105488197B (zh) | 垂直搜索中按域检索方法、新增文档处理方法和装置 | |
WO2020005594A1 (en) | Geocode interpolation | |
Le et al. | Automatic feature selection for named entity recognition using genetic algorithm | |
Zhang et al. | Hierarchical Image Retrieval Method Based on Bag-of-Visual-Word and Eight-point Algorithm with Feature Clouds for Visual Indoor Positioning | |
CN112579713B (zh) | 地址识别方法、装置、计算设备及计算机存储介质 | |
CN114491056A (zh) | 数字警务场景下的改进poi搜索的方法和系统 | |
CN110874442A (zh) | 处理信息的方法、装置、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40035298 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |