一种基于滑动谱分解确定内容多样性的方法和内容排序方法与流程

文档序号:26589653发布日期:2021-09-10 20:29阅读:76来源:国知局
一种基于滑动谱分解确定内容多样性的方法和内容排序方法与流程

1.本技术涉及计算机技术领域,特别涉及一种基于滑动谱分解确定内容多样性的方法、装置、设备及介质,以及一种内容排序方法、装置、设备以及介质。


背景技术:

2.随着大数据时代的到来,个性化推荐系统的出现为处理信息过载问题提供了一个有效的工具,已经成为互联网各大平台(电商、信息流等)的标配,并在技术(个性化召回、个性化排序等)上取得了长足的发展,逐渐从传统模型过度到深度学习时代。但是,当前个性化推荐以及相关算法的关注点大多数在提高推荐的精准性,而忽略了推荐结果的多样性,导致容易出现高度相似的内容聚集在一起的现象,即相似的item扎堆,用户的兴趣被局限到一个相对“较窄”(信息量为0的“精准推荐”)的推荐视野中,进而伤害了用户体验,尤其是兴趣宽泛、需求不明确的用户。


技术实现要素:

3.本技术实施例提供了一种基于滑动谱分解确定内容多样性的方法、装置、设备及介质。
4.第一方面,本技术实施例提供了一种基于滑动谱分解确定内容多样性的方法,用于电子设备,其特征在于,所述方法包括:
5.确定t个内容;
6.根据所述电子设备的显示尺寸确定大小为w的滑动窗口;
7.基于时间序列,以所述滑动窗口滑动所述t个内容,得到内容矩阵,其中所述内容矩阵包括表示以内容的空间向量vi表示的所述t个内容,其中i表示内容的标识,且i的取值为小于等于t的正整数;
8.对所述内容矩阵进行奇异值分解,得到多个奇异值,并将所述多个奇异值的乘积作为所述t个内容的多样性值。
9.在上述第一方面的一种可能的实现中,基于时间序列,以所述滑动窗口滑动所述t个内容,得到内容矩阵,包括:将每个所述滑动窗口中的w个所述内容聚合成一行,得到中间矩阵a
l
×
w
;将所述中间矩阵中的元素替换为所述向量vi,得到内容矩阵x∈r
l
×
w
×
d
;其中,l=t

w+m;m表示所述滑动窗口在所述t个内容上每次滑动的所述内容个数;d表示所述内容向量的维度。
10.在上述第一方面的一种可能的实现中,对所述内容矩阵x进行奇异值分解,得到多个奇异值,如下式所示:
[0011][0012]
将多个所述奇异值的乘积作为所述t个内容的多样性值,如下式所示:
[0013]
[0014]
其中,σ
ijk
表示所述奇异值;u
i(1)
∈r
l
,u
j(2)
∈r
w
,u
k(3)
∈r
d
分别表示所述内容矩阵x的正交分解矩阵的列;表示外积运算。
[0015]
在上述第一方面的一种可能的实现中,w≤t。
[0016]
在上述第一方面的一种可能的实现中,所述滑动窗口在所述t个内容上每次滑动m个所述内容,其中,1≤m≤w。
[0017]
在上述第一方面的一种可能的实现中,根据所述电子设备的显示尺寸确定大小为w的滑动窗口,包括:根据所述电子设备的显示屏能够显示的内容数量作为滑动窗口的大小w;或者以所述电子设备的显示屏能够显示的内容数量为基础,扩展预定幅度后的数量,作为滑动窗口的大小w。
[0018]
第二方面,本技术实施例提供了一种内容排序方法,用于电子设备,所述方法包括:根据用户画像筛选出z个内容;
[0019]
从所述z个内容中根据相关性排序得到与所述用户相关的n个候选内容;
[0020]
根据上述第一方面的任意一种可能的方法,确定所述n个候选内容中任意t个内容的多样性;
[0021]
选取所述n个候选内容中所述相关性和所述多样性之和最大的t个内容,进行排序。
[0022]
在上述第二方面的一种可能的实现中,从所述z个内容中排序得到与所述用户相关的n个候选内容,包括:
[0023]
根据预设规则,对所述z个内容的每个内容评分,得到所述内容与所述用户的相关性,如下式所示:
[0024][0025]
其中,t表示所述t个内容的第t个;表示所述t个内容的第t个的相关性评分。
[0026]
在上述第二方面的一种可能的实现中,选取所述n个候选内容中所述相关性和所述多样性之和最大的所述t个内容,进行排序,如下式所示:
[0027][0028]
其中,γ为用于调整所述相关性和所述多样性平衡的超参数。
[0029]
第三方面,本技术实施例提供了一种基于滑动谱分解确定内容多样性的的装置,包括:
[0030]
确定模块:确定t个内容;
[0031]
根据电子设备的显示尺寸确定大小为w的滑动窗口;
[0032]
处理模块:基于时间序列,以所述滑动窗口滑动所述t个内容,得到内容矩阵,其中所述内容矩阵包括以内容的空间向量vi表示的所述t个内容,其中i表示内容的标识,且i的取值为小于等于t的正整数;
[0033]
计算模块:对所述内容矩阵进行奇异值分解,得到多个奇异值,并将所述多个奇异值的乘积作为所述t个内容的多样性值。
[0034]
在上述第三方面的一种可能的实现中,基于时间序列,以所述滑动窗口滑动所述t个内容,得到内容矩阵,包括:将每个所述滑动窗口中的w个所述内容聚合成一行,得到中间矩阵a
l
×
w
;将所述中间矩阵中的元素替换为所述向量vi,得到内容矩阵x∈r
l
×
w
×
d
;其中,l=
t

