一种实现服务推荐的方法、装置、计算机存储介质及终端

文档序号:25214478发布日期:2021-05-28 14:11阅读:89来源:国知局
一种实现服务推荐的方法、装置、计算机存储介质及终端

本文涉及但不限于服务推荐技术,尤指一种实现服务推荐的方法、装置、计算机存储介质及终端。



背景技术:

随着面向服务结构和云计算的发展与普及,无数的服务被开发者们发布到互联网上,这些服务能够给消费者们带来广泛的选择。然而,正是因为服务的数量巨大,仅靠人工的方法很难从海量的服务中选择个性化的高质量的服务。在这种情况下,服务推荐技术应运而生,它被视作一个用来解决当前面临的信息过载的重要工具。

许多的服务推荐方法都是基于协同过滤,一般可学习的协同过滤模型能够将用户和服务转化为一个向量化的表示,然后基于用户和服务的嵌入表示重建它们的历史交互行为。然而,由于个人的服务调用数据有时候十分稀疏以及冷启动问题的存在,协同过滤的精度并不理想。得益于社交媒体的发展,越来越多的面向服务的系统开始集成社交功能,例如:亚马逊(amazon)和易贝(ebay)等。传统的全球广域网(web)服务系统平台的上的用户开始能够建立社交联系;在上述服务平台之上,用户倾向于与社交朋友分享自己的服务偏好。因此,一个用户的服务偏好不仅能够从他的服务调用历史中进行推断,同样也受用户的社交联系影响。然而,把社交联系集成进入服务推荐中并不是一件简单的任务,特别是当涉及到高阶的社交关系的影响时,因为用户的偏好可能不仅被他们自己的朋友影响,还可能受他们的朋友的社交联系影响。根据社交联系的相关理论,使用高阶的社交联系来描述这一在大多数服务推荐系统中都存在的普遍现象;一个服务系统平台上的高阶社交联系包含以下两种层面:1、高阶社交相似性(通用偏好),它描述了用户与用户朋友的朋友倾向于拥有相似的通用偏好;2、高阶社交差异性(特定偏好),它反映了用户针对某一特定服务的偏好会受到来自其社交联系的中每一个用户差异化的影响。换句话说,对于某一项需求,用户社交网络中每一个不同的用户可能会贡献不一样的偏好影响。从示意图示意了高阶的社交关系是如何对用户的服务偏好产生影响的。

如何利用社交联系提升服务推荐的质量,是一个有待解决的问题。



技术实现要素:

以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。

本发明实施例提供一种实现服务推荐的方法、装置、计算机存储介质及终端,能够利用社交联系提升服务推荐的质量。

本发明实施例提供了一种实现服务推荐的方法,包括:

对社交网络中的用户,基于用户的关联社交网络建立用户的社交相似性;

根据建立的社交相似性确定用户的服务偏好;

根据获得的用户的服务偏好进行服务推荐;

其中,所述关联社交网络由所述社交网络中与用户连接的邻居组成的网络。

另一方面,本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现上述实现服务推荐的方法。

再一方面,本发明实施例还提供一种终端,包括:存储器和处理器,所述存储器中保存有计算机程序;其中,

处理器被配置为执行存储器中的计算机程序;

所述计算机程序被所述处理器执行时实现如上述实现服务推荐的方法。

还一方面,本发明实施例还提供一种实现服务推荐的装置,包括:建立单元、确定单元和推荐单元;其中,

建立单元设置为:对社交网络中的用户,基于用户的关联社交网络建立用户的社交相似性;

确定单元设置为:根据建立的社交相似性,确定用户的服务偏好;

推荐单元设置为:根据获得的用户的服务偏好进行服务推荐;

其中,所述关联社交网络由所述社交网络中与用户连接的邻居组成的网络。

本发明实施例基于用户的关联社交网络确定用户的社交相似性,基于社交相似性确定服务偏好,进而根据确定的服务偏好进行服务推荐,利用社交联系实现了服务推荐的质量提升。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1为本发明实施例实现服务推荐的方法的流程图;

图2为本发明实施例实现服务推荐的装置的结构框图;

图3为本发明实施例实现服务推荐的神经网络的框架图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1为本发明实施例实现服务推荐的方法的流程图,如图1所示,包括:

