Code for our CS 330 Deep Multi-Task and Meta Learning Final Project: Transfer and Meta-Learning in Graph Neural Networks: A Recommender System Approach
Code is divided into two main folders:
- Transfer_Learning_and_Joint-Loss contains the code implementation of a GCN rating-prediction model, and scripts used for fine-tuning and joint-loss training experimentation
- Meta-Learning contains the code base for the MAML and Meta-Graph implementations, the base VGAE link prediction model, and data-processing code
- python -version 3.8.16
- pytorch -version 1.13.0+cu166
- torch_geometric -version 2.2.0
- sklearn.model_selection
- pytorch
- torch_geometric.nn
- torch_scatter
- sentence_transformers
- sklearn.metrics
- utils.utils
The goal of this project was to explore the effectiveness of several approaches in utilizing restaurant-user patterns of other geographical locations to create a better recommender model with less data. In both the transfer learning and meta-learning approaches we experimented with, we found that these approaches were able to perform noticeably better than the baseline models that do not utilize data from other geographical locations. Given this, it seems the approaches we have tried are effective in creating higher-performing city-specific restaurant recommendation models by utilizing data from other cities.
Project is: finished
CS330 Fall 2022 Paper link