首页> 中国专利> 基于BM25算法的文档确定方法、装置、设备及存储介质

基于BM25算法的文档确定方法、装置、设备及存储介质

摘要

本发明涉及大数据搜索技术领域,提供了一种基于BM25算法的文档确定方法、文档确定装置、设置及存储介质,其中,方法包括:获取用户输入的搜索查询文本,并对搜索查询文本进行分词处理,以获取目标检索词;获取基于目标检索词的文档集合;基于BM25算法,分别确定文档集合中每一文档的标题字段、标签字段和描述字段,与目标检索词对应的标题相关性得分、标签相关性得分和描述相关性得分;根据标题相关性得分、标签相关性得分和描述相关性得分,确定初始相关性得分;获取与初始相关性得分对应的预设权重系数,并根据初始相关性得分和预设权重系数确定每一文档的最终相关性得分;根据每一文档的最终相关性得分确定目标文档,以提高确定文档的准确性。

著录项

  • 公开/公告号CN112597274A

    专利类型发明专利

  • 公开/公告日2021-04-02

    原文格式PDF

  • 申请/专利权人 深圳市彬讯科技有限公司;

    申请/专利号CN202011509486.3

  • 发明设计人 王国彬;牟锟伦;余泽辉;

    申请日2020-12-18

  • 分类号G06F16/33(20190101);G06F40/205(20200101);G06F40/289(20200101);G06Q10/06(20120101);

  • 代理机构44325 深圳众鼎专利商标代理事务所(普通合伙);

  • 代理人谭果林

  • 地址 518000 广东省深圳市南山区西丽街道西丽社区兴科一街万科云城一期七栋A座3501研发用房

  • 入库时间 2023-06-19 10:27:30

说明书

技术领域

本发明涉及大数据搜索技术领域,特别涉及一种基于BM25算法的文档确定方法、文档确定装置、计算机设备及可读存储介质。

背景技术

BM25算法是一种用来评价检索词和文档之间相关性的算法,其基于概率检索模型提出,当前在互联网家装应用领域中,用户对涉及家装的文档内容搜索时不仅关心内容的相关性,还有对内容的质量也尤其关注。

在一个应用场景中,例如当前用户输入关键字“客厅”进行搜索,此时有对应可以获取两篇文档内容,其中第一篇文档内容的标题是“客厅客厅客厅”,第二篇文档内容的标题是“客厅怎么装修”。按照BM25算法,第一篇文档内容出现的词频以及占比都高于第二篇文档内容,所以第一篇文档内容的相关性得分也会高于第二篇文档内容,实际应用中则会优先推荐第一篇文档内容,然而第一个内容真的就一定是用户期望看到的吗?因为第一篇文档内容的内容质量不仅很差,而且已经是几年前发布的内容了,而第二个内容更优质,此时明显第二个内容更满足用户的需求。因为用户搜索的目的是获取和客厅相关的内容,至于相关程度深浅,可能并不是用户很关心的。

可见,若仅通过BM25算法确定文档内容,并不能满足用户的实际需求。

发明内容

本发明的目的在于,针对现有技术通常仅通过相关度对搜索内容进行排序,不能满足用户的实际需求,提供一种基于BM25算法的文档确定方法、文档确定装置、计算机设备以及可读存储介质,以提高确定文档的准确性。

本发明是这样实现的,本发明第一方面提供一种基于BM25算法的文档确定方法,其中,所述文档确定方法包括:

获取用户输入的搜索查询文本,并对所述搜索查询文本进行分词处理,以获取目标检索词;

获取基于所述目标检索词的文档集合;

基于BM25算法,分别确定所述文档集合中每一文档的标题字段、标签字段和描述字段,与所述目标检索词对应的标题相关性得分、标签相关性得分和描述相关性得分;

根据所述标题相关性得分、所述标签相关性得分和所述描述相关性得分,确定对应所述每一文档的初始相关性得分;

获取与所述初始相关性得分对应的预设权重系数,并根据所述初始相关性得分和所述预设权重系数确定所述每一文档的最终相关性得分;

