GraphRfi:基于GCN的用户表示学习用于统一鲁棒推荐和欺诈者检测

摘要:

推荐系统的评论评级数据通常来自开放平台,这可能会吸引一群恶意用户故意插入虚假反馈,这种攻击的存在可能会违背这样的建模假设: 高质量的数据总是可用的,并且这些数据真实地反映了用户的兴趣和偏好。 因此我们提出了GraphRfi——一个基于gcn的用户表示学习框架,以统一的方式执行鲁棒推荐和欺诈者检测。在其端到端学习过程中,欺诈者检测组件中用户被识别为欺诈者的概率自动决定了该用户的评级数据在推荐组件中的贡献;而推荐组件中的预测误差输出是欺诈检测组件中的一个重要特征,所以两个组件可以达到相互增强的效果,从而达到即使在存在先令攻击(即上述攻击)的情况下也能生成稳定的推荐

实现:

 在本文中,我们提出了一个端到端基于gcn的用户表示-表示学习(GraphRfi)框架,它由两个主要组件组成,分别专注于鲁棒推荐和欺诈者检测:GCN-based Rating Prediction Component and NRF-based Fraudster Detection Component

首先对于每个用户u构建一个特征向量,其中每个元素为我们预定义的用户行为,对两个任务进行定义:对于鲁棒性评分预测,我们定义一个有权重的二分图,节点即为用户和物品集,边为用户u为物品v的评分r_uv,每个用户都有其行为附加信息X_u,我们的目标就是在给定的图和附加信息中预测一个非恶意用户对他/她过去没有评级过的物品的真实评级;而欺诈者检测就是在给定一组用户U,以及他们的评级数据R和特征矩阵X,该任务旨在将这些用户划分为欺诈者和真正的用户。

​​​​​​​

推荐组件

利用GCN对于用户和物品的邻域聚合得到新的表示:

 

 其中,聚合函数中加入注意力机制,其注意力得分由一个双层神经网络计算:

​​​​​​​

更具体的,对于基于GCN的推荐组件来看,其损失函数为平方损失。与一般的损失函数不同的是增加了欺诈检测组件中真实用户的概率 ​​​​​​​P(y=0) ,即如果该用户的真实性概率较大,那么其在整个推荐任务中的比重会被增强:

欺诈检测组件

对于欺诈检测组件来看,就是普通的二分类任务,只不过在这用的分类模型为神经随机森林(Neural Random Forest ),其损失函数为交叉熵损失。

其中值得注意的是,这部分把推荐组件中的预测误差(Prediction Error)作为了该组件的附加特征,具体的公式为:

其中, N(\mu )​​​​​​​表示用户所有交互的项目集合。

增强后的用户表示为:,并通过一个全连接层得到一个密集表示:

在随机森林中共有两种节点:一是预测点(即为叶节点,0/1)二是决策点,其函数表示为:

 

那么对于每棵树,用户被预测的标签如下: 

对于决策树的森林,即平均所有树的结果: 

因此,最终总的损失函数可以表示为两者的总和。

其中, \lambda是超参数用来控制两部分的权重。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
基于GCN嵌入和多目标优化的推荐模型的可解释性可以从两个方面来考虑。 首先,GCN 嵌入可以提供推荐模型的可解释性。GCN 嵌入是通过对用户和商品之间的关系进行嵌入得到的向量表示,这些向量表示可以用于推荐模型中的预测,同时也可以解释用户和商品之间的关系。例如,如果某个用户的嵌入向量和某个商品的嵌入向量在 GCN 中距离较近,那么我们可以认为该用户可能对该商品感兴趣。因此,GCN 嵌入可以提供推荐模型的可解释性,帮助我们理解推荐结果背后的原因。 其次,多目标优化可以进一步增强推荐模型的可解释性。在多目标优化中,我们可以设定多个目标函数,例如预测准确率、推荐多样性、用户满意度等,这些目标函数可以在一定程度上反映推荐模型的性能和特点。通过对不同目标函数的加权和,我们可以得到一个综合的目标函数,用于最小化推荐模型的总体误差。这种方法可以帮助我们更好地理解推荐模型的特点,例如推荐结果的多样性、用户推荐结果的偏好等。同时,多目标优化也可以帮助我们进行推荐模型的调优和优化,提高推荐模型的性能和可解释性。 综上所述,基于GCN嵌入和多目标优化的推荐模型可以提供较好的可解释性,帮助我们理解推荐结果的背后原因,并进行推荐模型的优化和调优。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值