qianrenjian / RecAlg

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

End-to-end Recommendation Algorithm Package

The currently supported algorithms:

  1. MemoNet: MemoNet: MemoNet: Memorizing All Cross Features' Representations Efficiently via Multi-Hash Codebook Network for CTR Prediction
  2. FiBiNet++: FiBiNet++: Reducing Model Size by Low Rank Feature Interaction Layer for CTR Prediction
  3. FiBiNet: FiBiNET: Combining Feature Importance and Bilinear feature Interaction for Click-Through Rate Prediction .

The following algorithms are planned to be supported:

  1. GateNet: GateNet: Gating-Enhanced Deep Network for Click-Through Rate Prediction
  2. ContextNet: ContextNet: A Click-Through Rate Prediction Framework Using Contextual information to Refine Feature Embedding
  3. MaskNet: MaskNet: Introducing Feature-Wise Multiplication to CTR Ranking Models by Instance-Guided Mask

Prerequisites

  • Python >= 3.6.8
  • TensorFlow-GPU == 1.14

Getting Started

Installation

  • Install TensorFlow-GPU 1.14

  • Clone this repo

Dataset

Training

MemoNet

You can use python -u -m rec_alg.model.memonet.run_memonet to train a specific model on a dataset. Parameters could be found in the code.

FiBiNet & FiBiNet ++

You can use python -u -m rec_alg.model.fibinet.run_fibinet --version {version} --config {config_path} to train a specific model on a dataset.

Some important parameters are list below, and other hyper-parameters can be found in the code.

  • version: model version, supports v1, ++, and custom, default to ++. For custom, you can adjust all parameter values flexibly.
  • config_path: specifies the paths of the input/output files and the fields of the dataset. It is generated during dataset preprocessing. Support values: ./config/criteo/config_dense.json, ./config/avazu/config_sparse.json.
  • mode: running mode, supports train, retrain, test.

Acknowledgement

Part of the code comes from DeepCTR.

About


Languages

Language:Python 94.3%Language:Shell 5.7%