根据所述每一文档的最终相关性得分确定目标文档。

可选地,所述确定所述文档集合中每一文档的标题字段与所述目标检索词对应的标题相关性得分,通过以下公式实现:

IDF=log(1+(docCount-docFreq+0.5)/(docFreq+0.5));

Score=IDF*(freq*(k+1))/(freq+k*(1-b+b*(|d|/avgdl)));

其中,IDF代表逆文档频率,docCount代表文档集合中所有的标题字段的数量,docFreq代表所述文档集合中的标题字段包含所述目标检索词的数量,Score代表所述标题相关性得分,freq代表所述目标检索词在所述每一文档中的标题字段出现的次数,k和b为常量系数,|d|代表所述每一文档中的标题字段的长度,avgdl代表所述文档集合中文档的平均长度。

可选地,所述预设权重系数为通过如下方式确定:

若所述文档集合中某一文档的内容曝光数大于第一阈值,且内容曝光点击比大于第一数值,则将对应的文档确定为第一等级文档类型,并为所述第一等级文档类型配置第一权重,将所述第一权重作为所述第一等级文档类型的预设权重系数;

或者,若所述文档集合中某一文档的内容曝光数大于第二阈值,且所述内容曝光数小于所述第一阈值,且所述内容曝光点击比大于第二数值,则将对应的文档确定为第一等级文档类型,并为所述第一等级文档类型配置第一权重,将所述第一权重作为所述第一等级文档类型的预设权重系数;

或者,若所述文档集合中某一文档的内容曝光数大于第三阈值,且所述内容曝光数小于所述第二阈值,且所述内容曝光点击比大于第三数值;则将对应的文档确定为第一等级文档类型,并为所述第一等级文档类型配置第一权重,将所述第一权重作为所述第一等级文档类型的预设权重系数;

若所述文档集合中某一文档的内容曝光数大于所述第一阈值,且所述内容曝光点击比大于第四数值,且所述内容曝光点击比小于所述第三数值,则将对应的文档确定为第二等级文档类型,并为所述第二等级文档类型配置第二权重,将所述第二权重作为所述第二等级文档类型的预设权重系数;

或者,若所述文档集合中某一文档的内容曝光数大于所述第二阈值,且所述内容曝光数小于所述第一阈值,且所述内容曝光点击比大于所述第四数值,且所述内容曝光点击比小于所述第二数值,则将对应的文档确定为第二等级文档类型,并为所述第二等级文档类型配置第二权重,将所述第二权重作为所述第二等级文档类型的预设权重系数;

若所述文档集合中某一文档的内容曝光数大于所述第三阈值,且所述内容曝光数小于第四阈值,且所述内容曝光点击比大于0,则将对应的文档确定为第三等级文档类型,对应配置第三权重,并为所述第三等级文档类型配置第三权重,将所述第三权重作为所述第三等级文档类型的预设权重系数;

其中,所述第一权重大于所述第二权重,所述第二权重大于所述第三权重。

可选地,所述根据所述标题相关性得分、所述标签相关性得分和所述描述相关性得分,确定对应所述每一文档的初始相关性得分,包括:

获取与所述标题相关性得分、所述标签相关性得分和所述描述相关性得分分别对应的标题权重、标签权重和描述权重;

确定所述标题相关性得分和所述标题权重的第一乘积得分;

确定所述标签相关性得分和所述标签权重的第二乘积得分;

确定所述描述相关性得分和所述描述权重的第三乘积得分;

将所述第一乘积得分、所述第二乘积得分和所述第三乘积得分的总和作为对应所述每一文档的初始相关性得分。

可选地,所述预设权重系数还通过如下方式确定:

分别确定所述文档集合中是否存在推荐标识的某一文档;

若存在所述推荐标识的某一文档,则为所述某一文档配置第四权重;

将所述第四权重作为所述某一文档的预设权重系数;

或者,所述预设权重系数还通过如下方式确定:

