掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本申请涉及计算机技术领域,尤其涉及一种搜索方法、装置、电子设备及存储介质。

背景技术

搜索引擎一般分为通用搜索引擎和垂直搜索引擎。通用搜索引擎将所有网站上的信息整合到一个平台提供服务。而垂直搜索引擎是针对某一个行业的专业搜索引擎,甚至是某一家公司的一个站内搜索服务。因而,对于某一专业方面的搜索,垂直搜索引擎返回的搜索结果比通用搜索引擎返回的结果更加准确。

然而,无论是通用搜索引擎还是垂直搜索引擎,目前仅仅是将搜索到的结果直接展示给用户,从而使得搜索结果并不符合用户的预期。

由此可见,目前搜索引擎返回的搜索结果的准确率较低。

发明内容

本申请实施例提供一种搜索方法、装置、电子设备及存储介质,以解决目前搜索引擎返回的搜索结果的准确率较低的问题。

为了解决上述技术问题,本申请是这样实现的:

第一方面,本申请实施例提供了一种搜索方法,所述方法包括:

获取搜索语句;

根据所述搜索语句,获取至少一条第一搜索结果;

确定所述搜索语句与每一条所述第一搜索结果的相关性评分;

从所述第一搜索结果中选出第二搜索结果,其中,所述第二搜索结果为相关性评分大于第一阈值的所述第一搜索结果;

确定所述第二搜索结果的返回参数,其中,所述返回参数用于表示所述第二搜索结果被执行预设操作的概率;

根据所述返回参数,从所述第二搜索结果中选出至少一个搜索结果进行显示。

第二方面,本申请实施例另外提供了一种封面图片的显示装置,所述装置包括:

搜索语句获取模块,用于获取搜索语句;

第一结果获取模块,用于根据所述搜索语句,获取至少一条第一搜索结果;

评分确定模块,用于确定所述搜索语句与每一条所述第一搜索结果的相关性评分;

筛选模块,用于从所述第一搜索结果中选出第二搜索结果,其中,所述第二搜索结果为相关性评分大于第一阈值的所述第一搜索结果;

参数确定模块,用于确定所述第二搜索结果的返回参数,其中,所述返回参数用于表示所述第二搜索结果被执行预设操作的概率;

显示模块,用于根据所述返回参数,从所述第二搜索结果中选出至少一个搜索结果进行显示。

第三方面,本申请实施例另外提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如前第一方面所述的搜索方法的步骤。

第四方面,本申请实施例另外提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前第一方面所述的搜索方法的步骤。

在本申请实施例中,能够获取搜索语句,根据该搜索语句,获取至少一条第一搜索结果,从而确定搜索语句与每一条第一搜索结果的相关性评分,并选出相关性评分大于第一阈值的第一搜索结果,以作为第二搜索结果,然后确定第二搜索结果的返回参数,从而根据返回参数,从第二搜索结果中选出至少一个搜索结果进行显示。其中,所述返回参数用于表示所述第二搜索结果被执行预设操作的概率,即返回参数表示用户对第二搜索结果的兴趣程度。因此,本申请的实施例,可以选择相关性评分较高且用户感兴趣的搜索结果进行展示,从而使得用户可以查看到符合搜索目的且自身感兴趣的搜索结果,进而提升了返回的搜索结果的准确度。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种搜索方法的步骤流程图;

图2是本申请实施例提供的搜索装置的具体实施方式的结构及原理示意图;

图3是本申请实施例中的意图识别层执行的步骤流程示意图;

图4是本申请实施例中概率预测模型的训练流程示意图;

图5是本申请实施例中概率预测模型的迭代更新流程示意图;

图6是本申请实施例提供的封面图片的显示装置的结构框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例的搜索方法可以运行于终端设备或者是服务器。其中,终端设备可以为本地终端设备。当该方法运行于为服务器时,可以为云展示。

在一可选的实施方式中,云展示是指以云计算为基础的信息展示方式。在云展示的运行模式下,信息处理程序的运行主体和信息画面呈现主体是分离的,显示切换方法的储存与运行是在云展示服务器上完成的,云展示客户端的作用为数据的接收、发送以及信息画面的呈现,举例而言,云展示客户端可以是靠近用户侧的具有数据传输功能的显示设备,如,移动终端、电视机、计算机、掌上电脑等;但是进行信息数据处理的终端设备为云端的云展示服务器。在进行浏览时,用户操作云展示客户端向云展示服务器发送操作指令,云展示服务器根据操作指令展示信息,将数据进行编码压缩,通过网络返回云展示客户端,最后,通过云展示客户端进行解码并输出小区实景图以及地标实景图。