w+m;m表示所述滑动窗口在所述t个内容上每次滑动的所述内容个数;d表示所述内容向量的维度。
[0035]
在上述第三方面的一种可能的实现中,对所述内容矩阵x进行奇异值分解,得到多个奇异值,如下式所示:
[0036][0037]
将多个所述奇异值的乘积作为所述t个内容的多样性值,如下式所示:
[0038][0039]
其中,σ
ijk
表示所述奇异值;u
1(1)
∈r
l
,u
j(2)
∈r
w
,u
k(3)
∈r
d
分别表示所述内容矩阵x的正交分解矩阵的列;表示外积运算。
[0040]
在上述第三方面的一种可能的实现中,w≤t。
[0041]
在上述第三方面的一种可能的实现中,所述滑动窗口在所述t个内容上每次滑动m个所述内容,其中,1≤m≤w。
[0042]
在上述第三方面的一种可能的实现中,根据所述电子设备的显示尺寸确定大小为w的滑动窗口,包括:根据所述电子设备的显示屏能够显示的内容数量作为滑动窗口的大小w;或者以所述电子设备的显示屏能够显示的内容数量为基础,扩展预定幅度后的数量,作为滑动窗口的大小w。
[0043]
第四方面,本技术实施例提供了一种基于滑动谱分解确定内容多样性的设备,所述基于滑动谱分解确定内容多样性的设备包括:
[0044]
存储器,用于存储由系统的一个或多个处理器执行的指令,以及
[0045]
处理器,是系统的处理器之一,用于执行所述指令以实施上述第一方面的任意一种可能的方法。
[0046]
第五方面,本技术实施例提供了一种计算机可读介质,计算机可读介质上存储有指令,该指令在计算机上执行时可以使计算机执行上述第一方面的任意一种可能的方法。
[0047]
第六方面,本技术实施例提供了一种内容排序装置,包括:
[0048]
筛选模块:根据用户画像筛选出z个内容;
[0049]
处理模块:从所述z个内容中根据相关性排序得到与所述用户相关的n个候选内容;
[0050]
计算模块:根据上述第一方面的任意一种方法,确定所述n个候选内容中任意t个内容的多样性;
[0051]
排序模块:选取所述n个候选内容中所述相关性和所述多样性之和最大的t个内容,进行排序。
[0052]
在上述第六方面的一种可能的实现中,从所述z个内容中排序得到与所述用户相关的n个候选内容,包括:
[0053]
根据预设规则,对所述z个内容的每个内容评分,得到所述内容与所述用户的相关性,如下式所示:
[0054][0055]
其中,t表示所述t个内容的第t个;表示所述t个内容的第t个的相关性评分。
[0056]
在上述第六方面的一种可能的实现中,选取所述n个候选内容中所述相关性和所述多样性之和最大的所述t个内容,进行排序,如下式所示:
[0057][0058]
其中,γ为用于调整所述相关性和所述多样性平衡的超参数。
[0059]
第七方面,本技术实施例提供了一种内容排序设备,包括:
[0060]
存储器,用于存储由系统的一个或多个处理器执行的指令,以及
[0061]
处理器,是系统的处理器之一,用于执行所述指令以实施上述第二方面的任意一种可能的方法。
[0062]
第八方面,本技术实施例提供了一种计算机可读介质,计算机可读介质上存储有指令,该指令在计算机上执行时可以使计算机执行上述第二方面的任意一种可能的方法。
[0063]
本技术中的技术方案,通过使用时间序列分析技术从内容序列的角度研究了推荐多样性问题并结合了滑动窗口外的内容,并因此考虑了整个项目序列的多样性。与现有技术相比,本技术中的技术方案较好地捕捉了用户在长序列场景中对多样化的感知,在计算上更有效,降低了时间复杂度和空间复杂度,并极大地提高了效率。且在线上实验中,ssd取得了用户浏览时长+0.42%,互动行为数+0.81%,用户浏览丰富度+0.32%,用户体验丰富度+0.68%的预料不到的技术效果。
附图说明
[0064]
图1根据本技术的一些实施例,示出了一种近1.5年用户浏览的平均内容序列长度的增长示意图;
[0065]
图2根据本技术的一些实施例,示出了一种基于滑动谱分解确定内容多样性的方法的硬件结构图;
[0066]
图3根据本技术的一些实施例,示出了一种基于滑动谱分解确定内容多样性的方法的应用场景图;
[0067]
图4根据本技术的一些实施例,示出了一种基于滑动谱分解确定内容多样性的方法的流程图;
[0068]
图5根据本技术的一些实施例,示出了生成内容矩阵的示意图;
[0069]
图6根据本技术的一些实施例,示出了一种内容排序方法的流程图;
[0070]
图7根据本技术的一些实施例,示出了一种基于滑动谱分解确定内容多样性的装置的结构示意图;
[0071]
图8根据本技术的一些实施例,示出了一种内容排序装置的结构示意图;
[0072]
图9根据本技术的一些实施例,示出了一种基于滑动谱分解确定内容多样性的方法的硬件结构框图。
具体实施方式
[0073]
本技术的说明性实施例包括但不限于一种基于滑动谱分解确定内容多样性的方法、装置、设备以及介质和一种内容排序方法、装置、设备以及介质。
[0074]
可以理解,本技术提供的基于滑动谱分解确定内容多样性的方法可以在各种电子
设备上实施,包括但不限于,服务器、多个服务器组成的分布式服务器集群、手机、平板电脑、膝上型计算机、台式计算机、可穿戴设备、头戴式显示器、移动电子邮件设备、便携式游戏机、便携式音乐播放器、阅读器设备、个人数字助理、虚拟现实或者增强现实设备、其中嵌入或耦接有一个或多个处理器的电视机等电子设备等。
[0075]
可以理解,在本技术各实施例中,处理器可以是微处理器、数字信号处理器、微控制器等,和/或其任何组合。根据另一个方面,所述处理器可以是单核处理器,多核处理器等,和/或其任何组合。
[0076]
下面对本技术实施例的发明构思进行简要介绍。
[0077]
目前,针对个性化推荐系统中的多样性主要考虑两点:聚合和个体。聚合考虑所有用户之间的多样性,目标是促进推荐器的覆盖,即体现“千人千面”。个体考虑单一用户的推荐多样性,目标是根据用户的兴趣,推荐的类别更多样化。近年来,在重排序阶段多样性优化策略,工业界的代表性方法有:mrr(maximal marginal relevance),google、youtube和hulu推荐的dpp(determinantal point process),阿里提出的基于transformer的prm,google、youtube提出的基于强化学习的模型slateq等,其中以dpp最具代表性,本技术中以dpp作为对比实验依据,dpp是一种概率框架,它首次被引入描述热平衡中的分布,表征为一些函数的决定因素。现有技术中,提出可使用快速贪婪算法来解决dpp的计算复杂度问题。为了在实践中提高效率,滑动窗在这些方法中起到关键作用。在使用滑动窗口的贪婪推理过程中,忽略了滑动窗口外的内容。尽管当前观看窗口中的内容对用户的多样化感知具有最直接的影响,但是由于用户的记忆,用户已经观看的滑动窗口之外的内容仍然对用户的感知具有持久的影响。现有的基于滑动窗口的多样化的方法忽略了窗口外的内容,因此没有完全捕捉到用户的多样化感知。尽管扩大滑动窗口的大小可以解决该问题,但是它仍然增加了计算时间并且实际上阻碍了在具有非常严格的等待时间要求的生产系统中的部署。鉴于此,本技术的实施例提供一种基于滑动谱分解确定内容多样性的的方法,在该方法中:确定t个内容;根据电子设备的显示尺寸确定大小为w的滑动窗口;基于时间序列,以所述滑动窗口滑动t个内容,得到内容矩阵;对内容矩阵进行奇异值分解,得到多个奇异值,并将多个奇异值的乘积作为t个内容的多样性值。
[0078]
本技术公开的基于滑动谱分解确定内容多样性的的方法,考虑到了在个体用户视角下,多样化推荐通常转化为兼顾相关性和多样性的目标优化问题,并对该问题进行了充分的研究,提出了解决了该目标优化问题的方案,该方案将推荐序列建模为由用户观察到的时间序列。通过利用时间序列分析技术,考虑多个滑动窗口来模拟整个序列的多样性,给出了兼顾实现推荐相似性和多样性的最佳折衷方案,并将该基于滑动谱分解确定内容多样性的的方法称为ssd(sliding spectrum decomposition)。图1根据本技术的一些实施例,示出了一种近1.5年用户浏览的平均内容序列长度的增长示意图,如图1所示,在近1.5年中,用户查看的应用程序根据本技术公开的基于滑动谱分解确定内容多样性的的方法以及内容排序方法推荐的内容序列的平均长度增加了约50%,即对于现在用户倾向于查看应用程序所推荐的更多内容,因而,正确地使用窗口外的这些内容的信息能够更符合用户的感知。
[0079]
在介绍完本技术实施例的发明构思之后,下面对本技术实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本技术实
施例而非限定。在具体实施过程中,可以根据实际需要灵活地应用本技术实施例提供的技术方案。
[0080]
本技术实施例提供的技术方案适用常见的个性化信息场景,如推荐系统、广告推送、内容检索、商品推荐等,本技术中主要是以笔记的推荐场景进行举例说明的。其中,笔记可以是在某个平台上至少包括文字、图片、视频等多媒体内容之一的笔记,用于记录用户针对某一主题发表的心得或意见。图2根据本技术的一些实施例,示出了一种基于滑动谱分解确定内容多样性的场景图,如图2所示,通过本技术的基于滑动谱分解确定内容多样性的方法以及内容排序的方法,用户可以浏览到相关度较高且多样性的笔记,例如,系统通过对该用户进行该用户喜欢美食、养了一只宠物、头像为纳木措风景、喜欢读书等信息分析出的用户画像,通过滑动谱分解确定内容的多样性,估计用户感兴趣的类别包括美食、旅游、阅读、宠物等。并基于数据库中的笔记内容进行初筛,得到1000篇笔记,然后根据相关性进行打分,并截取评分最高的前100篇笔记;并针对该100篇笔记,每20篇计算相关度和多样性值的和,选取二者之和的最大值的20篇笔记作为推荐给该用户的推荐笔记,并基于计算确定这20篇笔记的排序,比如可以按照“美食、旅游、阅读、宠物”、“美食、旅游、阅读、宠物”、“美食、旅游、阅读、宠物”的方式展现多样性,对用户进行推荐。
[0081]
本技术方式所提供的方法实施例可以在与该场景实现所牵涉的硬件中执行,图3根据本技术的一些实施例,示出了一种基于滑动谱分解确定内容多样性的方法的硬件结构框图。
[0082]
终端101可以是台式终端或移动终端,移动终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等。终端101可以安装有可以进行浏览笔记的应用,例如浏览器或者用户端。本技术实施例涉及的应用可以是软件用户端,也可以是网页、小程序等用户端,若应用为网页、小程序等用户端时,后台服务器则是与软件或是网页、小程序等相对应的后台服务器,不限制用户端的具体类型。其中,用户可以通过在应用上登录自己的用户,进而进行浏览笔记,并且在浏览笔记的同时,则可以利用本技术实施例的方法确定向该用户推荐的多媒体内容,可在笔记界面一并显示该多媒体内容,也可下滑界面显示该多媒体内容,形式不限于此。需要说明的是,即使用户未进行用户登录时,一般而言,用户端对应的服务器也会对该用户进行标识,例如可以通过该用户使用的终端进行标识,因而该标识也可以理解为用户的用户。
[0083]
服务器102可以为终端101上安装的应用所对应的后台服务器,例如可以是独立的物理服务器或者是多个服务器组成的服务器集群或分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
[0084]
服务器102可以包括一个或多个处理器1021、存储器1022以及与终端交互的i/o接口1023等。此外,服务器102还可以配置数据库1024,数据库1024可以用于存储用户画像、用户浏览的笔记记录、笔记的文本、图片、标注等多维度数据等。其中,服务器102的存储器1022中还可以存储本技术实施例提供的基于滑动谱分解确定内容多样性的方法的程序指令,这些程序指令被处理器1021执行时能够用以实现本技术实施例提供的基于滑动谱分解确定内容多样性的方法的步骤,以确定向用户推荐的内容,进而将该内容推送给目标用户,以在终端101中推送该内容。
[0085]
终端101和服务器102之间通过网络103连接,网络103包括一个或多个,并且可以包括各种连接类型,例如有线、无线通信链路、云或者光纤电缆等等,上述的网络具体实例可包括终端101的通信供应商提供的互联网。
[0086]
首先,处理器1021通过与终端101交互的i/o接口1023,读取终端101所对应的存储于数据库1024中的用户当前浏览的笔记,接下来,存储器1022通过执行存储的基于滑动谱分解确定内容多样性的方法的程序指令,确定第二内容并通过与终端交互的i/o接口1023将其推送至终端101,展示给用户。
[0087]
下面根据本技术的一些实施例,详细说明应用于图3所示的硬件的基于滑动谱分解确定内容多样性的技术方案。
[0088]
处理器1021通过i/o接口1023接收来自终端101的用户信息,通过用户画像估计的用户可能感兴趣的、跟用户相关度较高的笔记,从数据库1024中确定t个笔记(作为t个内容的实例)。接下来根据电子设备的显示尺寸确定大小为w的滑动窗口;基于时间序列,以所述滑动窗口滑动t个内容,得到内容矩阵;对内容矩阵进行奇异值分解,得到多个奇异值,并将多个奇异值的乘积作为t个内容的多样性值。多样性值越大,表明该t个内容所涉及的与用户相关联的类别越多,越全面。本技术中的技术方案,通过使用时间序列分析技术从内容序列的角度研究了推荐多样性问题并结合了滑动窗口外的内容,并因此考虑了整个项目序列的多样性。与现有技术相比,本技术中的技术方案较好地捕捉了用户在长序列场景中对多样化的感知,在计算上更有效,降低了时间复杂度和空间复杂度,并极大地提高了效率。
[0089]
图4根据本技术的一些实施例,示出了一种基于滑动谱分解确定内容多样性的方法的流程图。如图4所示,在某些实施例中,该方法可以包括:
[0090]
步骤401:确定t个笔记。
[0091]
具体的,在步骤401中,在一些实施例中,从数据库1024所能够提供的笔记中确定t个笔记,具体的,系统通过用户画像估计的用户可能感兴趣的、跟用户相关度较高的笔记,确定t个笔记,具体的,可假设t=20,即确定20篇用户可能感兴趣的来自不同类别的笔记。
[0092]
步骤402:根据电子设备的显示尺寸确定大小为w的滑动窗口。
[0093]
具体的,首先,滑动窗口的大小w通常不大于t个内容,具体的,假设w=5,即每次在20个内容上滑动大小为5个内容。滑在一些实施例中,滑动窗口的大小,取决于产品的设计样式。具体的,比如一个产品设计了3个窗口,每个窗口大小是8的样式,即不管尺寸怎么变,每个窗口都会显示8个内容,显示屏缩小仅会缩小每个内容的大小,而不会减少内容的显示数量。另外产品的设计样式也可以指“用户习惯”,例如经过对用户进行调研,男性一次可以看x个内容,女性则可看y个内容。其中x和y的值是可以个性化设置的。换句话说,产品的设计样式代表了用户能够浏览或感知的笔记数量。本技术中以电子设备的显示尺寸作为示例进行说明,为了确定滑动窗口的大小,电子设备的显示屏所能显示的笔记数量(内容假定具有标准的大小)是基准。根据本技术,滑动窗口的大小可以是直接等于由电子设备的显示屏所能显示的笔记数量。在另一些实施例中,考虑到用户所能感知的内容数量除了当前屏幕显示的本身,还可以是向前一定数量或向后一定数量的内容,比如,用户看的角度,如果假定窗口大小是5,用户看到第6个笔记的时候,不会忘记第一个笔记,即用户可感知的笔记的篇数与电子设备的显示尺寸没必然联系,因此滑动窗口的大小w通常不局限于电子设备的显示尺寸,还可以根据用户能够浏览或感知的笔记数量而定。
[0094]
步骤403:基于时间序列,以所述滑动窗口滑动t个内容,得到内容矩阵。
[0095]
具体的,在步骤403中,图5根据本技术的一些实施例,示出了生成内容矩阵的示意图,如图5所示,从用户角度来说,用户一篇一篇的看笔记,窗口随之往下滑动,在系统后台,随着用户的滑动,时间序列逐渐加长;接下来,以每个滑动窗口中的5个笔记聚合成一行,得到一个二维的中间矩阵a
l
×
w
,其中,矩阵a的元素为i1,
……
i
t
,表示20个笔记中每个笔记的标号;通过查询对应的表,找到每个笔记对应的向量表示v
it
,将矩阵a中的元素替换为向量,得到内容矩阵x。可以理解,x是一个三维数组,其元素为v
i1