若确定所述文档集合中某一文档的热度值小于第一预设数值,则为所述某一文档配置第五权重,将所述第五权重作为所述某一文档的预设权重系数;

若确定所述文档集合中某一文档的热度值大于所述第一预设数值,且小于第二预设数值,则为所述某一文档配置第六权重,将所述第六权重作为所述某一文档的预设权重系数。

可选地,所述预设权重系数还通过如下方式确定:

获取用户的城市标签;

分别确定所述文档集合中是否存在与所述城市标签相同的某一文档,若存在与所述城市标签相同的某一文档,则为所述某一文档配置第七权重,将所述第七权重作为所述某一文档的预设权重系数;

或者,所述预设权重系数根据用户标签确定,包括:

获取用户的用户标签;

分别确定所述文档集合中某一文档是否存在与所述用户标签相同的某一文档,若存在与所述用户标签相同的某一文档,则为所述某一文档配置第八权重,将所述第八权重作为所述某一文档的预设权重系数。

可选地,所述根据所述初始相关性得分和所述预设权重系数确定所述每一文档的最终相关性得分,包括:

将所述每一文档的初始相关性得分乘以对应的所述预设权重数值,以获取所述每一文档的最终相关性得分。

本发明第二方面提供一种文档确定装置,其中,所述文档确定装置包括:

第一获取模块,用于获取用户输入的搜索查询文本,并对所述搜索查询文本进行分词处理,以获取目标检索词;

第二获取模块,用于获取基于所述目标检索词的文档集合;

第一确定模块,用于基于BM25算法,分别确定所述文档集合中每一文档的标题字段、标签字段和描述字段,与所述目标检索词对应的标题相关性得分、标签相关性得分和描述相关性得分;

第二确定模块,用于根据所述标题相关性得分、所述标签相关性得分和所述描述相关性得分,确定对应所述每一文档的初始相关性得分;

第三获取模块,用于获取与所述初始相关性得分对应的预设权重系数,并根据所述初始相关性得分和所述预设权重系数确定所述每一文档的最终相关性得分;

第三确定模块,用于根据所述每一文档的最终相关性得分确定目标文档。

本发明第三方面提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述本发明第一方面所述方法的步骤。

本发明第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述本发明第一方面所述方法的步骤。

本发明涉及大数据搜索技术领域,提供了一种基于BM25算法的文档确定方法、文档确定装置、计算机设置以及可读存储介质,其中,方法包括:获取用户输入的搜索查询文本,并对搜索查询文本进行分词处理,以获取目标检索词;获取基于目标检索词的文档集合;基于BM25算法,分别确定文档集合中每一文档的标题字段、标签字段和描述字段,与目标检索词对应的标题相关性得分、标签相关性得分和描述相关性得分;根据标题相关性得分、标签相关性得分和描述相关性得分,确定对应每一文档的初始相关性得分;获取与初始相关性得分对应的预设权重系数,并根据初始相关性得分和预设权重系数确定每一文档的最终相关性得分;根据每一文档的最终相关性得分确定目标文档。

本发明基于BM25算法的文档确定方法,通过BM25算法分别确定文档集合中每一文档的标题字段、标签字段和描述字段,与用户的目标检索词对应的标题相关性得分、标签相关性得分和描述相关性得分,以使获取初始相关性得分,并获取根据每一文档的内容曝光点击比和内容曝光数确定的预设权重系数,以根据初始相关性得分和预设权重系数确定每一文档的最终相关性得分,如此可以实现确定的文档不会仅受到单一相关性得分的影响,从而提高确定文档的准确性。

附图说明

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

图1是本发明实施例1提供的一种文档确定方法中步骤S10-S60的一流程图;

图2是本发明实施例2提供的一种文档确定装置的一结构示意图;

图3是本发明实施例4提供的计算机设备的一结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

为了说明本发明的技术方案,下面通过具体实施例来进行说明。

实施例1

本发明实施例1提供一种基于BM25算法的文档确定方法,具体地,请参阅图1,图1示出了本申请实施例1提供的文档确定方法的流程示意图。