在另一可选的实施方式中,终端设备可以为本地终端设备。本地终端设备存储有应用程序并用于呈现应用界面。本地终端设备用于通过图形用户界面与用户进行交互,即,常规的通过电子设备下载安装应用程序并运行。该本地终端设备将图形用户界面提供给用户的方式可以包括多种,例如,可以渲染显示在终端的显示屏上,或者,通过全息投影提供给用户。举例而言,本地终端设备可以包括显示屏和处理器,该显示屏用于呈现图形用户界面,该图形用户界面包括应用画面,该处理器用于运行该应用程序、生成图形用户界面以及控制图形用户界面在显示屏上的显示。

本申请提供了一种搜索方法,可以选择相关性评分较高的搜索结果进行展示,并按照预测的用户对第二搜索结果的兴趣程度进行展示,从而使得用户可以优先查看其感兴趣的搜索结果,进而提升了返回的搜索结果的准确度。

参照图1,示出了本申请实施例中一种搜索方法的步骤流程图,该方法可以包括以下步骤101至107。

步骤101:获取搜索语句。

其中,当用户采用文本形式输入时,搜索语句为用户输入的文本内容;当用户采用图片形式输入时,搜索语句可以为输入的图片中包括的对象的名称和/或文本内容;当用户采用语音形式输入时,所述搜索语句为用户输入的语音信息中包括的文本内容。

步骤102:根据所述搜索语句,获取至少一条第一搜索结果。

本申请的实施例中,获取到搜索语句之后,会搜索与搜索语句相匹配的至少一条第一搜索结果。

步骤103:确定所述搜索语句与每一条所述第一搜索结果的相关性评分。

其中,相关性评分用于表示搜索语句与第一搜索结果的相关性或者匹配程度。即相关性评分越大,搜索语句与第一搜索结果越相关或越匹配;反之,相关性评分越小,搜索语句与第一搜索结果越不相关或越不匹配。

可选的,所述确定所述搜索语句与每一条所述第一搜索结果的相关性评分,包括:采用文本相似度BM25算法,计算所述搜索语句与每一条所述第一搜索结果的相关性评分。

其中,BM25是一种用来评价搜索词和文档之间相关性的算法,因此,在本申请的实施例中,可以采用BM25算法,计算搜索语句与每一条第一搜索结果的相关性评分。可以理解的是,计算搜索语句与每一条第一搜索结果的相关性评分的算法,并不局限于BM25一种。

步骤104:从所述第一搜索结果中选出第二搜索结果。

其中,所述第二搜索结果为相关性评分大于第一阈值的所述第一搜索结果。即本申请的实施例中,在确定出搜索语句与第一搜索结果的相关性评分之后,需要选出相关性评分大于第一阈值的第一搜索结果,以作为第二搜索结果。

步骤105:确定所述第二搜索结果的返回参数。

其中,所述返回参数用于表示所述第二搜索结果被执行预设操作的概率;即返回参数表示用户对第二搜索结果的兴趣程度。因此,返回参数越大,则表示第二搜索结果被执行预设操作的概率越大,即用户对该第二搜索结果感兴趣的程度越大;反之,返回参数越小,则表示第二搜索结果被执行预设操作的概率越小,即用户对该第二搜索结果感兴趣的程度越小。

另外,所述预设操作可以为点击操作、拖动操作、长按操作中的其中一种。例如用户点击一个搜索结果,或者拖动显示的一个搜索结果至预设位置(例如显示屏的右侧边缘),或者按压一个搜索结果在显示屏上的显示位置超过预设时间(例如2秒钟),则表示用户对这个搜索结果感兴趣,需要查看该搜索结果。

步骤106:根据所述返回参数,从所述第二搜索结果中选出至少一个搜索结果进行显示。

可选的,步骤106包括:按照所述返回参数从大到小的顺序,对所述第二搜索结果进行排序,获得目标排序;选择所述目标排序中前预设数量的所述第二搜索结果进行显示。

