虚假用户检测工作相关论文
GCN-Based User Representation Learning for Unifying Robust Recommendation and Fraudster Detection
问题背景:推荐系统的一个默认假设:交互数据能够真实反应用户的兴趣和偏好。但是恶意用户会为推荐系统插入虚假反馈破环假设,减低推荐模型性能。因此需要构建鲁棒性的推荐系统模型(能够识别欺诈者,修正用户数据在模型中的权重)
test:
前人相关工作:
- 提升推荐系统鲁棒性:在矩阵分解优化函数中添加m估计量
- 欺诈者检测并删除欺诈者:过程容易出错,将正常用户识别为欺诈者
主要工作:
- 提出基于GCN的表示学习框架GraphRfi用于鲁棒推荐(评分预测任务)和欺诈者检测(分类任务),两个任务在训练中相互增强。
- 欺诈者概率用于评判用户数据对评分预测任务的重要性
- 评分预测的误差用于欺诈者检测特征(从认知心理学的角度来看,一个正常用户的行为应该是一致和可预测的[46]。因此,如果一个用户的明显评分与一个精确的推荐模型所预测的评分有很大偏差,那么这个用户最有可能是一个骗子。)
本文工作的优势:
- 将两个工作结合,充分利用用户可靠特征(用户正负评价分布、用户评价数量等评分统计信息)进行模型训练。
- 端到端模型,欺诈者检测和评分任务相互耦合

GCN-based Rating Prediction Component
图结构:有向二分图
任务1:利用多源数据(user_rating、user_features)进行用户嵌入表示
$z_u$表示user embedding ,且$z_u^0=\pmb{x_u}$
$z_v$表示item embedding,$z_v^0$随机初始化
网络迭代过程是一个信息传递的过程(图卷积迭代)

$e_r$为评分r的embedding(评分就是1到5)
$h_v$表示从item $v\in{N(u)}$节点传递过来的信息,$N(u)$表示用户u交互过的v的集合







通过不断卷积迭代,得到的节点表示综合了节点本身和所有连接到它们的节点信息
任务2:评分预测
- 将$z_u$和$z_v$拼接,接入一个线性层进行评分预测

NRF-based Fraudster Detection Component
欺诈者检测模块是一个有监督分类器:随机森林不可微,因此使用神经随机森林,



$z_u^*$是user的稠密表示,是神经随机树的输入
每个决策节点对应一个权重向量w,和输入特征算内积过sigmoid得到走左子树的概率,右子树概率即为用1去减,根据概率大小(大于0.5走左子树)可以确定每个样本的决策路径,而叶子结点根据最终落进去的样本频数可以得到$y=1,0$的概率分布$\pi$, 通过样本连乘积得到一个batch的联合概率分布

模型训练
两个模块损失联合训练

实验
数据集
评价
- 评分任务:mse、mae,同时为测试集注入不同比例的欺诈者,测试模型的性能波动


- 鲁棒性:利用欺诈者数据模拟不同攻击模式进行模型测试