在一个应用场景中,所述文档确定方法可以应用于如图2所示的文档确定装置,或者配置有所述文档确定装置的移动终端以及计算机设备等,并不限定。本实施例所述的移动终端可以为智能手机、或者为平板电脑、或者为穿戴式电子设备等,此处并不限定。下面将针对图1所示的文档确定方法中各个步骤进行详细的阐述,在一个实施例中,所述文档确定方法具体可以包括以下步骤:

S10:获取用户输入的搜索查询文本,并对搜索查询文本进行分词处理,以获取目标检索词。

当前,用户可以通过移动终端输入搜索查询文本,以获取基于搜索查询文本的相关文档。示例性地,该搜索查询文档可以为例如“客厅如何装修”,则当前对用户的搜索查询文本进行分词处理,以得到多个分词。

可以理解,用户在进行搜索时,所输入的搜索查询文本通常是一段对搜索目标描述性的文本,搜索查询文本一般由形容词和名词组成,因此可以对用户的搜索查询文本进行拆分,以拆分成单个的词语,拆分得到的词语变为分词,若搜索查询文本由2个词语组成,则拆分得到2个分词,如用户的搜索查询文本为“客厅如何装修”,则分词处理后得到“客厅”和“装修”两个分词,可以“客厅”和“装修”两个分词作为目标检索词。

将若搜索查询文本由2个以上的词语组成,则拆分对应得到2个以上的分词,在一种应用场景中,搜索查询文本还可以为一个词语,则拆分得到的分词为一个,该一个分词可以作为目标检索词。

S20:获取基于目标检索词的文档集合。

在确定目标检索词后,可以获取基于目标检索词的文档集合,当前的文档集合包括与目标检索词相关的多个文档。基于获取的多个文档,如何将用户最想获取的文档进行展示,具体通过以下步骤进行说明。

需要说明的是,上述实施例中,用户也可以直接输入目标检索词,则可以根据目标检索词直接获取与目标检索词相关的文档集合,并不限定。

S30:基于BM25算法,分别确定文档集合中每一文档的标题字段、标签字段和描述字段,与目标检索词对应的标题相关性得分、标签相关性得分和描述相关性得分。

在一个应用场景中,文档集合的每一文档均可以包括标题字段、标签字段和描述字段,具体可以预设设置格式,以使内容提供者可以根据预设格式将文档内容进行提前拆分。

可以理解,BM(Best Match)25算法为一种用来评价检索词和文档之间相关性的算法,其基于概率检索模型提出,基于BM25算法,可以分别确定文档集合中每一文档的标题字段、标签字段和描述字段,与目标检索词对应的标题相关性得分、标签相关性得分和描述相关性得分,具体地,当前对标题相关性得分进行举例,确定文档集合中每一文档的标题字段与目标检索词对应的标题相关性得分,可以通过以下公式实现:

IDF=log(1+(docCount-docFreq+0.5)/(docFreq+0.5));

Score=IDF*(freq*(k+1))/(freq+k*(1-b+b*(|d|/avgdl)));

其中,IDF代表逆文档频率,docCount代表文档集合中所有的标题字段的数量,docFreq代表文档集合中的标题字段包含目标检索词的数量,Score代表标题相关性得分,freq代表目标检索词在每一文档中的标题字段出现的次数;k和b为常量系数,其中,k控制文档频率对相关性得分的影响,b控制每一文档长度的影响,k可以设置为1.2,b可以设置为0.75,具体可以根据实际情况进行设置,并不限定。|d|代表每一文档中的标题字段的长度,avgdl代表文档集合中文档的平均长度。

可以理解,通过上述公式确定每一文档的标题字段与目标检索词对应的标题相关性得分仅用于举例,实际上通过上述公式还可以确定每一文档的标签字段与目标检索词的标签相关性得分,以及每一文档的描述字段与目标检索词的描述相关性得分。具体可以参照上述的说明,为避免累赘,此处便不展开描述。

