Project 2: Neural-network recommender

Project description

Task there is to code a recommender based on a neural network model, tune it and evaluate it. This project tests different network architectures, different optimizers and their params as well as different sets of features given as input to the network. Recommender will recommend hotel rooms to users. Final results are compared to Amazon and Netflix recommender.

  • project_1_data_preparation.ipynb contains basic data preprocessing
  • project_2_recommender_and_evaluation.ipynb prepares user features, item features, code the recommender, tune it and validate it.

Goal is to achieve the best HR@10 metric in the final evaluation.

Required python libs:

  • numpy
  • pandas
  • matplotlib
  • seaborn
  • IPython
  • PyTorch
  • livelossplot

Project was tested (and it works) on:

  • OS: Manjaro Linux 64bit
  • Python: 3.7.4
  • numpy: 1.19.3
  • pandas: 1.2.3
  • matplotlib: 3.1.1
  • seaborn: 0.11.1
  • IPython: 7.8.0
  • PyTorch: 1.4.0
  • livelossplot: 0.5.4