一种基于交互图卷积网络的协同过滤方法技术

技术编号:39586760 阅读:12 留言:0更新日期:2023-12-03 19:38
本发明专利技术提出了一种基于交互图卷积网络的协同过滤方法

【技术实现步骤摘要】
一种基于交互图卷积网络的协同过滤方法


[0001]本专利技术主要涉及推荐系统,图卷积神经网络和深度学习领域,具体是一种基于交互图卷积网络的协同过滤方法


技术介绍

[0002]在过去几十年中,推荐系统一直是计算机科学和机器学习领域的研究热点之一

随着互联网的普及和信息爆炸式增长,推荐系统的重要性变得越来越显著

推荐系统已经被广泛应用于电子商务

社交网络

新闻资讯

音乐电影等领域,为用户提供了更加智能

个性化的服务

[0003]为了更好地实现个性化推荐,许多研究人员使用深度学习的协同过滤在不同程度上解决了传统推荐算法中存在的诸多问题

例如,基于神经网络的协同过滤推荐算法,能够自动学习特征并使用交叉熵作为损失函数进行训练

最近,
CF
结合图神经网络
(Graph Neural Network,GNN)
进一步增强了推荐性能
。GCCF
使用图卷积神经网络对图进行更新和推荐,从而更好地学习用户和物品之间的交互关系
。LightGCN

GCN
算法基础上简化了邻居嵌入向量的加权和计算,大幅减少了计算复杂度,并引入自适应层权重的机制以适应不同数据集的特征
。DGCF
使用解耦机制来学习用户和物品的特征表示,从而更好地捕捉它们之间的关联/>。HyRec
使用超图模型来捕捉用户和项目之间的复杂关系,从而更好地预测用户的下一个兴趣项目

[0004]近年来,许多研究人员已经开始使用自监督学习来改进协同过滤推荐系统,开发了各种不同的方法

这些方法通常使用对比学习来优化模型的表示形式,从而提高学习的鲁棒性和泛化能力

一些自监督学习方法还采用了数据增强技术来增加数据的多样性,从而提高模型的鲁棒性和泛化能力

同时,一些方法还使用自注意力机制和超图卷积神经网络等技术来捕捉数据之间的关系和模式

[0005]但是,现有的协同过滤方法仍然几个问题

其一,用户的兴趣是动态变化的,用户

商品交互图中包含了丰富的上下文语义信息

由于这些信息的变化和复杂性,传统的静态图模型可能无法有效地处理这些动态变化,从而导致性能下降

其二,现有的神经图协同过滤方法在计算过程中可能存在方差膨胀问题,导致模型性能和泛化能力下降

因此,需要一种新的方法来解决这些问题

[0006]本专利技术提出了一种基于交互图卷积网络的协同过滤方法,该专利技术充分考虑了用户

商品上下文语义交互信息,并采用
VIC(Variance Inflation Control)
正则化来提高模型的稳定性和泛化性能

具体而言,本方法首先采用多层
GCN
模型来提取用户和商品嵌入向量中的高阶特征

然后,使用时间滑动窗口来学习时序嵌入向量,利用这些向量来构建动态图,反映用户和物品之间的动态关系

本专利技术还引入了上下文语义交互机制,将用户和物品的上下文信息融合到嵌入向量中,以更好地捕捉用户兴趣的变化

最后,我们利用
VIC
正则化来控制模型的方差膨胀问题,从而提高模型的性能和泛化能力


技术实现思路

[0007]本专利技术提出了一种基于交互图卷积网络的协同过滤方法用于推荐系统

该方法使用多层
GCN
来建模用户和物品之间的嵌入表示,并在每个状态中,使用时间滑动窗口来考虑用户

商品间的上下文信息和动态交互

然后,利用互信息最大化完成上下文语义信息学习,来最大化当前状态的嵌入向量与过去时刻的嵌入向量的相似性,最小化当前层次的嵌入向量与所有过去时刻嵌入向量的距离

为了防止嵌入过平滑或者坍塌,引入了
VIC
正则化监督嵌入向量

本专利技术的具体步骤如下:
[0008]1.
使用多层
GCN
来建模用户和物品之间的嵌入表示,并在每个状态中,使用时间滑动窗口来考虑用户

商品间的上下文信息和动态交互
:
[0009]Multi

CGN
模型包含多个卷积图神经网络层,每个层学习用户和商品的嵌入表示

在每个层中,首先执行图神经网络传播,然后执行聚合函数来聚合邻居节点的嵌入

在每个层之间,我们将当前层的嵌入作为输入传递给下一层,以学习更高层次的特征表示

我们使用
Multi

CGN
学习当前的用户和项目的嵌入表示,使用
Multi

CGN
的上一层学习过去的用户和项目的嵌入表示

