1.一种基于增强对比表征的在线社交平台好友推荐方法,其特征在于,首先,为在线社交平台构建社交网络和经过噪声扰动的负社交网络;接着,使用图神经网络提取社交网络和负网络的社交用户表征;然后,在社交用户表征上计算分层对比学习损失、拓扑损失以及结构损失;最后,联合各损失获得最终总的损失函数,同时通过最终得到的社交用户表征实现个性化的好友推荐;
所述方法包括以下步骤:
步骤一、构建在线社交平台用户间的社交网络G,在网络G中,网络中的节点定义为用户,如果两个用户在在线社交平台中互相关注,则用户间有一条连边,每个用户都有属性信息;构建负网络 该网络通过随机修改社交网络G的部分连边和部分属性顺序构建而成;
步骤二、构建图神经网络,该网络由l层的图卷积网络组成,通过图神经网络分别挖掘k社交网络G和负网络 中的信息,得到对应的第k≤l层的表征h和步骤三、计算图神经网络中社交用户表征的分层对比学习损失,对于第k层,计算该层k k k的全局网络表征g ,构建判别器β以用于相似性的计算,通过最大化β(g ,h ),最小化以实现第k层的对比学习损失构建;
k
步骤四、计算图神经网络中社交用户表征的拓扑损失,对于第k层,构建拓扑表征c以及k k拓扑负表征 构建判别器γ以用于相似性的计算,通过最大化γ (g ,c ),最小化以实现第k层的拓扑损失构建;
k
步骤五、计算图神经网络中社交用户表征的结构损失,对于第k层,使用矩阵乘法γ =k k Th(h)获得预测的第k层网络结构,通过最大化真实社交网络相连用户i和用户j间的 值,以实现第k层的社交网络结构损失,对负网络做相同操作以实现第k层的负网络结构损失;
步骤六、计算总损失函数;
步骤七、重复步骤二~步骤六,获得最终的社交用户表征矩阵;
步骤八、通过计算表征相似性分数,实现对用户的个性化好友推荐。
2.如权利要求1所述的一种基于增强对比表征的在线社交平台好友推荐方法,其特征在于,所述步骤一中,通过在线社交平台获得用户和用户关系信息,接着通过这些信息构建社交网络G=(V,E,X),其中V={v1,v2,…,vN}表示所有用户,E表示用户之间的关系,N表示N×dim N用户数,X∈R 表示用户的属性信息,共dim种属性,社交网络的邻接矩阵用A=[aij]∈R×N表示,当用户之间互为好友时aij=1,否则aij=0,社交网络的度矩阵用D=diag(d1,d2,…dN)表示,其中di=∑jaij,社交网络的负网络用 表示,其中 为随机修改G的部分连边,为随机打乱部分用户的属性;
所述步骤二中,使用图神经网络以提取社交网络G的用户表征,该网络由l层的图卷积网络GCN组成,第k层GCN的社交用户表征为,k 0
其中k∈{1,..,l}, W为第k层的权值矩阵,I为单位矩阵,h=X,为PRELU激活函数;为负网络 做相同的图神经网络操作,得到对应的各层的社交用户负表征所述步骤三中,计算图神经网络中社交用户表征的分层对比损失,其中第k层的对比损失为,
其中k∈{1,..,l}, W为可学习
k
的权值矩阵, 为矩阵h的第i行向量,表示第i个用户的表征, 为矩阵 的第i行向量,表示第i个用户的负表征; 为全局网络表征,σ为sigmoid激活函数;
所述步骤四中、计算图神经网络中社交用户表征的拓扑损失,其中第k层的拓扑损失为,
其中k∈{1,..,l},
k
为第k层的拓扑表征, 为第k层的拓扑负表征, 为c 的第i行向量,表示第i个用户的拓扑表征, 为 的第i行向量,表示第i个用户的拓扑表征;
所述步骤五中,计算图神经网络中社交用户表征的结构损失,其中第k层的结构损失为,
k k k T
其中k∈{1,..,l},r =h (h) 为预测的第k层网络结构, 为预测的第k层负网络结构,为指示函数,当满足下标条件时值为1,否则为0;
所述步骤六中,计算总损失函数,
L=L1+L2+L3;
所述步骤七中,重复执行步骤二~步骤六,当L降低到指定阈值时,结束计算,则最终的
1 2 l
社交用户表征矩阵为h=h+h+…+h;
所述步骤八中,对于任意社交用户i,其用户表征hi为社交用户表征矩阵h的第i行所代表的向量,计算该社交用户和其他所有社交用户的表征相似性分数,取相似性分数最高的K个非好友作为该用户的推荐好友。