CN113672700A - 内容项的搜索方法、装置、电子设备以及存储介质 - Google Patents
内容项的搜索方法、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN113672700A CN113672700A CN202110948733.8A CN202110948733A CN113672700A CN 113672700 A CN113672700 A CN 113672700A CN 202110948733 A CN202110948733 A CN 202110948733A CN 113672700 A CN113672700 A CN 113672700A
- Authority
- CN
- China
- Prior art keywords
- content items
- sorting
- candidate content
- search
- candidate
- 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.)
- Granted
Links
Images
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
-
- 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/338—Presentation of query results
-
- 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
-
- 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/9538—Presentation of query results
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开关于一种内容项的搜索方法、装置、电子设备以及存储介质,属于计算机技术领域。通过本公开实施例提供的技术方案,接收到搜索请求之后基于搜索文本进行召回,对召回的候选内容项按照不同的排序条件进行排序,将不同排序条件筛选出的候选内容项分别放在不同的排序队列中。在最终确定搜索结果时,是从多个排序队列中确定的,也就保证在各个排序条件下的相关内容项均能够被选为最终的搜索结果,从而避免一些与搜索文本强相关内容项被忽略的现象,提高搜索的效果。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种内容项的搜索方法、装置、电子设备以及存储介质。
背景技术
随着网络技术的发展,用户可以在各种各样的搜索引擎中输入相应搜索词,搜索引擎可以根据用户输入的搜索词,反馈给用户相应的搜索结果。
相关技术中,搜索引擎会基于搜索词进行召回和排序,以得到最终的搜索结果。但是,在相关技术中,在一次排序过程中只能采用一种排序条件,导致一些与搜索词强关联的搜索结果可能被忽略,导致搜索的效果不佳。
发明内容
本公开提供一种内容项的搜索方法、装置、电子设备以及存储介质,以提高搜索效果。本公开的技术方案如下:
一方面,提供一种内容项的搜索方法,包括:
根据搜索请求中的搜索文本进行召回,得到多个候选内容项,所述多个候选内容项为与所述搜索文本相关的内容项;
采用多个排序条件在所述多个候选内容项中进行筛选,得到多个排序队列,每个所述排序队列包括至少一个所述候选内容项,所述多个排序队列与所述多个排序条件一一对应;
从所述多个排序队列中确定多个目标内容项,所述多个目标内容项为所述搜索文本对应的搜索结果。
在一些实施例中,所述根据搜索请求中的搜索文本进行召回,得到多个候选内容项包括:
采用所述搜索文本在多个召回条件下进行召回,得到多个候选内容项集合,所述多个候选内容项集合与所述多个召回条件一一对应,所述多个候选内容项分布在所述多个候选内容项集合中。
在一些实施例中,所述采用多个排序条件在所述多个候选内容项中进行筛选,得到多个排序队列包括:
在所述多个排序条件中的第一排序条件与所述多个召回条件中的第一召回条件匹配的情况下,采用所述第一排序条件,在所述第一召回条件对应的候选内容项集合中进行筛选,得到所述第一排序条件对应的排序队列。
在一些实施例中,所述采用所述搜索文本在多个召回条件下进行召回,得到多个候选内容项集合之后,所述方法还包括:
响应于所述多个候选内容项集合中任意两个候选内容项集合对应的召回条件为同一类型的召回条件,将所述任意两个候选内容项集合进行合并。
在一些实施例中,所述采用多个排序条件在所述多个候选内容项中进行筛选,得到多个排序队列包括:
对于所述多个排序条件中的第二排序条件,基于所述第二排序条件确定所述多个候选内容项分别对应的多个第一排序参数;
基于所述多个第一排序参数,从所述多个候选内容项中筛选出多个第一内容项;
将所述多个第一内容项填充至所述第二排序条件对应的排序队列中。
在一些实施例中,所述基于所述多个第一排序参数,从所述多个候选内容项中筛选出多个第一内容项包括下述任一项:
将所述多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为所述多个第一内容项;
按照第一排序参数从大至小的顺序,从所述多个候选内容项中确定出所述多个第一内容项。
在一些实施例中,所述从所述多个排序队列中确定多个目标内容项包括:
获取所述多个候选内容项分别对应的多个第二排序参数;
基于所述多个第二排序参数,从所述多个排序队列中确定所述多个目标内容项。
在一些实施例中,所述获取所述多个候选内容项分别对应的多个第二排序参数包括:
对于所述多个排序队列中的任一候选内容项,获取所述候选内容项与所述搜索文本之间的内容相关性参数、所述搜索文本之间的领域相关性参数、所述候选内容项的点击率参数、以及所述候选内容项的新鲜度参数中的至少一项;
基于所述候选内容项与所述搜索文本之间的内容相关性参数、所述候选内容项与所述搜索文本之间的领域相关性参数、所述候选内容项的点击率参数、以及所述候选内容项的新鲜度参数中的至少一项,获取所述候选内容项的第二排序参数。
在一些实施例中,所述基于所述多个第二排序参数,从所述多个排序队列中确定所述多个目标内容项包括下述任一项:
将所述多个排序队列中,第二排序参数大于第二参数阈值的多个候选内容项确定为所述多个目标内容项;
从所述多个排序队列分别中获取第二排序参数最大的N个候选内容项,得到所述多个目标内容项,N为正整数;
按照第二排序参数从大至小的顺序,从所述多个排序队列中确定出所述多个目标内容项。
在一些实施例中,所述方法还包括:
响应于所述多个排序条件中的第三排序条件为目标类型的排序条件,将所述第三排序条件对应的排序队列中的候选内容项确定为所述搜索文本对应的搜索结果,所述目标类型为所述搜索文本指示的类型。
在一些实施例中,所述从所述多个排序队列中确定多个目标内容项之后,所述方法还包括下述任一项:
在所述多个目标内容项中存在相同类型的目标内容项的情况下,将所述多个目标内容项中相同类型的目标内容项划分为一个查询结果组;
在所述多个目标内容项中存在重复的目标内容项的情况下,将所述重复的目标内容项从所述多个目标内容项中删除。
在一些实施例中,所述根据搜索请求中的搜索文本进行召回,得到多个候选内容项包括:
对所述搜索请求中的搜索文本进行预处理,得到预处理后的搜索文本;
基于所述预处理后的搜索文本进行召回,得到所述多个候选内容项。
在一些实施例中,所述对所述搜索请求中的搜索文本进行预处理,得到预处理后的搜索文本包括:
对所述搜索文本进行繁简转化,得到繁简转化后的搜索文本;
对所述繁简转化后的搜索文本进行纠错,得到纠错后的搜索文本;
对所述纠错后的搜索文本进行实体识别,得到所述预处理后的搜索文本,所述预处理后的搜索文本包括至少一个实体。
在一些实施例中,所述基于所述预处理后的搜索文本进行召回,得到所述多个候选内容项包括:
基于所述预处理后的搜索文本中的至少一个实体进行召回,得到所述多个候选内容项。
在一些实施例中,所述从所述多个排序队列中确定多个目标内容项之后,所述方法还包括:
将所述多个目标内容项发送给所述搜索请求的发送端。
一方面,提供一种内容项的搜索装置,包括:
召回单元,被配置为执行根据搜索请求中的搜索文本进行召回,得到多个候选内容项,所述多个候选内容项为与所述搜索文本相关的内容项;
排序单元,被配置为执行采用多个排序条件在所述多个候选内容项中进行筛选,得到多个排序队列,每个所述排序队列包括至少一个所述候选内容项,所述多个排序队列与所述多个排序条件一一对应;
确定单元,被配置为执行从所述多个排序队列中确定多个目标内容项,所述多个目标内容项为所述搜索文本对应的搜索结果。
在一些实施例中,所述召回单元,被配置为执行采用所述搜索文本在多个召回条件下进行召回,得到多个候选内容项集合,所述多个候选内容项集合与所述多个召回条件一一对应,所述多个候选内容项分布在所述多个候选内容项集合中。
在一些实施例中,所述排序单元,被配置为执行在所述多个排序条件中的第一排序条件与所述多个召回条件中的第一召回条件匹配的情况下,采用所述第一排序条件,在所述第一召回条件对应的候选内容项集合中进行筛选,得到所述第一排序条件对应的排序队列。
在一些实施例中,所述装置还包括:
合并单元,被配置为执行响应于所述多个候选内容项集合中任意两个候选内容项集合对应的召回条件为同一类型的召回条件,将所述任意两个候选内容项集合进行合并。
在一些实施例中,所述排序单元,被配置为执行对于所述多个排序条件中的第二排序条件,基于所述第二排序条件确定所述多个候选内容项分别对应的多个第一排序参数;基于所述多个第一排序参数,从所述多个候选内容项中筛选出多个第一内容项;将所述多个第一内容项填充至所述第二排序条件对应的排序队列中。
在一些实施例中,所述排序单元,被配置为执行下述任一项:
将所述多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为所述多个第一内容项;
按照第一排序参数从大至小的顺序,从所述多个候选内容项中确定出所述多个第一内容项。
在一些实施例中,所述确定单元,被配置为执行获取所述多个候选内容项分别对应的多个第二排序参数;基于所述多个第二排序参数,从所述多个排序队列中确定所述多个目标内容项。
在一些实施例中,所述确定单元,被配置为执行对于所述多个排序队列中的任一候选内容项,获取所述候选内容项与所述搜索文本之间的内容相关性参数、所述搜索文本之间的领域相关性参数、所述候选内容项的点击率参数、以及所述候选内容项的新鲜度参数中的至少一项;基于所述候选内容项与所述搜索文本之间的内容相关性参数、所述候选内容项与所述搜索文本之间的领域相关性参数、所述候选内容项的点击率参数、以及所述候选内容项的新鲜度参数中的至少一项,获取所述候选内容项的第二排序参数。
在一些实施例中,所述确定单元,被配置为执行下述任一项:
将所述多个排序队列中,第二排序参数大于第二参数阈值的多个候选内容项确定为所述多个目标内容项;
从所述多个排序队列分别中获取第二排序参数最大的N个候选内容项,得到所述多个目标内容项,N为正整数;
按照第二排序参数从大至小的顺序,从所述多个排序队列中确定出所述多个目标内容项。
在一些实施例中,所述确定单元,还被配置为执行响应于所述多个排序条件中的第三排序条件为目标类型的排序条件,将所述第三排序条件对应的排序队列中的候选内容项确定为所述搜索文本对应的搜索结果,所述目标类型为所述搜索文本指示的类型。
在一些实施例中,所述装置还包括下述任一项:
划分单元,被配置为执行在所述多个目标内容项中存在相同类型的目标内容项的情况下,将所述多个目标内容项中相同类型的目标内容项划分为一个查询结果组;
删除单元,被配置为执行在所述多个目标内容项中存在重复的目标内容项的情况下,将所述重复的目标内容项从所述多个目标内容项中删除。
在一些实施例中,所述召回单元,被配置为执行对所述搜索请求中的搜索文本进行预处理,得到预处理后的搜索文本;基于所述预处理后的搜索文本进行召回,得到所述多个候选内容项。
在一些实施例中,所述召回单元,被配置为执行对所述搜索文本进行繁简转化,得到繁简转化后的搜索文本;对所述繁简转化后的搜索文本进行纠错,得到纠错后的搜索文本;对所述纠错后的搜索文本进行实体识别,得到所述预处理后的搜索文本,所述预处理后的搜索文本包括至少一个实体。
在一些实施例中,所述召回单元,被配置为执行基于所述预处理后的搜索文本中的至少一个实体进行召回,得到所述多个候选内容项。
在一些实施例中,所述装置还包括:
发送单元,被配置为执行将所述多个目标内容项发送给所述搜索请求的发送端。
一方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现上述内容项的搜索方法。
一方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备够执行上述内容项的搜索方法。
一方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述内容项的搜索方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
通过本公开实施例提供的技术方案,接收到搜索请求之后基于搜索文本进行召回,对召回的候选内容项按照不同的排序条件进行排序,将不同排序条件筛选出的候选内容项分别放在不同的排序队列中。在最终确定搜索结果时,是从多个排序队列中确定的,也就保证在各个排序条件下的相关内容项均能够被选为最终的搜索结果,从而避免一些与搜索文本强相关内容项被忽略的现象,提高搜索的效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种内容项的搜索方法的实施环境示意图。
图2是根据一示例性实施例示出的一种内容项的搜索方法的流程图。
图3是根据一示例性实施例示出的一种内容项的搜索方法的流程图。
图4是根据一示例性实施例示出的一种界面示意图。
图5是根据一示例性实施例示出的一种内容项的搜索方法的流程图。
图6是根据一示例性实施例示出的一种内容项的搜索装置的框图。
图7是根据一示例性实施例示出的一种服务器的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开所涉及的用户信息可以为经用户授权或者经过各方充分授权的信息。
图1是本公开实施例提供的一种内容项的搜索方法的实施环境示意图,参见图1,该实施环境中包括终端101和服务器102。
终端101可以为智能手机、智能手表、台式电脑、手提电脑和膝上型便携计算机等设备中的至少一种。终端101上可以安装并运行有支持内容项搜索的应用程序,用户可以通过终端101登录该应用程序,通过该应用程序来搜索想要查看的内容项。
终端101可以泛指多个终端中的一个,本实施例仅以终端101来举例说明。本领域技术人员可以知晓,上述终端的数量可以更多或更少。比如上述终端101可以仅为几个,或者上述终端101为几十个或几百个,或者更多数量,本公开实施例对终端101的数量和设备类型均不加以限定。终端101可以通过无线网络或有线网络与服务器102相连。
服务器102可以为一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。服务器102可以用于基于搜索文本进行搜索,获取与搜索文本对应的搜索结果。
在一些实施例中,上述服务器102的数量可以更多或更少,本公开实施例对此不加以限定。当然,服务器102还可以包括其他功能服务器,以便提供更全面且多样化的服务。
在介绍完本公开实施例的实施环境之后,下面将结合上述实施环境,对本公开实施例提供共的内容项的搜索方法的应用场景进行说明。
本公开实施例提供的内容项的搜索方法能够应用在各类搜索场景下,比如或者应用在搜索引擎中,用于搜索各类内容项。应用在短视频平台中,用于搜索短视频。
以本公开实施例提供的内容项的搜索方法应用在搜索引擎中为例,用户能够使用终端101浏览搜索引擎的搜索界面,在搜索界面中输入搜索文本。终端101通过搜索界面获取搜索文本之后,向服务器102发送搜索请求,搜索请求中携带有该搜索文本,服务器102用于运行搜索引擎的后台服务。服务器102接收到该搜索请求之后,采用本公开实施例提供的内容项的搜索方法,根据该搜索请求中的搜索文本进行召回,得到多个候选内容项,多个候选内容项也即是与该搜索文本相关的内容项。比如,搜索文本为“XX大学”,那么服务器102基于该搜索文本“XX大学”进行召回,得到多个与“XX大学”相关的视频、图片以及文章,其中,多个与“XX大学”相关的视频、图片以及文章也即是与“XX大学”相关的候选内容项。服务器102采用多个排序条件在多个候选内容项中进行筛选,得到多个排序队列,比如,服务器102采用三个排序条件:“获取最新的视频”、“获取最新的图片”以及“获取最新的文章”对多个候选内容项进行筛选,将筛选结果存放在三个排序队列中,三个排序队列分别对应于上述三个排序条件。服务器102分别在三个排序队列中进行筛选,得到多个目标内容项,将多个目标内容项发送给终端101,多个目标内容项也即是搜索文本对应的搜索结果。用户能够通过终端101来查看与输入的搜索文本对应的多个目标内容项,这多个目标内容项也就涵盖了与“XX大学”相关的视频、图片以及文章,搜索结果较为丰富。
以本公开实施例提供的内容项的搜索方法应用在短视频平台中为例,用户能够使用终端101浏览短视频平台,在短视频平台的搜索界面中输入搜索文本。终端101向服务器102发送搜索请求,搜索请求中携带有该搜索文本,服务器102用于运行短视频平台的后台服务。服务器102接收到搜索请求之后,采用本公开实施例提供的内容项的搜索方法,根据该搜索请求中的搜索文本进行召回,得到多个候选内容项,多个候选内容项也即是与该搜索文本相关的短视频。比如,搜索文本为“YY事件”,那么服务器102基于该搜索文本“YY事件”进行召回,得到多个与“YY事件”相关的短视频,其中,多个与“YY事件”相关的短视频也即是与“YY事件”相关的候选内容项。服务器102采用多个排序条件在多个候选内容项中进行筛选,得到多个排序队列,比如,服务器102采用三个排序条件:“获取最新的短视频”、“获取其他平台导入的短视频”以及“获取用户上传的短视频”对多个候选内容项进行筛选,将筛选结果存放在三个排序队列中,三个排序队列分别对应于上述三个排序条件。服务器102分别在三个排序队列中进行筛选,得到多个目标内容项,将多个目标内容项发送给终端101,多个目标内容项也即是搜索文本对应的搜索结果。用户能够通过终端101来查看与输入的搜索文本对应的多个目标内容项,这多个目标内容项也就涵盖了与“YY事件”相关的最新的短视频、其他平台导入的短视频以及用户上传的短视频,短视频的类型较为丰富。
在介绍完本公开的实施环境和应用场景之后,下面对本公开实施例提供的内容项的搜索方法进行说明。
图2是根据一示例性实施例示出的一种内容项的搜索方法的流程图,如图2所示,以内容项的搜索方法用于服务器中为例,包括以下步骤。
在步骤S201中,根据搜索请求中的搜索文本进行召回,得到多个候选内容项,该多个候选内容项为与该搜索文本相关的内容项。
在一些实施例中,搜索请求是由终端发送给服务器的,搜索请求中携带有搜索文本,搜索文本为用户在终端上输入的文本。基于搜索文本进行召回的过程,也即是服务器基于搜索文本,在内容项数据库中进行查询,得到与搜索文本相关的多个候选内容项的过程。由于内容项数据库中存在大量内容项,服务器基于搜索文本进行召回的过程,也可以看作是对内容项数据库中存在的大量内容项进行的一次粗筛。在一些实施例中,内容项包括视频、图像、音频以及文本等。
举例来说,搜索请求中的搜索文本是一本书籍的名称“ABCD”,服务器能够基于该搜索文本“ABCD”进行召回,也即是基于该搜索文本“ABCD”在数据库中进行查询,得到与该搜索文本“ABCD”相关的多个候选内容项,其中,该多个候选内容项包括与搜索文本“ABCD”对应的多个视频、多个图片、多个文章以及多个购物平台的链接等。服务器根据搜索文本“ABCD”进行召回的过程,也即是对数据库中存储的多个内容项进行了一次粗筛,得到的多个候选内容项中可能存在与搜索文本强相关的内容项,也可能存在与搜索文本弱相关的内容项,后续服务器能够通过下述步骤S202和S203进行进一步筛选,以得到最终的搜索结果。
在步骤S202中,采用多个排序条件在该多个候选内容项中进行筛选,得到多个排序队列,每个该排序队列包括至少一个该候选内容项,该多个排序队列与该多个排序条件一一对应。
其中,排序也即是对召回的多个候选内容项进行二次筛选,以得到与搜索文本相关性更强的内容项的过程。排序条件也可以看作是二次筛选的条件,比如,一个排序条件可能为“筛选视频”,那么基于该排序条件在多个候选内容项中进行筛选中,也就能够将多个候选内容项中的视频筛选出来。排序队列用于存放采用对应排序条件筛选出的候选内容项,不同排序队列之间相对独立。
还是以搜索请求中的搜索文本是一本书籍的名称“ABCD”为例,服务器采用多个排序条件在与该搜索文本“ABCD”相关的多个候选内容项中进行筛选,将基于不同排序条件筛选出的内容项存储在不同排序队列中,不同排序队列分别对应于不同的排序条件。比如,服务器采用三个排序条件:“获取最新的视频”、“获取最新的链接”、“获取最新的书评”对该搜索文本“ABCD”对应的多个候选内容项进行筛选,将多个候选内容项中与排序条件“获取最新的视频”对应的候选内容项存储在第一排序队列中,将多个候选内容项中与排序条件“获取最新的链接”对应的候选内容项存储在第二排序队列中,将多个候选内容项中与排序条件“获取最新的书评”对应的候选内容项存储在第三排序队列中,其中,第一排序队列也即是排序条件“获取最新的视频”对应的排序队列,第一排序队列中存储有与搜索文本“ABCD”相关的最新视频;第二排序队列也即是排序条件“获取最新的链接”对应的排序队列,第二排序队列中存储有与搜索文本“ABCD”相关的最新链接;第三排序队列也即是排序条件“获取最新的书评”对应的排序队列,第三排序队列中存储有与搜索文本“ABCD”相关的最新书评。
在步骤S203中,从该多个排序队列中确定多个目标内容项,该多个目标内容项为该搜索文本对应的搜索结果。
其中,多个目标内容项是从多个排序队列中确定出来的,多个排序队列对应于不同的排序条件,那么多个目标内容项也就对应于不同的排序条件,将多个目标内容项作为搜索文本的搜索结果,内容较为全面。
还是以搜索请求中的搜索文本是一本书籍的名称“ABCD”为例,服务器在多个排序队列中分别进行筛选,得到多个目标内容项,多个目标内容项也即是搜索文本“ABCD”对应的搜索结果,其中,多个目标内容项来自于多个排序队列。若服务器采用三个排序条件:“获取最新的视频”、“获取最新的链接”、“获取最新的书评”对该搜索文本“ABCD”对应的多个候选内容项进行筛选,得到第一排序队列、第二排序队列和第三排序队列,那么服务器也就能够分别在第一排序队列、第二排序队列和第三排序队列中进行筛选,得到多个目标内容项。在一些实施例中,服务器在第一排序队列、第二排序队列和第三排序队列中进行筛选时,能够对第一排序队列、第二排序队列和第三排序队列中的候选内容项分别进行打分,从三个排序队列中获取分数最高的L个候选内容项,这L个候选内容项也即是多个目标内容项,L为正整数。
通过本公开实施例提供的技术方案,接收到搜索请求之后基于搜索文本进行召回,对召回的候选内容项按照不同的排序条件进行排序,将不同排序条件筛选出的候选内容项分别放在不同的排序队列中。在最终确定搜索结果时,是从多个排序队列中确定的,也就保证在各个排序条件下的相关内容项均能够被选为最终的搜索结果,从而避免一些与搜索文本强相关内容项被忽略的现象,提高搜索的效果。
在一些实施例中,该根据搜索请求中的搜索文本进行召回,得到多个候选内容项包括:
采用该搜索文本在多个召回条件下进行召回,得到多个候选内容项集合,该多个候选内容项集合与该多个召回条件一一对应,该多个候选内容项分布在该多个候选内容项集合中。
在这种实施方式下,不同召回条件对应的候选内容项被存储在不同的候选内容项集合中,便于针对不同情况进行处理,比如方便技术人员对不同候选内容项集合进行合并,或者删除某个候选内容项集合中,将召回结果由单集合升级为多集合,更加灵活。
如上述步骤S201所描述的,召回也即是对数据库中存储的多个内容项进行了一次粗筛,得到多个可能与搜索文本相关的候选内容项。在召回过程中,服务器能够基于多个召回条件来进行,比如,服务器采用三个召回条件“召回视频”、“召回图片”、“召回文章”进行召回,服务器将基于召回条件“召回视频”召回的候选内容项,存储在第一候选内容项集合中;将基于召回条件“召回图片”召回的候选内容项,存储在第二候选内容项集合中;将基于召回条件“召回文章”召回的候选内容项,存储在第三候选内容项集合中,其中,第一候选内容项集合为与召回条件“召回视频”对应的候选内容项集合,第一候选内容项集合中存储有与搜索文本相关的视频,第二候选内容项集合为与召回条件“召回图片”对应的候选内容项集合,第二候选内容项集合中存储有与搜索文本相关的图片,第三候选内容项集合为与召回条件“召回文章”对应的候选内容项集合,第三候选内容项集合中存储有与搜索文本相关的文章。
在一些实施例中,该采用多个排序条件在该多个候选内容项中进行筛选,得到多个排序队列包括:
在该多个排序条件中的第一排序条件与该多个召回条件中的第一召回条件匹配的情况下,采用该第一排序条件,在该第一召回条件对应的候选内容项集合中进行筛选,得到该第一排序条件对应的排序队列。
在这种实施方式下,服务器能够直接采用第一排序条件在第一召回条件对应的候选内容项集合中进行筛选,得到第一排序条件对应的排序队列,服务器也就无需在其他候选内容项集合中再进行筛选,提高生成第一排序条件对应的排序队列的效率。
举例来说,若第一召回条件为“召回视频”,第一排序条件为“获取最新的视频”,由于第一召回条件和第一排序条件均与视频相关,那么服务器确定第一排序条件与第一召回条件匹配。服务器直接采用第一排序条件“获取最新的视频”在第一召回条件“召回视频”对应的候选内容项集合进行筛选即可。若存在一个召回条件为“召回文章”,那么服务器能够确定第一排序条件与第二召回条件不匹配,服务器也就无需采用第一排序条件“获取最新的视频”在第二召回条件“召回文章”对应的候选内容项集合进行筛选,效率较高。
在一些实施例中,该采用该搜索文本在多个召回条件下进行召回,得到多个候选内容项集合之后,该方法还包括:
响应于该多个候选内容项集合中任意两个候选内容项集合对应的召回条件为同一类型的召回条件,将该任意两个候选内容项集合进行合并。
在这种实施方式下,服务器能够将同一类型的召回条件对应的内容项集合进行合并,从而减少内容项集合的数量,提高后续的运算效率。
举例来说,若多个召回条件包括两个召回条件为“通过A模型召回”和“通过B模型召回”,这两个召回条件为同一类型的召回条件,均是限定采用模型来进行召回,那么服务器能够将“通过A模型召回”对应的候选内容项集合与“通过B模型召回”对应的候选内容项集合进行合并,得到一个新的候选内容项集合,后续能够基于该新的候选内容项集合进行排序。
在一些实施例中,该采用多个排序条件在该多个候选内容项中进行筛选,得到多个排序队列包括:
对于该多个排序条件中的第二排序条件,基于该第二排序条件确定该多个候选内容项分别对应的多个第一排序参数。
基于该多个第一排序参数,从该多个候选内容项中筛选出多个第一内容项。
将该多个第一内容项填充至该第二排序条件对应的排序队列中。
在这种实施方式下,确定第一排序参数的过程,也可以视作对多个候选内容项进行打分的过程,第一排序参数越高的候选内容项可以视作与第二排序条件的相关度越高,通过这样的方式确定出的排序队列,排序队列中的候选内容项也即是与第二排序条件相关度较高的候选内容项,有助于提高搜索的准确性。
以第二排序条件为“获取最新的视频”为例,服务器能够基于第二排序条件“获取最新的视频”对多个候选内容项进行打分,得到多个候选内容项的第一排序参数,第一排序参数越高,也就表示对应候选内容项为视频,且该视频的发布时间越晚。服务器基于第一排序参数在多个候选内容项中进行筛选,得到多个第一内容项,将多个第一内容项填充到第二排序条件对应的排序队列中。
在一些实施例中,该基于该多个第一排序参数,从该多个候选内容项中筛选出多个第一内容项包括下述任一项:
将该多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为该多个第一内容项。
按照第一排序参数从大至小的顺序,从该多个候选内容项中确定出该多个第一内容项。
在这种实施方式下,服务器能够将第一排序参数大于第一参数阈值的候选内容项确定为第一内容项,或者按照第一排序参数从大至小的顺序,从多个候选内容项中确定多个第一内容项,由于第一排序参数能够反映对应候选内容项与第二排序条件的相关程度,那么通过上述实施方式来确定的第一目标内容项,也就均是与第二排序条件相关程度较高的内容项,有助于提高搜索的准确性。
以候选内容项的数量为三个为例,服务器基于第二排序条件对三个候选内容项进行打分,得到三个候选内容项分别对应的三个第一排序参数90、85以及60。若第一参数阈值为80,那么服务器能够将第一排序参数为90和85的两个候选内容项确定为第一内容项。或者,服务器按照第一排序参数从大至小的顺序,对三个候选内容项进行排序,将第一排序参数最高的前两个候选内容项确定为第一内容项。
在一些实施例中,该从该多个排序队列中确定多个目标内容项包括:
获取该多个候选内容项分别对应的多个第二排序参数。
基于该多个第二排序参数,从该多个排序队列中确定该多个目标内容项。
在这种实施方式下,确定第二排序参数的过程,也可以视作对多个候选内容项进行打分的过程,第二排序参数越高的候选内容项可以视作质量越高的搜索结果,有助于提高搜索的准确性。
以搜索文本为“ABCD”为例,服务器能够对多个排序队列中的候选内容项进行打分,得到多个排序队列中的候选内容项的第二排序参数,第二排序参数越高,也就表示对应候选内容项与“ABCD”的相关性越高。服务器基于第二排序参数在多个候选内容项中进行筛选,得到多个目标内容项。
在一些实施例中,该获取该多个候选内容项分别对应的多个第二排序参数包括:
对于该多个排序队列中的任一候选内容项,获取该候选内容项与该搜索文本之间的内容相关性参数、该搜索文本之间的领域相关性参数、该候选内容项的点击率参数、以及该候选内容项的新鲜度参数中的至少一项。
基于该候选内容项与该搜索文本之间的内容相关性参数、该候选内容项与该搜索文本之间的领域相关性参数、该候选内容项的点击率参数、以及该候选内容项的新鲜度参数中的至少一项,获取该候选内容项的第二排序参数。
在这种实施方式下,服务器能够采用多种参数或者多种参数的组合来对多个候选内容项进行打分,得到多个候选内容项的第二排序参数,第二排序参数也可以视作多个候选内容项对应的分数。多种参数或者多种参数的组合也能够对候选内容项进行综合打分,第二排序参数也就能够更加准确地反应候选内容项的质量。对于多个候选内容项来说,由于采用了相同的打分机制,对多个候选内容项的第二排序参数也就是公平可比较的。
在一些实施例中,该获取该多个候选内容项分别对应的多个第二排序参数包括:
对于该多个排序队列中的任一候选内容项,获取该候选内容项与目标账号的账号特征之间的相似度,该目标账号为发送该搜索请求的账号。
将该候选内容项与该账号特征之间的相似度确定为该候选内容项的第二排序参数。
在这种实施方式下。服务器能够确定候选内容项与目标账号的账号特征之间的相似度,将该相似度确定为对应候选内容项的第二排序参数,由于目标账号的账号特征能够在一定程度上反映目标账号的喜好,通过这样的方式确定出的第二排序参数的也就更加贴近目标账号的喜好,搜索的结果较好。
举例来说,服务器能够采用向量的形式来表示候选内容项和目标账号的账号特征,将候选内容项对应的向量以及账号特征对应的向量之间的余弦相似度确定为对应候选内容项的第二排序参数。
在一些实施例中,该基于该多个第二排序参数,从该多个排序队列中确定该多个目标内容项包括下述任一项:
将该多个排序队列中,第二排序参数大于第二参数阈值的多个候选内容项确定为该多个目标内容项。
从该多个排序队列分别中获取第二排序参数最大的N个候选内容项,得到该多个目标内容项,N为正整数。
按照第二排序参数从大至小的顺序,从该多个排序队列中确定出该多个目标内容项。
在这种实施方式下,服务器能够从多个排序队列中确定出第二排序参数大于第二参数阈值的多个候选内容项作为多个目标内容项,第二排序参数阈值能够起到控制内容项质量的作用,这样筛选出的多个目标内容项的质量也就较高。或者,服务器能够将多个排序队列中第二排序参数最大的N个候选内容项获取为目标内容项,多个目标内容项也就来自于不同的排序队列,而不同的排序队列对应于不同的排序条件,那么最终获得的多个目标内容项也就来自于不同排序条件,保证在各个排序条件下的相关内容项均能够被选为最终的搜索结果,从而避免一些强相关内容项被忽略的现象,提高搜索的效果。或者,服务器能够从多个排序队列中确定出第二排序参数最高的多个候选内容项作为多个目标内容项,由于第二排序参数能够在一定程度上反映内容项的质量,这样筛选出的多个目标内容项的质量也就较高。
在一些实施例中,该方法还包括:
响应于该多个排序条件中的第三排序条件为目标类型的排序条件,将该第三排序条件对应的排序队列中的候选内容项确定为该搜索文本对应的搜索结果,该目标类型为该搜索文本指示的类型。
在这种实施方式下,若搜索文本指示了排序条件的类型,那么服务器能够直接从目标类型的排序条件对应的排序队列中获取目标内容项,也即是从该排序队列中获取搜索结果,无需再从其他排序队列中获取目标内容项,效率较高。同时,也无需改变搜索引擎的结构,本公开实施例提供的内容项的搜索方法的应用场景更加广泛。
举例来说,若搜索文本中携带用于指示排序条件的实体,那么服务器基于该实体确定目标类型,基于目标类型的排序条件对多个候选内容项进行筛选,得到多个目标内容项。比如,一个搜索文本为“请查找XX的视频”,其中,视频也即是一个用于指示排序条件的实体,服务器基于该实体“视频”,确定目标类型的排序条件为“获取视频”。服务器能够将排序条件“获取视频”对应的排序队列中的候选内容项确定为目标内容项。
在一些实施例中,该从该多个排序队列中确定多个目标内容项之后,该方法还包括下述任一项:
在该多个目标内容项中存在相同类型的目标内容项的情况下,将该多个目标内容项中相同类型的目标内容项划分为一个查询结果组。
在该多个目标内容项中存在重复的目标内容项的情况下,将该重复的目标内容项从该多个目标内容项中删除。
在这种实施方式下,服务器能够将相同类型的目标内容项划分为一个查询结果组,比如将目标内容项中的视频划分为一个查询结果组,这样便于后续在不同的结果展示页中展示查询结果,提高人机交互的效率。以及,服务器能够将多个目标内容项中重复的内容项删除,以精简目标内容项的数量,避免无意义的重复。
在一些实施例中,该根据搜索请求中的搜索文本进行召回,得到多个候选内容项包括:
对该搜索请求中的搜索文本进行预处理,得到预处理后的搜索文本。
基于该预处理后的搜索文本进行召回,得到该多个候选内容项。
在这种实施方式下,通过对搜索文本进行预处理,能够消除搜索文本中的一些缺陷,基于预处理后的搜索文本进行内容项搜索,能够达到更加准确的效果。
在一些实施例中,该对该搜索请求中的搜索文本进行预处理,得到预处理后的搜索文本包括:
对该搜索文本进行繁简转化,得到繁简转化后的搜索文本。
对该繁简转化后的搜索文本进行纠错,得到纠错后的搜索文本。
对该纠错后的搜索文本进行实体识别,得到该预处理后的搜索文本,该预处理后的搜索文本包括至少一个实体。
其中,繁简转化是指将搜索文本中的繁体字转化为简体字。在一些实施例中,若搜索文本为外文,那么服务器也能够将外文翻译成中文。纠错是指对搜索文本中的错别字进行纠错,或者将搜索文本中的拼音转化为文字等。实体识别也即是服务器从搜索文本中确定出实体的过程,实现过程参见本步骤之前的描述,在此不再赘述。在一些实施例中,纠错以及实体识别也被称为QR(Query,查询)分析,在本公开实施例中,QR指代查询文本。
在这种实施方式下,通过执行繁简转化能够将繁体字转化为简体字,便于服务器后续的召回和排序。通过进行纠错,取出搜索文本中的一些错误,提高召回和排序的准确性。通过实体识别,得到多个实体,采用实体来进行召回和排序的效率较高。通过上述预处理过程,能够提高后续搜索的效率和准确性。
在一些实施例中,该基于该预处理后的搜索文本进行召回,得到该多个候选内容项包括:
基于该预处理后的搜索文本中的至少一个实体进行召回,得到该多个候选内容项。
在这种实施方式下,相较于完整的搜索文本来说,采用搜索文本中的实体进行搜索的效率更高,同时搜索结果也更加贴近实际需要,搜索的效果较好。
举例来说,对于搜索文本“ABCD怎么样”来说,ABCD是实体,怎么样是与搜索关联不大的文本,服务器在搜索文本“ABCD”中识别出实体“ABCD”,基于实体“ABCD”进行搜索的效率也就越高,搜索的效果越好。
在一些实施例中,该从该多个排序队列中确定多个目标内容项之后,该方法还包括:
将该多个目标内容项发送给该搜索请求的发送端。
在这种实施方式下,多个目标内容项也即是搜索文本的搜索结果,服务器将搜索结果发送给搜索请求的发送端,以便于用户进行查看。
上述步骤S301-S203是对本公开实施例提供的内容项的搜索方法的简单介绍,下面将结合一些例子,对本公开实施例提供的内容项的搜索方法进行详细说明,参见图3,方法由服务器执行,方法包括:
在步骤S301中,获取搜索请求,搜索请求中携带有搜索文本。
其中,搜索文本可以为中文,也可以为英文,当然也可以为其他国家的语言,本公开实施例对于搜索文本的类别不做限定。搜索文本可以为一个字符,例如“雨”,也可以为一个词汇,例如“景点”,还可以为一个词组,例如“蔚蓝的天空”,当然还可以为多个词汇的组合,例如“电影喜剧”,本公开实施例对于搜索文本的类别不做限定。
在一些实施例中,终端获取搜索文本。响应于对搜索文本的确认操作,终端向服务器发送搜索请求,搜索请求中携带有搜索文本。服务器获取终端发送的搜索请求。
举例来说,终端显示搜索界面,搜索界面中显示有搜索文本输入框和搜索控件,其中,搜索界面既可以是搜索引擎的搜索界面,也可以是短视频平台的搜索界面,或者是其他搜索场景的搜索界面,本公开实施例对此不做限定。用户能够在搜索文本输入框中输入想要进行搜索的内容,比如用户能够在搜索文本输入框中输入一个电影的名称“XXX”,该内容也即是搜索文本。响应于对搜索控件的点击操作,终端向服务器发送搜索请求,搜索请求中携带有搜索文本数据框中的搜索文本,其中,对搜索控件的点击操作也即是对搜索文本的确认操作。服务器接收终端发送的搜索请求,从搜索请求中获取搜索文本。
比如,参见图4,终端显示搜索界面400,搜索界面400包括搜索文本输入框401和搜索控件402。用户能够在搜索文本输入框401中输入搜索文本,输入完毕之后,用户能够点击搜索控件402来进行搜索。响应于对搜索控件402的点击操作,终端向服务器发送搜索请求,搜索请求中携带有搜索文本。
在一些实施例中,终端获取搜索文本。响应于在目标时长内未接收到对搜索文本的确认操作,终端向服务器发送搜索请求,搜索请求中携带有搜索文本。服务器获取终端发送的搜索请求,其中,目标时长由技术人员根据实际情况进行设置,比如设置为8s或者10s等,本公开实施例对此不做限定。
在这种实施方式下,当用户忘记对搜索文本进行确认时,终端能够自动向服务器发送搜索请求,人机交互的效率较高。
举例来说,终端显示搜索界面,搜索界面中显示有搜索文本输入框和搜索控件。用户能够在搜索文本输入框中输入想要进行搜索的内容,该内容也即是搜索文本。响应于在目标时长内为检测到对搜索控件的点击操作,终端向服务器发送搜索请求,搜索请求中携带有搜索文本数据框中的搜索文本,其中,对搜索控件的点击操作也即是对搜索文本的确认操作。服务器接收终端发送的搜索请求,从搜索请求中获取搜索文本。
在一些实施例中,终端获取初始搜索文本。响应于接收到对初始搜索文本的确认操作,终端对初始搜索文本进行补全,得到搜索文本。终端向服务器发送搜索请求,搜索请求中携带有搜索文本。服务器获取终端发送的搜索请求,其中,初始搜索文本也即是用户在终端上输入的搜索文本。
在这种实施方式下,对于一些不完整的初始搜索文本来说,终端能够对其进行自动补全,采用补全后的搜索文本进行后续搜索,能够达到更好的搜索效果。
举例来说,终端显示搜索界面,搜索界面中显示有搜索文本输入框和搜索控件。用户能够在搜索文本输入框中输入想要进行搜索的内容,该内容也即是初始搜索文本。终端将初始搜索文本与搜索文本词典进行匹配,从搜索文本词典中确定与初始搜索文本对应的搜索文本,搜索文本也即是补全后的初始搜索文本。终端向服务器发送搜索请求,搜索请求中携带有搜索文本。服务器获取终端发送的搜索请求。
在步骤S302中,根据搜索请求中的搜索文本进行召回,得到多个候选内容项,该多个候选内容项为与该搜索文本相关的内容项。
在一些实施例中,服务器采用该搜索文本在多个召回条件下进行召回,得到多个候选内容项集合,该多个候选内容项集合与该多个召回条件一一对应,该多个候选内容项分布在该多个候选内容项集合中。
在一些实施例中,召回条件包括纠错召回、地域召回、时效召回以及强制召回等。其中,纠错召回是指基于纠错后的搜索文本进行召回,纠错后的搜索文本也即是服务器对搜索文本进行纠错之后得到的文本,在一些实施例中,纠错包括错别字调整以及拼音转文本等。地域召回是指召回与搜索请求的发送方处于相同低于的结果。时效召回是指召回最新上传的结果。强制召回是指召回与搜索文本相关性较弱的结果,以扩展召回的范围。
在这种实施方式下,不同召回条件对应的候选内容项被存储在不同的候选内容项集合中,便于针对不同情况进行处理,也即是召回结果由单集合升级为多集合,更加灵活。
服务器根据搜索文本进行召回,得到多个候选内容项能够通过下述任一种方式实现:
方式1、服务器对该搜索文本进行实体识别,得到所述搜索文本中的至少一个实体。服务器基于该至少一个实体以及多个召回条件,在数据库中进行查询,得到多个候选内容项,多个候选内容项分布在多个候选内容项集合中,每个候选内容项集合对应于一个召回条件。其中,数据库中存储有多个内容项,每个内容项对应于至少一个标签。在一些实施例中,多个内容项存储在服务器上,数据库中存储有多个内容项在服务器上的存储位置以及每个内容项的标签,这样能够避免数据库过于臃肿而降低查询效率的问题。当需要进行内容项查询时,服务器能够通过数据库获取内容项的存储位置,从该存储位置上获取该内容项。
下面通过两个例子对上述实施方式进行说明。
例1、服务器对该搜索文本进行分词,得到多个词汇。服务器将多个词汇与数据库中存储的至少一个实体进行比较。若多个词汇中的第一词汇与至少一个实体中的第一实体相同,则服务器将第一实体确定为搜索文本中的一个实体。服务器将搜索文本中的至少一个实体和多个召回条件中的一个召回条件组成第一查询语句,在一些实施例中,组成第一查询语句的过程也被称为构建语法树的过程。服务器基于第一查询语句在数据库中进行查询,得到该召回条件对应的候选内容项集合,该候选内容项集合包括与该召回条件对应的多个候选内容项。在一些实施例中,服务器基于第一查询语句在数据库中进行查询时,能够先基于第一查询语句中携带的实体进行查询,得到与该实体对应的多个内容项。服务器基于第一查询语句中携带的召回条件在该实体对应的多个内容项中进行二次查询,得到该实体在该召回条件下的多个候选实体。
在一些实施例中,若多个内容项存储在服务器上,数据库中存储每个内容项在服务器上的存储位置,那么服务器能够基于第一查询语句获取多个候选内容项在服务器上的存储位置,由服务器从对应存储位置上获取多个候选内容项。在一些实施例中,对于多个召回条件来说,服务器能够分别基于多个召回条件与搜索文本中的至少一个实体生成多个第一查询语句,基于多个第一查询语句在数据库中进行查询,得到多个候选内容项集合。在一些实施例中,第一查询语句为SQL(Structured Query Language,结构化查询语言)。
若搜索文本为“AABB是什么”,其中,“AABB”为一个实体,一个召回条件为“召回视频”。服务器能够基于实体“AABB”和召回条件“召回视频”生成第一查询请求,该第一查询请求用于从数据库中获取与实体“AABB”有关的视频,该与实体“AABB”有关的视频也即是召回条件“召回视频”对应的候选内容项,多个与实体“AABB”有关的视频构成与召回条件“召回视频”对应的候选内容项集合。
例2、服务器将该搜索文本输入实体识别模型,通过实体识别模型对搜索文本进行识别,得到搜索文本中的至少一个实体。服务器基于该至少一个实体以及多个召回条件,在数据库中进行查询,得到多个候选内容项,数据库中存储有多个内容项,每个内容项对应于至少一个标签。在一些实施例中,实体识别模型为一个序列标注模型,能够对输入的文本序列进行标注,以得到文本序列中不同词汇的类型,其中,词汇的类型包括实体和非实体。
服务器将搜索文本输入实体识别模型之后,由实体识别模型对搜索文本进行分词,得到搜索文本中的多个词汇。实体识别模型对搜索文本中的多个词汇进行特征提取,得到多个词汇分别对应的多个词汇特征。服务器对由多个词汇特征组成的词汇特征序列进行序列标注,得到每个词汇分别对应的词汇类型。服务器基于每个词汇分别对应的词汇类型,从搜索文本中获取至少一个实体。服务器将搜索文本中的至少一个实体和多个召回条件中的一个召回条件组成第一查询语句,基于第一查询语句在数据库中进行查询,得到该召回条件对应的候选内容项集合,该候选内容项集合包括与该召回条件对应的多个候选内容项。在一些实施例中,实体识别模型的结构为LSTM(Long Short-Term Memory,长短期记忆网络)+CRF(Conditional Random Fields,条件随机场)或者CNN(Convolutional NeuralNetworks,卷积神经网络)+CRF,其中,LSTM和CNN用于提取搜索文本中多个词汇的特征,CRF用于对词汇特征序列进行序列标注,以得到不同词汇的类型。当然,随着科学技术的发展,实体识别模型也可以为其他结构的模型,本公开实施例对此不做限定。
方式2、服务器对该搜索文本进行语义识别,得到该搜索文本的第一语义特征。服务器将该搜索文本的第一语义特征与多个内容项的第二语义特征进行比对,其中,内容项的第二语义特征是基于内容项的标签提取得到的。服务器将多个内容项中,第二语义特征与第一语义特征之间相似度符合第一相似度条件的内容项确定为备选内容项。服务器基于多个召回条件在多个备选内容项中进行筛选,得到多个召回条件分别对应的多个候选内容项集合,每个候选内容项集合包括至少一个与召回条件对应的备选内容项,该备选内容项也即是候选内容项。
举例来说,服务器将搜索文本输入语义特征提取模型,通过语义特征提取模型对搜索文本进行语义识别,得到搜索文本的第一语义特征。在一些实施例中,语义特征提取模型为BERT(Bidirectional Encoder Representations from Transformers,双向Transformers编码器)、CNN或者RNN(Recurrent Neural Network,循环神经网络)等,本公开实施例对此不做限定。服务器获取搜索文本的第一语义特征与多个内容项的第二语义特征之间的相似度,将相似度大于第一相似度阈值的内容项确定为备选内容项,或者,将多个内容项中,与第一语义特征相似度最高的K个内容项确定为多个备选内容项,其中,K为正整数。在一些实施例中,多个内容项以及多个内容项的第二语义特征存储在服务器对应维护的数据库中,服务器能够采用第一语义特征在该数据库中进行比对,从数据库中获取多个备选内容项。在一些实施例中,多个备选内容项的第二语义特征由服务器在步骤S302之前提取完毕后存储在数据库中。当然,若该数据库未存储多个内容项,多个内容项存储在服务器上,该数据库中存储有多个内容项在服务器上的存储位置以及多个内容项的第二语义特征,那么服务器能够采用第一语义特征在该数据库中进行比对,从该数据库中获取多个备选内容项在服务器上的存储位置。服务器从对应的存储位置上获取多个备选内容项。服务器基于多个召回条件对多个备选内容项进行筛选,从多个备选内容项中获取每个召回条件对应的候选内容项集合。
需要说明的是,服务器能够采用上述任一种方式来召回多个候选内容项,本公开实施例对此不做限定。当然,随着科学技术的发展,服务器也能够采用其他方式来召回多个候选内容项,并将多个候选内容项分别存储在多个候选内容项集合中。
在一些实施例中,服务器对该搜索请求中的搜索文本进行预处理,得到预处理后的搜索文本。服务器基于该预处理后的搜索文本进行召回,得到该多个候选内容项。
通过对搜索文本进行预处理,能够消除搜索文本中的一些缺陷,基于预处理后的搜索文本进行内容项搜索,能够达到更加准确的效果。
举例来说,服务器对该搜索文本进行繁简转化,得到繁简转化后的搜索文本。服务器对该繁简转化后的搜索文本进行纠错,得到纠错后的搜索文本。服务器对该纠错后的搜索文本进行实体识别,得到该预处理后的搜索文本,该预处理后的搜索文本包括至少一个实体。服务器基于该预处理后的搜索文本中的至少一个实体进行召回,得到该多个候选内容项。其中,繁简转化是指将搜索文本中的繁体字转化为简体字。在一些实施例中,若搜索文本为外文,那么服务器也能够将外文翻译成中文。纠错是指对搜索文本中的错别字进行纠错,或者将搜索文本中的拼音转化为文字等。实体识别也即是服务器从搜索文本中确定出实体的过程,实现过程参见本步骤之前的描述,在此不再赘述。在一些实施例中,纠错以及实体识别也被称为QR(Query,查询)分析,在本公开实施例中,QR指代查询文本。得到预处理后的搜索文本中的至少一个实体之后,服务器基于该至少一个实体以及多个召回条件,在数据库中进行查询,得到多个候选内容项,多个候选内容项分布在多个候选内容项集合中,每个候选内容项集合对应于一个召回条件。
在这种实施方式下,通过执行繁简转化能够将繁体字转化为简体字,便于服务器后续的召回和排序。通过进行纠错,取出搜索文本中的一些错误,提高召回和排序的准确性。通过实体识别,得到多个实体,采用实体来进行召回和排序的效率较高。通过上述预处理过程,能够提高后续搜索的效率和准确性。
在一些实施例中,该采用该搜索文本在多个召回条件下进行召回,得到多个候选内容项集合之后,响应于该多个候选内容项集合中任意两个候选内容项集合对应的召回条件为同一类型的召回条件,服务器将该任意两个候选内容项集合进行合并。
在这种实施方式下,服务器能够将同一类型的召回条件对应的内容项集合进行合并,从而减少内容项集合的数量,提高后续的运算效率。
举例来说,若多个召回条件包括两个召回条件为“通过A模型召回”和“通过B模型召回”,这两个召回条件为同一类型的召回条件,均是限定采用模型来进行召回,那么服务器能够将“通过A模型召回”对应的候选内容项集合与“通过B模型召回”对应的候选内容项集合进行合并,得到一个新的候选内容项集合,后续能够基于该新的候选内容项集合进行排序。
需要说明的是,服务器除了能够将同一类型的召回条件对应的候选内容项集合进行合并之外,还能够根据实际使用场景,灵活的对多个候选内容项集合进行合并,候选内容项集合的合并方式灵活可定制。
在步骤S303中,采用多个排序条件在该多个候选内容项中进行筛选,得到多个排序队列,每个该排序队列包括至少一个该候选内容项,该多个排序队列与该多个排序条件一一对应。
在一些实施例中,对于该多个排序条件中的第二排序条件,服务器基于该第二排序条件确定该多个候选内容项分别对应的多个第一排序参数。服务器基于该多个第一排序参数,从该多个候选内容项中筛选出多个第一内容项。服务器将该多个第一内容项填充至该第二排序条件对应的排序队列中。
举例来说,服务器基于该第二排序条件,为多个候选内容项进行打分,得到多个候选内容项分别对应的多个第一排序参数。服务器将该多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为该多个第一内容项,其中,第一参数阈值由技术人员根据实际情况进行设置,本公开实施例对此不做限定。或者,服务器按照第一排序参数从大至小的顺序,从该多个候选内容项中确定出该多个第一内容项。
在一些实施例中,在服务器基于该第二排序条件确定多个候选内容项分别对应的多个第一排序参数之前,服务器还能够基于第二排序条件对应的粗排条件对多个候选内容项进行一次粗排,得到多个第二内容项,也即是基于第二排序条件对多个候选内容项再进行一次筛选,以减少候选内容项的数量,提高运算效率。
需要说明的是,上述是以服务器基于一个排序条件进行排序的方法进行说明,在应用本公开实施例提供的内容项的搜索方法时,服务器能够同时基于多个排序条件进行排序,也即是以并行化的方式来进行排序,这样能够在同一时间构建多个排序队列,效率较高。在一些实施例中,服务器能够采用GPU(Graphics Processing Unit,图形处理器)来实现并行化排序。
下面将服务器基于不同排序条件进行排序的方法进行说明。
在一些实施例中,若该第二排序条件为时效排序,时效排序是指按照发布时间进行排序,那么对于多个候选内容项中发布时间越近的候选内容项的第一排序参数也就越高。服务器按照多个候选内容项的发布时间对多个候选内容项进行打分,得到多个候选内容项的第一排序参数,第一排序参数也就表示对应候选内容项发布时间的早晚。服务器将该多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为该多个第一内容项。或者,服务器按照第一排序参数从大至小的顺序,从该多个候选内容项中确定出该多个第一内容项。服务器将该多个第一内容项填充至该时效排序对应的排序队列中。在一些实施例中,时效排序对应的排序队列也被称为时效性队列,时效性队列在召回结果集合中采用最小堆的方法挖掘比较新或者短时间内发布的内容项进入本队列中,其中,召回结果集合也即是候选内容项集合。
为了进一步提升排序的效率,服务器还能够基于该第二排序条件,也即是时效排序对应的粗排条件,对多个候选内容项进行粗排,得到多个第二内容项。由于该第二排序条件为时效排序,那么服务器能够基于时效排序对应的粗排条件,比如为“获取发布时间晚于XXX的内容项”,那么服务器能够将多个候选内容项中,发布时间晚于XXX的内容项获取为多个第二内容项。服务器按照多个第二内容项的发布时间对多个第二内容项进行打分,得到多个第二内容项的第一排序参数。服务器将该多个第二内容项中,第一排序参数大于第一参数阈值的多个第二内容项确定为该多个第一内容项。或者,服务器按照第一排序参数从大至小的顺序,从该多个第二内容项中确定出该多个第一内容项。服务器将该多个第一内容项填充至该时效排序对应的排序队列中。
在一些实施例中,若该第二排序条件为兴趣排序,兴趣排序是指按照目标账号感兴趣的顺序对多个候选内容项进行排序,其中,目标账号是发送该搜索请求的账号。服务器获取该目标账号的兴趣特征,兴趣特征是基于目标账号的关注或订阅内容确定的。服务器获取该目标账号的兴趣特征与多个候选内容项的内容项特征之间的相似度。服务器基于兴趣特征与多个候选内容项的内容项特征之间的相似度对多个候选内容项进行打分,得到多个候选内容项的第一排序参数,第一排序参数也就表示对应候选内容项与兴趣特征之间的相似程度。服务器将该多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为该多个第一内容项。或者,服务器按照第一排序参数从大至小的顺序,从该多个候选内容项中确定出该多个第一内容项。服务器将该多个第一内容项填充至该兴趣排序对应的排序队列中。
为了进一步提升排序的效率,服务器还能够基于该第二排序条件,也即是兴趣排序对应的粗排条件,对多个候选内容项进行粗排,得到多个第二内容项。由于该第二排序条件为兴趣排序,那么服务器能够基于兴趣排序对应的粗排条件,比如为“获取XX类型的内容项”,XX类型的内容项也即是基于目标账号的兴趣特征确定出的类型,那么服务器能够将多个候选内容项中,XX类型的内容项获取为多个第二内容项。服务器基于兴趣特征与多个第二内容项的内容项特征之间的相似度对多个第二内容项进行打分,得到多个第二内容项的第一排序参数,第一排序参数也就表示对应第二内容项与兴趣特征之间的相似程度。服务器将该多个第二内容项中,第一排序参数大于第一参数阈值的多个第二内容项确定为该多个第一内容项。或者,服务器按照第一排序参数从大至小的顺序,从该多个第二内容项中确定出该多个第一内容项。服务器将该多个第一内容项填充至该兴趣排序对应的排序队列中。
在一些实施例中,若该第二排序条件为点击率排序,点击率排序是指按照目标账号对多个候选内容项的点击概率进行排序,其中,目标账号是发送该搜索请求的账号。服务器获取该目标账号的行为特征,行为特征是基于目标账号的点击行为确定的。服务器获取该目标账号的行为特征与多个候选内容项的内容项特征之间的相似度。服务器基于行为特征与多个候选内容项的内容项特征之间的相似度对多个候选内容项进行打分,得到多个候选内容项的第一排序参数,第一排序参数也就表示对应候选内容项与行为特征之间的相似程度。服务器将该多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为该多个第一内容项。或者,服务器按照第一排序参数从大至小的顺序,从该多个候选内容项中确定出该多个第一内容项。服务器将该多个第一内容项填充至该点击率排序对应的排序队列中。
为了进一步提升排序的效率,服务器还能够基于该第二排序条件,也即是点击率排序对应的粗排条件,对多个候选内容项进行粗排,得到多个第二内容项。由于该第二排序条件为点击率排序,那么服务器能够基于点击率排序对应的粗排条件,比如为“获取XX类型的内容项”,XX类型的内容项也即是基于目标账号的行为特征确定出的类型,那么服务器能够将多个候选内容项中,XX类型的内容项获取为多个第二内容项。服务器基于行为特征与多个第二内容项的内容项特征之间的相似度对多个第二内容项进行打分,得到多个第二内容项的第一排序参数,第一排序参数也就表示对应第二内容项与行为特征之间的相似程度。服务器将该多个第二内容项中,第一排序参数大于第一参数阈值的多个第二内容项确定为该多个第一内容项。或者,服务器按照第一排序参数从大至小的顺序,从该多个第二内容项中确定出该多个第一内容项。服务器将该多个第一内容项填充至该点击率排序对应的排序队列中。
在一些实施例中,若该第二排序条件为地域排序,地域排序是指按照目标账号所在位置与多个候选内容项的发布位置之间的距离进行排序,那么对于多个候选内容项中距离越近的候选内容项的第一排序参数也就越高。服务器按照多个候选内容项的距离对多个候选内容项进行打分,得到多个候选内容项的第一排序参数,第一排序参数也就表示对应候选内容项距离的远近。服务器将该多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为该多个第一内容项。或者,服务器按照第一排序参数从大至小的顺序,从该多个候选内容项中确定出该多个第一内容项。服务器将该多个第一内容项填充至该地域排序对应的排序队列中。
为了进一步提升排序的效率,服务器还能够基于该第二排序条件,也即是地域排序对应的粗排条件,对多个候选内容项进行粗排,得到多个第二内容项。由于该第二排序条件为地域排序,那么服务器能够基于地域排序对应的粗排条件,比如为“获取发布时的距离近于XXX的内容项”,那么服务器能够将多个候选内容项中,发布时的距离近于XXX的内容项获取为多个第二内容项。服务器按照多个第二内容项的距离对多个第二内容项进行打分,得到多个第二内容项的第一排序参数。服务器将该多个第二内容项中,第一排序参数大于第一参数阈值的多个第二内容项确定为该多个第一内容项。或者,服务器按照第一排序参数从大至小的顺序,从该多个第二内容项中确定出该多个第一内容项。服务器将该多个第一内容项填充至该地域排序对应的排序队列中。
需要说明的是,上述分别以四个排序条件为例进行说明,在其他可能的实施方式中,服务器也能够基于其他排序条件对多个候选内容项进行排序,得到其他排序条件对应的排序队列,本公开实施例对于排序条件不做限定。
另外,为了提高效率,服务器能够同时基于不同排序条件对多个候选内容项进行排序,也即是同步构建多个排序队列,不同排序队列之间相互独立,以减少排序消耗的时间,提高排序的效率。
在一些实施例中,在该多个排序条件中的第一排序条件与该多个召回条件中的第一召回条件匹配的情况下,服务器采用该第一排序条件,在该第一召回条件对应的候选内容项集合中进行筛选,得到该第一排序条件对应的排序队列。在一些实施例中,召回条件和排序条件由技术人员根据实际情况进行设置,召回条件和排序条件之间的对应关系也由技术人员进行设置,本公开实施例对此不做限定。
其中,第一排序条件与第一召回条件匹配是指,第一排序条件为第一召回条件的一个子条件,或者,第一排序条件包含在第一召回条件中,或者,第一排序条件和第一召回条件的对应关系是由技术人员设置好的。
在这种实施方式下,服务器能够直接采用第一排序条件在第一召回条件对应的候选内容项集合中进行筛选,得到第一排序条件对应的排序队列,服务器也就无需在其他候选内容项集合中再进行筛选,提高生成第一排序条件对应的排序队列的效率。
在步骤S304中,从该多个排序队列中确定多个目标内容项,该多个目标内容项为该搜索文本对应的搜索结果。
在一些实施例中,服务器获取该多个候选内容项分别对应的多个第二排序参数。服务器基于该多个第二排序参数,从该多个排序队列中确定该多个目标内容项。
为了对上述实施方式进行更加清楚的说明,下面将分为两个部分对上述实施方式进行说明。
第一部分、服务器获取该多个候选内容项分别对应的多个第二排序参数。
在一些实施例中,对于该多个排序队列中的任一候选内容项,服务器获取该候选内容项与该搜索文本之间的内容相关性参数、该候选内容项与该搜索文本之间的领域相关性参数、该候选内容项的点击率参数、以及该候选内容项的新鲜度参数中的至少一项。服务器基于该候选内容项与该搜索文本之间的内容相关性参数、该搜索文本之间的领域相关性参数、该候选内容项的点击率参数、以及该候选内容项的新鲜度参数中的至少一项,获取该候选内容项的第二排序参数。
在这种实施方式下,服务器能够采用多种参数或者多种参数的组合来对多个候选内容项进行打分,得到多个候选内容项的第二排序参数,第二排序参数也可以视作多个候选内容项对应的分数。多种参数或者多种参数的组合也能够对候选内容项进行综合打分,第二排序参数也就能够更加准确地反应候选内容项的质量。对于多个候选内容项来说,由于采用了相同的打分机制,对多个候选内容项的第二排序参数也就是公平可比较的。
其中,该候选内容项与该搜索文本之间的内容相关性参数用于描述候选内容项的内容与该搜索文本的内容之间的相关性,内容相关性参数能够由服务器基于搜索文本的第一语义特征和该候选内容项的第二语义特征之间的相似度确定,内容项相关性参数越高,也就表示该候选文本和该候选内容项在内容上的相似度越高。领域相关性参数用于描述候选内容项在对应领域的权威性,领域相关性参数越高,表明该候选内容项在对应领域的权威性越高,权威性越高也就能够表示该候选内容项的质量越高。领域相关性参数由对应领域的专家给出。点击率参数用于表示目标账号点击该候选内容项的概率,目标账号也即是发送该搜索请求的账号,点击率参数由服务器通过目标账号的行为特征确定。新鲜度参数用于表示该候选内容项的新鲜程度,新鲜程度用于表示该候选内容项发布时间的早晚,新鲜程度越高,那么该候选内容项的发布时间也就越晚,该候选内容项的内容较为新鲜。新鲜程度越低,那么该候选内容项的发布时间也就越早,该候选内容项的内容较为陈旧。
在一些实施例中,对于该多个排序队列中的任一候选内容项,服务器能够基于下述公式(1)来获取该候选内容项的第二排序参数。
其中,finalscore为第二排序参数,relevance为内容相关性参数,为内容相关性参数对应的权重,ctr为点击率参数,为点击率参数对应的权重,authority为领域相关性参数,为领域相关性参数对应的权重,freshscore为新鲜度参数,为新鲜度参数对应的权重,其中,以及的取值范围均为(0-1),以及由技术人员根据实际情况进行设置。在一些实施中,公式(1)也被称为专家公式。
在一些实施例中,对于该多个排序队列中的任一候选内容项,服务器获取该候选内容项与目标账号的账号特征之间的相似度,该目标账号为发送该搜索请求的账号。服务器将该候选内容项与该账号特征之间的相似度确定为该候选内容项的第二排序参数。
在这种实施方式下。服务器能够确定候选内容项与目标账号的账号特征之间的相似度,将该相似度确定为对应候选内容项的第二排序参数,由于目标账号的账号特征能够在一定程度上反映目标账号的喜好,通过这样的方式确定出的第二排序参数的也就更加贴近目标账号的喜好,搜索的结果较好。
举例来说,服务器能够采用向量的形式来表示候选内容项和目标账号的账号特征,将候选内容项对应的向量以及账号特征对应的向量之间的余弦相似度确定为对应候选内容项的第二排序参数。
第二部分、服务器基于该多个第二排序参数,从该多个排序队列中确定该多个目标内容项。
在一些实施例中,服务器将该多个排序队列中,第二排序参数大于第二参数阈值的多个候选内容项确定为该多个目标内容项。其中,第二参数阈值由技术人员根据实际情况进行设置,本公开实施例对此不做限定。
举例来说,服务器同时在多个排序队列中比较候选内容项的第二排序参数与第二参数阈值。服务器同时从多个排序队列中,获取第二排序参数大于第二参数阈值的候选内容项,将从不同排序队列中获取到的候选内容项填充得到目标排序队列,目标排序队列中的候选内容项也即是目标内容项。
在一些实施例中,服务器从该多个排序队列分别中获取第二排序参数最大的N个候选内容项,得到该多个目标内容项,N为正整数。
在这种实施方式下,服务器能够将多个排序队列中第二排序参数最大的N个候选内容项获取为目标内容项,多个目标内容项也就来自于不同的排序队列,而不同的排序队列对应于不同的排序条件,那么最终获得的多个目标内容项也就来自于不同排序条件,保证在各个排序条件下的相关内容项均能够被选为最终的搜索结果,从而避免一些强相关内容项被忽略的现象,提高搜索的效果。
举例来说,服务器同时从多个排序队列中,获取第二排序参数最大的N个候选内容项,将获取到的候选内容项填充得到目标排序队列,目标排序队列中的候选内容项也即是目标内容项。在一些实施例中,这种方式也即是从多个排序队列中,选取Top N个第二排序参数对应的候选内容项作为目标内容项。在一些实施例中,对于不同排序队列来说,技术人员能够配置不同的N,这样服务器也就能够从不同排序队列中获取不同数量的候选内容项,在一些实施例中,这个过程也被称为排序后的干预,技术人员能够控制服务器从哪个排序队列获取更多数量的目标内容项,从哪个排序队列获取更少数量的目标内容项,防止某一类排序条件对应的结果数过多影响其他排序条件对应的结果。比如,技术人员为排序队列A配置的N为5,为排序队列B配置的N为3,为排序队列C配置的N为4。在这种情况下,服务器也就从排序队列A中获取5个候选内容项作为目标内容项,从排序队列B中获取3个候选内容项作为目标内容项,从排序队列C中获取4个候选内容项作为目标内容项。
在一些实施例中,服务器按照第二排序参数从大至小的顺序,从该多个排序队列中确定出该多个目标内容项。
在这种实施方式下,服务器能够从多个排序队列中确定出第二排序参数最高的多个候选内容项作为多个目标内容项,由于第二排序参数能够在一定程度上反映内容项的质量,这样筛选出的多个目标内容项的质量也就较高。
在一些实施例中,响应于该多个排序条件中的第三排序条件为目标类型的排序条件,服务器将该第三排序条件对应的排序队列中的候选内容项确定为该搜索文本对应的搜索结果,该目标类型为该搜索文本指示的类型。
在这种实施方式下,若搜索文本指示了排序条件的类型,那么服务器能够直接从目标类型的排序条件对应的排序队列中获取目标内容项,也即是从该排序队列中获取搜索结果,无需再从其他排序队列中获取目标内容项,效率较高。同时,也无需改变搜索引擎的结构,本公开实施例提供的内容项的搜索方法的应用场景更加广泛。
举例来说,若搜索文本中携带用于指示排序条件的实体,那么服务器基于该实体确定目标类型,基于目标类型的排序条件对多个候选内容项进行筛选,得到多个目标内容项。比如,一个搜索文本为“请查找XX的视频”,其中,视频也即是一个用于指示排序条件的实体,服务器基于该实体“视频”,确定目标类型的排序条件为“获取视频”。服务器能够将排序条件“获取视频”对应的排序队列中的候选内容项确定为目标内容项。
可选地,服务器从该多个排序队列中确定多个目标内容项之后,还能够执行下述任一项:
在一些实施例中,在该多个目标内容项中存在相同类型的目标内容项的情况下,将该多个目标内容项中相同类型的目标内容项划分为一个查询结果组。在一些实施例中,这种实施方式也被称为类聚。
在这种实施方式下,服务器能够将相同类型的目标内容项划分为一个查询结果组,比如将目标内容项中的视频划分为一个查询结果组,这样便于后续在不同的结果展示页中展示查询结果,提高人机交互的效率。
在一些实施例中,在该多个目标内容项中存在重复的目标内容项的情况下,将该重复的目标内容项从该多个目标内容项中删除。
在这种实施方式下,服务器能够将多个目标内容项中重复的内容项删除,以精简目标内容项的数量,避免无意义的重复。
下面将结合图5以及上述步骤S301-S304中各个可选的实施方式,对本公开实施例提供的内容项的搜索方法进行说明。
参见图5,服务器从查询请求中获取查询文本Query,对查询文本Query进行预处理,对预处理后的查询文本Query进行分析,得到至少一个实体。服务器基于多个召回条件和至少一个实体构建语法树,基于构建的语法树进行召回,得到多个候选内容项,多个候选内容项分布在多个候选内容项集合中,不同候选内容项集合对应于不同的召回条件。在处理过程中,服务器基于不同召回条件进行同步召回,以提高召回的效率,在一些实施例中,这种召回方式也被称为多路召回。得到多个候选内容项集合之后,服务器能够将多个候选内容项集合进行融合,融合的方式不限。服务器采用多个排序条件同时对多个候选内容项集合中的候选内容项进行粗排和精排,得到多个排序队列,每个排序队列包括至少一个候选内容项,一个排序队列对应于一个排序条件。服务器对多个排序队列进行组合排序,也即是从每个排序队列中获取第二排序参数TOP N个候选内容项作为多个目标内容项,或者说是多个排序队列的TOP N混排,对多个目标内容项进行相似控制,也即是进行类聚合和去重,得到最终的搜索结果。
在步骤S305中,将该多个目标内容项发送给该搜索请求的发送端。
在一些实施例中,搜索请求的发送端也即是步骤S301中的终端,终端接收到多个目标内容项之后,能够在搜索界面中显示多个目标内容项,用户也就能够通过终端来查看多个输入的搜索文本对应的搜索结果。
需要说明的是,上述步骤S301-S305是以服务器为执行主体为例进行说明的,在其他可能的实施方式中,上述步骤S301-S304也能够由终端作为执行主体来执行,在步骤S304之后,终端能够直接显示多个目标内容项,无需执行上述步骤S305的发送步骤。
通过本公开实施例提供的技术方案,接收到搜索请求之后基于搜索文本进行召回,对召回的候选内容项按照不同的排序条件进行排序,将不同排序条件筛选出的候选内容项分别放在不同的排序队列中。在最终确定搜索结果时,是从多个排序队列中确定的,也就保证在各个排序条件下的相关内容项均能够被选为最终的搜索结果,从而避免一些与搜索文本强相关内容项被忽略的现象,提高搜索的效果。
本公开实施例中,通过对召回的异构资源进行灵活的配置化、定制化的合并策略,打破强制化合并方案,克服了在传统搜索引擎接入异构资源场景下存在优质结果丢失的现象,其中,资源也即是内容项,异构资源是指不同类型的内容项。另外,通过对排序阶段提出多队列排序,采用统一专家公式拟合来进行打分,保证最终的结果序有意义,不同排序需求间不受影响,提升了研发效率和问题拆解更加清晰,简化了系统结构和问题定位周期,同时减少迭代难度,具有很强的执行力和约束能力。
图6是根据一示例性实施例示出的一种内容项的搜索装置的框图。参照图6,该装置包括:召回单元601、排序单元602以及确定单元603。
召回单元601,被配置为执行根据搜索请求中的搜索文本进行召回,得到多个候选内容项,所述多个候选内容项为与所述搜索文本相关的内容项;
排序单元602,被配置为执行采用多个排序条件在所述多个候选内容项中进行筛选,得到多个排序队列,每个所述排序队列包括至少一个所述候选内容项,所述多个排序队列与所述多个排序条件一一对应;
确定单元603,被配置为执行从所述多个排序队列中确定多个目标内容项,所述多个目标内容项为所述搜索文本对应的搜索结果。
在一些实施例中,所述召回单元601,被配置为执行采用所述搜索文本在多个召回条件下进行召回,得到多个候选内容项集合,所述多个候选内容项集合与所述多个召回条件一一对应,所述多个候选内容项分布在所述多个候选内容项集合中。
在一些实施例中,所述排序单元602,被配置为执行在所述多个排序条件中的第一排序条件与所述多个召回条件中的第一召回条件匹配的情况下,采用所述第一排序条件,在所述第一召回条件对应的候选内容项集合中进行筛选,得到所述第一排序条件对应的排序队列。
在一些实施例中,所述装置还包括:
合并单元,被配置为执行响应于所述多个候选内容项集合中任意两个候选内容项集合对应的召回条件为同一类型的召回条件,将所述任意两个候选内容项集合进行合并。
在一些实施例中,所述排序单元602,被配置为执行对于所述多个排序条件中的第二排序条件,基于所述第二排序条件确定所述多个候选内容项分别对应的多个第一排序参数;基于所述多个第一排序参数,从所述多个候选内容项中筛选出多个第一内容项;将所述多个第一内容项填充至所述第二排序条件对应的排序队列中。
在一些实施例中,所述排序单元602,被配置为执行下述任一项:
将所述多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为所述多个第一内容项;
按照第一排序参数从大至小的顺序,从所述多个候选内容项中确定出所述多个第一内容项。
在一些实施例中,所述确定单元603,被配置为执行获取所述多个候选内容项分别对应的多个第二排序参数;基于所述多个第二排序参数,从所述多个排序队列中确定所述多个目标内容项。
在一些实施例中,所述确定单元603,被配置为执行对于所述多个排序队列中的任一候选内容项,获取所述候选内容项与所述搜索文本之间的内容相关性参数、所述搜索文本之间的领域相关性参数、所述候选内容项的点击率参数、以及所述候选内容项的新鲜度参数中的至少一项;基于所述候选内容项与所述搜索文本之间的内容相关性参数、所述候选内容项与所述搜索文本之间的领域相关性参数、所述候选内容项的点击率参数、以及所述候选内容项的新鲜度参数中的至少一项,获取所述候选内容项的第二排序参数。
在一些实施例中,所述确定单元603,被配置为执行下述任一项:
将所述多个排序队列中,第二排序参数大于第二参数阈值的多个候选内容项确定为所述多个目标内容项;
从所述多个排序队列分别中获取第二排序参数最大的N个候选内容项,得到所述多个目标内容项,N为正整数;
按照第二排序参数从大至小的顺序,从所述多个排序队列中确定出所述多个目标内容项。
在一些实施例中,所述确定单元603,还被配置为执行响应于所述多个排序条件中的第三排序条件为目标类型的排序条件,将所述第三排序条件对应的排序队列中的候选内容项确定为所述搜索文本对应的搜索结果,所述目标类型为所述搜索文本指示的类型。
在一些实施例中,所述装置还包括下述任一项:
划分单元,被配置为执行在所述多个目标内容项中存在相同类型的目标内容项的情况下,将所述多个目标内容项中相同类型的目标内容项划分为一个查询结果组;
删除单元,被配置为执行在所述多个目标内容项中存在重复的目标内容项的情况下,将所述重复的目标内容项从所述多个目标内容项中删除。
在一些实施例中,所述召回单元601,被配置为执行对所述搜索请求中的搜索文本进行预处理,得到预处理后的搜索文本;基于所述预处理后的搜索文本进行召回,得到所述多个候选内容项。
在一些实施例中,所述召回单元601,被配置为执行对所述搜索文本进行繁简转化,得到繁简转化后的搜索文本;对所述繁简转化后的搜索文本进行纠错,得到纠错后的搜索文本;对所述纠错后的搜索文本进行实体识别,得到所述预处理后的搜索文本,所述预处理后的搜索文本包括至少一个实体。
在一些实施例中,所述召回单元601,被配置为执行基于所述预处理后的搜索文本中的至少一个实体进行召回,得到所述多个候选内容项。
在一些实施例中,所述装置还包括:
发送单元,被配置为执行将所述多个目标内容项发送给所述搜索请求的发送端。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
通过本公开实施例提供的技术方案,接收到搜索请求之后基于搜索文本进行召回,对召回的候选内容项按照不同的排序条件进行排序,将不同排序条件筛选出的候选内容项分别放在不同的排序队列中。在最终确定搜索结果时,是从多个排序队列中确定的,也就保证在各个排序条件下的相关内容项均能够被选为最终的搜索结果,从而避免一些与搜索文本强相关内容项被忽略的现象,提高搜索的效果。
在本公开实施例中,电子设备可以实现为服务器,下面对服务器的结构进行说明:
图7是根据一示例性实施例示出的一种服务器700的框图,该服务器700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)701和一个或一个以上的存储器702。该存储器702中存储有至少一条指令,该至少一条指令由该处理器701加载并执行以实现上述内容项的搜索方法。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器,上述指令可由服务器700的处理器701执行以完成上述内容项的搜索方法。可选的,存储介质可以是非临时性存储介质,例如,所述非临时性存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,包括计算机程序,该计算机程序可以由电子设备的处理器执行,以实现上述内容项的搜索方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种内容项的搜索方法,其特征在于,包括:
根据搜索请求中的搜索文本进行召回,得到多个候选内容项,所述多个候选内容项为与所述搜索文本相关的内容项;
采用多个排序条件在所述多个候选内容项中进行筛选,得到多个排序队列,每个所述排序队列包括至少一个所述候选内容项,所述多个排序队列与所述多个排序条件一一对应;
从所述多个排序队列中确定多个目标内容项,所述多个目标内容项为所述搜索文本对应的搜索结果。
2.根据权利要求1所述的内容项的搜索方法,其特征在于,所述根据搜索请求中的搜索文本进行召回,得到多个候选内容项包括:
采用所述搜索文本在多个召回条件下进行召回,得到多个候选内容项集合,所述多个候选内容项集合与所述多个召回条件一一对应,所述多个候选内容项分布在所述多个候选内容项集合中。
3.根据权利要求2所述的内容项的搜索方法,其特征在于,所述采用多个排序条件在所述多个候选内容项中进行筛选,得到多个排序队列包括:
在所述多个排序条件中的第一排序条件与所述多个召回条件中的第一召回条件匹配的情况下,采用所述第一排序条件,在所述第一召回条件对应的候选内容项集合中进行筛选,得到所述第一排序条件对应的排序队列。
4.根据权利要求2所述的内容项的搜索方法,其特征在于,所述采用所述搜索文本在多个召回条件下进行召回,得到多个候选内容项集合之后,所述方法还包括:
响应于所述多个候选内容项集合中任意两个候选内容项集合对应的召回条件为同一类型的召回条件,将所述任意两个候选内容项集合进行合并。
5.根据权利要求1所述的内容项的搜索方法,其特征在于,所述采用多个排序条件在所述多个候选内容项中进行筛选,得到多个排序队列包括:
对于所述多个排序条件中的第二排序条件,基于所述第二排序条件确定所述多个候选内容项分别对应的多个第一排序参数;
基于所述多个第一排序参数,从所述多个候选内容项中筛选出多个第一内容项;
将所述多个第一内容项填充至所述第二排序条件对应的排序队列中。
6.根据权利要求5所述的内容项的搜索方法,其特征在于,所述基于所述多个第一排序参数,从所述多个候选内容项中筛选出多个第一内容项包括下述任一项:
将所述多个候选内容项中,第一排序参数大于第一参数阈值的多个候选内容项确定为所述多个第一内容项;
按照第一排序参数从大至小的顺序,从所述多个候选内容项中确定出所述多个第一内容项。
7.一种内容项的搜索装置,其特征在于,包括:
召回单元,被配置为执行根据搜索请求中的搜索文本进行召回,得到多个候选内容项,所述多个候选内容项为与所述搜索文本相关的内容项;
排序单元,被配置为执行采用多个排序条件在所述多个候选内容项中进行筛选,得到多个排序队列,每个所述排序队列包括至少一个所述候选内容项,所述多个排序队列与所述多个排序条件一一对应;
确定单元,被配置为执行从所述多个排序队列中确定多个目标内容项,所述多个目标内容项为所述搜索文本对应的搜索结果。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的内容项的搜索方法。
9.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至6中任一项所述的内容项的搜索方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6中任一项所述的内容项的搜索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110948733.8A CN113672700B (zh) | 2021-08-18 | 2021-08-18 | 内容项的搜索方法、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110948733.8A CN113672700B (zh) | 2021-08-18 | 2021-08-18 | 内容项的搜索方法、装置、电子设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113672700A true CN113672700A (zh) | 2021-11-19 |
CN113672700B CN113672700B (zh) | 2023-10-13 |
Family
ID=78543582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110948733.8A Active CN113672700B (zh) | 2021-08-18 | 2021-08-18 | 内容项的搜索方法、装置、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113672700B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116881567A (zh) * | 2023-07-21 | 2023-10-13 | 北京火山引擎科技有限公司 | 用于内容推送的内容排序方法、装置、电子设备和介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103092858A (zh) * | 2011-11-01 | 2013-05-08 | 阿里巴巴集团控股有限公司 | 一种搜索方法及其装置 |
CN108897685A (zh) * | 2018-06-28 | 2018-11-27 | 百度在线网络技术(北京)有限公司 | 搜索结果的质量评估方法、装置、服务器和介质 |
CN112000871A (zh) * | 2020-08-21 | 2020-11-27 | 北京三快在线科技有限公司 | 确定搜索结果列表的方法、装置、设备及存储介质 |
CN113254810A (zh) * | 2021-06-17 | 2021-08-13 | 浙江口碑网络技术有限公司 | 搜索结果输出方法、装置、计算机设备及可读存储介质 |
-
2021
- 2021-08-18 CN CN202110948733.8A patent/CN113672700B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103092858A (zh) * | 2011-11-01 | 2013-05-08 | 阿里巴巴集团控股有限公司 | 一种搜索方法及其装置 |
CN108897685A (zh) * | 2018-06-28 | 2018-11-27 | 百度在线网络技术(北京)有限公司 | 搜索结果的质量评估方法、装置、服务器和介质 |
CN112000871A (zh) * | 2020-08-21 | 2020-11-27 | 北京三快在线科技有限公司 | 确定搜索结果列表的方法、装置、设备及存储介质 |
CN113254810A (zh) * | 2021-06-17 | 2021-08-13 | 浙江口碑网络技术有限公司 | 搜索结果输出方法、装置、计算机设备及可读存储介质 |
Non-Patent Citations (1)
Title |
---|
WEIXIN_40666476: "推荐系统实践1——多路召回", Retrieved from the Internet <URL:https://blog.csdn.net/weixin_40666476/article/details/110411244> * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116881567A (zh) * | 2023-07-21 | 2023-10-13 | 北京火山引擎科技有限公司 | 用于内容推送的内容排序方法、装置、电子设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113672700B (zh) | 2023-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109408622B (zh) | 语句处理方法及其装置、设备和存储介质 | |
CN111753060B (zh) | 信息检索方法、装置、设备及计算机可读存储介质 | |
US20210232761A1 (en) | Methods and systems for improving machine learning performance | |
CN108287858B (zh) | 自然语言的语义提取方法及装置 | |
US11899681B2 (en) | Knowledge graph building method, electronic apparatus and non-transitory computer readable storage medium | |
US12120070B2 (en) | Providing local service information in automated chatting | |
US8577882B2 (en) | Method and system for searching multilingual documents | |
US20190073416A1 (en) | Method and device for processing question clustering in automatic question and answering system | |
US11361759B2 (en) | Methods and systems for automatic generation and convergence of keywords and/or keyphrases from a media | |
US20220121668A1 (en) | Method for recommending document, electronic device and storage medium | |
CN110209781B (zh) | 一种文本处理方法、装置以及相关设备 | |
CN116797195A (zh) | 工单处理方法、装置、计算机设备和计算机可读存储介质 | |
US11379527B2 (en) | Sibling search queries | |
CN109033082B (zh) | 语义模型的学习训练方法、装置及计算机可读存储介质 | |
CN117873433A (zh) | 描述文件获取方法、装置、电子设备及存储介质 | |
CN113672700B (zh) | 内容项的搜索方法、装置、电子设备以及存储介质 | |
CN117421413A (zh) | 一种问答对生成方法、装置及电子设备 | |
CN112860929A (zh) | 一种图片搜索方法、装置、电子设备及存储介质 | |
WO2019231635A1 (en) | Method and apparatus for generating digest for broadcasting | |
KR20240052055A (ko) | 교차-모달 검색 방법 및 관련 디바이스 | |
CN116010571A (zh) | 知识库构建方法、信息查询方法、装置以及设备 | |
CN111797765B (zh) | 图像处理方法、装置、服务器及存储介质 | |
CN113449094A (zh) | 语料获取方法、装置、电子设备及存储介质 | |
US20240020482A1 (en) | Corpus Annotation Method and Apparatus, and Related Device | |
CN112905884B (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 |