上述的实施例中,基于每一文档包含的标题字段、标签字段和描述字段,也即可理解为将标题字段、标签字段和描述字段当成其中一个小文档,通过上述公式确定文档集合中每一文档的标题字段与目标检索词的标题相关性得分、每一文档的标签字段与目标检索词的标签相关性得分,以及每一文档的描述字段与目标检索词的描述相关性得分。

S40:根据标题相关性得分、标签相关性得分和描述相关性得分,确定对应每一文档的初始相关性得分。

在一个实施例中,根据标题相关性得分、标签相关性得分和描述相关性得分,确定对应每一文档的初始相关性得分,具体地,可以确定标题相关性得分、标签相关性得分和描述相关性得分的总和,并将标题相关性得分、标签相关性得分和描述相关性得分的总和作为每一文档的初始相关性得分。

在一个应用场景中,由于标签字段的文档长度|d|比较长,且标签字段的docFreq数量比较多,实践中在标签完全符合检索条件下,标签相关性得分通过仅为标题相关性得分的五分之一。因此可以根据实际情况设置不同的权重,以得到相对合理的初始相关性得分。具体地,标题权重可以设为1、标签权重可以设为5,以及描述权重可以设为1,需要说明的是,当前权重设置的数值仅用于举例,并不限定,具体可以根据实际情况进行设置。

另外,若需要忽略标题字段、标签字段或者描述字段对初始相关性得分的影响,还可以将对应字段的权重值设置为0。

具体地,步骤S40,也即根据标题相关性得分、标签相关性得分和描述相关性得分,确定对应每一文档的初始相关性得分,具体可以包括以下步骤:

S401:获取与标题相关性得分、标签相关性得分和描述相关性得分分别对应的标题权重、标签权重和描述权重。

示例性地,标题权重可以设为1、标签权重可以设为5,以及描述权重可以设为1。

S402:确定标题相关性得分和标题权重的第一乘积得分。

S403:确定标签相关性得分和标签权重的第二乘积得分。

S404:确定描述相关性得分和描述权重的第三乘积得分。

S405:将第一乘积得分、第二乘积得分和第三乘积得分的总和作为初始相关性得分。

上述步骤中,通过分别确定与标题相关性得分、标签相关性得分和描述相关性得分对应的标题权重、标签权重和描述权重,可以进一步确定标题相关性得分和标题权重乘积的第一乘积得分、标签相关性得分和标签权重乘积的第二乘积得分,以及描述相关性得分和描述权重乘积的第三乘积得分,并将第一乘积得分、第二乘积得分和第三乘积得分的总和作为初始相关性得分,可以使得获取的相关性得分更加合理。

S50:获取与初始相关性得分对应的预设权重系数,并根据初始相关性得分和预设权重系数确定每一文档的最终相关性得分。

基于上述步骤中通过BM25算法获取的初始相关性分数,进一步地,可以将相对优质的内容给用户进行优先展示,在一个实施例中,预设权重系数根据每一文档的内容曝光数和内容曝光点击比确定。该实施例中,预设权重系数根据每一文档的内容曝光数PV(PageView)以及内容曝光点击比CTR(Click-throughRate)确定,可以理解,内容曝光点击比CTR越高说明同等曝光情况下内容被点击得越多,内容曝光数PV越高,也即页面访问量越高。

示例性地,预设权重系数可以根据表a的条件进行确定:

表a

S50A:若文档集合中某一文档的内容曝光数大于第一阈值,且内容曝光点击比大于第一数值,则将对应的文档确定为第一等级文档类型,并为第一等级文档类型配置第一权重,将第一权重作为第一等级文档类型的预设权重系数。示例性地,可以参见上述表a,若文档集合中某一文档的内容曝光数大于第一阈值,第一阈值可以为例如500,且文档集合中某一文档的内容曝光点击比大于第一数值,第一数值可以为例如0.06,则可以将对应的文档确定为第一等级文档类型,该第一等级文档类型可以理解为精选内容类型,则第一权重可以为例如1.5。