或者,步骤106可以包括:选出返回参数大于第四阈值的第二搜索结果进行显示。

由此可知,本申请的实施例中,可以根据返回参数的大小来选择需要显示的第二搜索结果,使得用户可以优先查看到返回参数较大的第二搜索结果,即使得用户可以查看到自己感兴趣的第二搜索结果。

可选的,步骤106在显示选出的第二搜索结果时,可以按照返回参数从大到小的顺序进行显示,从而使得用户可以优先看到自己感兴趣的搜索结果,进而可以进一步提升搜索结果的点击率。

由上述步骤101至106可知,本申请的实施例,能够获取搜索语句,根据该搜索语句,获取至少一条第一搜索结果,从而确定搜索语句与每一条第一搜索结果的相关性评分,并选出相关性评分大于第一阈值的第一搜索结果,以作为第二搜索结果,然后确定第二搜索结果的返回参数,从而根据返回参数,从第二搜索结果中选出至少一个搜索结果进行显示。其中,所述返回参数用于表示所述第二搜索结果被执行预设操作的概率,即返回参数表示用户对第二搜索结果的兴趣程度。因此,本申请的实施例,可以选择相关性评分较高且用户感兴趣的搜索结果进行展示,从而使得用户可以查看到符合搜索目的且自身感兴趣的搜索结果,进而提升了返回的搜索结果的准确度。

可选的,所述根据所述搜索语句,获取至少一条第一搜索结果,包括:

获取目标词语集合,其中,所述目标词语集合中包括所述搜索语句中的词语、所述搜索语句中的词语的同义词、所述搜索语句中的关键词、搜索语句中的词语的改写词中的至少一项;

分别获取与所述目标词语集合中的每一个词语相匹配的搜索结果,以作为所述第一搜索结果。

其中,搜索语句中的词语的改写词是按照搜索语句所表达的含义,对搜索语句中的词语改写之后的词语。即搜索语句中的词语的改写词是从搜索语句所表达的含义出发确定的,因此,搜索语句中的词语的改写词与搜索语句中的词语的同义词中可能存在不同的词语。

由此可知,本申请的实施例,获取到搜索语句之后,可以提取搜索语句中的词语、获取搜索语句中的词语的同义词、确定搜索语句中的关键词、基于搜索语句所表达的含义对搜索语句中的至少部分词语进行改写并获取这些改写词,从而将这些词语中的至少部分词语构成一个目标词语集合,进而可以分别获取与该目标词语中的每一个词语相匹配的搜索结果,以作为第一搜索结果。

因此,本申请的实施例,可以从多角度出发对搜索语句进行处理,提取搜索语句相关联的词语,进而可以根据这些词语获取到更多与搜索语句匹配的第一搜索结果,即可以获取到更加多样性的第一搜索结果。

由上述可知,本申请的实施例,可以针对搜索语句进行意图识别,从而获取可以代表用户的搜索意图的目标词语集合。亦即,本申请的实施例,可以从搜索语句从词语上所表达出的搜索意图,获取与搜索语句匹配的第一搜索结果。

可选的,所述分别获取与所述目标词语集合中的每一个词语相匹配的搜索结果,以作为所述第一搜索结果之前,所述方法还包括:

对所述目标词语集合中的词语进行去重处理。

其中,对目标词语中的词语进行去重处理之后,可以避免对同一词语,获取多次与该词语相匹配的搜索结果,进而简化了搜索流程,节省了搜索时间。

可选的,所述获取目标词语集合,包括:

对所述搜索语句处理为预设字体格式(例如进行全半角转换、进行繁简转换、进行错词替换),获得候选语句;

将所述候选语句进行分词处理(例如根据预先建立的词语库进行文本分词,并进行词性标注,进而去掉停用词),获得候选词语;

在所述候选词语包括的字符的总长度大于第三阈值时,执行如下步骤H1至H4中的至少一个步骤;

在所述候选词语包括的字符的总长度小于或等于第三阈值时,去掉所述候选词语中的形容词和副词中的至少一项,然后执行如下步骤H1至H3中的至少一个步骤,并将执行步骤H1至H3中的至少一个步骤之后获得的词语和/或候选词语作为目标词语集合中的词语;

步骤H1:获取候选词语的同义词;

