1.一种基于表征解耦的图协同过滤推荐方法,其特征在于:该方法包括以下步骤:S1:获取数据集,所述数据集包含用户信息U和项目信息I;
S2:对所述S1获取数据集中的文本数据进行预处理,将预处理后的数据集划分为训练集train.txt和测试集test.txt,训练集用作模型训练,测试集用作模型性能测试,将两个数据集分别进行以下步骤的操作;
S3:根据数据集构建用户-项目交互矩阵,根据所述用户-项目交互矩阵构建用户-项目交互二分图,根据所述用户-项目交互二分图构建邻接矩阵;结合所述构建的用户-项目交互矩阵、邻接矩阵来生成用户-项目的嵌入,表示用户u的初始嵌入,表示项目i的初始嵌入;
S4:将所述S3中初始嵌入和输入到第一图卷积模块进行图卷积操作,通过迭代聚合二分图中相邻节点的特征来学习用户和项目的嵌入;
S5:构建top-K生成器,利用第一图卷积模块输出的用户和项目嵌入重新构建用户-项目交互二分图、用户-用户二分图以及项目-项目二分图;
S6:根据所述S5中重新构建的所述用户-项目交互二分图、所述用户-用户二分图以及所述项目-项目二分图,生成新的邻接矩阵,将所述新的邻接矩阵和所述S4中得到的用户和项目嵌入一同输入第二图卷积模块中进行图卷积操作得到新的用户和项目的嵌入;
S7:将所述S6中得到的新的用户和项目嵌入以及所述S5中新构建的用户-项目交互二分图输入图解纠缠层进行图表征解耦操作,得到用户和项目的最终表征,模型预测被定义为用户和项目最终表征的内积,并通过内积得到最终的推荐结果。
2.根据权利要求1所述的一种基于表征解耦的图协同过滤推荐方法,其特征在于:在所述S3中,用户-项目交互矩阵,表示为:R∈R^(|N|×|M|),其中,N和M分别表示用户和项目的数量;rui∈R为非零条目,表示用户u∈U曾经与项目i∈I交互;若不交互,则该条目为零;
用户-项目的交互二分图,表示为:G=(W,E),其中,W为节点集包含用户节点和项目节点,E为边的集合;对于非零的rui,用户u和项目i之间存在一条边;rui为用户-项目交互矩阵R当中的一个元素,u代表第u行,i代表第i列;
邻接矩阵,表示为:A∈R(|N|+|M|)×(|M|+|N|)。
3.根据权利要求2所述的一种基于表征解耦的图协同过滤推荐方法,其特征在于:在所述S4中,图卷积操作,表示为:其中,和分别表示在k层传播后用户u和项目i的嵌入;Nu为与用户u相关联的项目的集合;
迭代聚合二分图中相邻节点的特征来学习用户和项目的嵌入,表示为:
其中,AGG是一个聚合函数,是图卷积的核心,用于获取第k层的目标节点及邻居节点的嵌入,是对称的归一化项,矩阵L为邻接矩阵A的拉普拉斯矩阵,D为矩阵A的度矩阵;
经K层图卷积后,一个用户项目的最终嵌入为它们在图卷积模块中每一层得到的嵌入的加权,表示为:其中,αk≥0是分配给第k层的一个超参数,控制当前层输出的嵌入占最终嵌入的比重。
4.根据权利要求3所述的一种基于表征解耦的图协同过滤推荐方法,其特征在于:所述S5,具体为:构建top-K生成器,对第一图卷积模块得到的用户项目的嵌入进行内积,根据内积结果,得到目标用户最感兴趣的前K个项目、目标用户最相似的前K个用户以及与目标项目最相似的前K个项目;根据得到的结果在top-K生成器中构造新的用户-项目二分图,用户-用户二分图,以及项目-项目二分图,分别表示为:其中,EU和EI分别为由第一图卷积模块得到的用户嵌入矩阵和项目嵌入矩阵。
5.根据权利要求4所述的一种基于表征解耦的图协同过滤推荐方法,其特征在于:所述S7,将所述S6中得到的新的用户和项目嵌入以及所述S5中新构建的用户-项目交互二分图输入图解纠缠层进行图表征解耦操作,得到用户和项目的最终表征,具体包括以下步骤:S51:将输入图解纠缠层的嵌入分为h块,使每一块分别与一个潜在的意图相关联,表示为:eu=(eu1,eu2,…,euH) (9)
ei=(ei1,ei2,.....,eiH) (10)
其中,eu和ei分别代表目标用户u和项目i在S6中得到的用户嵌入和项目嵌入;euh表示嵌入eu中有关于意图h的部分;
S52:定义一组得分矩阵矩阵中任意条目Sh(u,i)表示在意图h的作用下,用户u对项目i产生的交互;从用户与项目产生交互的视角看,则有S(u,i)=(S1(u,i),S2(u,i),...,SH(u,i)),S(u,i)将产生当前交互的所有意图集中为一个集合,表示在已发生的交互中,意图h所做贡献的比重;
S53:将分成h块的嵌入依据所述S52中的得分矩阵所对应的意图感知二分图进行信息传播,表示为:其中,表示用户的多跳邻居,表示在迭代到第t层,亦即迭代t轮之后,用户u对i产生的交互行为中,意图h所占比重,表示公式(10)中的任一元素;
S54:将每一层所得的用户意图感知嵌入聚合,即得到最后的用户意图感知嵌入,表示为:再将基于意图的感知嵌入聚合,即得到最后的用户表征,表示为:
重复所述S51-S54,亦得到项目的最终表征
6.根据权利要求5所述的一种基于表征解耦的图协同过滤推荐方法,其特征在于:在所述S7,模型预测被定义为用户和项目最终表征的内积,并通过内积得到最终的推荐结果,具体为:学习后的用户表征和项目表征通过内积计算用户u对项目i的偏好得分,即可得到最终的推荐结果,表示为:使用损失函数BPR作为目标优化函数,表示为:
其中,O为训练数据集,i表示与用户u存在交互的项目,j表示与用户u不存在交互的项目,σ(·)为sigmoid函数,λ为控制L2正则化的系数,Θ为模型中所有可训练的参数集合,表示用户对与其没有显式交互的项目的偏好分数。