This repository contains the code related to the research of Ferenc Béres, Róbert Pálovics, Domokos Miklós Kelen and András A. Benczúr.
We propose two online node embedding models (StreamWalk and online second order similarity) for temporally evolving networks. Two nodes are required to be mapped close in the vector space whenever they lie on short paths formed by recent edges in the first model, and whenever the set of their recent neighbors is similar in the second model.
Please cite our paper if you use our work:
@Article{Béres2019,
author="B{\'e}res, Ferenc
and Kelen, Domokos M.
and P{\'a}lovics, R{\'o}bert
and Bencz{\'u}r, Andr{\'a}s A.",
title="Node embeddings in dynamic graphs",
journal="Applied Network Science",
year="2019",
volume="4",
number="64",
pages="25",
}
I presented a former version of our work at the 7th International Conference on Complex Networks and Their Applications that is availabe on this branch.
US Open 2017 (UO17) and Roland-Garros 2017 (RG17) Twitter datasets were published in our previous work for the first time. Please cite this article if you use our data sets in your research:
@Article{Béres2018,
author="B{\'e}res, Ferenc
and P{\'a}lovics, R{\'o}bert
and Ol{\'a}h, Anna
and Bencz{\'u}r, Andr{\'a}s A.",
title="Temporal walk based centrality metric for graph streams",
journal="Applied Network Science",
year="2018",
volume="3",
number="32",
pages="26",
}
These Twitter datasets are available on the website of our research group. In order to process the data you need to install the twittertennis Python package. It will automatically download and prepare the datasets for you.
pip install online-node2vec
After installing every requirement execute the following script to run both node representation learning and evaluation for the similarity search task.
cd scripts
bash run.sh
The major steps in our pipeline are:
- Download and preprocess data
- Learning StreamWalk representations
- Learning Second order similarity representations
- Evaluate node embeddings for the similarity search supervised experiment