步骤H2:从所述候选词语中提取关键词;

步骤H3:对所述候选词语进行改写,获得改写词。

此处需要说明的是,上述去掉候选词语中的形容词和/或副词的过程,主要是排除长搜索语句中的干扰项。

可选的,所述根据所述搜索语句,获取至少一条第一搜索结果,还包括:

确定所述搜索语句所属的目标类型;

根据预先建立的索引库中存储的目标内容与所述目标内容所属的类型,查找所述索引库中属于所述目标类型的目标内容,以作为所述第一搜索结果。

由此可知,本申请的实施例中,预先建立有索引库,该索引库中存储有目标内容以及目标内容所属的类型,从而可以确定搜索语句所属的目标类型,然后将索引库中属于该目标类型的目标内容作为第一搜索结果。

即本申请的实施例,可以从搜索语句所属的类型出发,获取与搜索语句匹配的第一搜索结果。

其中,所述目标内容包括视频文件、音频文件、文本文件中的至少一种。例如目标内容包括视频文件时,可以根据视频文件的视频内容确定其所属的类型(例如影视剧视频、物品销售视频、用户拍摄的视频等);目标内容包括音频文件时,可以根据该音频文件表达的主体确定其所属的类型(例如轻松类、悲伤类);目标内容包括文本文件时,可以根据文本文件的关键词确定其所属的类型。

可选的,所述根据所述搜索语句,获取至少一条第一搜索结果,还包括:

获取所述搜索语句的语义向量;

根据预先建立的索引库中存储的目标内容与所述目标内容的语义向量,查找与所述搜索语句的语义向量之间的距离小于第二阈值的目标内容,以作为所述第一搜索结果。

由此可知,本申请的实施例中,预先建立有索引库,该索引库中存储有目标内容以及目标内容的语义向量,从而可以获取搜索语句的语义向量,然后查找索引库中与搜索语句的语义向量的距离小于第二阈值的目标内容,即可以计算搜索语句的语义向量与索引库中的目标内容的语义向量的距离,并选出小于第二阈值的距离对应的目标内容,以作为第一搜索结果。

即本申请的实施例,可以从搜索语句的语义向量出发,获取与搜索语句匹配的第一搜索结果。

由上述可知,本申请的实施例中,可以针对搜索语句进行文本分析,获取上述目标词语集合,也可以获取搜索语句所属的类型,还可以获取搜索语句的语义向量,从而可以从多方面出发,获取到更多与搜索语句相匹配的第一搜索结果,进而可以从第一搜索结果中筛选出更多用户感兴趣的搜索结果。

可选的,预先建立有概率预测模型,所述概率预测模型的输入数据包括用户的特征信息、搜索语句的目标词语集合、搜索语句与搜索结果的相关性评分;

所述确定所述第二搜索结果的返回参数之前,所述方法还包括:

获取所述搜索语句相关联的用户的特征信息;

所述确定所述第二搜索结果的返回参数,包括:

将所述搜索语句相关联的用户的特征信息、所述搜索语句的目标词语集合、所述搜索语句与所述第二搜索结果的相关性评分,输入至所述概率预测模型,输出所述第二搜索结果的返回参数。

由上述可知,本申请的实施例中,会预先采用机器学习算法,对训练样本进行训练,以得到概率预测模型,从而可以利用概率预测模型获取第二搜索结果的返回参数。

其中,所述训练样本包括搜索语句相关联的用户的特征信息、搜索语句的目标词语集合、搜索语句与搜索结果的相关性评分、搜索结果是否被点击、搜索结果在展示时所处的显示位置(即显示搜索结果时的排位)、以及人工对搜索结果标注的评分。

即可以预先收集多个搜索语句以及各个搜索语句搜索到的搜索结果,从而根据这些搜索语句与搜索结果构建上述训练样本,进而采用机器学习算法,对这些训练样本进行训练,获得上述概率预测模型。

可选的,所述用户的特征信息包括用户的年龄、性别、所处地理位置中的至少一项。

可选的,所述根据所述返回参数,从所述第二搜索结果中选出至少一个搜索结果进行显示之后,方法还包括:

获取第三搜索结果的指示信息,其中,所述第三搜索结果为显示的所述第二搜索结果,所述指示信息用于指示所述第三搜索结果是否被执行所述预设操作;