步骤101、对社交网络中的用户,基于用户的关联社交网络建立用户的社交相似性;其中,关联社交网络由社交网络中与用户连接的邻居组成的网络

步骤102、根据建立的社交相似性,确定用户的服务偏好;

步骤103、根据获得的用户的服务偏好进行服务推荐。

本发明实施例基于用户的关联社交网络确定用户的社交相似性,基于社交相似性确定服务偏好,进而根据确定的服务偏好进行服务推荐,利用社交联系实现了服务推荐的质量提升。

在一种示例性实例中,步骤101基于用户的关联社交网络建立用户的社交相似性之前,本发明实施例方法还包括:

步骤100、通过图的广度优先遍历(bfs),从社交网络中采样每一个用户的关联社交网络。

需要说明的是,bfs是本发明应用示例的一个可选示例,其他可获得关联社交网络的方法也可以用于实施本发明;

在一种示例性实例中,从社交网络中采样每一个用户的关联社交网络,包括:

确定目标用户在社交网络中的位置;

根据确定的确定目标用户在社交网络中的位置,基于广度优先原则,确定每一个用户在社交网络中的一个关联社交网络:

n(i)={ui0,ui1,ui2,...uin…uil};

其中,i表示社交网络中的第i个用户,uin表示用户i的第n个邻居。

本发明实施例步骤101基于用户的关联社交网络建立用户的社交相似性,包括:

将用户的关联社交网络为关联社交网络邻接矩阵;

转化关联社交网络邻接矩阵为拉普拉斯矩阵;

将关联社交网络中的每一个用户的嵌入表示映射到预设维度的空间中,获得预设维度的嵌入表示矩阵;

对嵌入表示矩阵和拉普拉斯矩阵进行图卷积,获得用户在关联社交网络中进行预设次数传播的每一次传播的用户;

拼接获得的用户的预设次数传播的用户表示,获得用户的社交相似性。

需要说明的是,将关联社交网络中的每个用户的嵌入表示映射到预设维度的空间的处理,与转换关联社交网络邻接矩阵为拉普拉斯矩阵的处理,并不存在先后顺序。

在一种示例性实例中,本发明实施例获得用户在关联社交网络中进行预设次数传播的每一次传播的用户表示,包括:

通过以下图卷积处理,获得用户在关联社交网络中进行第一次传播时的用户表示为:

用户在关联社交网络中进行第1次传播的用户表示为:

其中,表示用户i的关联社交网络邻接矩阵对应的拉普拉斯矩阵;i表示单位矩阵;wself和为待定参数;d0和dl表示嵌入表示矩阵的维度,表示wself和winter的维度范围为d0×dl;ei为用户i的嵌入表示矩阵,表示用户i的关联社交网络中第n个邻居对用户i的嵌入表示;表示ei(l)的维度范围为(l+1)×dl。

需要说明的是,d0和dl可以由本领域技术人员根据嵌入表示矩阵的实时维度进行设置。

本发明实施例通过上述图卷积操作,将高阶社交网络中的其他用户的信息传递到用户i的用户表示,表达式中的1为超参数,取值可以设定为2~5之间的一个数值,例如3。

在一种示例性实例中,本发明实施例获得用户的社交相似性ei*,包括:

ei*=concat(ei,ei1,ei2,…,eil)wr式(3)

其中,*表示拼接的结果;concat()表示对括号中的用户表示进行拼接;wr表示对concat(ei,ei1,ei2,...,eil)进行线性变换处理。

在一种示例性实例中,本发明实施例步骤102确定用户的服务偏好,包括:

计算用户的关联社交网络的每个邻居对每一个服务的相关度;

通过计算的用户的每个邻居对每一个服务的相关度,确定邻居在用户的关联社交网络中的权重;

将确定的邻居在用户的关联社交网络中的权重带权相加,获得融合社交差异性的用户的服务偏好。

在一种示例性实例中,本发明实施例确定邻居在用户的关联社交网络中的权重包括:

其中,ht、w和b为待定系数;o0表示向量oi,ei为ei*中包含的用户i的社交相似性表示元素,qm表示服务m的嵌入表示,⊙表示点击运算;oij用户i的邻居j的每一个邻居对每一个服务的相关度。

