xDeepFM for Recommender Systems - 推荐系统

作者: Erhe Yang | 268 字, 1 分钟 | 2020-11-11 | 分类: Projects

comp7404, hku, machine learning

翻译: EN

xDeepFM for Recommender Systems

eXtreme Deep Factorization Machine (xDeepFM)

This paper proposes a novel Compressed Interaction Network (CIN), which aims to generate feature interactions in an explicit fashion and at the vector-wise level.

Github Repository

GitHub: xDeepFM_for_Recommender_Systems

Video Demo

YouTube | Google Drive

Datasets

  1. Criteo Dataset. It is a famous industry benchmarking dataset for developing models predicting ad click-through rate, and is publicly accessible. Given a user and the page he is visiting, the goal is to predict the probability that he will clik on a given ad

Running Environment

I strongly recommmend that you use Anaconda to implement this project. Here are some simple instructions:

  1. Download a suitable version (Windows/MacOS/Linux) for your OS and install it (check for latest version from Anaconda)
    1. On Windows or MacOS, you can just use the .exe or .pkg installer and follow the instructions
    2. On Linux, you may need to run bash ./.Anaconda3-2020.07-Linux-x86_64.sh in the same directory of the downloaded .sh file to allow the installer to initialize Anaconda3 in your .bashrc
  2. Create a dedicated Conda environment for this project (strongly recommended)
    1. Run conda create -n xdeepfm python=3.6 and enter y to create the conda environment
    2. Run conda activate xdeepfm to activate the project environment
  3. Run pip install -r requirements.txt to install the package dependencies
  4. Now you can run the code simply through python main.py
cd YouPath/xDeepFM_for_Recommender_Systems/exdeepfm
bash ./.Anaconda3-2020.07-Linux-x86_64.sh
conda create -n xdeepfm python=3.6
conda activate xdeepfm
pip install -r requirements.txt
python main.py

Dependencies

  • absl-py==0.8.1
  • astor==0.8.0
  • gast==0.3.2
  • google-pasta==0.1.7
  • grpcio==1.24.3
  • h5py==2.10.0
  • joblib==0.14.0
  • Keras-Applications==1.0.8
  • Keras-Preprocessing==1.1.0
  • Markdown==3.1.1
  • numpy==1.17.3
  • packaging==19.2
  • protobuf==3.10.0
  • pyparsing==2.4.2
  • PyYAML==5.1.2
  • scikit-learn==0.21.3
  • scipy==1.3.1
  • six==1.12.0
  • sklearn==0.0
  • tensorboard==1.14.0
  • tensorflow==1.14.0
  • tensorflow-estimator==1.14.0
  • termcolor==1.1.0
  • Werkzeug==0.16.0
  • wrapt==1.11.2

Running Results

comp7404_screenshot1

comp7404_screenshot2

相关文章

2020-10-05
COMP7404 Topic 3 Adversarial Search
2020-10-04
COMP7404 Topic 2 Beyond Classical Search
2020-09-16
COMP7404 Topic 1 Solving Problems by Searching
Erhe Yang

作者

Erhe Yang

后端开发工程师,区块链和Web3爱好者,东华大学(DHU) 软件工程硕士学位。喜欢学习和建造东西。 GitHub 关注我