或者,若文档集合中某一文档的内容曝光数大于第二阈值,且内容曝光数小于第一阈值,且内容曝光点击比大于第二数值,则将对应的文档确定为第一等级文档类型,并为第一等级文档类型配置第一权重,将第一权重作为第一等级文档类型的预设权重系数。示例性地,可以参见上述表a,若文档集合中某一文档的内容曝光数大于第二阈值,第二阈值可以为例如100,且文档集合中某一文档的内容曝光数小于第一阈值(500),且对应的内容曝光点击比大于第二数值,第三数值可以为例如0.06,则可以将对应的文档确定为第一等级文档类型,第一权重可以为例如1.5。

或者,若文档集合中某一文档的内容曝光数大于第三阈值,且内容曝光数小于第二阈值,且内容曝光点击比大于第三数值,则将对应的文档确定为第一等级文档类型,并为第一等级文档类型配置第一权重,将第一权重作为第一等级文档类型的预设权重系数。示例性地,可以参见上述表a,若文档集合中某一文档的内容曝光数大于第三阈值,第三阈值可以为例如30,且对应的内容曝光数小于第二阈值(100),且对应的内容曝光点击比大于第三数值,第三数值可以为例如0.07,则可以将对应的文档确定为第一等级文档类型,第一权重可以为例如1.5。

S51A:若文档集合中某一文档的内容曝光数大于第一阈值,且内容曝光点击比大于第四数值,且内容曝光点击比小于第三数值,则将对应的文档确定为第二等级文档类型,并为第二等级文档类型配置第二权重,将第二权重作为第二等级文档类型的预设权重系数。

或者,若文档集合中某一文档的内容曝光数大于第二阈值,且内容曝光数小于第一阈值,且内容曝光点击比大于第四数值,且内容曝光点击比小于第二数值,则将对应的文档确定为第二等级文档类型,并为第二等级文档类型配置第二权重,将第二权重作为第二等级文档类型的预设权重系数。

上述实施例中的第二等级文档类型可以理解为优质内容类型,第二权重可以为例如1.2,具体可以参见上述步骤S50a以及表a的说明,为避免累赘,此处便不展开描述。

S52A:若文档集合中某一文档的内容曝光数大于第三阈值,且内容曝光数小于第四阈值,且内容曝光点击比大于0,则将对应的文档确定为第三等级文档类型,对应配置第三权重,并为第三等级文档类型配置第三权重,将第三权重作为第三等级文档类型的预设权重系数。

上述实施例中的第三等级文档类型可以理解为普通内容,第三权重可以设置为1,具体可以参见上述步骤S50a以及表a的说明,为避免累赘,此处便不展开描述。

上述的实施例中,根据文档类型等级的不同,其中,第一权重大于第二权重,第二权重大于第三权重。需要说明的是,上述所述的第一权重、第二权重以及第三权重的数值仅用于举例,并不限定。

针对具体的文档,还可以通过人工推荐的方式,具体地,若认为文档为优质文档或者精选文档,则可以事先在对应文档中添加推荐标识,在另一个实施例中,预设权重系数还可以通过如下方式确定:

S50B:分别确定文档集合中是否存在推荐标识的某一文档。

S51B:若存在推荐标识的某一文档,则为某一文档配置第四权重。

S52B:将第四权重作为某一文档的预设权重系数。

上述实施例中,通过人工预先对优质文档或者精选文档添加推荐标识,若在与目标检索词对应的文档集合中确定存在推荐标识的某一文档,则可以为该某一文档配置第四权重,第四权重可以为1.5,则可以将1.5作为某一文档的预设权重系数,另外,不存在推荐标识的其他文档可以配置权重为1。

在一个实施例中,预设权重系数还可以根据文档的热度值进行确定,具体可以通过如下方式实现:

S50C:若确定文档集合中某一文档的热度值小于第一预设数值,则为某一文档配置第五权重,将第五权重作为某一文档的预设权重系数;

