HKUST-KnowComp / Fmg

KDD17_FMG

Programming Languages

matlab
3953 projects

Projects that are alternatives of or similar to Fmg

Daisyrec
A developing recommender system in pytorch. Algorithm: KNN, LFM, SLIM, NeuMF, FM, DeepFM, VAE and so on, which aims to fair comparison for recommender system benchmarks
Stars: ✭ 280 (+141.38%)
Mutual labels:  recommender-system, factorization-machines
Recommendation.jl
Building recommender systems in Julia
Stars: ✭ 42 (-63.79%)
Mutual labels:  recommender-system, factorization-machines
Rankfm
Factorization Machines for Recommendation and Ranking Problems with Implicit Feedback Data
Stars: ✭ 71 (-38.79%)
Mutual labels:  recommender-system, factorization-machines
Fastfm
fastFM: A Library for Factorization Machines
Stars: ✭ 908 (+682.76%)
Mutual labels:  recommender-system, factorization-machines
Flurs
🌊 FluRS: A Python library for streaming recommendation algorithms
Stars: ✭ 97 (-16.38%)
Mutual labels:  recommender-system, factorization-machines
Attentional factorization machine
TensorFlow Implementation of Attentional Factorization Machine
Stars: ✭ 362 (+212.07%)
Mutual labels:  recommender-system, factorization-machines
Rsparse
Fast and accurate machine learning on sparse matrices - matrix factorizations, regression, classification, top-N recommendations.
Stars: ✭ 145 (+25%)
Mutual labels:  recommender-system, factorization-machines
Openlearning4deeprecsys
Some deep learning based recsys for open learning.
Stars: ✭ 383 (+230.17%)
Mutual labels:  recommender-system, factorization-machines
Neural factorization machine
TenforFlow Implementation of Neural Factorization Machine
Stars: ✭ 422 (+263.79%)
Mutual labels:  recommender-system, factorization-machines
Attentional Neural Factorization Machine
Attention,Factorization Machine, Deep Learning, Recommender System
Stars: ✭ 39 (-66.38%)
Mutual labels:  recommender-system, factorization-machines
Recosystem
Recommender System Using Parallel Matrix Factorization
Stars: ✭ 74 (-36.21%)
Mutual labels:  recommender-system
Awesome Causality Algorithms
An index of algorithms for learning causality with data
Stars: ✭ 1,192 (+927.59%)
Mutual labels:  recommender-system
Fwumious wabbit
Fwumious Wabbit, fast on-line machine learning toolkit written in Rust
Stars: ✭ 96 (-17.24%)
Mutual labels:  factorization-machines
Ai Study
人工智能学习资料超全整理,包含机器学习基础ML、深度学习基础DL、计算机视觉CV、自然语言处理NLP、推荐系统、语音识别、图神经网路、算法工程师面试题
Stars: ✭ 93 (-19.83%)
Mutual labels:  recommender-system
Ehcf
This is our implementation of EHCF: Efficient Heterogeneous Collaborative Filtering (AAAI 2020)
Stars: ✭ 70 (-39.66%)
Mutual labels:  recommender-system
Carskit
Java-Based Context-aware Recommendation Library
Stars: ✭ 98 (-15.52%)
Mutual labels:  recommender-system
Datecastle
图像识别与推荐系统两类
Stars: ✭ 69 (-40.52%)
Mutual labels:  recommender-system
Gorse
An open source recommender system service written in Go
Stars: ✭ 1,148 (+889.66%)
Mutual labels:  recommender-system
Seldon Server
Machine Learning Platform and Recommendation Engine built on Kubernetes
Stars: ✭ 1,435 (+1137.07%)
Mutual labels:  recommender-system
Recsys
计算广告/推荐系统/机器学习(Machine Learning)/点击率(CTR)/转化率(CVR)预估/点击率预估
Stars: ✭ 1,350 (+1063.79%)
Mutual labels:  recommender-system

FMG

The code KDD17 paper "Meta-Graph Based Recommendation Fusion over Heterogeneous Information Networks" and extended journal version "Learning with Heterogeneous Side Information Fusion for Recommender Systems"

Readers are welcomed to fork this repository to reproduce the experiments and follow our work. Please kindly cite our paper

@inproceedings{zhao2017meta,
title={Meta-Graph Based Recommendation Fusion over Heterogeneous Information Networks},
author={Zhao, Huan and Yao, Quanming and Li, Jianda and Song, Yangqiu and Lee, Dik Lun},
booktitle={KDD},
pages={635--644},
year={2017}
}

@TechnicalReport{zhao2018learning,
title={Learning with Heterogeneous Side Information Fusion for Recommender Systems},
author={Zhao, Huan and Yao, Quanming and Song, Yangqiu and Kwok, James and Lee, Dik Lun},
institution = {arXiv preprint arXiv:1801.02411},
year={2018}
}

We released related datasets: yelp-200k, amazon-200k, yelp-50k and amazon-50k. Any problems, you can create an issue. Note that the amazon dataset is provied by Prof. Julian McAuley, thus if you use this dataset for your paper, please cite the authors' paper as instructed in the website http://jmcauley.ucsd.edu/data/amazon/

Instructions

For the sake of ease, a quick instruction is given for readers to reproduce the whole process on yelp-50k dataset. Note that the programs are testd on Linux(CentOS release 6.9), Python 2.7 and Numpy 1.14.0 from Anaconda 4.3.6.

Prerequisites

  1. Unzip the file FMG_released_data.zip, and create a directory data in this project directory.
  2. Move yelp-50k and amazon-50k into the data directory, then iteratively create directories sim_res/path_count and mf_features/path_count in directory data/yelp-50k/exp_split/1/.
  3. Create directory log in the project by mkdir log.
  4. Create directory fm_res in the project by mkdir fm_res.

Meta-graph Similarity Matrices Computation.

To generate the similarity matrices on yelp-50k dataset, run

python 200k_commu_mat_computation.py yelp-50k all 1

The arguments are explained in the following:

yelp-50k: specify the dataset.
all: run for all pre-defined meta-graphs.
1: run for the split dataset 1, i.e., exp_split/1

One dependent lib is bottleneck, you may install it with pip install bottleneck.

Meta-graph Latent Features Generation.

To generate the latent features by MF based on the simiarity matrices, run

python mf_features_generator.py yelp-50k all 1

The arguments are the same as the above ones.

Note that, to improve the computation efficiency, some modules are implements with C and called in python(see load_lib method in mf.py). Thus to successfully run python mf_features_generator.py you need to compile two C source files. The following scripts are tested on CentOS, and readers may take as references.

gcc -fPIC --shared setVal.c -o setVal.so
gcc -fPIC --shared partXY.c -o partXY.so

After the compiling, you will get two files in the project directory setVal.so and partXY.so.

FMG

After obtain the latent features, then the readers can run FMG model as following:

python run_exp.py config/yelp-50k.yaml -reg 0.5

One may read the comment in files in directory config for more information.

Misc

If you have any questions about this project, you can open issues, thus it can help more people who are interested in this project. I will reply to your issues as soon as possible.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].