Skip to content

Latest commit

 

History

History
78 lines (63 loc) · 1.92 KB

README.md

File metadata and controls

78 lines (63 loc) · 1.92 KB

CFNADE-keras

Paper Description

  • Paper: "A Neural Autoregressive Approach to Collaborative Filtering" LINK
  • Unofficial Slide: LINK
  • Keras implementation of CF-NADE.
  • The CFNADE is the model applying NADE model to the collaborative filtering problem. NADE is the modified version of the auto-encoder to estimate probabilistic distribution.

Limitation

  • This repository only works with Movielens 1M data.
  • This repository force you to use "tensorflow" backend.

How to run

  • I used python3.
git clone git@github.com:JoonyoungYi/CFNADE-keras.git
cd CFNADE-keras
virtualenv .venv -p python3
. .venv/bin/activate
pip install -r requirements.txt
python data_prep.py
python run.py

Performance

Setting 1.

  • default setting.
--hidden_dim=250
  • 1st Attempt.
training set RMSE for epoch 29 is 0.858837
validation set RMSE for epoch 29 is 0.872606
Testing...
test set RMSE is 0.820515
  • 2nd Attempt.
training set RMSE for epoch 29 is 0.882864
validation set RMSE for epoch 29 is 0.874668
val_nade_loss_loss: 0.0000e+00
Testing...
test set RMSE is 0.823059
  • 3rd Attempt.
training set RMSE for epoch 29 is 0.868767
validation set RMSE for epoch 29 is 0.874799
Testing...
test set RMSE is 0.824332

Setting 2.

--hidden_dim=500
  • 1st Attempt.
training set RMSE for epoch 29 is 0.844765
validation set RMSE for epoch 29 is 0.873419
Testing...
test set RMSE is 0.793768

Repository History