S51C:若确定文档集合中某一文档的热度值大于第一预设数值,且小于第二预设数值,则为某一文档配置第六权重,将第六权重作为某一文档的预设权重系数。

上述实施例中,文档的热度值可以理解为根据文档的互动数据、上传时间、效果图描述、作者名气、标签数量、宽高比、时间、空间标签、图片来源、最近10天收藏数、总收藏数和最近5天点击曝光等方式进行计算,并不限定。其中,可以预先建立热度值与预设权重系数对应的关联关系。例如当热度值小于4000时,则预设权重系数可以为1.5,当热度值为4000-10000时,对应的预设权重系数可以为1.4,当热度值大于10000时,对应的预设权重系数可以为1。

需要说明的是,上述实施例中S50B-S52B以及S50C-S51C还可以配合使用,例如可以根据推荐标识以及热度值一起设置预设权重系数,并不限定。

在一个实施例中,预设权重系数还可以根据城市标签进行确定。具体地,可以通过如下方式进行实现:

S50D:获取用户的城市标签。

当前,可以获取用户的城市标签,该城市标签代表着用户的所在地,例如当前用户的城市标签为深圳。

S51D:分别确定文档集合中是否存在与城市标签相同的某一文档,若存在与城市标签相同的某一文档,则为某一文档配置第七权重,将第七权重作为某一文档的预设权重系数。

在文档集合中确定是否存在与当前用户城市标签相同的某一文档,也即确定是否存在深圳标签的某一文档,若存在,则为该某一文档配置第七权重,第七权重可以为1.5,则可以将第七权重1.5作为某一文档的预设权重系数。

另外,还可以为文档集合中不存在与城市标签相同的其他文档配置常量权重,该常量权重可以为1,可以将常量权重作为其他文档的预设权重系数。

上述的实施例中,可以理解,用户更愿意看到离自己所在地的内容,通过确定文档集合中是否存在与用户的城市标签相同的某一文档,可以使得用户获取的文档更具有吸引力,提高获取文档的质量。

在一个实施例中,预设权重系数还可以根据用户标签确定,具体地,可以包括:

S50E:获取用户的用户标签。

具体地,获取用户的用户标签,可以根据用户的历史浏览记录进行获取,示例性地,例如用户历史浏览10个视频,10个视频中“客厅”标签出现了8次,“卫生间”标签出现2次,当前可以取出现最多的作为用户标签,可见,当前用户标签为客厅标签。

S51E:分别确定文档集合中某一文档是否存在与用户标签相同的某一文档,若存在与用户标签相同的某一文档,则为某一文档配置第八权重,将第八权重作为某一文档的预设权重系数。

另外,还可以为文档集合中不存在与用户标签相同的其他文档配置常量权重,该常量权重可以为1,可以将常量权重作为其他文档的预设权重系数。

该步骤中,在文档集合中确定是否存在与当前用户标签相同的某一文档,也即确定是否存在客厅标签的某一文档,若存在,则可为该某一文档配置第八权重,第八权重可以为1.5,则可以将第八权重1.5作为某一文档的预设权重系数。

需要说明的是,上述的城市标签和用户标签,具体可以根据实际情况进行单一或者组合设置,并不限定。

在一个实施例中,步骤S50中,也即根据初始相关性得分和预设权重系数确定每一文档的最终相关性得分,具体可以包括:

S501:将每一文档的初始相关性得分乘以对应的预设权重数值,以获取每一文档的最终相关性得分。

在获取到对应的预设权重数值后,可以将每一文档的初始相关性得分乘以对应的预设权重数值,则可以获取每一文档的最终相关性得分。

S60:根据每一文档的最终相关性得分确定目标文档。

在获取到每一文档的最终相关性得分后,步骤S60中,可以按照分数高低的方式对每一文档的最终相关性得分进行排序,以将最终相关性得分较高的文档排序在前,将最终相关性得分较低的文档排序在后,以使用户可以优先阅读最终相关性得分较高的文档;或者,还可以将最终相关性得分最高的文档作为确定的目标文档。

