一种内容推荐方法及装置与流程

文档序号:30266359发布日期:2022-06-02 04:17阅读:66来源:国知局
一种内容推荐方法及装置与流程

1.本技术涉及计算机技术领域,特别是涉及一种内容推荐方法及装置。


背景技术:

2.目前,在内容推荐场景例如搜索场景或者主动推荐场景中,可以计算查询内容与内容库中的各个待选内容的相似度,而后,基于所述相似度对所述各个待选内容进行排序,从而确定与所述查询内容对应的推荐内容。
3.传统的内容间的相似度采用余弦相似度,但是,采用余弦相似度的方式,使得为所述查询内容推荐的内容不是很准确,因此,亟需一种方案,能够解决上述问题。


技术实现要素:

4.本技术所要解决的技术问题是如何提升内容推荐的准确度,提供一种内容推荐方法及装置。
5.第一方面,本技术实施例提供了一种内容推荐方法,所述方法包括:
6.获取查询内容;
7.确定所述查询内容和第一内容库中的多个内容的目标相似度,所述第一内容库中的多个内容包括第一内容,所述查询内容和所述第一内容的目标相似度,基于所述查询内容和所述第一内容的余弦相似度、以及所述第一内容的目标密度确定,所述第一内容的目标密度,用于标识所述第一内容被第二内容库中的内容召回的可能性,所述第二内容库为所述查询内容所属的内容库;
8.基于所述查询内容和第一内容库中的多个内容的目标相似度,确定与所述查询内容对应的推荐内容。
9.可选的,所述第一内容的目标密度,通过n次迭代计算得到,其中:
10.在第a次迭代时:
11.基于所述第一内容与所述第二内容库中的各个内容的第一相似度,在所述第二内容库中确定与所述第一内容匹配的k个内容;
12.将所述第一内容与所述k个内容中各个内容的第一相似度的平均值,确定为所述第a次迭代所确定的所述第一内容的密度;其中:
13.所述k个内容包括第二内容,所述第一内容与所述第二内容的第一相似度,通过所述第一内容与所述第二内容的余弦相似度、以及所述第二内容的第一密度确定,所述第二内容的第一密度,用于标识所述第二内容被所述第一内容库中的内容召回的可能性,所述第二内容的第一密度,通过(a-1)次迭代计算得到;
14.所述n为大于或者等于1的整数,a为大于等于1且小于等于n的整数。
15.可选的,所述a等于1,所述第二内容的第一密度为1,所述第一内容与所述第二内容的第一相似度,为所述第一内容与所述第二内容的余弦相似度。
16.可选的,所述a大于1,第b次迭代计算所述第二内容的密度,通过如下方式实现:
17.基于第二内容与所述第一内容库中的各个内容的第二相似度,在所述第一内容库中确定与所述第二内容匹配的q个内容;
18.将所述第二内容与所述q个内容中各个内容的第二相似度的平均值,确定为所述第b次迭代所确定的所述第二内容的密度;其中:
19.所述q个内容包括第三内容,所述第二内容与所述第三内容的第二相似度,通过所述第二内容与所述第三内容的余弦相似度、以及第(b-1)次迭代时所确定的所述第三内容的第二密度确定;其中,b为大于等于1且小于等于(a-1)的整数,所述第三内容的第二密度,用于标识所述第三内容被所述第二内容库中的内容召回的可能性。
20.可选的,所述查询内容和所述第一内容的目标相似度,基于所述目标密度的倒数、以及所述查询内容与所述第一内容的余弦相似度确定。
21.可选的,所述确定所述查询内容和第一内容库中的多个内容的目标相似度,包括:
22.确定所述查询内容和所述第一内容库中的各个内容的余弦相似度;
23.对所述查询内容和所述第一内容库中的各个内容的余弦相似度按照由高到低的顺序进行排序,确定排序靠前的多个余弦相似度对应的多个内容;
24.确定所述查询内容和所述多个内容的目标相似度。
25.第二方面,本技术实施例提供了一种内容推荐装置,所述装置包括:
26.获取单元,用于获取查询内容;
27.第一确定单元,用于确定所述查询内容和第一内容库中的多个内容的目标相似度,所述第一内容库中的多个内容包括第一内容,所述查询内容和所述第一内容的目标相似度,基于所述查询内容和所述第一内容的余弦相似度、以及所述第一内容的目标密度确定,所述第一内容的目标密度,用于标识所述第一内容被第二内容库中的内容召回的可能性,所述第二内容库为所述查询内容所属的内容库;
28.第二确定单元,用于基于所述查询内容和第一内容库中的多个内容的目标相似度,确定与所述查询内容对应的推荐内容。
29.可选的,所述第一内容的目标密度,通过n次迭代计算得到,其中:
30.在第a次迭代时:
31.基于所述第一内容与所述第二内容库中的各个内容的第一相似度,在所述第二内容库中确定与所述第一内容匹配的k个内容;
32.将所述第一内容与所述k个内容中各个内容的第一相似度的平均值,确定为所述第a次迭代所确定的所述第一内容的密度;其中:
33.所述k个内容包括第二内容,所述第一内容与所述第二内容的第一相似度,通过所述第一内容与所述第二内容的余弦相似度、以及所述第二内容的第一密度确定,所述第二内容的第一密度,用于标识所述第二内容被所述第一内容库中的内容召回的可能性,所述第二内容的第一密度,通过(a-1)次迭代计算得到;
34.所述n为大于或者等于1的整数,a为大于等于1且小于等于n的整数。
35.可选的,所述a等于1,所述第二内容的第一密度为1,所述第一内容与所述第二内容的第一相似度,为所述第一内容与所述第二内容的余弦相似度。
36.可选的,所述a大于1,第b次迭代计算所述第二内容的密度,通过如下方式实现:
37.基于第二内容与所述第一内容库中的各个内容的第二相似度,在所述第一内容库
中确定与所述第二内容匹配的q个内容;
38.将所述第二内容与所述q个内容中各个内容的第二相似度的平均值,确定为所述第b次迭代所确定的所述第二内容的密度;其中:
39.所述q个内容包括第三内容,所述第二内容与所述第三内容的第二相似度,通过所述第二内容与所述第三内容的余弦相似度、以及第(b-1)次迭代时所确定的所述第三内容的第二密度确定;其中,b为大于等于1且小于等于(a-1)的整数,所述第三内容的第二密度,用于标识所述第三内容被所述第二内容库中的内容召回的可能性。
40.可选的,所述查询内容和所述第一内容的目标相似度,基于所述目标密度的倒数、以及所述查询内容与所述第一内容的余弦相似度确定。
41.可选的,所述第一确定单元,用于:
42.确定所述查询内容和所述第一内容库中的各个内容的余弦相似度;
43.对所述查询内容和所述第一内容库中的各个内容的余弦相似度按照由高到低的顺序进行排序,确定排序靠前的多个余弦相似度对应的多个内容;
44.确定所述查询内容和所述多个内容的目标相似度。
45.第三方面,本技术实施例提供了一种设备,所述设备包括处理器和存储器;
46.所述处理器用于执行所述存储器中存储的指令,以使得所述设备执行如以上第一方面中任一项所述的方法。
47.第四方面,本技术实施例提供了一种计算机可读存储介质,包括指令,所述指令指示设备执行如以上第一方面中任一项所述的方法。
48.第五方面,本技术实施例提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行以上第一方面任一项所述的方法。
49.与现有技术相比,本技术实施例具有以下优点:
50.本技术实施例提供了一种内容推荐方法,在一个示例中,所述方法可以由服务端执行。具体地,所述服务端可以获取查询内容,并确定所述查询内容和第一内容库中的多个内容的目标相似度。其中,对于所述多个内容中的第一内容而言,查询内容与第一内容的目标相似度,可以基于所述查询内容和所述第一内容的余弦相似度、以及所述第一内容的目标密度确定。并且,所述第一内容的目标密度,用于标识所述第一内容被第二内容库中的多个内容召回的可能性,所述第二内容库为所述查询内容所属的内容库。而后,基于所述查询内容和第一内容库中的多个内容的目标相似度,确定与所述查询内容对应的推荐内容。由此可见,利用本方案,在为查询内容确定推荐内容时,不再基于所述查询内容和第一内容库中的内容(例如第一内容)的余弦相似度确定,而是基于前述目标相似度确定,而查询内容与第一内容的目标相似度,不仅考虑了查询内容与第一内容的余弦相似度,还考虑了第一内容被第二内容库中的多个内容召回的可能性,从而所确定的推荐内容与查询内容更加匹配。由此可见,利用本方案,能够提升内容推荐的准确性,实现精准推荐。
附图说明
51.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,
还可以根据这些附图获得其他的附图。
52.图1为本技术实施例提供的一种内容推荐方法的流程示意图;
53.图2为本技术实施例提供的一种密度计算方法的流程示意图;
54.图3为本技术实施例提供的又一种密度计算方法的流程示意图;
55.图4为本技术实施例提供的一种内容推荐方装置的结构示意图。
具体实施方式
56.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
57.本技术的发明人经过研究发现,目前,可以基于查询内容与各个待选内容的余弦相似度由高到低的顺序,对所述各个待选内容进行排序,从而确定与所述查询内容对应的推荐内容。此处提及的查询内容与待选内容的余弦相似度,指的是查询内容的特征与待选内容的特征之间的余弦相似度。
58.前述查询内容的特征和待选内容的特征,可以基于预先训练得到的模型计算得到。而训练所述模型需要大量训练样本。在一个示例中,若所述训练样本对应的应用场景与所述查询内容或者所述待选内容不匹配,则利用该模型所计算得到的特征来计算查询内容和待选内容的余弦相似度,该余弦相似度也不一定准确。举例说明:
59.假设所述模型是基于在第一应用程序中历史发布的内容训练得到的,而所述查询内容为第一应用程序中的内容,所述待选内容为第二应用程序中的内容,则所述训练样本(在第一应用程序中历史发布的内容)与所述待选内容的应用场景并不匹配,相应的,则利用该模型计算查询内容的特征,并利用该模型计算待选内容的特征,并进一步基于所述查询内容的特征和待选内容的特征确定所述查询内容和所述待选内容的余弦相似度,则该余弦相似度不一定准确,相应的,为所述查询内容推荐的内容也不是很准确。
60.为了解决上述问题,本技术实施例提供了一种内容推荐方法及装置。
61.下面结合附图,详细说明本技术的各种非限制性实施方式。
62.示例性方法
63.参见图1,该图为本技术实施例提供的一种内容推荐方法的流程示意图。所述方法例如可以由服务端执行。在本实施例中,所述方法例如可以包括以下步骤s101-s103。
64.s101:获取查询内容。
65.在本技术实施例中,所述查询内容可以是文本,也可以是视频,还可以是图像,本技术实施例不做具体限定。
66.在一个示例中,s101在具体实现时,可以获取用户输入的所述查询内容,例如,用户可以在客户端显示的搜索输入区输入查询文本,则所述服务端可以获取所述查询文本,并将所述查询文本确定为所述查询内容。
67.在又一个示例中,s101在具体实现时,可以响应于用户针对所述查询内容触发的预设操作,从而获得所述查询内容。例如,客户端上正在播放某一视频,客户端上的还显示有“查看更多”或者“找相似”等文字,则用户可以针对所述“查看更多”或者“找相似”所在的
显示区域触发特定的操作,例如点击“查看更多”或者“找相似”所在的区域,用户点击“查看更多”或者“找相似”所在的区域之后,所述服务器端则可以将所述客户端正在播放的上述视频确定为所述查询内容。
68.s102:确定所述查询内容和所述第一内容库中的多个内容的目标相似度,所述第一内容库中的多个内容包括第一内容,所述查询内容和所述第一内容的目标相似度,基于所述查询内容和所述第一内容的余弦相似度、以及所述第一内容的目标密度确定,所述第一内容的目标密度,用于标识所述第一内容被第二内容库中的多个内容召回的可能性,所述第二内容库为所述查询内容所属的内容库。
69.在本技术实施例中,所述查询内容属于第二内容库。所述第二内容库中可以包括多个内容。
70.在一个示例中,所述第二内容库可以是与某一应用程序对应的内容库,例如,所述查询内容是在第一应用程序上发布的内容,则所述第二内容库可以是与第一应用程序对应的内容库。第二内容库中存储的内容均为在所述第一应用程序上发布的内容。
71.在一个示例中,所述第二内容库例如可以存储与所述查询内容属于同一类型的多个内容。例如,所述查询内容为视频,则所述第二内容库用于存储视频,且,该第二内容库中包括多个视频。又如,所述查询内容为文本,则所述第二内容库用于存储文本,且,该第二内容库中包括多个文本。再如,所述查询内容为图像,则所述第二内容库用于存储图像,且,该第二内容库中包括多个图像。
72.与第二内容库类似,所述第一内容库中也可以包括多个内容。所述多个内容包括第一内容,第一内容可以是文本,也可以是视频,还可以是图像,本技术实施例不作具体限定。
73.在一个示例中,所述第一内容库例如可以存储某一类别的多个内容,例如,所述第一内容库可以存储视频类别的多个内容,又如,所述第一内容库可以存储文本类型的多个内容,再如,所述第一内容库可以存储图像内容的多个内容,本技术实施例不做限定。
74.在一个示例中,所述第一内容库可以是与某一应用程序对应的内容库,例如,所述第一内容库可以是与第二应用程序对应的内容库。相应的,所述第一内容库中存储的内容均为在所述第二应用程序上发布的内容。
75.在本技术实施例中,获取所述查询内容之后,可以从第一内容库中确定所述查询内容对应的推荐内容。
76.在一个示例中,所述第一内容库和所述第二内容库可以对应同一应用程序,换言之,前述第一应用程序和第二应用程序可以是同一应用程序。例如,对于在第一应用程序上发布的所述查询内容而言,从在所述第一应用程序上发布的其它内容中确定所述查询内容对应的推荐内容。
77.在又一个示例中,所述第一内容库和所述第二内容库可以对应不同的应用程序,换言之,前述第二应用程序和第一应用程序是两个不同的应用程序。例如,对于在第一应用程序上发布的所述查询内容而言,从在第二应用程序上发布的其它内容中确定所述查询内容对应的推荐内容。
78.在本技术实施例中,可以确定查询内容和所述第一内容库中的多个内容的目标相似度,此处提及的多个内容,可以是所述第一内容库中的所有内容,也可以是所述第一内容
库中的部分内容。不难理解的是,当所述多个内容是第一内容库中的部分内容时,能够减少s102的计算量。
79.在一个示例中,可以通过如下步骤a1-a2确定所述多个内容:
80.a1:确定所述查询内容和所述第一内容库中的各个内容的余弦相似度。
81.a2:对所述查询内容和所述第一内容库中的各个内容的余弦相似度按照由高到低的顺序进行排序,确定排序靠前的多个余弦相似度对应的多个内容。
82.换言之,可以首先按照余弦相似度从所述第一内容库中确定与所述查询内容相关度较高的多个内容,而后,基于该多个内容中每个内容和所述查询内容的目标相似度,来最终确定所述查询内容对应的推荐内容。
83.在本技术实施例中,对于所述多个内容中的第一内容而言,第一内容和查询内容的目标相似度,基于所述查询内容和所述第一内容的余弦相似度、以及所述第一内容的目标密度确定。其中,所述第一内容的目标密度,用于标识所述第一内容被第二内容库中的内容召回的可能性。
84.关于第一内容被第二内容库中的内容召回的可能性,指的是将第一内容作为第二内容库中的内容的推荐内容的可能性。假设第一内容可以作为第二内容库中的m个内容的推荐内容,则所述m的值越大,第一内容的目标密度也越大。在本技术实施例中,利用所述第一内容的目标密度,对所述查询内容和所述第一内容的余弦相似度进行抑制,得到第一内容和所述查询内容的目标相似度。
85.关于“所述第一内容的目标密度,对所述查询内容和所述第一内容的余弦相似度进行抑制”需要说明的是,其并不代表所述进行抑制之后得到的第一内容和所述查询内容的目标相似度,一定小于所述查询内容和所述第一内容的余弦相似度。而是对于多个内容而言,该多个内容中对应目标密度越大的内容,其与查询内容的余弦相似度被抑制的程度越高。
86.在一个示例中,为了达到前述提及的“对于多个内容而言,该多个内容中对应目标密度越大的内容,其与查询内容的余弦相似度被抑制的程度越高”的效果,所述查询内容和所述第一内容的目标相似度,可以基于所述第一内容的目标密度的倒数、以及所述查询内容和所述第一内容的余弦相似度确定。在一个示例中,考虑到余弦相似度的取值范围为-1至1,因此,在基于第一内容和查询内容的余弦相似度得到第一内容和查询内容的目标相似度之前,可以对第一内容和查询内容的余弦相似度进行归一化处理,使得第一内容和查询内容的余弦相似度的取值范围为0至1。假设第一内容和查询内容的余弦相似度为score1,则对score1进行归一化处理的方式例如可以是
87.关于基于第一内容和查询内容的余弦相似度得到第一内容和查询内容的目标相似度,现举例说明:第一内容和查询内容的余弦相似度为score1,第一内容的目标密度为density1,则所述第一内容和所述查询内容的目标相似度可以是:
88.关于所述第一内容的目标密度的确定方式,可以参考下文的相关描述部分,此处不做详述。
89.s103:基于所述查询内容和第一内容库中的多个内容的目标相似度,确定与所述
查询内容对应的推荐内容。
90.确定所述查询内容和第一内容库中的多个内容的目标相似度之后,可以基于所述查询内容和第一内容库中的多个内容的目标相似度,确定与所述查询内容对应的推荐内容。在一个示例中,可以对所述多个目标相似度进行排序,将排序靠前的若干个目标相似度对应的内容,确定为与所述查询内容对应的推荐内容。
91.在一个示例中,确定与所述查询内容对应的推荐内容之后,可以将所述推荐内容发送给客户端,以便客户端呈现该推荐内容。
92.由此可见,利用本技术实施例提供的方案,在为查询内容确定推荐内容时,不再基于所述查询内容和第一内容库中的内容(例如第一内容)的余弦相似度确定,而是基于前述目标相似度确定,而查询内容与第一内容的目标相似度,不仅考虑了查询内容与第一内容的余弦相似度,还考虑了第一内容的目标密度,并采用第一内容的目标密度对查询内容与第一内容的余弦相似度进行了抑制,从而所确定的推荐内容与查询内容更加匹配。由此可见,利用本方案,能够提升内容推荐的准确性,实现精准推荐。
93.接下来,对所述第一内容的目标密度的确定方式进行说明。
94.第一内容的目标密度,可以通过n次迭代计算得到,即第一内容的目标密度,是经过n次迭代计算得到的所述第一内容的密度。n是大于等于1的整数。每次迭代计算的过程类似,接下来以第a次迭代计算为例进行说明。a为大于等于1且小于等于n的整数。
95.参见图2,该图为本技术实施例提供的一种密度计算方法的流程示意图。图2所示的方法,可以包括如下s201-s202。
96.s201:基于第一内容与所述第二内容库中的各个内容的第一相似度,在所述第二内容库中确定与所述第一内容匹配的k个内容。
97.s201在具体实现时,可以计算所述第一内容与所述第二内容库中的各个内容的第一相似度,而后,对所述第一内容与所述第二内容库中的各个内容的第一相似度由高到低进行排序,将排序靠前的k个第一相似度对应的所述第二内容库中的内容,确定为与所述第一内容匹配的k个内容。
98.本技术实施例不具体限定k的取值,k为大于等于2的整数。
99.第二内容为所述k个内容中的任意一个内容,则第一内容与所述第二内容的第一相似度,可以通过所述第一内容与所述第二内容的余弦相似度、以及所述第二内容的第一密度确定,所述第二内容的第一密度,用于标识所述第二内容被所述第一内容库中的内容召回的可能性。其中,第二内容被第一内容库中的内容召回的可能性,指的是将第二内容作为第一内容库中的内容的推荐内容的可能性。
100.在一个示例中,所述第一内容与所述第二内容的第一相似度,可以是:其中,score2为第一内容与所述第二内容的第一相似度,density2为第二内容的第一密度。
101.其中,所述第二内容的第一密度是经过(a-1)次迭代计算得到的。
102.当a等于1时,所述第二内容的第一密度可以等于1,对于这种情况,所述第一内容与第二内容的第一相似度,可以是第一内容和所述第二内容的余弦相似度。换言之,所述第一内容与所述k个内容中各个内容的第一相似度,可以是所述第一内容与所述k个内容中各个内容的余弦相似度。
103.当a大于1时,关于所述第二内容的迭代计算过程,可以参考下文对于s301-s302的描述部分,此处不做详述。
104.s202:将所述第一内容与所述k个内容中各个内容的第一相似度的平均值,确定为所述第a次迭代所确定的所述第一内容的密度。
105.确定第一内容与所述k个内容中各个内容的第一相似度之后,可以计算所述第一内容与所述k个内容中各个内容的第一相似度的平均值,从而得到所述第a次迭代所确定的所述第一内容的密度,迭代计算n次之后,即可得到所述第一内容的目标密度。
106.通过如上描述可知,当n等于1时,a的取值只能是1,此时,所述第一内容的目标密度,等于所述第一内容与所述k个内容中各个内容的余弦相似度的平均值。当n大于1时,则可以采用n次迭代的方式得到所述第一内容的目标密度。
107.接下来,对a大于1时,所述第二内容的第一密度的计算方式进行说明。
108.参见图3,该图为本技术实施例提供的又一种密度计算方法的流程示意图。图3所示的方法,介绍了通过(a-1)次迭代计算第二内容的第一密度时,第b次迭代的过程,图3所示的方法可以包括如下s301-s302。
109.s301:基于所述第二内容与所述第一内容库中的各个内容的第二相似度,在所述第一内容库中确定与所述第二内容匹配的q个内容。
110.s301在具体实现时,可以计算所述第二内容与所述第一内容库中的各个内容的第二相似度,而后,对所述第二内容与所述第一内容库中的各个内容的第二相似度由高到低进行排序,将排序靠前的q个第二相似度对应的所述第一内容库中的内容,确定为与所述第二内容匹配的q个内容。
111.本技术实施例不具体限定q的取值,q为大于等于2的整数,在一个示例中,所述q的取值可以与前述k的取值相同。
112.第三内容为所述q个内容中的任意一个内容,所述第二内容与所述第三内容的第二相似度,通过所述第二内容与所述第三内容的余弦相似度、以及第(b-1)次迭代时所确定的所述第三内容的第二密度确定,所述第三内容的第二密度,用于标识所述第三内容被所述第二内容库中的内容召回的可能性;其中,b为大于等于1且小于等于(a-1)的整数。
113.由于所述第三内容与所述第一内容均属于第一内容库,因此,所述第三内容的密度确定方式与第一内容的密度确定方式相同,故而,关于迭代计算得到所述第三内容的第二密度的方式,可以参考上文对于迭代计算第一内容的密度的部分,此处不再详述。基于以上s201-s202的描述,不难理解的是,当所述b等于1时,所述第三内容的第二密度为1,当所述a等于2时,所述b的取值只能为1,此时,所述第二内容与所述第三内容的第二相似度,可以等于所述第二内容与所述第三内容的余弦相似度。
114.s302:将所述第二内容与所述q个内容中各个内容的第二相似度的平均值,确定为所述第b次迭代所确定的所述第二内容的密度第一密度。
115.确定第二内容与所述q个内容中各个内容的第二相似度之后,可以计算所述第二内容与所述q个内容中各个内容的第二相似度的平均值,从而得到所述第b次迭代所确定的所述第二内容的密度,迭代计算(a-1)次之后,即可得到所述第二内容的第一密度。
116.关于所述第一内容的目标密度,现举例说明。
117.第一次迭代计算:
118.计算第一内容和第二内容库中的各个内容的余弦相似度,并按照余弦相似度由高到低的顺序进行排序,得到排序靠前的k1个内容;
119.将所述第一内容和所述k1个内容的余弦相似度的平均值,确定为所述第一内容的一次密度。
120.第二次迭代计算:
121.计算所述第一内容和第二内容库中的各个内容的一次相似度,第一内容和第二内容库中的第二内容的一次相似度,基于所述第一内容和所述第二内容的余弦相似度,以及所述第二内容的一次密度确定。
122.按照一次相似度由高到底的顺序进行排序,得到排序靠前的k2个内容;
123.将所述第一内容和所述k2个内容的一次相似度的平均值,确定为所述第一内容的二次密度。
124.第三次迭代计算:
125.计算所述第一内容和第二内容库中的各个内容的二次相似度,第一内容和第二内容库中的第二内容的二次相似度,基于所述第一内容和所述第二内容的余弦相似度,以及所述第二内容的二次密度确定。
126.按照二次相似度由高到底的顺序进行排序,得到排序靠前的k3个内容;
127.将所述第一内容和所述k3个内容的二次相似度的平均值,确定为所述第一内容的三次密度。
128.以此类推,迭代n次得到的n次密度,即为第一内容的目标密度。
129.当然,当n等于1时,第一内容的目标密度为第一内容的前述一次密度;当n等于2时,第一内容的目标密度为第一内容的前述二次密度;当n等于3时,第一内容的目标密度为第一内容的前述三次密度。
130.在一个示例中,前述k1、k2、k3的值可以相同,例如可以均为以上实施例提及的k。
131.关于第二内容的密度,现举例说明:
132.第一次迭代计算:
133.计算第二内容和第一内容库中的各个内容的余弦相似度,并按照余弦相似度由高到低的顺序进行排序,得到排序靠前的q1个内容;
134.将所述第二内容和所述q1个内容的余弦相似度的平均值,确定为所述第二内容的一次密度。
135.第二次迭代计算:
136.计算所述第二内容和第一内容库中的各个内容的一次相似度,第二内容和第一内容库中的第三内容的一次相似度,基于所述第二内容和所述第三内容的各个内容的余弦相似度,以及所述第三内容的一次密度确定。
137.按照一次相似度由高到底的顺序进行排序,得到排序靠前的q2个内容;
138.将所述第二内容和所述q2个内容的一次相似度的平均值,确定为所述第二内容的二次密度。
139.第三次迭代计算:
140.计算所述第二内容和第一内容库中的各个内容的二次相似度,第二内容和第一内容库中的第三内容的二次相似度,基于所述第二内容和所述第三内容的余弦相似度,以及
所述第三内容的二次密度确定。
141.按照二次相似度由高到底的顺序进行排序,得到排序靠前的q3个内容;
142.将所述第二内容和所述q3个内容的二次相似度的平均值,确定为所述第二内容的三次密度。
143.以此类推,迭代m次得到的m次密度,第二内容的m次密度,参与计算第一内容的(m+1)次密度。
144.在一个示例中,前述q1、q2、q3的值可以相同,例如可以均为以上实施例提及的q。
145.关于第三内容的密度(例如1次密度,2次密度,等等),可以参考上文对于第一内容的密度的说明部分,此处不再重复说明。
146.在一个示例中,可以预先计算并存储第一内容库中各个内容的各次密度(1次密度、二次密度、三次密度,等等),以及预先计算并存储第二内容库中各个内容的各次密度(1次密度、二次密度、三次密度,等等),以便于在为查询内容确定推荐内容时,直接获取对应内容的密度来计算查询内容与第一内容库中各个内容的目标密度,从而提升为查询内容确定推荐内容的效率。
147.示例性设备
148.基于以上实施例提供的方法,本技术实施例还提供了一种装置,以下结合附图介绍该装置。
149.参见图4,该图为本技术实施例提供的一种内容推荐装置的结构示意图。所述装置400例如可以具体包括:获取单元401、第一确定单元402和第二确定单元403。
150.获取单元401,用于获取查询内容;
151.第一确定单元402,用于确定所述查询内容和第一内容库中的多个内容的目标相似度,所述第一内容库中的多个内容包括第一内容,所述查询内容和所述第一内容的目标相似度,基于所述查询内容和所述第一内容的余弦相似度、以及所述第一内容的目标密度确定,所述第一内容的目标密度,用于标识所述第一内容被第二内容库中的内容召回的可能性,所述第二内容库为所述查询内容所属的内容库;
152.第二确定单元403,用于基于所述查询内容和第一内容库中的多个内容的目标相似度,确定与所述查询内容对应的推荐内容。
153.可选的,所述第一内容的目标密度,通过n次迭代计算得到,其中:
154.在第a次迭代时:
155.基于所述第一内容与所述第二内容库中的各个内容的第一相似度,在所述第二内容库中确定与所述第一内容匹配的k个内容;
156.将所述第一内容与所述k个内容中各个内容的第一相似度的平均值,确定为所述第a次迭代所确定的所述第一内容的密度;其中:
157.所述k个内容包括第二内容,所述第一内容与所述第二内容的第一相似度,通过所述第一内容与所述第二内容的余弦相似度、以及所述第二内容的第一密度确定,所述第二内容的第一密度,用于标识所述第二内容被所述第一内容库中的内容召回的可能性,所述第二内容的第一密度,通过(a-1)次迭代计算得到;
158.所述n为大于或者等于1的整数,a为大于等于1且小于等于n的整数。
159.可选的,所述a等于1,所述第二内容的第一密度为1,所述第一内容与所述第二内
容的第一相似度,为所述第一内容与所述第二内容的余弦相似度。
160.可选的,所述a大于1,第b次迭代计算所述第二内容的密度,通过如下方式实现:
161.基于第二内容与所述第一内容库中的各个内容的第二相似度,在所述第一内容库中确定与所述第二内容匹配的q个内容;
162.将所述第二内容与所述q个内容中各个内容的第二相似度的平均值,确定为所述第b次迭代所确定的所述第二内容的密度;其中:
163.所述q个内容包括第三内容,所述第二内容与所述第三内容的第二相似度,通过所述第二内容与所述第三内容的余弦相似度、以及第(b-1)次迭代时所确定的所述第三内容的第二密度确定;其中,b为大于等于1且小于等于(a-1)的整数,所述第三内容的第二密度,用于标识所述第三内容被所述第二内容库中的内容召回的可能性。
164.可选的,所述查询内容和所述第一内容的目标相似度,基于所述目标密度的倒数、以及所述查询内容与所述第一内容的余弦相似度确定。
165.可选的,所述第一确定单元402,用于:
166.确定所述查询内容和所述第一内容库中的各个内容的余弦相似度;
167.对所述查询内容和所述第一内容库中的各个内容的余弦相似度按照由高到低的顺序进行排序,确定排序靠前的多个余弦相似度对应的多个内容;
168.确定所述查询内容和所述多个内容的目标相似度。
169.由于所述装置400是与以上方法实施例提供的方法对应的装置,所述装置400的各个单元的具体实现,均与以上方法实施例为同一构思,因此,关于所述装置400的各个单元的具体实现,可以参考以上方法实施例的描述部分,此处不再赘述。
170.本技术实施例还提供了一种设备,所述设备包括处理器和存储器;
171.所述处理器用于执行所述存储器中存储的指令,以使得所述设备执行以上方法实施例提供的内容推荐方法。
172.本技术实施例提供了一种计算机可读存储介质,包括指令,所述指令指示设备执行以上方法实施例提供的内容推荐方法。
173.本技术实施例还提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行以上方法实施例提供的内容推荐方法。
174.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求指出。
175.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
176.以上所述仅为本技术的较佳实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1