根据所述搜索语句相关联的用户的特征信息、所述搜索语句的目标词语集合、所述搜索语句与所述第三搜索结果的相关性评分、所述第三搜索结果的显示位置、所述指示信息,更新所述概率预测模型。

即本申请的实施例中,在显示第三搜索结果之后,还可以获取第三搜索结果是否被执行预设操作的指示信息,从而根据该指示信息,以及搜索语句相关联的用户的特征信息、搜索语句的目标词语集合、搜索语句与第三搜索结果的相关性评分、第三搜索结果的显示位置,对概率预测模型进行更新,从而使得更新后的概率预测模型的输出结果更加准确,也即提高输出结果被执行预设操作的概率。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。

参照图2,示出了本申请实施例中一种搜索装置的结构框图,该搜索装置200可以包括以下模块:

搜索语句获取模块201,用于获取搜索语句;

第一结果获取模块202,用于根据所述搜索语句,获取至少一条第一搜索结果;

评分确定模块203,用于确定所述搜索语句与每一条所述第一搜索结果的相关性评分;

筛选模块204,用于从所述第一搜索结果中选出第二搜索结果,其中,所述第二搜索结果为相关性评分大于第一阈值的所述第一搜索结果;

参数确定模块205,用于确定所述第二搜索结果的返回参数,其中,所述返回参数用于表示所述第二搜索结果被执行预设操作的概率;

显示模块206,用于根据所述返回参数,从所述第二搜索结果中选出指示一个搜索结果进行显示。

可选的,所述第一结果获取模块202具体用于:

获取搜索语句的目标词语集合,其中,所述目标词语集合中包括所述搜索语句中的词语、所述搜索语句中的词语的同义词、所述搜索语句中的关键词、搜索语句中的词语的改写词中的至少一项;

分别获取与所述目标词语集合中的每一个词语相匹配的搜索结果,以作为所述第一搜索结果。

可选的,所述第一结果获取模块202还用于:

确定所述搜索语句所属的目标类型;

根据预先建立的索引库中存储的目标内容与所述目标内容所属的类型,查找所述索引库中属于所述目标类型的目标内容,以作为所述第一搜索结果。

可选的,所述第一结果获取模块202还用于:

获取所述搜索语句的语义向量;

根据预先建立的索引库中存储的目标内容与所述目标内容的语义向量,查找与所述搜索语句的语义向量之间的距离小于第二阈值的目标内容,以作为所述第一搜索结果。

可选的,所述评分确定模块203具体用于:

采用BM25算法,计算所述搜索语句与每一条所述第一搜索结果的相关性评分。

可选的,预先建立有概率预测模型,所述概率预测模型的输入数据包括用户的特征信息、搜索语句的目标词语集合、搜索语句与搜索结果的相关性评分;

所述装置还包括:

用户信息获取模块,用于获取所述搜索语句相关联的用户的特征信息;

所述参数确定模块205具体用于:

将所述搜索语句相关联的用户的特征信息、所述搜索语句的目标词语集合、所述搜索语句与所述第二搜索结果的相关性评分,输入至所述概率预测模型,输出所述第二搜索结果的返回参数。

可选的,所述装置还包括:

指示信息获取模块,用于获取第三搜索结果的指示信息,其中,所述第三搜索结果为显示的所述第二搜索结果,所述指示信息用于指示所述第三搜索结果是否被执行所述预设操作;

更新模块,用于根据所述搜索语句相关联的用户的特征信息、所述搜索语句的目标词语集合、所述搜索语句与所述第三搜索结果的相关性评分、所述第三搜索结果的显示位置、所述指示信息,更新所述概率预测模型。

由此可见,本申请的实施例中,能够获取搜索语句,根据该搜索语句,获取至少一条第一搜索结果,从而确定搜索语句与每一条第一搜索结果的相关性评分,并选出相关性评分大于第一阈值的第一搜索结果,以作为第二搜索结果,然后确定第二搜索结果的返回参数,从而根据返回参数,从第二搜索结果中选出至少一个搜索结果进行显示。其中,所述返回参数用于表示所述第二搜索结果被执行预设操作的概率,即返回参数表示用户对第二搜索结果的兴趣程度。因此,本申请的实施例,可以选择相关性评分较高且用户感兴趣的搜索结果进行展示,从而使得用户可以查看到符合搜索目的且自身感兴趣的搜索结果,进而提升了返回的搜索结果的准确度。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

