https://github.com/TrustAGI-Lab/ARGA
  
  
    This is a TensorFlow implementation of the Adversarially Regularized Graph Autoencoder(ARGA) model as described in our paper:   Pan, S., Hu, R., Long, G., Jiang, J., Yao, L., & Zhang, C. (2018). Adversarially Regularized Graph Autoencoder for Graph Embedding, [https://www.ijcai.org/proceedings/2018/0362.pdf]. 
    https://github.com/TrustAGI-Lab/ARGA
  
        Last synced: about 2 months ago 
        JSON representation
    
This is a TensorFlow implementation of the Adversarially Regularized Graph Autoencoder(ARGA) model as described in our paper: Pan, S., Hu, R., Long, G., Jiang, J., Yao, L., & Zhang, C. (2018). Adversarially Regularized Graph Autoencoder for Graph Embedding, [https://www.ijcai.org/proceedings/2018/0362.pdf].
- Host: GitHub
- URL: https://github.com/TrustAGI-Lab/ARGA
- Owner: TrustAGI-Lab
- License: mit
- Created: 2018-07-25T10:35:17.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-02-28T08:59:28.000Z (over 3 years ago)
- Last Synced: 2024-05-19T00:37:45.715Z (over 1 year ago)
- Language: Python
- Homepage:
- Size: 5.17 MB
- Stars: 185
- Watchers: 7
- Forks: 60
- Open Issues: 14
- 
            Metadata Files:
            - Readme: README.md
 
Awesome Lists containing this project
- StarryDivineSky - Ruiqi-Hu/ARGA - >VGAE->ARGA (其他_图神经网络GNN / 网络服务_其他)
- graph-networks - Adversarially Regularized Graph Autoencoder
README
          Adversarially Regularized Graph Autoencoder (ARGA)
============
This is a TensorFlow implementation of the Adversarially Regularized Graph Autoencoder(ARGA) model as described in our paper:
 
Pan, S., Hu, R., Long, G., Jiang, J., Yao, L., & Zhang, C. (2018). Adversarially Regularized Graph Autoencoder for Graph Embedding, [https://www.ijcai.org/proceedings/2018/0362.pdf], published in IJCAI 2018: 2609-2615.

We borrowed part of code from T. N. Kipf, M. Welling, Variational Graph Auto-Encoders [https://github.com/tkipf/gae]
## Installation
```bash
pip install -r requirements.txt
```
## Requirements
* TensorFlow (1.0 or later)
* python 2.7
* networkx
* scikit-learn
* scipy
## Run from
```bash
python run.py
```
## Data
In order to use your own data, you have to provide 
* an N by N adjacency matrix (N is the number of nodes), and
* an N by D feature matrix (D is the number of features per node) -- optional
Have a look at the `load_data()` function in `input_data.py` for an example.
In this example, we load citation network data (Cora, Citeseer or Pubmed). The original datasets can be found here: http://linqs.cs.umd.edu/projects/projects/lbc/ and here (in a different format): https://github.com/kimiyoung/planetoid
## Models
You can choose between the following models: 
* `arga_ae`: Adversarially Regularised Graph Auto-Encoder
* `arga_vae`: Adversarially Regularised Variational Graph Auto-Encoder 
## Cite
Please cite following papers if you use this code in your own work:
```
@inproceedings{pan2018adversarially,
  title={Adversarially Regularized Graph Autoencoder for Graph Embedding.},
  author={Pan, Shirui and Hu, Ruiqi and Long, Guodong and Jiang, Jing and Yao, Lina and Zhang, Chengqi},
  booktitle={IJCAI},
  pages={2609--2615},
  year={2018}
}
```