项目作者: rootlu

项目描述 :
Code and data for ECML-PKDD paper "Social Influence Attentive Neural Network for Friend-Enhanced Recommendation"
高级语言: Python
项目地址: git://github.com/rootlu/SIAN.git
创建时间: 2020-06-15T07:35:14Z
项目社区:https://github.com/rootlu/SIAN

开源协议:

下载


SIAN

Code and data for ECML-PKDD paper “Social Influence Attentive Neural Network for Friend-Enhanced Recommendation

Requirements

  • Python 2.7
  • PyTorch 0.4.1
  • numpy
  • scipy
  • My machine with two GPUs (NVIDIA GTX-1080 2) and two CPUs (Intel Xeon E5-2690 2)

Description

  1. ├── baselines # baseline code
  2. ├── Eval4Baselines.py
  3. ├── code # Our Model: SIAN
  4. ├── Attention.py # attention layer
  5. ├── DataUtil.py # data loader
  6. ├── Evaluation.py # model evaluation
  7. ├── FeatureAgg.py # attentive feature aggregator
  8. ├── Fusion.py # feature fusion layer
  9. ├── HeteInf.py # the main class for SIAN
  10. ├── InfluenceProp.py # social influence coupler
  11. ├── Logging.py #log
  12. └── trainHeteInf.py # the main function for SIAN
  13. └── data # dataset
  14. ├── Data4Baselines.ipynb #
  15. ├── DataProcessor.ipynb
  16. ├── ItemProfileEmbed.ipynb
  17. ├── WechatTencent.ipynb
  18. ├── wxt # FWD dataset
  19. ├── biz2id
  20. ├── biz_profile.npy
  21. ├── item2id
  22. ├── item_profile.npy
  23. ├── user2id
  24. ├── user_profile.npy
  25. ├── wxt.att.analysis
  26. ├── wxt.interaction.graph
  27. ├── wxt.item.biz
  28. ├── wxt.social.graph
  29. ├── wxt.test.rating.712
  30. ├── wxt.train.rating.712
  31. ├── wxt.user.biz
  32. └── wxt.val.rating.712
  33. ├── wxt.ipynb
  34. ├── yelp # yelp dataset
  35. ├── item_profile.npy
  36. ├── user_profile.npy
  37. ├── yelp.att.analysis
  38. ├── yelp.interaction.graph
  39. ├── yelp.social.graph
  40. ├── yelp.test.rating.712
  41. ├── yelp.train.rating.712
  42. └── yelp.val.rating.712
  43. ├── yelp.ipynb
  44. ├── log # saved log file
  45. ├── wxt.0.0.6023.0.35225.model

Dataset

FWD dataset (i.e., wxt data) can be downloaded from Google Drive and BaiduYun (提取码:i6qy)

Reproducing results in the paper

Load the saved models in log/ dir.

Training

  1. python trainHeteInf.py --help

Reference

  1. @inproceedings{Yuanfu2020SIAN,
  2. title={Social Influence Attentive Neural Network for Friend-Enhanced Recommendation},
  3. author={Yuanfu Lu, Ruobing Xie, Chuan Shi, Yuan Fang, Wei Zhang, Xu Zhang, Leyu Lin.}
  4. booktitle={Proceedings of ECML-PKDD},
  5. year={2020}
  6. }