Springer Nature
Browse
polar.tar.bz2 (968.7 MB)

Code for POLAR: Attention-based CNN for One-shot Personalized Article Recommendation

Download (968.7 MB)
software
posted on 2019-01-30, 12:11 authored by Zhengxiao Du, Jie Tang, Yuhui Ding
This is the reference code for POLAR (PersOnaLized Article Recommendation framework): An attention-based CNN for One-shot Personalized Article Recommendation. The related Conference Proceeding paper is publish in ECML/PKDD 2018. The code conducts the experiment on RARD (Related Article Recommendation Dataset). It also contains the data from RARD at Dataverse: https://doi.org/10.7910/DVN/HA8EAH

The study that created this software, as described in the related Conference Proceeding publication, seeks to address the challenge of how to recommend relevant academic articles to potential users. The mechanism is designed to overcome the limitations of the 'bag-of-words' model of an article and of matching matrix computation.

POLAR uses an attention-based CNN to estimate the relevance score between a query and related articles, with the attention mechanism designed to improve relevance estimation. The one-shot learning mechanism, meanwhile, addresses the issue of collecting statistically-sufficient training data. The related study also contains the evaluation of POLAR on three datasets: AMiner, Patent and RARD, the last of which is linked above in the 'References' field of this data record.

The dataset contains a single compressed .tar.bz2 file, the contents of which can be uncompressed and accessed via standard zip archive utilities. The following subdirectories are contained in the archive file:

/preprocess - contains a single corpus file, on which the term matching specificity via the attention model is assessed
/word_embedding - contains NumPy .npy python files for the 'word embedding' form of expressing articles
/matchcnn - target subdirectory for matchCNN model
/train_data - contains two files for the data training and testing sets

as well as the following Python script files to run POLAR:
evaluate.py
main.py
model.py
torch_utils.py
utils.py

History

Research Data Support

Research data support provided by Springer Nature.