pyGSL: A Graph Structure Learning Toolkit
Dept. of Computer Science, University of Rochester, Rochester, NY 14620
arXiv:2211.03583 [cs.LG], (7 Nov 2022)
@misc{https://doi.org/10.48550/arxiv.2211.03583,
doi={10.48550/ARXIV.2211.03583},
url={https://arxiv.org/abs/2211.03583},
author={Wasserman, Max and Mateos, Gonzalo},
keywords={Machine Learning (cs.LG), Signal Processing (eess.SP), FOS: Computer and information sciences, FOS: Computer and information sciences, FOS: Electrical engineering, electronic engineering, information engineering, FOS: Electrical engineering, electronic engineering, information engineering},
title={pyGSL: A Graph Structure Learning Toolkit},
publisher={arXiv},
year={2022},
copyright={arXiv.org perpetual, non-exclusive license}
}
We introduce pyGSL, a Python library that provides efficient implementations of state-of-the-art graph structure learning models along with diverse datasets to evaluate them on. The implementations are written in GPU-friendly ways, allowing one to scale to much larger network tasks. A common interface is introduced for algorithm unrolling methods, unifying implementations of recent state-of-the-art techniques and allowing new methods to be quickly developed by avoiding the need to rebuild the underlying unrolling infrastructure. Implementations of differentiable graph structure learning models are written in PyTorch, allowing us to leverage the rich software ecosystem that exists e.g., around logging, hyperparameter search, and GPU-communication. This also makes it easy to incorporate these models as components in larger gradient based learning systems where differentiable estimates of graph structure may be useful, e.g. in latent graph learning. Diverse datasets and performance metrics allow consistent comparisons across models in this fast growing field. The full code repository is available.
November 13, 2022 by hgpu