在一种示例性实例中,本发明实施例方法还包括:通过以下公式对权重进行归一化处理获得归一化权重α(ij):

在一种示例性实例中,本发明实施例获得融合社交差异性的用户的服务偏好ui,包括:

需要说明的是,本发明实施例采用公式(6)的运算实现将确定的邻居在用户的关联社交网络中的权重带权相加的处理。

在一种示例性实例中,本发明实施例步骤103根据获得的用户的服务偏好进行服务推荐,包括:

计算获得的用户的服务偏好与各服务的嵌入表示的匹配结果;

根据计算出的服务偏好与各服务的嵌入表示的匹配结果进行服务推荐。

在一种示例性实例中,本发明实施例计算获得的用户的服务偏好与各服务的嵌入表示的匹配结果包括:

其中,()t表示对括号中的内容进行转置。

本发明实施例提出一种基于高阶社交图和注意力机制神经网络的服务推荐方法,基于图卷积神经网络机制建立了一个多跳的关联社交传播模型,通过模仿用户偏好相似性在社交网络上的传播,捕捉高阶社交对用户通用偏好的影响,从而建立对用户通用偏好。注意力机制神经网络用来适应性地选择针对某项服务高影响力的邻居,刻画用户的偏好;通过上述处理,本发明实施例可以获得用户的服务偏好,进而实现服务推荐。本发明实施例当用户在服务平台上浏览所需的服务时,平台可以适应性地将高阶好友(邻居)的服务偏好通过关联社交网络的社交连接向用户迁移,从而提升服务推荐的质量,通过认识和挖掘用户的隐性服务需求,本发明实施例向用户推荐更加符合其期望的服务,提升服务推荐质量。

本发明实施例还提供一种计算机存储介质,计算机存储介质中存储有计算机程序,计算机程序被处理器执行时实现上述实现服务推荐的方法。

本发明实施例还提供一种终端,包括:存储器和处理器,存储器中保存有计算机程序;其中,

处理器被配置为执行存储器中的计算机程序;

计算机程序被处理器执行时实现如上述实现服务推荐的方法。

图2为本发明实施例实现服务推荐的装置的结构框图,如图2所示,包括:建立单元、确定单元和推荐单元;其中,

建立单元设置为:对社交网络中的用户,基于用户的关联社交网络建立用户的社交相似性;

确定单元设置为:根据建立的社交相似性,确定用户的服务偏好;

推荐单元设置为:根据获得的用户的服务偏好进行服务推荐;

其中,关联社交网络由社交网络中与用户连接的邻居组成的网络。

本发明实施例基于用户的关联社交网络确定用户的社交相似性,基于社交相似性确定服务偏好,进而根据确定的服务偏好进行服务推荐,利用社交联系实现了服务推荐的质量提升。

在一种示例性实例中,本发明实施例装置还包括采样单元,设置为:

通过图的广度优先遍历,从社交网络中采样每一个用户的关联社交网络。

在一种示例性实例中,本发明实施例建立单元是设置为:

将用户的关联社交网络表示为关联社交网络邻接矩阵;

转化关联社交网络邻接矩阵为拉普拉斯矩阵;

将关联社交网络中的每一个用户的嵌入表示映射到预设维度的空间中,获得预设维度的嵌入表示矩阵;

对嵌入表示矩阵和拉普拉斯矩阵进行图卷积,获得用户在关联社交网络中进行预设次数传播的每一次传播的用户表示;

拼接获得的用户的预设次数传播的用户表示,获得用户的社交相似性。

在一种示例性实例中,本发明实施例建立单元是设置为获得用户在关联社交网络中进行预设次数传播的每一次传播的用户,包括:

通过以下图卷积处理,获得用户在关联社交网络中进行第一次传播时的用户表示为:

用户在关联社交网络中进行第1次传播的用户表示为:

其中,表示用户i的关联社交网络邻接矩阵对应的拉普拉斯矩阵;i表示单位矩阵;wself和为待定参数;d0和dl表示嵌入表示矩阵的维度,表示wself和winter的维度范围为d0×dl;ei为用户i的嵌入表示矩阵,表示用户i的关联社交网络中第n个邻居对用户i的嵌入表示;表示ei(l)的维度范围为(l+1)×dl。