示例性的,本申请实施例的搜索装置的具体实施方式可如下所述:

如图3所示,本申请实施例的搜索装置包括意图识别模块、召回模块、排序模块、索引构建模块和内容库。

第一方面,内容库向索引构建模块提供目标内容。

第二方面,索引构建模块,主要负责从内容侧出发,通过对内容库提供的目标内容进行处理,构建文本索引、标签索引、语义索引,并将构建的索引存储至索引库中,从而为召回模块提供索引查询服务。

即索引构建模块建立目标内容与目标内容的目标词语集合的索引关系(即文本索引)、建立目标内容与目标内容所属类型的索引关系(即标签索引)、建立目标内容与目标内容的语义向量的索引关系(即语义索引)。其中,目标词语集合包括目标内容关联的词语、目标内容关联的词语的同义词、目标内容关联的词语的改写词。目标内容关联的词语包括目标内容包括的文本信息中的词语。

第二方面,意图识别模块是最靠近用户输入端的处理模块,其主要负责对用户输入的搜索语句做一个全面的理解,发现用户搜索的真实意图,为下面的召回模块做好准备工作。

具体的,如图4所示,意图识别模块用于执行如下过程:

获取搜索语句;

对搜索语句进行预处理,即进行全半角转换、进行繁简转换、进行错词替换,获得候选语句;

对候选语句进行分词处理,即根据预先建立的词语库进行文本分词,并进行词性标注,进而去掉停用词,获得候选词语;

在候选词语包括的字符的总长度大于第三阈值时,获取候选词语的同义词、候选词语中的关键词、候选词语的改写词;

在所述候选词语包括的字符的总长度小于或等于第三阈值时,去掉所述候选词语中的形容词和副词中的至少一项,然后获取候选词语的同义词、候选词语中的关键词、候选词语改写词;

确定候选语句的类型。

其中,上述过程中获得的候选词语可以存储至原词集合中,候选词语的同义词可以存储至同义词集合中,候选词语中的关键词可以存储至关键词集合中,候选词语的改写词可以存储至改写词集合中,候选语句的类型可以存储至分类标签集合中。

另外,分类标签集合、原词集合、同义词集合、关键词集合、改写词集合,这些集合可统称为目标词语集合。其中,目标词语集合中的词语则可以作为用于用户意图数据输出至召回模块,以使得召回模块可以搜索与这些词语相匹配的第一搜索结果。

第三方面,召回模块利用意图识别层输出的用户意图数据,通过多路召回的方式,筛选出一批第一搜索结果组成候选内容集合,然后从该候选内容集合中筛选出一批第二搜索结果,从而将筛选出的第二搜索结果输出至排序模块进行处理。

具体的,如图3所示,召回模块用于执行如下过程:

执行文本召回过程,即根据意图识别模块输出的原词集合、同义词集合、关键词集合、改写词集合这些集合中的词语,从索引库中查找与这些词语相匹配的目标内容;

执行标签召回过程,即根据分类标签集合中的词语,从索引库中查找与属于这些词语所表示的类型的目标内容;

执行语义召回过程,即确定搜索语句的语义向量,然后计算搜索语句的语义向量与索引库中的目标内容的语义向量的距离,从而选出小于第二阈值的距离对应的目标内容;

其中,执行上述文本召回过程、标签召回过程以及语义召回过程后获得的目标内容,会作为与搜索语句匹配的第一搜索结果。

另外,召回模块获取到上述第一搜索结果之后,可以计算搜索语句与每一条第一搜索结果的相关性评分,从而选出相关性评分大于第一阈值的第一搜索结果,以作为第二搜索结果返回给排序模块进行处理。

第四方面,排序模块是针对召回模块返回的第二搜索结果排序,从而选出最符合用户需求的第二搜索结果,并展示给用户(即业务实现方)。

具体的,排序模块可以确定召回模块返回的第二搜索结果被用户点击的概率,从而按照概率从大到小的顺序对第二搜索结果继续排序,进而选出排位前N的第二搜索结果进行显示,N为正整数。

