1.本公开涉及计算机技术领域,尤其涉及一种内容推荐方法、装置、服务器及存储介质。
背景技术:2.随着互联网技术的发展,互联网上的内容丰富,比如图片、视频、广告、文章等,推荐系统会自动推荐内容给帐户。
3.相关技术中,在进行内容推荐时,一般是通过召回、粗排、精排和重排,筛选出一些内容,并推荐给帐户;但是,召回、粗排、精排和重排这几个过程是串行执行的,相互之间没有联动,导致在召回阶段无法精准地捕捉帐户兴趣,导致内容的推荐准确率较低。
技术实现要素:4.本公开提供一种内容推荐方法、装置、服务器及存储介质,以至少解决相关技术中内容的推荐准确率较低的问题。本公开的技术方案如下:
5.根据本公开实施例的第一方面,提供一种内容推荐方法,包括:
6.获取待推荐帐户的历史互动内容的特征向量;所述历史互动内容的特征向量通过从内容排序模型输出的多个内容特征向量中查询得到;
7.将所述历史互动内容的特征向量输入预先建立的内容索引列表,得到所述历史互动内容的相似内容;所述预先建立的内容索引列表,通过对所述内容排序模型输出的多个内容特征向量进行聚类得到;
8.通过所述内容排序模型,从所述历史互动内容的相似内容中,筛选出与所述待推荐帐户匹配的目标内容,将所述目标内容推荐给所述待推荐帐户。
9.在一示例性实施例中,所述将所述目标内容推荐给所述待推荐帐户,包括:
10.获取所述目标内容的类别标签;所述类别标签通过查询所述内容排序模型输出的多个内容特征向量的聚类结果得到;
11.根据所述目标内容的类别标签,对所述目标内容进行重排序,得到重排序后的内容;所述重排序后的内容中具有相同类别标签的内容数量根据所述重排序对应的排序方式确定;所述排序方式用于表征每个类别标签对应的内容数量阈值;
12.将所述重排序后的内容推荐给所述待推荐帐户。
13.在一示例性实施例中,所述根据所述目标内容的类别标签,对所述目标内容进行重排序,得到重排序后的内容,包括:
14.依次对所述目标内容中的每个内容的类别标签的出现次数进行识别;
15.当所述目标内容中的当前内容对应的类别标签的出现次数等于对应的内容数量阈值时,则将所述当前内容移至所述目标内容中的最后一位,并对所述目标内容中的当前内容的下一个内容的类别标签的出现次数进行识别,直到所述目标内容中的前m个内容中,具有相同类别标签的内容数量小于或者等于对应的内容数量阈值,则将所述目标内容中的
前m个内容,作为所述重排序后的内容。
16.在一示例性实施例中,在获取待推荐帐户的历史互动内容的特征向量之前,还包括:
17.获取所述内容排序模型输出的多个内容特征向量;
18.对各个所述内容特征向量进行聚类,得到各个所述内容特征向量对应的聚类标签,作为所述聚类结果。
19.在一示例性实施例中,所述获取所述目标内容的类别标签,包括:
20.查询所述聚类结果,得到与所述目标内容匹配的内容特征向量所对应的聚类标签,作为所述目标内容的类别标签。
21.在一示例性实施例中,在通过所述内容排序模型,从所述历史互动内容的相似内容中,筛选出与所述待推荐帐户匹配的目标内容之前,还包括:
22.通过粗排模型,从所述历史互动内容的相似内容中,筛选出与所述待推荐帐户匹配的初始内容;
23.所述通过所述内容排序模型,从所述历史互动内容的相似内容中,筛选出与所述待推荐帐户匹配的目标内容,包括:
24.通过所述内容排序模型,从所述初始内容中,筛选出与所述待推荐帐户匹配的目标内容。
25.在一示例性实施例中,所述将所述历史互动内容的特征向量输入预先建立的内容索引列表,得到所述历史互动内容的相似内容,包括:
26.将所述历史互动内容的特征向量输入预先建立的内容索引列表,得到与所述历史互动内容的特征向量之间的相似度排名前m的内容特征向量;所述m为正整数;
27.获取所述相似度排名前m的内容特征向量对应的内容,作为所述历史互动内容的相似内容。
28.在一示例性实施例中,所述获取待推荐帐户的历史互动内容的特征向量,包括:
29.获取待推荐帐户的历史互动内容;
30.获取所述历史互动内容的内容标识;
31.从所述内容排序模型输出的多个内容特征向量中,筛选出对应的内容标识与所述历史互动内容的内容标识相同的内容特征向量,作为所述历史互动内容的特征向量。
32.根据本公开实施例的第二方面,提供一种内容推荐装置,包括:
33.向量获取单元,被配置为执行获取待推荐帐户的历史互动内容的特征向量;所述历史互动内容的特征向量通过从内容排序模型输出的多个内容特征向量中查询得到;
34.内容获取单元,被配置为执行将所述历史互动内容的特征向量输入预先建立的内容索引列表,得到所述历史互动内容的相似内容;所述预先建立的内容索引列表,通过对所述内容排序模型输出的多个内容特征向量进行聚类得到;
35.内容推荐单元,被配置为执行通过所述内容排序模型,从所述历史互动内容的相似内容中,筛选出与所述待推荐帐户匹配的目标内容,将所述目标内容推荐给所述待推荐帐户。
36.在一示例性实施例中,所述内容推荐单元,还被配置为执行获取所述目标内容的类别标签;所述类别标签通过查询所述内容排序模型输出的多个内容特征向量的聚类结果
得到;根据所述目标内容的类别标签,对所述目标内容进行重排序,得到重排序后的内容;所述重排序后的内容中具有相同类别标签的内容数量根据所述重排序对应的排序方式确定;所述排序方式用于表征每个类别标签对应的内容数量阈值;将所述重排序后的内容推荐给所述待推荐帐户。
37.在一示例性实施例中,所述内容推荐单元,还被配置为执行依次对所述目标内容中的每个内容的类别标签的出现次数进行识别;当所述目标内容中的当前内容对应的类别标签的出现次数等于对应的内容数量阈值时,则将所述当前内容移至所述目标内容中的最后一位,并对所述目标内容中的当前内容的下一个内容的类别标签的出现次数进行识别,直到所述目标内容中的前m个内容中,具有相同类别标签的内容数量小于或者等于对应的内容数量阈值,则将所述目标内容中的前m个内容,作为所述重排序后的内容。
38.在一示例性实施例中,所述装置还包括向量聚类单元,被配置为执行获取所述内容排序模型输出的多个内容特征向量;对各个所述内容特征向量进行聚类,得到各个所述内容特征向量对应的聚类标签,作为所述聚类结果。
39.在一示例性实施例中,所述内容推荐单元,还被配置为执行查询所述聚类结果,得到与所述目标内容匹配的内容特征向量所对应的聚类标签,作为所述目标内容的类别标签。
40.在一示例性实施例中,所述装置还包括内容筛选单元,被配置为执行通过粗排模型,从所述历史互动内容的相似内容中,筛选出与所述待推荐帐户匹配的初始内容;
41.所述内容推荐单元,还被配置为执行通过所述内容排序模型,从所述初始内容中,筛选出与所述待推荐帐户匹配的目标内容。
42.在一示例性实施例中,所述内容获取单元,还被配置为执行将所述历史互动内容的特征向量输入预先建立的内容索引列表,得到与所述历史互动内容的特征向量之间的相似度排名前m的内容特征向量;所述m为正整数;获取所述相似度排名前m的内容特征向量对应的内容,作为所述历史互动内容的相似内容。
43.在一示例性实施例中,所述向量获取单元,还被配置为执行获取待推荐帐户的历史互动内容;获取所述历史互动内容的内容标识;从所述内容排序模型输出的多个内容特征向量中,筛选出对应的内容标识与所述历史互动内容的内容标识相同的内容特征向量,作为所述历史互动内容的特征向量。
44.根据本公开实施例的第三方面,提供一种服务器,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如第一方面的任一项实施例中所述的内容推荐方法。
45.根据本公开实施例的第四方面,提供一种计算机可读存储介质,包括:当所述计算机可读存储介质中的指令由服务器的处理器执行时,使得所述服务器能够执行第一方面的任一项实施例中所述的内容推荐方法。
46.根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品中包括指令,所述指令被服务器的处理器执行时,使得所述服务器能够执行第一方面的任一项实施例中所述的内容推荐方法。
47.本公开的实施例提供的技术方案至少带来以下有益效果:
48.通过查询内容排序模型输出的多个内容特征向量,得到待推荐帐户的历史互动内
容的特征向量;然后将历史互动内容的特征向量输入预先建立的内容索引列表,得到历史互动内容的相似内容;预先建立的内容索引列表,通过对内容排序模型输出的多个内容特征向量进行聚类得到;最后通过内容排序模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的目标内容,并将目标内容推荐给待推荐帐户。这样,通过利用内容排序模型输出的多个内容特征向量,聚类得到内容索引列表,并通过内容索引列表,得到待推荐帐户的历史互动内容的相似内容,有利于充分利用内容排序模型输出的多个表征有特征信息的内容特征向量,精准地捕捉帐户兴趣,从而提高了相似内容的获取准确率,进而提高了目标内容的获取准确率,使得推荐至待推荐帐户的内容更加准确,从而提高了内容的推荐准确率。
49.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
50.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
51.图1是根据一示例性实施例示出的一种内容推荐方法的应用环境图。
52.图2是根据一示例性实施例示出的一种内容推荐方法的流程图。
53.图3是根据一示例性实施例示出的将目标内容推荐给待推荐帐户的步骤的流程图。
54.图4是根据一示例性实施例示出的另一种内容推荐方法的流程图。
55.图5是根据一示例性实施例示出的一种内容推荐装置的框图。
56.图6是根据一示例性实施例示出的一种服务器的框图。
具体实施方式
57.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
58.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
59.还需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
60.本公开所提供的内容推荐方法,可以应用于如图1所示的应用环境中。其中,终端110通过网络与服务器120进行交互。参考图1,服务器120获取终端110中登录的待推荐帐户的历史互动内容的特征向量;历史互动内容的特征向量通过从内容排序模型输出的多个内容特征向量中查询得到;将历史互动内容的特征向量输入预先建立的内容索引列表,得到
历史互动内容的相似内容;预先建立的内容索引列表,通过对内容排序模型输出的多个内容特征向量进行聚类得到;通过内容排序模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的目标内容,将目标内容推荐给待推荐帐户对应的终端110,终端110通过终端界面展示目标内容,便于待推荐帐户观看。其中,终端110可以是但不限于各种智能手机、平板电脑或笔记本电脑等,服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。其中,终端110可以是但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等,服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
61.图2是根据一示例性实施例示出的一种内容推荐方法的流程图,如图2所示,内容推荐方法用于如图1所示的服务器中,包括以下步骤:
62.在步骤s210中,获取待推荐帐户的历史互动内容的特征向量;历史互动内容的特征向量通过从内容排序模型输出的多个内容特征向量中查询得到。
63.其中,帐户是指终端中的应用程序的注册帐户,比如短视频应用程序的注册帐户、视频浏览程序的注册帐户等。待推荐帐户是指经过授权且需要进行处理分析的帐户,具体是指内容的推荐对象;在实际场景中,待推荐帐户可以是指广告的推荐对象,也可以是新闻资讯的推荐对象,还可以是视频的推荐对象等。
64.其中,历史互动内容是指待推荐帐户过去一段时间(比如最近一周)互动过的内容,可以是指视频、直播、图片、广告、商品、新闻资讯等,具体包括:待推荐帐户点击、点赞、点击关注、转发、进入个人页的内容。需要说明的是,历史互动内容不包括待推荐帐户点击不感兴趣的内容。
65.其中,特征向量用于表征历史互动内容的内容特征信息,比如长度为n维的特征向量(a1、a2、a3
……
an);例如,历史互动内容的特征向量可以是(1,3,1,4,2
……
)。
66.其中,内容排序模型是指推荐系统中的精排模型,用于筛选出与待推荐帐户匹配的目标内容;精排模型处于推荐系统的较下游的位置,是推荐系统中最复杂且表征能力最强的模型;内容排序模型可以输出多个内容的内容特征向量,比如每个内容id对应一个内容特征向量。需要说明的是,内容排序模型可以覆盖尽可能多的内容的内容特征向量,内容特征向量也是用于表征内容的特征信息。
67.具体地,服务器获取网络上经过授权的帐户,作为待推荐帐户;获取待推荐帐户的历史内容互动信息,对历史内容互动信息进行解析,得到待推荐帐户的历史互动内容;根据待推荐帐户的历史互动内容,查询内容排序模型输出的多个内容特征向量,得到与历史互动内容匹配的内容特征向量,作为历史互动内容的特征向量。
68.举例说明,假设待推荐帐户的历史互动内容为视频a,而内容排序模型输出的多个内容特征向量中,视频a对应的内容特征向量为内容特征向量a1,则该历史互动内容的特征向量为该内容特征向量a1。
69.在步骤s220中,将历史互动内容的特征向量输入预先建立的内容索引列表,得到历史互动内容的相似内容;预先建立的内容索引列表,通过对内容排序模型输出的多个内容特征向量进行聚类得到。
70.其中,预先建立的内容索引列表,是指能够根据输入的内容的特征向量,查询出该内容的相似内容的列表,比如ann(approximate nearest neighbor,近似最近邻)索引列
表,具体可以通过faiss库构建得到。在实际场景中,内容索引列表可以根据输入的内容的特征向量,快速查询出该内容的相似内容。
71.其中,可以采用k
‑
means聚类算法对内容排序模型输出的多个内容特征向量进行聚类处理,也可以采用其他聚类算法对内容排序模型输出的多个内容特征向量进行聚类处理,具体本公开不做限定。在内容索引列表中,每个内容聚类包括多个内容特征向量。
72.需要说明的是,在对内容排序模型输出的多个内容特征向量进行聚类,得到内容索引列表的过程中,服务器可以获取内容排序模型输出的全部内容特征向量,也可以获取内容排序模型输出的部分内容特征向量,具体可以根据实际情况确定。
73.其中,历史互动内容的相似内容,是指与历史互动内容之间的内容相似度大于预设相似度(比如0.6)的内容,具体是指与历史互动内容的特征向量之间的相似度排名靠前(比如前10)的内容特征向量所对应的内容。
74.具体地,服务器将历史互动内容的特征向量输入预先建立的内容索引列表,通过内容索引列表确定与历史互动内容的特征向量的相似度排名靠前(比如前n位,n为正整数)的内容特征向量,作为目标内容特征向量;获取目标内容特征向量所对应的内容,并将该内容作为历史互动内容的相似内容。
75.例如,服务器将历史互动视频a的特征向量输入到预先建立的内容索引列表,通过内容索引列表查询出历史互动视频a所对应的相似视频b。
76.进一步地,在将历史互动内容的特征向量输入预先建立的内容索引列表,得到历史互动内容的相似内容之前,服务器还可以获取内容排序模型输出的多个内容特征向量,通过聚类算法对内容排序模型输出的多个内容特征向量进行聚类处理,得到多个内容聚类,每个内容聚类包括多个内容特征向量;根据多个内容聚类,构建出内容索引列表;其中,内容索引列表中包括多个内容聚类,每个内容聚类对应多个内容特征向量。这样,由于内容索引列表是通过内容排序模型输出的多个表征有特征信息的内容特征向量构建得到的,那么在根据内容索引列表查询相似内容时,可以充分利用内容排序模型输出的多个表征有特征信息的内容特征向量,从而准确地查询出待推荐帐户的历史互动内容的相似内容,进而提高了相似内容的获取准确率。
77.在步骤s230中,通过内容排序模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的目标内容,将目标内容推荐给待推荐帐户。
78.其中,目标内容是指最终筛选出的符合待推荐帐户的兴趣的内容,具体是指推荐度大于预设推荐度的内容。
79.具体地,服务器获取历史互动内容的相似内容的内容特征向量,将历史互动内容的相似内容的内容特征向量输入到内容排序模型,通过内容排序模型对历史互动内容的相似内容的内容特征向量进行处理,得到相似内容的推荐度;从相似内容中,筛选出推荐度大于预设推荐度的内容,作为与待推荐帐户匹配的目标内容;将目标内容推荐给待推荐帐户所在的终端,通过终端界面展示目标内容,供待推荐帐户查看。
80.举例说明,服务器将历史互动视频a的相似视频的内容特征向量输入到内容排序模型,通过内容排序模型输出推荐度大于0.7的目标视频。
81.上述内容推荐方法中,通过查询内容排序模型输出的多个内容特征向量,得到待推荐帐户的历史互动内容的特征向量;然后将历史互动内容的特征向量输入预先建立的内
容索引列表,得到历史互动内容的相似内容;预先建立的内容索引列表,通过对内容排序模型输出的多个内容特征向量进行聚类得到;最后通过内容排序模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的目标内容,并将目标内容推荐给待推荐帐户。这样,通过利用内容排序模型输出的多个内容特征向量,聚类得到内容索引列表,并通过内容索引列表,得到待推荐帐户的历史互动内容的相似内容,有利于充分利用内容排序模型输出的多个表征有特征信息的内容特征向量,精准地捕捉帐户兴趣,从而提高了相似内容的获取准确率,进而提高了目标内容的获取准确率,使得推荐至待推荐帐户的内容更加准确,从而提高了内容的推荐准确率。
82.在一示例性实施例中,如图3所示,上述步骤s230,将目标内容推荐给待推荐帐户,具体包括如下步骤:
83.在步骤s310中,获取目标内容的类别标签;类别标签通过查询内容排序模型输出的多个内容特征向量的聚类结果得到。
84.其中,类别标签用于标识目标内容的类别。聚类结果中包括多个聚类标签;需要说明的是,聚类标签是通过聚类得到的,不是人为划分的标签。
85.具体地,服务器根据目标内容,查询内容排序模型输出的多个内容特征向量的聚类结果,得到目标内容所属的聚类标签,作为目标内容的类别标签。
86.在步骤s320中,根据目标内容的类别标签,对目标内容进行重排序,得到重排序后的内容;重排序后的内容中具有相同类别标签的内容数量根据重排序对应的排序方式确定;排序方式用于表征每个类别标签对应的内容数量阈值。
87.其中,对目标内容进行重排序是指利用类别标签对目标内容的排列顺序进行调整,使得重排序后的内容中拥有多种类别,从而保证最终推荐的目标内容的多样性。
88.其中,重排序对应的排序方式,用于标识重排序对应的排序策略,具体用于表征每个类别标签对应的内容数量阈值。需要说明的是,每个类别标签对应的内容数量阈值可以是相同的,也可以是不相同的,具体根据实际情况确定。
89.具体地,服务器根据目标内容的类别标签,对目标内容进行重排序,直到重排序后的内容中具有相同类别标签的内容数量小于或者等于对应的内容数量阈值。
90.在步骤s330中,将重排序后的内容推荐给待推荐帐户。
91.具体地,服务器将重排序后的内容推荐给待推荐帐户所在的终端,通过终端界面展示重排序后的内容,便于待推荐帐户查看。
92.举例说明,服务器获取目标内容的内容标识,并根据目标内容的内容标识,查询预先建立的内容标识与聚类标签的对应关系,得到目标内容的类别标签;预先建立的内容标识与聚类标签的对应关系,通过对内容排序模型输出的多个内容特征向量进行聚类得到;其中,内容标识与聚类标签的对应关系,是指每个内容标识对应一个聚类标签。比如,服务器通过对内容排序模型输出的多个内容特征向量进行聚类处理,可以得到内容特征向量所属内容标识所对应的聚类标签,从而构建内容标识与聚类标签的对应关系;查询内容标识与聚类标签的对应关系,得到目标内容的内容标识所对应的聚类标签,作为目标内容的类别标签。
93.接着,服务器根据目标内容的类别标签,对目标内容进行重排序,得到重排序后的内容;重排序后的内容中具有相同类别标签的内容数量小于或者等于对应的内容数量阈
值,重排序后的内容对应的数量小于目标内容对应的总数量。最后,服务器将重排序后的内容推荐给待推荐帐户,供待推荐帐户查看。
94.本公开实施例提供的技术方案,根据目标内容的类别标签,对目标内容进行重排序,得到重排序后的内容,使得重排序后的内容中具有相同类别标签的内容数量均小于对应的内容数量阈值,从而保证了重排序后的内容中具有多种类别,进而保证了重排序后的内容的多样性。另外,由于聚类得到的聚类标签的覆盖率和准确率均更高,因此通过不是基于人为划分得到的聚类标签,对目标内容进行重排序,可以提高对目标内容进行重排序的准确率,避免了通过人工标注,对目标内容进行重排序,导致重排序后的内容的准确率较低的缺陷;进一步保证了最终推荐的目标内容的多样性和准确性,同时解决了重排阶段中内容标签的覆盖率低或准确率不足的问题。
95.在一示例性实施例中,上述步骤s320,根据目标内容的类别标签,对目标内容进行重排序,得到重排序后的内容,具体包括:依次对目标内容中的每个内容的类别标签的出现次数进行识别;当目标内容中的当前内容对应的类别标签的出现次数等于对应的内容数量阈值时,则将当前内容移至目标内容中的最后一位,并对目标内容中的当前内容的下一个内容的类别标签的出现次数进行识别,直到目标内容中的前m个内容中,具有相同类别标签的内容数量小于或者等于对应的内容数量阈值,则将目标内容中的前m个内容,作为重排序后的内容。
96.其中,每个内容的类别标签的出现次数,是指在该内容之前,该类别标签的总出现次数。当前内容对应的类别标签的出现次数,是指在该当前内容之前,该类别标签的总出现次数。
97.其中,m是正整数,是预先设定的,当然也可以根据实际情况进行调整。
98.举例说明,服务器针对目标内容中的每一个内容,获取该内容的类别标签的出现次数;若该内容的类别标签的出现次数小于对应的内容数量阈值,则对该内容的类别标签的出现次数进行加1操作,并对目标内容中该内容的下一个内容的类别标签的出现次数进行识别;若该内容的类别标签的出现次数等于对应的内容数量阈值,则将该内容移至目标内容中的最后一位,并对目标内容中该内容的下一个内容的类别标签的出现次数进行识别,直到目标内容中的前m个内容中,具有相同类别标签的内容数量小于或者等于对应的内容数量阈值;当目标内容中的前m个内容中,具有相同类别标签的内容数量小于或者等于对应的内容数量阈值时,将目标内容中的前m个内容,作为重排序后的内容。
99.本公开实施例提供的技术方案,根据目标内容的类别标签,对目标内容进行重排序,得到重排序后的内容,使得重排序后的内容中具有相同类别标签的内容数量小于或者等于对应的内容数量阈值,从而保证了重排序后的内容具有多种类别,进而保证了重排序后的内容的多样性。另外,通过聚类得到的类别标签对目标内容进行重排序,可以提高对目标内容进行重排序的准确率,避免了通过人工标注对目标内容进行重排序,导致重排序后的内容的真实多样性较差,进而导致重排序后的内容的准确率较低的缺陷。
100.在一示例性实施例中,上述步骤s210,在获取待推荐帐户的历史互动内容的特征向量之前,还包括获取聚类结果的步骤,具体包括如下内容:获取内容排序模型输出的多个内容特征向量;对各个内容特征向量进行聚类,得到各个内容特征向量对应的聚类标签,作为聚类结果。
101.其中,对各个内容特征向量进行聚类,可以通过k
‑
means聚类方法实现,也可以通过其他聚类算法实现。
102.具体地,服务器获取内容排序模型输出的多个内容特征向量,并根据聚类算法,对内容排序模型输出的多个内容特征向量进行聚类处理,得到多个内容特征向量集合,每个内容特征向量集合对应一个聚类标签,且每个内容特征向量集合中的内容特征向量的聚类标签,与该内容特征向量集合对应的聚类标签相同;获取每个内容特征向量对应的内容标识,并根据每个内容特征向量的内容标识与聚类标签,构建内容标识与聚类标签的对应关系,作为预先建立的内容标识与聚类标签的对应关系,并将该对应关系作为聚类结果。
103.举例说明,服务器通过k
‑
means聚类方法,得到内容标识a1、a2、a3对应的聚类标签均为聚类标签1,内容标识b1、b2、b3对应的聚类标签均为聚类标签2,内容标识c1、c2、c3对应的聚类标签均为聚类标签3,则内容标识和聚类标签的对应关系为(内容标识a1
‑
类别标签1、内容标识a2
‑
类别标签1、内容标识a3
‑
类别标签1、内容标识b1
‑
类别标签2、内容标识b2
‑
类别标签2、内容标识b3
‑
类别标签2、内容标识c1
‑
类别标签3、内容标识c2
‑
类别标签3、内容标识c3
‑
类别标签3)。
104.本公开实施例提供的技术方案,通过对内容排序模型输出的多个内容特征向量进行聚类,可以得到内容标识与聚类标签的对应关系,便于后续根据目标内容的内容标识,查询预先建立的内容标识与聚类标签的对应关系,快速得到目标内容的类别标签,无需通过人工标注来得到目标内容的标签,从而避免了通过人工标注得到类别标签的效率和准确率均较低的缺陷,进而提高了目标内容的类别标签的确定效率和确定准确率。
105.在一个实施例中,上述步骤s310,获取目标内容的类别标签,具体包括:查询聚类结果,得到与目标内容匹配的内容特征向量所对应的聚类标签,作为目标内容的类别标签。
106.其中,聚类结果可以是指每个内容特征向量所对应的聚类标签,也可以是指内容标识与聚类标签的对应关系。
107.具体地,服务器查询聚类结果,得到与目标内容匹配的内容特征向量,并将该内容特征向量所对应的聚类标签,确定为目标内容的类别标签。
108.举例说明,假设聚类结果为内容标识与聚类标签的对应关系,则服务器首先获取目标内容的内容标识,然后根据目标内容的内容标识,查询聚类结果中内容标识与聚类标签的对应关系,得到与目标内容的内容标识相同的内容标识所对应的聚类标签,作为目标内容的类别标签。
109.本公开实施例提供的技术方案,通过查询基于内容排序模型输出的多个内容特征向量聚类得到的聚类结果,得到与目标内容匹配的内容特征向量所对应的聚类标签,作为目标内容的类别标签;这样,在确定目标内容的类别标签时,充分利用基于内容排序模型输出的多个内容特征向量所聚类得到的聚类结果,使得在确定目标内容的类别标签时不会受到人为划分标签的局限,从而提高了目标内容的类别标签的确定准确率。
110.在一示例性实施例中,上述步骤s230,在通过内容排序模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的目标内容之前,还包括:通过粗排模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的初始内容。那么,上述步骤s230,通过内容排序模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的目标内容,具体包括:通过内容排序模型,从初始内容中,筛选出与待推荐帐户匹配的目标内容。
111.其中,粗排模型是一种用于初步筛选出与待推荐帐户匹配的内容的模型,具体是基于性别、兴趣、职业、地域等因素,筛选出与待推荐帐户匹配的初始内容。
112.举例说明,服务器将待推荐帐户的历史互动视频a输入到粗排模型,通过粗排模型从历史互动视频a的相似视频中,筛选出与待推荐帐户匹配的初始视频b;将初始视频b输入到精排模型,通过精排模型从初始视频b中筛选出推荐度大于0.7的目标视频c,并输出目标视频c。
113.本公开实施例提供的技术方案,先通过粗排模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的初始内容,再通过内容排序模型,从初始内容中筛选出与待推荐帐户匹配的目标内容,即经过两次筛选得到目标内容,有利于提高目标内容的确定准确率,进而提高了内容的推荐准确率;同时,先通过粗排模型筛选得到初始内容,有利于进一步减少目标内容的筛选范围,避免了直接从历史互动内容的相似内容中筛选出目标内容的效率较低的缺陷,进而提高了目标内容的确定效率。
114.在一示例性实施例中,上述步骤s220,将历史互动内容的特征向量输入预先建立的内容索引列表,得到历史互动内容的相似内容,具体包括:将历史互动内容的特征向量输入预先建立的内容索引列表,得到与历史互动内容的特征向量之间的相似度排名前m的内容特征向量;m为正整数;获取相似度排名前m的内容特征向量对应的内容,作为历史互动内容的相似内容。
115.其中,特征向量之间的相似度,用于衡量内容之间是否相似。
116.其中,内容索引列表可以同时输出相似度排名前1、排名前2、排名前3
……
排名前m的内容特征向量。
117.具体地,服务器将历史互动内容的特征向量输入预先建立的内容索引列表,通过内容索引列表将历史互动内容的特征向量与内容索引列表中的内容特征向量进行比较,得到内容索引列表中的每个内容特征向量与历史互动内容的特征向量之间的相似度;从内容索引列表中的内容特征向量中,筛选出与历史互动内容的特征向量之间的相似度排名前m的内容特征向量,作为目标内容特征向量;获取目标内容特征向量所对应的内容,作为历史互动内容的相似内容。
118.举例说明,服务器将历史互动视频a的特征向量输入到ann索引列表,通过ann索引列表输出与历史互动视频a的特征向量之间的相似度排名前10的内容特征向量所对应的视频,作为历史互动视频a的相似视频。
119.本公开实施例提供的技术方案,通过利用内容排序模型输出的多个内容特征向量,构建内容索引列表,进而利用内容索引列表,可以快速且准确地查询出与历史互动内容的相似度靠前的相似内容,充分利用内容排序模型输出的多个表征有特征信息的内容特征向量,有利于精准地捕捉帐户兴趣,使得相似内容的确定更加准确,从而提高了相似内容的获取准确率。
120.在一示例性实施例中,上述步骤s210,获取待推荐帐户的历史互动内容的特征向量,具体包括如下内容:获取待推荐帐户的历史互动内容;获取历史互动内容的内容标识;从内容排序模型输出的多个内容特征向量中,筛选出对应的内容标识与历史互动内容的内容标识相同的内容特征向量,作为历史互动内容的特征向量。
121.其中,内容标识是指历史互动内容的唯一标识信息,比如内容名称、内容id等。
122.其中,在内容排序模型输出的多个内容特征向量中,每个内容特征向量均对应有一个内容标识。
123.具体地,服务器获取待推荐帐户的历史内容互动信息,并对历史内容互动信息进行解析,得到待推荐帐户的历史互动内容;通过内容标识获取指令,获取历史互动内容的内容标识;从内容排序模型输出的多个内容特征向量中,筛选出与历史互动内容的内容标识相同的内容标识所对应的内容特征向量,作为历史互动内容所对应的内容特征向量。
124.例如,历史互动视频a的内容标识为a1,而内容排序模型输出的多个内容特征向量中,内容标识a1对应的内容特征向量为b,则历史互动视频a对应的特征向量也为b。
125.本公开实施例提供的技术方案,通过查询内容排序模型输出的多个内容特征向量,有利于快速获取待推荐帐户的历史互动内容的特征向量,无需单独对待推荐帐户的历史互动内容进行特征提取处理,从而简化了待推荐帐户的历史互动内容的特征向量的获取过程,从而提高了历史互动内容的内容特征向量的获取效率。
126.图4是根据一示例性实施例示出的另一种内容推荐方法的流程图,如图4所示,内容推荐方法用于如图1所示的服务器中,包括以下步骤:
127.在步骤s410中,通过对内容排序模型输出的多个内容特征向量进行聚类,得到索引列表,作为预先建立的内容索引列表。
128.在步骤s420中,获取内容排序模型输出的多个内容特征向量;对各个内容特征向量进行聚类,得到各个内容特征向量对应的聚类标签,作为聚类结果。
129.在步骤s430中,获取待推荐账户的历史互动内容;获取历史互动内容的内容标识;从内容排序模型输出的多个内容特征向量中,筛选出对应的内容标识与历史互动内容的内容标识相同的内容特征向量,作为历史互动内容的特征向量。
130.在步骤s440中,将历史互动内容的特征向量输入预先建立的内容索引列表,得到与历史互动内容的特征向量之间的相似度排名前m的内容特征向量;m为正整数;获取相似度排名前m的内容特征向量对应的内容,作为历史互动内容的相似内容。
131.在步骤s450中,通过粗排模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的初始内容。
132.在步骤s460中,通过内容排序模型,从初始内容中,筛选出与待推荐帐户匹配的目标内容。
133.在步骤s470中,查询聚类结果,得到与目标内容匹配的内容特征向量所对应的聚类标签,作为目标内容的类别标签。
134.在步骤s480中,根据目标内容的类别标签,对目标内容进行重排序,得到重排序后的内容;重排序后的内容中具有相同类别标签的内容数量根据重排序对应的排序方式确定,排序方式用于表征每个类别标签对应的内容数量阈值。
135.在步骤s490中,将重排序后的内容推荐给待推荐帐户。
136.上述内容推荐方法,通过利用内容排序模型输出的多个内容特征向量,聚类得到内容索引列表,并通过内容索引列表,得到待推荐帐户的历史互动内容的相似内容,有利于充分利用内容排序模型输出的多个表征有特征信息的内容特征向量,精准地捕捉帐户兴趣,从而提高了相似内容的获取准确率,进而提高了目标内容的获取准确率,使得推荐至待推荐帐户的内容更加准确,从而提高了内容的推荐准确率;同时,将内容排序模型输出的多
个内容特征向量作用于相似内容获取环节和内容重排序环节中,既可以提高内容的推荐准确率,又可以提高推荐的内容的多样性。
137.在一示例性实施例中,提供了一种精排蒸馏推荐方法,充分利用精排模型训练得到的内容特征向量,学习到内容之间的相似性,并在召回阶段和重排序阶段发挥作用;其中,在召回阶段,利用精排模型输出的特征向量,计算内容之间的相似性,并准确地捕捉用户兴趣;在重排序阶段,对精排模型输出的内容特征向量进行聚类,得到聚类标签,从而对推荐结果进行多样性打散,可以保证推荐给用户的内容的多样性;其具体内容如下:
138.(1)获取精排模型,并解析出其中内容特征向量。
139.(2)使用解析出的内容特征向量,建立ann索引服务;对解析出的所有内容特征向量进行聚类,得到聚类标签。
140.(3)在推荐的召回阶段,利用步骤(2)中搭建的ann索引服务,进行相似内容召回,目的是利用精排模型中的特征向量捕捉用户兴趣;具体召回过程如下:获取已授权的用户的历史行为数据,对历史行为数据进行解析,得到用户点击、点赞、点击关注、转发的内容或者进入个人页的内容,并过滤掉用户点击不感兴趣的内容,最终得到的内容集合定义为itemset;对于itemset中的每一个内容,通过步骤(2)中建立的ann索引服务,去获取其最近邻的topn个相似内容,最终将所有内容的相似内容组成一个集合,定义为itemsim;将itemsim中作为一路召回结果发送至粗排模型。
141.在推荐的重排序阶段,获取内容的聚类标签,并利用该聚类标签对推荐结果进行多样性打散,保证m个推荐结果中最多出现n个相同聚类标签的内容,其中n<m,具体的打散流程为:
142.a.获取精排之后的number(number>>m)个推荐内容,定义为itemnumber;遍历itemnumber,对于每一个内容,根据步骤(2)中的聚类结果,获取该内容的聚类标签,然后对于每个聚类标签,统计其出现的总次数,如果当前内容的聚类标签已经出现过n次,则将该内容移到itemnumber的最后一位;
143.b.重复a,一直到获取到最终的itemm(包括m个内容)为止。
144.c.将最终打散之后的itemm推荐给用户。
145.上述精排蒸馏推荐方法,可以达到以下技术效果:利用精排模型中训练得到的内容特征向量,可以进行建立ann索引、聚类等操作;在召回阶段,可以利用内容特征向量进行相似内容召回;在重排序阶段,可以利用聚类标签对推荐结果进行多样性打散;这样,既可以提高内容的推荐准确率,又可以提高推荐的内容的多样性。
146.应该理解的是,虽然图2
‑
图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2
‑
图4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
147.可以理解的是,本说明书中上述方法的各个实施例之间相同/相似的部分可互相参见,每个实施例重点说明的是与其他实施例的不同之处,相关之处参见其他方法实施例
的说明即可。
148.图5是根据一示例性实施例示出的一种内容推荐装置的框图。参照图5,该装置包括向量获取单元510,内容获取单元520和内容推荐单元530。
149.向量获取单元510,被配置为执行获取待推荐帐户的历史互动内容的特征向量;历史互动内容的特征向量通过从内容排序模型输出的多个内容特征向量中查询得到。
150.内容获取单元520,被配置为执行将历史互动内容的特征向量输入预先建立的内容索引列表,得到历史互动内容的相似内容;预先建立的内容索引列表,通过对内容排序模型输出的多个内容特征向量进行聚类得到。
151.内容推荐单元530,被配置为执行通过内容排序模型,从历史互动内容的相似内容中,筛选出与待推荐帐户匹配的目标内容,将目标内容推荐给待推荐帐户。
152.在一示例性实施例中,内容推荐单元530,还被配置为执行获取目标内容的类别标签;类别标签通过查询内容排序模型输出的多个内容特征向量的聚类结果得到;根据目标内容的类别标签,对目标内容进行重排序,得到重排序后的内容;重排序后的内容中具有相同类别标签的内容数量根据重排序对应的排序方式确定;排序方式用于表征每个类别标签对应的内容数量阈值;将重排序后的内容推荐给待推荐帐户。
153.在一示例性实施例中,内容推荐单元530,还被配置为执行依次对目标内容中的每个内容的类别标签的出现次数进行识别;当目标内容中的当前内容对应的类别标签的出现次数等于对应的内容数量阈值时,则将当前内容移至目标内容中的最后一位,并对目标内容中的当前内容的下一个内容的类别标签的出现次数进行识别,直到目标内容中的前m个内容中,具有相同类别标签的内容数量小于或者等于对应的内容数量阈值,则将目标内容中的前m个内容,作为重排序后的内容。
154.在一示例性实施例中,内容推荐装置还包括向量聚类单元,被配置为执行获取内容排序模型输出的多个内容特征向量;对各个内容特征向量进行聚类,得到各个内容特征向量对应的聚类标签,作为聚类结果。
155.在一示例性实施例中,内容推荐单元530,还被配置为执行查询聚类结果,得到与目标内容匹配的内容特征向量所对应的聚类标签,作为目标内容的类别标签。
156.在一示例性实施例中,内容推荐装置还包括内容筛选单元,被配置为执行通过粗排模型,从所述历史互动内容的相似内容中,筛选出与所述待推荐帐户匹配的初始内容;
157.内容推荐单元530,还被配置为执行通过内容排序模型,从初始内容中,筛选出与待推荐帐户匹配的目标内容。
158.在一示例性实施例中,内容获取单元520,还被配置为执行将历史互动内容的特征向量输入预先建立的内容索引列表,得到与历史互动内容的特征向量之间的相似度排名前m的内容特征向量;m为正整数;获取相似度排名前m的内容特征向量对应的内容,作为历史互动内容的相似内容。
159.在一示例性实施例中,向量获取单元510,还被配置为执行获取待推荐帐户的历史互动内容;获取历史互动内容的内容标识;从内容排序模型输出的多个内容特征向量中,筛选出对应的内容标识与历史互动内容的内容标识相同的内容特征向量,作为历史互动内容的特征向量。
160.关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法
的实施例中进行了详细描述,此处将不做详细阐述说明。
161.图6是根据一示例性实施例示出的一种用于执行内容推荐方法的设备600的框图。例如,设备600可以为服务器。参照图6,设备600包括处理组件620,其进一步包括一个或多个处理器,以及由存储器622所代表的存储器资源,用于存储可由处理组件620的执行的指令,例如应用程序。存储器622中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件620被配置为执行指令,以执行上述方法。
162.设备600还可以包括:电源组件624被配置为执行设备600的电源管理,有线或无线网络接口626被配置为将设备600连接到网络,和输入输出(i/o)接口628。设备600可以操作基于存储在存储器622的操作系统,例如windows server,mac os x,unix,linux,freebsd或类似。
163.在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器622,上述指令可由设备600的处理器执行以完成上述方法。存储介质可以是计算机可读存储介质,例如,该计算机可读存储介质可以是rom、随机存取存储器(ram)、cd
‑
rom、磁带、软盘和光数据存储设备等。
164.在示例性实施例中,还提供一种计算机程序产品,该计算机程序产品中包括指令,上述指令可由设备600的处理器执行以完成上述方法。
165.需要说明的,上述的装置、设备、计算机可读存储介质、计算机程序产品等根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
166.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
167.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。