项目简介
本项目聚焦于论文 "MGDCF: Distance Learning via Markov Graph Diffusion for Neural Collaborative Filtering" 的复现与改进,实现了MGDCF的TensorFlow版本。在原论文基础上做出了三点创新,旨在验证排序损失InfoBPR函数的泛化性,探究其在不同数据和模型上的有效性,并得出最优排序损失函数应根据不同数据集和模型特征选择的结论。
项目的主要特性和功能
- 模型对比实验:增加LightGCN - InfoBPR、DropEdge - InfoBPR等模型实验对照组,验证InfoBPR函数的泛化性。
- 负样本数量调整:更改计算InfoBPR时的负样本数量,验证其在不同数据和模型上的有效性,在异构MGDN、同构MGDN上均有一定提升。
- 结论提出:指出最优排序损失函数Loss_Rank应根据不同数据集、不同模型的特征进行选择,采用更多负样本数量的InfoBPR在某些情况下不一定优于BPR的效果。
- 模型实现:实现了MGDCF框架,包含同构MGDN、异构MGDN、部分GNN模型。
安装使用步骤
环境要求
- Linux系统
- Python 3.10.12
- tensorflow == 2.15.0
- tf_geometric == 0.1.6
- tf_sparse == 0.0.17
- grecx == 0.0.8
- tqdm = 4.66.4
安装依赖
下载项目源码文件后,可使用requirement.txt
文件安装环境依赖,命令如下:
bash
pip install -r requirement.txt
运行项目
方式一:使用脚本运行
shell
cd scripts
sh ${DATASET}/$SCRIPT_NAME
例如:
shell
cd scripts
sh amazon - book/HeteroMGDCF_yelp.sh
方式二:命令行直接执行
shell
python -u cf_task_handle.py ${DATASET} ${Other parameters needed}
方式三:在Colab平台运行
项目支持在colab平台的jupyter notebook上执行(其T4 GPU运行时满足本项目的大部分环境),点击下面的链接即可打开: Open In Colab
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】