[0010]Multi

CGN
的每一层都在学习用户和项目的嵌入表示

为了将不同时刻的状态信息表示出来,引入了时间滑动窗口,以考虑用户和项目之间的动态交互

具体地,假设时间滑动窗口的大小为
w
,当前层数为
l
,则循环遍历从
l

w+1

l
的每个状态,对于每个状态,都使用多层
GCN
学习用户和项目的嵌入表示

这样,就可以考虑用户和项目之间的动态交互,并在推荐过程中使用最近的交互信息

[0011][0012]其中和表示第
l
层的项目和用户的嵌入表示;和表示时间窗口内的用户和项目的嵌入表示

[0013]2.
在得到当前和过去的嵌入表示后,利用互信息最大化完成上下文语义信息学习,来最大化当前状态的嵌入向量与过去时刻的嵌入向量的相似性,最小化当前时刻的嵌入向量与所有过去时刻嵌入向量的距离:
[0014]具体来说,我们定义了如下的
loss
[0015][0016][0017]其中,
N
i
是节点
i
的邻居集合,
N
u
是节点
u
的邻居集合,表示节点
u
在第
l

w
层的表征向量,表示节点
u
在第
l

w+1
层的表征向量,
τ
是一个温度参数,取值区间为
(0本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种基于交互图卷积网络的协同过滤方法,其特征在于包括以下步骤:
1)
使用多层
GCN
来建模用户和物品之间的嵌入表示,并在每个状态中,使用时间滑动窗口来考虑用户

商品间的上下文信息和动态交互;使用多层
GCN
来建模用户和物品之间的嵌入表示,并在每个状态中,使用时间滑动窗口来考虑用户

商品间的上下文信息和动态交互;
2)
利用互信息最大化完成上下文语义信息学习,来最大化当前状态的嵌入向量与过去时刻的嵌入向量的相似性,最小化当前时刻的嵌入向量与所有过去时刻嵌入向量的距离;
3)
利用
VIC
正则化来控制模型的方差膨胀问题,从而提高模型的性能和泛化能力;在推荐系统中,会使用用户

物品交互矩阵来表示用户对物品的行为;假设该矩阵为其中
n
u
是用户数量,
n
i
是物品数量;如果在用户
u
和商品
i
之间存在一个交互,那么
R
u,i

1,
否则为0;将用户和物品的向量表示嵌入矩阵和其中
d
是设定的向量维度;在
GNN
中,通过交互矩阵的链接关系进行信息传递;预测用户
u
是否会喜欢某个物品
i
σ
(
·
)

sigmoid
函数,用于将预测值限制在
[0,1]
的范围内
。2.
根据权利要求1所述的一种基于交互图卷积网络的协同过滤方法,其特征在于:进一步的,使用多层
GCN
来建模用户和物品之间的嵌入表示,并在每个状态中,使用时间滑动窗口来考虑用户

商品间的上下文信息和动态交互;
Multi

CGN
模型包含多个卷积图神经网络层,每个层学习用户和商品的嵌入表示;在每个层中,首先执行图神经网络传播,然后执行聚合函数来聚合邻居节点的嵌入;在每个层之间,将当前层的嵌入作为输入传递给下一层,以学习更高层次的特征表示;使用
Multi

CGN
学习当前的用户和项目的嵌入表示,使用
Multi

CGN
的上一层学习过去的用户和项目的嵌入表示;
Multi

CGN
的每一层都在学习用户和项目的嵌入表示;为了将不同时刻的状态信息表示出来,引入了时间滑动窗口,以考虑用户和项目之间的动态交互;具体地,假设时间滑动窗口的大小为
w
,当前层数为
l
,则循环遍历从
l

w+1

l
的每个状态,对于每个状态,都使用多层
GCN
学习用户和项目的嵌入表示;这样,就可以考虑用户和项目之间的动态交互,并在推荐过程中使用最近的交互信息;其中和表示第
l
层的项目和用户的嵌入表示;和表示时间窗口内的用户和项目的嵌入表示
。3.
根据权利要求2所述的一种基于交互图卷积网络的协同过滤方法,其特征在于:在得到当前和过去的嵌入表示后,利用互信息最大化来完成上下文语义信息学习;引入了自监督学习的思想,最大化当前状态的嵌入向量与过去时刻的嵌入向量的相似性,最小化当前时刻的嵌入向量与所有过去时刻嵌入向量的距离;
具体来说,定义了如下的
lossloss
其中,
N
u
是节点
u
的邻居集合,表示节点
u
在第
l

w
层的表征向量,表示节点
u

【专利技术属性】
技术研发人员:张勇赵诗雨李孟燃李小勇胡永利尹宝才
申请(专利权)人:北京工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1