或者,可以预先确定不同召回过程召回的第二搜索结果的优先级不同,从而使得排序模块可以根据第二搜索结果来自的不同召回路径的优先级进行排序。例如文本召回过程、标签召回过程、语义召回过程的优先级逐渐降低,则可以按照该优先级顺序对第二搜索结果进行排序,进而选出排位前M的第二搜索结果进行显示,M为正整数。其中,来自同一召回过程的第二搜索结果可以随机排序,也可以根据第二搜索结果被用户点击的概率进行排序。

其中,预先建立有概率预测模型,用于确定搜索结果被用户点击的概率的概率预测模型。因此,该概率预测模型又可称为(点击通过率(CTR)预估模型)。其中,CTR预估模型的输入包括用户的特征信息、搜索语句的目标词语集合、搜索语句与搜索结果的相关性评分,因此,排序模块将搜索语句相关联的用户的特征信息、搜索语句的目标词语集合、搜索语句与第二搜索结果的相关性评分输入至概率预测模型,则可以输出第二搜索结果被用户点击的概率。

具体的,CTR预估模型的训练过程如图5所示,即构建训练样本,然后采用机器学习算法对训练样本进行训练。所述训练样本包括搜索语句相关联的用户的特征信息、搜索语句的目标词语集合、搜索语句与搜索结果的相关性评分、搜索结果是否被点击、搜索结果在展示时所处的显示位置、以及人工对搜索结果标注的评分。

其中,可以采用如下两种方式构建训练样本:

方式一:通过执行数据仓库(Hive)脚本方式从埋点日中搜索相关数据,获取到的数据集送入样本构建程序,即从数据集中提取前述训练样本包括的信息,得到多个训练样本,从而将训练样本存储分布式文件系统(HDFS)中。

方式二:将埋点日志发送至分布式发布订阅消息系统(kafka),从而采用开源流处理框架(flink)从kafka中存储的埋点日志中读取搜索记录,将搜索记录存储至关系型数据库管理系统(MySQL),并将搜索记录同步存储至生成Hive表,然后从Hive表中存储的搜索记录中提取前述训练样本,进而将训练样本存储至HDFS中。

另外,通过机器学习算法对训练样本进行训练,获得CTR预估模型之后,可以对训练获得的CTR预估模型进行离线测评验证,验证通过的CTR预估模型(即AUC值达到预设值的CTR预估模型),则可以应用到实际搜索过程中。

此外,可以采用如图6所示的迭代闭环流程对CTR预估模型进行更新。即通过前述训练过程获得的CTR预估模型,应用到实际搜索过程中之后,可以基于搜索过程中产生的数据(包括搜索语句、返回的搜索结果、被点击的搜索结果、被点击的搜索结果的显示位置、输入搜索语句的用户的特征信息),构建新的训练样本,进而根据新的训练样本训练CTR预估模型,即获得新版本的CTR预估模型。其中,可以根据AUC值,对获得新版本的CTR预估模型进行离线测评验证,验证通过的CTR预估模型(即AUC值达到预设值的CTR预估模型),则可以应用到实际搜索过程中。在新发布的CTR预估模型在实际搜索过程中应用之后,又可以产生新的数据,根据这些新的数据,又可以构建新的训练样本,从而重复执行前述的训练过程。

此处需要说明的是,AUC是机器学习领域中是一种模型评估指标。

综上所述,本申请的实施例,可以从搜索语句的多方面出发,获取到更多与搜索语句相匹配的第一搜索结果,从而可以从第一搜索结果中筛选出更多用户感兴趣的搜索结果,进而可以提升搜索召回率;并且,本申请的实施例,还可以预测召回的搜索结果被用户点击的概率,并根据概率值进行排序显示,从而使得用户可以优先查看到其感兴趣的搜索结果,进而可以提升搜索结果的点击率;此外,采用CTR预估模型在实际搜索过程中应用之后生成的数据,得到新的训练样本,对CTR预估模型进行更新,可以提供迭代效率。

本申请实施例还提供了一种电子设备,包括:

一个或多个处理器;和

其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行本申请实施例所述的方法。

本申请实施例还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行本申请实施例所述的方法。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本申请所提供的一种封面图片的显示方法及装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

相关技术
  • 一种搜索方法、装置、电子设备及存储介质
  • 一种数据搜索方法、装置、电子设备及存储介质
技术分类

06120113162108