上述的实施例中,通过BM25算法分别确定文档集合中每一文档的标题字段、标签字段和描述字段,与用户的目标检索词对应的标题相关性得分、标签相关性得分和描述相关性得分,以使获取初始相关性得分,并获取根据每一文档的内容曝光点击比和内容曝光数确定的预设权重系数,以根据初始相关性得分和预设权重系数确定每一文档的最终相关性得分,如此可以实现确定的文档不会仅受到单一相关性得分的影响,可以使得用户获取的文档受到多因素和相关性结合的共同影响,以使得用户可以获取到更加优质且吸引的文档,提高用户的搜索次数以及搜索结果点击数。

实施例2

本发明实施例2提供一种文档确定装置,具体地,如图2所示,文档确定装置包括:

第一获取模块10,用于获取用户输入的搜索查询文本,并对所述搜索查询文本进行分词处理,以获取目标检索词;

第二获取模块20,用于获取基于所述目标检索词的文档集合;

第一确定模块30,用于基于BM25算法,分别确定所述文档集合中每一文档的标题字段、标签字段和描述字段,与所述目标检索词对应的标题相关性得分、标签相关性得分和描述相关性得分;

第二确定模块40,用于根据所述标题相关性得分、所述标签相关性得分和所述描述相关性得分,确定初始相关性得分;

第三获取模块50,用于获取与所述初始相关性得分对应的预设权重系数,并根据所述初始相关性得分和所述预设权重系数确定所述每一文档的最终相关性得分;

第三确定模块60,用于根据所述每一文档的最终相关性得分确定目标文档。

在一个实施例中,第一确定模块30,还用于通过以下公式实现:

IDF=log(1+(docCount-docFreq+0.5)/(docFreq+0.5));

Score=IDF*(freq*(k+1))/(freq+k*(1-b+b*(|d|/avgdl)));

其中,IDF代表逆文档频率,docCount代表文档集合中所有的标题字段的数量,docFreq代表所述文档集合中的标题字段包含所述目标检索词的数量,Score代表所述标题相关性得分,freq代表所述目标检索词在所述每一文档中的标题字段出现的次数,k和b为常量系数,|d|代表所述每一文档中的标题字段的长度,avgdl代表所述文档集合中文档的平均长度。

在一个实施例中,第二确定模块40,还用于:

获取与所述标题相关性得分、所述标签相关性得分和所述描述相关性得分分别对应的标题权重、标签权重和描述权重;

确定所述标题相关性得分和所述标题权重的第一乘积得分;

确定所述标签相关性得分和所述标签权重的第二乘积得分;

确定所述描述相关性得分和所述描述权重的第三乘积得分;

将所述第一乘积得分、所述第二乘积得分和所述第三乘积得分的总和作为所述初始相关性得分。

在一个实施例中,第三获取模块50,还用于:

将所述每一文档的初始相关性得分乘以对应的所述预设权重数值,以获取所述每一文档的最终相关性得分。

关于文档确定装置的具体限定可以参见上文中对于文档确定方法的限定,在此不再赘述。上述文档确定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

实施例3

本发明实施例3提供一计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的方法或者步骤,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现上述实施例中各模块/单元的功能,为避免重复,这里不再赘述。可以理解地,所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号和电信信号等。

实施例4

图3是本发明实施例4中计算机设备的示意图。如图3所示,计算机设备6包括处理器63、存储器61以及存储在存储器61中并可在处理器63上运行的计算机程序62。处理器63执行计算机程序62时实现上述实施例中的各个步骤,例如图1所述的步骤S10-S60,为避免重复,这里不再赘述。或者,处理器63执行计算机程序62时实现上述实施例中各模块/单元的功能。

示例性的,计算机程序62可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器61中,并由处理器63执行,以完成本发明的数据处理过程。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序段,该指令段用于描述计算机程序62在计算机设备6中的执行过程。例如,计算机程序62可以被分割成如图3所述的模块,各模块具体功能与实施例1中方法的步骤一一对应,为避免重复,在此不一一赘述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号