Ini adalah implementasi Pytorch dari model Network Attention Network (GAT) yang disajikan oleh Veličković ET. Al (2017, https://arxiv.org/abs/1710.10903).
Repo telah dicampur pada awalnya dari https://github.com/tkipf/pygcn. Repositori resmi untuk GAT (TensorFlow) tersedia di https://github.com/petarv-/gat. Oleh karena itu, jika Anda membuat keuntungan dari model Pygat dalam penelitian Anda, silakan kutip yang berikut:
@article{
velickovic2018graph,
title="{Graph Attention Networks}",
author={Veli{v{c}}kovi{'{c}}, Petar and Cucurull, Guillem and Casanova, Arantxa and Romero, Adriana and Li{`{o}}, Pietro and Bengio, Yoshua},
journal={International Conference on Learning Representations},
year={2018},
url={https://openreview.net/forum?id=rJXMpikCZ},
note={accepted as poster},
}
Master cabang berisi implementasi dari kertas. Cabang serupa_impl_tensorflow implementasi dari repositori TensorFlow resmi.
Untuk master cabang, pelatihan pembelajaran transduktif pada tugas CORA pada Titan XP membutuhkan ~ 0,9 detik per zaman dan 10-15 menit untuk seluruh pelatihan (~ 800 zaman). Akurasi terakhir adalah antara 84,2 dan 85,3 (diperoleh pada 5 berjalan berbeda). Untuk cabang serupa_impl_tensorflow , pelatihan membutuhkan waktu kurang dari 1 menit dan mencapai ~ 83.0.
Catatan kecil tentang operasi matriks jarang awal https://github.com/tkipf/pygcn: Mereka telah dihapus. Oleh karena itu, model saat ini mengambil ~ 7GB pada gram.
Kami mengembangkan Gat versi yang jarang menggunakan Pytorch. Ada ketidakstabilan numerik karena fungsi softmax. Karena itu, Anda perlu menginisialisasi dengan cermat. Untuk menggunakan Gat versi yang jarang, tambahkan bendera --sparse . Kinerja versi jarang mirip dengan TensorFlow. Pada Titan XP membutuhkan 0,08 ~ 0,14 detik.
Pygat bergantung pada Python 3.5 dan Pytorch 0.4.1 (karena torch.sparse_coo_tensor).
Jangan ragu untuk menghubungi umpan balik atau membuat masalah/permintaan tarik.