在一种示例性实例中,本发明实施例建立单元是设置为获得用户的社交相似性ei*,包括:

ei*=concat(ei,ei1,ei2,…,eil)wr;

其中,*表示拼接的结果;concat()表示对括号中的用户表示进行拼接;wr表示对concat(ei,ei1,ei2,...,eil)进行线性变换处理。

在一种示例性实例中,本发明实施例确定单元是设置为:

计算用户的关联社交网络的每个邻居对每一个服务的相关度;

通过计算的用户的每个邻居对每一个服务的相关度,确定邻居在用户的关联社交网络中的权重;

将确定的邻居在用户的关联社交网络中的权重带权相加,获得融合社交差异性的用户的服务偏好。

在一种示例性实例中,本发明实施例中确定单元是设置为确定邻居在用户的关联社交网络中的权重包括:

其中,ht、w和b为待定系数;o0表示向量oi,ei为ei*中包含的用户i的社交相似性表示元素,qm表示服务m的嵌入表示,⊙表示点击运算;oij用户i的邻居j的每一个邻居对每一个服务的相关度。

在一种示例性实例中,本发明实施例确定单元还设置为:通过以下公式对权重进行归一化处理获得归一化权重α(ij):

在一种示例性实例中,本发明实施例确定单元是设置为获得融合社交差异性的用户的服务偏好ui,包括:

在一种示例性实例中,本发明实施例推荐单元是设置为:

计算获得的用户的服务偏好与各服务的嵌入表示的匹配结果;

根据计算出的服务偏好与各服务的嵌入表示的匹配结果进行服务推荐。

在一种示例性实例中,本发明实施例推荐单元是设置为计算获得的用户的服务偏好与各服务的嵌入表示的匹配结果包括:

其中,()t对括号中的内容进行转置。

本发明实施例提出了一个用于服务推荐的基于高阶社交的注意力机制神经网络;使用图卷积神经网络和注意力机制,基于用户的高阶社交联系同时建模用户的通用偏好和特定偏好;图3为本发明实施例实现服务推荐的神经网络的框架图,如图3所示,本发明实施例可以划分为三个部分:1、社交嵌入表达传播层,通过将用户的直接社交联系的进行加和得到新的用户;2、社交嵌入表达传播模块,由多个社交嵌入表达传播层叠加而得,通过从用户的关联社交网络中挖掘高阶的社交信息,并将其显式地注入到用户的通用偏好当中;3、注意力机制模块,从邻居层面,自适应地往用户的关联社交网络中与目标服务更加契合的用户赋予更多的权重,然后将整个社交网络中的用户加权求和,得到用户的服务偏好;具体的:

1)社交嵌入表达传播层包括:用户社交嵌入和社交层面的嵌入传播;其中,

用户社交嵌入:通过将每个用户按照其用户编码的不同,映射到一个高维的向量空间中,得到每一个用户相应的可以优化的嵌入表示矩阵。

社交层面的嵌入传播:根据用户的关联社交网络,将用户的邻居的嵌入表示进行带权相加,把这一结果作为用户的服务偏好。

通过嵌入表示传播技术可以得到用户的直接好友对用户的社交影响。

2)社交嵌入连续传播模块包括:社交嵌入表达传播的矩阵和连续的社交嵌入表达传播;其中,

社交嵌入表达传播的矩阵:为了使的社交层面的嵌入传播能够在社交网络中的所有用户上并行地进行,将每一次传播的用户以图矩阵形式;

连续的社交嵌入表达传播:通过将矩阵的用户根据传播循环叠加,可以实现高阶社交好友的用户沿着社交联系逐步地向用户迁移。

3)注意力机制模块包括:融合服务的注意力权重计算和差异化的社交背景偏好计算;其中,

融合服务的注意力权重计算:将服务的嵌入表示和用户以及社交好友的嵌入表示综合考虑,计算目标服务动态变化的社交连边权重。

差异化的社交背景偏好计算:通过不同服务下的不同的社交权重,将用户的社交子网络中的所有的用户带权相加,得到用户的服务偏好。

本发明实施例通过上述处理,即可在利用用户的高阶社交的基础上,得到相对全面、相对客观的用户的服务偏好,从而对用户进行服务推荐。

“本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质”。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1