……
,v
it
,对应20个笔记中的每个笔记的空间表示,表示用户会浏览的所有笔记构成的矩阵。其中,表以key_value的形式展示。
[0096]
通过得到表示每个笔记标号的中间矩阵,然后再去查表的方式将标号替换为对应笔记在空间中的向量表示的方式,减少了计算量,提高了系统运转的效率,因而给客户带来更无痕迅敏的用户体验。
[0097]
步骤404:对内容矩阵进行奇异值分解,得到多个奇异值,并将多个奇异值的乘积作为t个内容的多样性值。
[0098]
具体的,在步骤404中,x正是单变量时间序列的奇异谱分析(ssa)中的轨迹矩阵。在时间序列分析中,ssa是已广泛应用于各个领域,例如多元统计、非线性动力系统和信号处理。在传统的时间序列分析中,一个复杂的时间序列通常由几个有规律的成分组成。例如,随着农业的不断进步,粮食产量呈上升趋势,但也受季节影响,即粮食产量的时间序列是趋势和季节性的总和。ssa就是这样一种技术,可以将时间序列分解为各种正交分量,其中这些分量的权重通过轨迹矩阵的奇异值分解由奇异值表示。在推荐场景中,我们通过将d维内容嵌入作为多变量观察将轨迹矩阵推广到三阶情况。在ssa之后,我们根据以下公式,对内容矩阵x进行奇异值分解:
[0099][0100]
其中,σ
ijk
表示所述奇异值;u
i(1)
∈r
l
,u
j(2)
∈r
w
,u
k(3)
∈r
d
分别表示所述内容矩阵x的正交分解矩阵的列;表示外积运算。
[0101]
经过以上处理,接下来的问题是如何从这个分解中定义多样性。让我们首先考虑一个简单的情况,当滑动窗口在20个笔记上每次滑动5个笔记时,此时m=w,即其中任何一对窗口之间没有重叠,计算多样性时窗口是独立的。因此,我们只需要关注内容矩阵x的单行,并将轨迹张量退化为矩阵。假设笔记被嵌入到一个内积空间中,即一对笔记的内积可以表示相关性。通过这些笔记跨越的超平行六面体的体积来定义多样性是可以理解的,其中不同类比的笔记因为嵌入更加正交而跨越更大的体积。而矩阵体积的计算方法之一是使用奇异值的累积乘积。基于此,我们将这种方法推广到定义三阶的内容矩阵x的体积,如下式所示:
[0102][0103]
本技术中的ssd方法在浏览整个序列时通过从用户的感知中将多个窗口组合在一起,x的体积因此表示基于整个序列以及滑动窗口的多样性,因而公式(2)也即将多个奇异值的乘积作为20个笔记的多样性值。因此,我们通过等式定义了整个序列的多样性。
[0104]
在一些实施例中,滑动窗口的大小w≤确定的t个笔记的大小,具体的,滑动窗口的
概念的提出是为了能更好的更细致的捕捉用户的感知,而当滑动窗口的大小大于准备展示给用户的笔记的大小时,可直接一次性展示所有的t个笔记,此时滑动窗口的存在没有意义。
[0105]
在一些实施例中,滑动窗口在t个笔记上每次滑动m个内容,其中,1≤m≤w。具体的,假设w=5时,m=3,即第一个滑动窗口的笔记为12345,第二个滑动窗口的内容为45678,使得每相邻两个滑动窗口之前没有漏掉笔记,即保证20个笔记至少被一个滑动窗口所滑过,从而使得滑动窗口外的内容被充分完全的考虑进来。
[0106]
本技术中的技术方案,通过使用时间序列分析技术从内容序列的角度研究了推荐多样性问题并结合了滑动窗口外的内容,并因此考虑了整个项目序列的多样性。与现有技术相比,本技术中的技术方案较好地捕捉了用户在长序列场景中对多样化的感知,在计算上更有效,降低了时间复杂度和空间复杂度,并极大地提高了效率。且在线上实验中,ssd取得了用户浏览时长+0.42%,互动行为数+0.81%,用户浏览丰富度+0.32%,用户体验丰富度+0.68%的预料不到的技术效果。
[0107]
根据本技术的一些实施例,提供了一种内容排序方法600,图6根据本技术的一些实施例,示出了一种内容排序方法的流程图。如图6所示,该方法如下:
[0108]
步骤601:根据用户画像筛选出z个内容。
[0109]
具体的,在步骤601中,基于用户画像,处理器1021在系统内部进行初步筛选,具体的,可根据用户画像筛选出1000篇笔记,其中,用户画像可基于用户的以下信息得出:注册信息、头像、个人资料等。
[0110]
步骤602:从z个内容中根据相关性排序得到与用户相关的n个候选内容。
[0111]
具体的,在步骤603中,在一些实施例中,使用逻辑回归模型,因子分解基,深度神经网络模型等机器学习的方法,根据用户搜索或点击过的笔记做样本,并拟合估计z个笔记推给用户之后用户的表现,给出评分r
i
,评分r
i
综合考虑用户看这篇笔记的时长、点击率、互动数(点赞、收藏、关注作者等)、用户的搜索的内容等因素。具体的,假设从1000篇笔记中找出100篇笔记,则分别针对1000篇中的每一篇笔记进行评分,取评分最高的前100篇笔记作为候选笔记。该评分不区分笔记具体的类别,而是和用户的总体的相关性,具体的,任意两篇笔记的向量vi的内积越大,则相关性越高。
[0112]
步骤603:根据基于滑动谱分解确定内容多样性的方法确定n个候选内容中任意t个内容的多样性。
[0113]
具体的,在步骤603中,根据第一实施例的任一种基于滑动谱分解确定内容多样性的的方法确定n个候选笔记中任意t个笔记的多样性。具体的,从100篇笔记中任选20篇进行多样性值的计算,共有种结果。
[0114]
步骤604:选取n个候选内容中相关性和多样性之和最大的t个内容,进行排序。
[0115]
具体的,在步骤604中,在一些实施例中,为了综合衡量相关性和多样性,本技术提出直接对它们进行求和,如下式所示:
[0116][0117]
其中,γ为用于调整相关性和多样性平衡的超参数。将n个候选内容中,综合考虑了相关性和多样性的最优解的t个内容,挑出来进行排序,并推荐给用户。
[0118]
本技术中的技术方案,通过使用时间序列分析技术从内容序列的角度研究了推荐多样性问题并结合了滑动窗口外的内容,并因此考虑了整个项目序列的多样性。与现有技术相比,本技术中的技术方案较好地捕捉了用户在长序列场景中对多样化的感知,在计算上更有效,降低了时间复杂度和空间复杂度,并极大地提高了效率。且在线上实验中,ssd取得了用户浏览时长+0.42%,互动行为数+0.81%,用户浏览丰富度+0.32%,用户体验丰富度+0.68%的预料不到的技术效果。
[0119]
根据本技术的一些实施例,提供了一种基于滑动谱分解确定内容多样性的装置700,如图7所示,基于滑动谱分解确定内容多样性的装置700如下:
[0120]
确定模块701:确定t个内容;根据电子设备的显示尺寸确定大小为w的滑动窗口;
[0121]
处理模块702:基于时间序列,以滑动窗口滑动t个内容,得到内容矩阵,其中内容矩阵包括以内容的空间向量vi表示的t个内容,其中i表示内容的标识,且i的取值为小于等于t的正整数;
[0122]
计算模块703:对内容矩阵进行奇异值分解,得到多个奇异值,并将多个奇异值的乘积作为t个内容的多样性值。
[0123]
第一实施例是与本实施例相对应的方法实施例,本实施例可与第一实施例互相配合实施。第一实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一实施例中。
[0124]
本技术的第四实施例涉及一种基于滑动谱分解确定内容多样性的设备801,包括:
[0125]
存储器8011,用于存储由系统的一个或多个处理器执行的指令,以及
[0126]
处理器8012,是系统的处理器之一,用于执行所述指令以实施上述第一实施例的任意一种可能的方法。
[0127]
第一实施例是与本实施例相对应的方法实施例,本实施例可与第一实施例互相配合实施。第一实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一实施例中。
[0128]
具体的,如图8所示,设备801可以包括一个或多个(图中仅示出一个)存储器8011和处理器8012(处理器8012可以包括但不限于中央处理器cpu、图像处理器gpu、数字信号处理器dsp、微处理器mcu或可编程逻辑器件fpga等的处理装置)。本技术实施例中不限定上述存储器8011和处理器8012之间的具体连接介质。本技术实施例在图8中以存储器8011和处理器8012之间通过总线8013连接,总线8013在图8中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线8013可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。本领域技术人员可以理解,图8所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,设备801还可包括比图8中所示更多或者更少的组件,或者具有与图8所示不同的配置。
[0129]
处理器8012通过运行存储在存储器8011内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的基于滑动谱分解确定内容多样性的方法。
[0130]
存储器8011可用于存储处理器8012执行的如本技术的一些实施例中的基于滑动谱分解确定内容多样性的方法对应的程序指令/模块。存储器8011可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存
储器。在一些实例中,存储器8011可进一步包括相对于处理器8012远程设置的存储器,这些远程存储器可以通过网络连接至该设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0131]
本技术的第五实施例涉及一种使用计算机程序编码的计算机存储介质,计算机可读介质上存储有指令,该指令在计算机上执行时可以使计算机执行上述第一实施例的任意一种可能的方法。
[0132]
第一实施例是与本实施例相对应的方法实施例,本实施例可与第一实施例互相配合实施。第一实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一实施例中。
[0133]
根据本技术的一些实施例,提供了一种内容排序装置900,如图9所示,该装置900如下:
[0134]
筛选模块901:根据用户画像筛选出z个内容;
[0135]
处理模块902:从所述z个内容中根据相关性排序得到与用户相关的n个候选内容;
[0136]
计算模块903:根据上述第一方面的任意一种方法,确定n个候选内容中任意t个内容的多样性;
[0137]
排序模块904:选取n个候选内容中相关性和多样性之和最大的t个内容,进行排序。
[0138]
第二实施例是与本实施例相对应的方法实施例,本实施例可与第二实施例互相配合实施。第二实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第二实施例中。
[0139]
本技术的第七实施例涉及一种基于滑动谱分解确定内容多样性的设备,包括:
[0140]
存储器,用于存储由系统的一个或多个处理器执行的指令,以及
[0141]
处理器,是系统的处理器之一,用于执行所述指令以实施上述第二实施例的任意一种可能的方法。
[0142]
第二实施例是与本实施例相对应的方法实施例,本实施例可与第二实施例互相配合实施。第二实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第二实施例中。
[0143]
本技术的第八实施例涉及一种使用计算机程序编码的计算机存储介质,计算机可读介质上存储有指令,该指令在计算机上执行时可以使计算机执行上述第二实施例的任意一种可能的方法。
[0144]
第二实施例是与本实施例相对应的方法实施例,本实施例可与第二实施例互相配合实施。第二实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第二实施例中。
[0145]
需要说明的是,本技术的各方法实施例均可以以软件、硬件、固件等方式实现。不管本技术是以软件、硬件、还是固件方式实现,指令代码都可以存储在任何类型的计算机可访问的存储器中(例如永久的或者可修改的,易失性的或者非易失性的,固态的或者非固态的,固定的或者可更换的介质等等)。同样,存储器可以例如是可编程阵列逻辑(programmable array logic,简称“pal”)、随机存取存储器(randomaccess memory,简称“ram”)、可编程只读存储器(programmable read only memory,简称“prom”)、只读存储器
(read

only memory,简称“rom”)、电可擦除可编程只读存储器(electrically erasable programmable rom,简称“eeprom”)、磁盘、光盘、数字通用光盘(digital versatile disc,简称“dvd”)等等。
[0146]
需要说明的是,本技术各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部位,还可以以多个物理单元的组合实现,这些逻辑单元本身的物理实现方式并不是最重要的,这些逻辑单元所实现的功能的组合才是解决本技术所提出的技术问题的关键。此外,为了突出本技术的创新部位,本技术上述各设备实施例并没有将与解决本技术所提出的技术问题关系不太密切的单元引入,这并不表明上述设备实施例并不存在其它的单元。
[0147]
需要说明的是,在本专利的权利要求和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0148]
虽然通过参照本技术的某些优选实施例,已经对本技术进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本技术的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1