This repository compiles some solutions for the problem of learning a graphical representation of a set of data points.
Currently, learn-graph implements algorithms from the following papers:
- Kalofolias, V. "How to learn a graph from smooth signals", AISTATS, 2016.
- Dong et al. "Laplacian Matrix Learning for Smooth Graph Signal Representation". ICASSP, 2015.
- Friedman, Hastie, and Tibshirani "Sparse inverse covariance estimation with the graphical lasso", Biostatistics 2008; 9 (3): 432-441.
The code is released under the terms of the MIT license.
-
Clone this repository.
git clone https://github.com/rodrigo-pena/graph-learning cd graph-learning
-
Install the dependencies.
pip install -r requirements.txt
-
Try the Jupyter notebooks.
jupyter notebook
To use this code on your data, you need:
- An n-by-m data matrix of n variable observations in an m-dimensional space. Your graph will have n nodes.
See any of the jupyter notebooks for examples on how to call the methods using fabricated data. Please get in touch if you are unsure about how to adapt the code to different settings.