1.一种基于GCN和AIN的上下文感知推荐方法,其特征在于,其实现内容包括:步骤S1、获取用户的行为数据,并将数据划分为用户数据集、项目数据集、上下文因素数据集,其中,上下文因素数据集包含多个上下文因素,每个上下文因素是一个包含多个上下文的上下文数据集;
步骤S2、基于用户数据集、项目数据集、上下文数据集,分别引入嵌入向量,建立上下文与用户的参数矩阵、上下文与项目的参数矩阵,并将上下文与用户的参数矩阵、上下文与项目的参数矩阵作为嵌入查找表;
步骤S3、针对上下文与用户:
步骤S3.1、将上下文与用户的参数矩阵作为嵌入查找表,利用图神经网络GCN捕获嵌入查找表中上下文与用户之间的协同信号,并基于上下文与用户之间的协同信号,构造上下文到用户的交互传播消息,
步骤S3.2、基于聚合函数和注意力交互网络AIN,聚合上下文到用户的交互传播消息,分别聚合T次,进一步使用门控神经网络GRU聚合T次传播消息,建模用户随时间序列的偏好,构成用户的最终嵌入;
步骤S4、针对上下文与项目:
步骤S4.1、将上下文与项目的参数矩阵作为嵌入查找表,利用图神经网络GCN捕获嵌入查找表中上下文与项目之间的协同信号,并基于上下文与项目之间的协同信号,构造上下文到项目的交互传播消息,
步骤S4.2、基于聚合函数,聚合上下文到项目的交互传播消息,分别聚合T次,随后依次连接T次传播消息,构成项目的最终嵌入;
步骤S5、在用户的最终嵌入和项目的最终嵌入之间使用内积交互函数,输出用户对某个项目的预测概率。
2.根据权利要求1所述的一种基于GCN和AIN的上下文感知推荐方法,其特征在于,用U表示用户数据集,用u表示用户,则u∈U;
用V表示项目数据集,用v表示用户,则v∈V;
用C表示上下文因素,假定有K个上下文因素,则上下文因素数据集表示为{C1,C2,C3,…,CK},任一个上下文数据集Ci={c1,c2,c3,…,ck},其中k=1,2,…,K。
3.根据权利要求2所述的一种基于GCN和AIN的上下文感知推荐方法,其特征在于,执行步骤S2时,
d d
首先,引入嵌入向量eu∈R描述一个用户,引入嵌入向量ev∈R描述一个项目,引入嵌入d
向量ec∈R描述一个上下文环境,其中d表示嵌入大小,随后,建立上下文与用户的参数矩阵建立上下文与项目的参数矩阵
上述两个参数矩阵中的初始嵌入向量 相同。
4.根据权利要求3所述的一种基于GCN和AIN的上下文感知推荐方法,其特征在于,执行步骤S3.1,构造上下文到用户的交互传播消息,这一过程包括:步骤S3.1.1、基于上下文c与用户u之间的协同信号,将上下文c到用户u的交互传播消息定义为:
mc→u=f(ec,eu,pu,c),其中:mc→u为消息嵌入,即要传播的信息;f(·)是消息编码函数,f(·)以嵌入的ec和eu为输入,利用系数pu,c控制(u,c)之间每次传播的衰减因子执行卷积操作,建模c→u的消息传播;
步骤S3.1.2、基于定义的传播消息,f(·)的具体实现为公式(1):d′×d
其中:W1,W2∈R 为提取有用传播信息的可训练权重矩阵,d′为变换大小;⊙表示元素间的乘积,eu⊙ec传递的消息为eu和ec之间的交互编码, 表示图的拉普拉斯范数,也就是pu,c,Nu表示与用户u相连接的上下文数量,Nc表示在相同上下文c环境下购买同一物品的用户数量。
5.根据权利要求4所述的一种基于GCN和AIN的上下文感知推荐方法,其特征在于,执行步骤S3.2,聚合上下文到用户的交互传播消息,这一过程包括:S3.2.1、基于步骤3.1构造的交互传播消息,引入公式(2)计算每一个上下文对用户的注意力分数,
其中,ck表示用户u的任一上下文, 和 表示权重矩阵, 表示偏置项,上标ψ则用来标识和注意力交互网络AIN的模型参数;
S3.2.2、基于计算得到的每一个上下文对用户的注意力分数,引入公式(3)计算每一个上下文对用户的影响程度,使用sofTmax函数对所有上下文对用户的影响程度进行归一化处理,得到最终的注意力权重,
其中,m=1,2,...,M,cm表示用户u的任一上下文,a(u,ck)表示第k个上下文对用户u的注意力分数,a(u,cn)表示第n个上下文对用户u的注意力分数;
S3.2.3、T=1时,引入聚合函数公式(4),聚合上下文到用户的交互传播消息,
1 d′×d
其中,W1∈R , 表示第一次传播后得到的用户u的表示,β(u,ck)表示每一个上下文对用户u的影响程度;
T>=2时,参考附图1,引入聚合函数公式(5),T次聚合上下文到用户的交互传播消息,其中, 表示第T次传播后得到的用户u的表示,β(u,ck)表示每一个上下文对用户u的影响程度。
6.根据权利要求5所述的一种基于GCN和AIN的上下文感知推荐方法,其特征在于,T次聚合上下文到用户的交互传播消息后,依次得到用户u的多个表示,即 随后利用公式(6)、(7)、(8)、(9)、(10),通过门控神经网络GRU聚合T次传播消息,构成用户的最终嵌入,
其中, Wz、Wr、Wh、bz、br、和bh为更新门控神经网络GRU的权值和偏差, 和 分别是更新门矢量和重置门矢量。
7.根据权利要求6所述的一种基于GCN和AIN的上下文感知推荐方法,其特征在于,执行步骤S4.1,构造上下文到项目的交互传播消息,这一过程包括:步骤S4.1.1、基于上下文c与项目v之间的协同信号,将上下文c到项目v的交互传播消息定义为:
mc→v=f(ec,ev,pv,c),其中:mc→v为消息嵌入,即要传播的信息;f(·)是消息编码函数,f(·)以嵌入的ec和ev为输入,利用系数pv,c控制(v,c)之间每次传播的衰减因子执行卷积操作,建模c→v的消息传播;
步骤S4.1.2、基于定义的传播消息,f(·)的具体实现为公式(11):d′×d
其中:W1,W2∈R 为提取有用传播信息的可训练权重矩阵,d′为变换大小;⊙表示元素间的乘积,ev⊙ec传递的消息为ev和ec之间的交互编码, 表示图的拉普拉斯范数,也就是pv,c,Nv表示与项目v相连接的上下文数量,Nc表示在相同上下文环境c下同一用户购买物品的数量。
8.根据权利要求7所述的一种基于GCN和AIN的上下文感知推荐方法,其特征在于,执行步骤S4.2,
T=1时,引入聚合函数公式(4’),聚合上下文到项目的交互传播消息,
1 d′×d
其中,W1∈R , 表示第一次传播后得到的项目v的表示;
T>=2时,参考附图1,引入聚合函数公式(5’),T次聚合上下文到项目的交互传播消息,
其中, 表示第T次传播后得到的项目v的表示;
T次聚合上下文到项目的交互传播消息后,依次得到项目v的多个表示,即随后利用公式(12),连接T次传播消息,构成项目的最终嵌入,
9.根据权利要求8所述的一种基于GCN和AIN的上下文感知推荐方法,其特征在于,执行步骤S5时,引入公式(13),计算用户的最终嵌入和项目的最终嵌入两者的内积交互函数,输出用户对某个项目的预测概率。
10.根据权利要求9所述的一种基于GCN和AIN的上下文感知推荐方法,其特征在于,得到公式(13)后,可以对其进行验证:将用户当下上下文环境下所购买的项目作为正样本标签,将用户当下上下文环境下未购买的项目作为负样本标签,引入公式(14)、公式(15),用一个sofTmax层来计算预测类概率,使用交叉熵作为损失函数,优化公式(13),其中,表示用户对第j个抽样项目的预测概率分布,乃是用户对第j个项目的真实概率分布,O是V的一个抽样子集,包括正样本标签和负样本标签,公式(15)计算得到的损失函数值越小,表示预测概率越准确。