DynWalks
A dynamic network embedding method with some desirable properties:
--- Global Topology and Recent Changes Awareness
--- Excellent Time and space efficiency
--- Fulfilling real-time constraint if needed
--- Handling unseen nodes without placeholders or knowing them in advance
This repository is for reproducing the results in paper
"DynWalks: Global Topology and Recent Changes Awareness Dynamic Network Embedding"
https://arxiv.org/abs/1907.11968
If you find it useful, please use the following citation.
@article{hou2019dynwalks,
title={DynWalks: Global Topology and Recent Changes Awareness Dynamic Network Embedding},
author={Chengbin Hou and Han Zhang and Ke Tang and Shan He},
journal={arXiv preprint arXiv:1907.11968},
year={2019}
}
Usage (testing in CMD)
Requirement
cd DynNE
pip install -r requirements.txt
Python 3.6.6 or above is required due to the new print(f' ')
feature
To obtain node embeddings as well as evaluate the quality
cd DynNE
python src/main.py --method DynWalks --task all --graph data/cora/cora_dyn_graphs.pkl --emb-file output/cora_DynWalks_embs.pkl --scheme 3 --limit 0.2 --local-global 0.5 --num-walks 20 --walk-length 80 --window 10 --emb-dim 128 --workers 6
To save, and then load and evaluate node embeddings for different downstream tasks
cd DynNE
python src/main.py --method DynWalks --task save --graph data/cora/cora_dyn_graphs.pkl --emb-file output/cora_DynWalks_embs.pkl --scheme 3 --limit 0.2 --local-global 0.5 --num-walks 20 --walk-length 80 --window 10 --emb-dim 128 --workers 6
python src/eval.py --task all --graph data/cora/cora_dyn_graphs.pkl --emb-file output/cora_DynWalks_128_embs.pkl
Usage (advanced, for batch testing)
cd DynNE
bash bash/ALL.sh
Datasets
Please see the README.md under data folder, in which all the data preprocessing 'py' files are provided, as well as the hyperlinks to original datasets.
Issues
We are happy to answer any questions about the code and paper.