Joint Gaussian Graphical Model Estimation: A Survey

Overview

Joint Gaussian Graphical Model Estimation: A Survey

Test Models

  1. Fused graphical lasso [1]
  2. Group graphical lasso [1]
  3. Graphical lasso [1]
  4. Doubly joint spike-and-slab graphical lasso [2]

Installation

  1. Anaconda Environment package:
conda env create -f environment.yml
conda activate r_env2  #activate environment
  1. Install R packages
Rscript install_packages.R

Run Examples

Jupyter notebook

Saveral examples of data generation processes as well as sample codes are in the folder ./examples/jupyter_notebook

Plot ROC curve

Sample code for data generation process 1 (DGP1). The instruction for running DGP2_roc.r is the same.

cd examples/roc
### Generate simulated data, the result will be stored in ./data 
Rscript DGP1_roc.r DG [DATA DIMENSION]

### Select one of the refularization method FGL/GGL/GL. The result will be stored in ./results
Rscript DGP1_roc.r [ACTION: FGL/DGL/GL] [DATA DIMENSION]

###visualization
Rscript DGP1_roc_visualization.r
Other examples

Please check the structure tree below for more details.

Structure

├── examples
│   ├── jupyter_notebook
|   |   ├── simple_example_block.ipynb
|   |   ├── simple_example_scalefree.ipynb
|   |   ├── simple_example_ssjgl.ipynb
│   │   └── simple_example.ipynb
│   │
│   ├── roc # run & visualize ROC curve
|   |   ├── DGP1_roc_visualization.r #visualization|   ├── DGP1_roc.r # roc curve on scalefree network, common structures share same inverse convarince matrix (data generation process 1)
|   |   |                
|   |   ├── DGP2_roc_visualization.r #visualization
|   |   ├── DGP2_roc.r # roc curve on scalefree network, common structures have different inverse convarince matrices (data generation process 2)
|   |   |                    
|   |   ├── simple_roc_vis.r # visualization
|   |   └── simple_roc.r # roc curve on ramdom network
|   | 
|   ├── joint_demo.r # beautiful result on random network (Erdos-Renyi graph)            
│   ├── loss_graphsize_npAIC.r #fix p, vary n            
│   ├── loss_smallgraphsize.r #fix n, vary n             
│   ├── oos_scalefree.r # out-of-sample likelihood on scalefree network.              
│   ├── oos.r # out-of-sample likelihood on random network      
|   ├── scalefree_AIC.r # model selection on scalefree network using AIC, tune the trucation value                
|   ├── scalefree_BIC.r # model selection on scalefree network using BIC, tune the trucation value               
|   ├── simple_example_ar.r # example on AR network: model selction, fnr,fpr, Frobenious loss, etropy loss                      
|   └── simple_example_scalefree.r # example on scalefree network: model selction, fnr,fpr, Frobenious loss, etropy loss
|                          
├── R #source file
|   ├── admm.iters.R
|   ├── display.R
|   ├── eval.R
|   ├── gen_data.R
|   ├── gete.R
|   ├── JGL.R
|   ├── metrics.R
|   └── SSJGL.R
|   
├── environment.yml
├── install_packages.R
├── README.md
└── .gitignore

References

[1] Danaher, P., Wang, P., & Witten, D. M. (2014). The joint graphical lasso for inverse covariance estimation across multiple classes. Journal of the Royal Statistical Society. Series B, Statistical methodology, 76(2), 373.

[2] Zehang Richard Li, Tyler H. McCormick, and Samuel J. Clark. "Bayesian joint spike-and-slab graphical lasso". International Conference on Machine Learning, 2019.

Owner
Koyejo Lab
Koyejo Lab @ UIUC
Koyejo Lab
Code for the paper "On the Power of Edge Independent Graph Models"

Edge Independent Graph Models Code for the paper: "On the Power of Edge Independent Graph Models" Sudhanshu Chanpuriya, Cameron Musco, Konstantinos So

Konstantinos Sotiropoulos 0 Oct 26, 2021
Codebase for INVASE: Instance-wise Variable Selection - 2019 ICLR

Codebase for "INVASE: Instance-wise Variable Selection" Authors: Jinsung Yoon, James Jordon, Mihaela van der Schaar Paper: Jinsung Yoon, James Jordon,

Jinsung Yoon 50 Nov 11, 2022
A DCGAN to generate anime faces using custom mined dataset

Anime-Face-GAN-Keras A DCGAN to generate anime faces using custom dataset in Keras. Dataset The dataset is created by crawling anime database websites

Pavitrakumar P 190 Jan 03, 2023
CS506-Spring2022 - Code and Slides for Boston University CS 506

CS 506 - Computational Tools for Data Science Code, slides, and notes for Boston

Lance Galletti 17 May 06, 2022
This repository contains a set of codes to run (i.e., train, perform inference with, evaluate) a diarization method called EEND-vector-clustering.

EEND-vector clustering The EEND-vector clustering (End-to-End-Neural-Diarization-vector clustering) is a speaker diarization framework that integrates

45 Dec 26, 2022
Bilinear attention networks for visual question answering

Bilinear Attention Networks This repository is the implementation of Bilinear Attention Networks for the visual question answering and Flickr30k Entit

Jin-Hwa Kim 506 Nov 29, 2022
Character Controllers using Motion VAEs

Character Controllers using Motion VAEs This repo is the codebase for the SIGGRAPH 2020 paper with the title above. Please find the paper and demo at

Electronic Arts 165 Jan 03, 2023
Class-Balanced Loss Based on Effective Number of Samples. CVPR 2019

Class-Balanced Loss Based on Effective Number of Samples Tensorflow code for the paper: Class-Balanced Loss Based on Effective Number of Samples Yin C

Yin Cui 546 Jan 08, 2023
A tiny, pedagogical neural network library with a pytorch-like API.

candl A tiny, pedagogical implementation of a neural network library with a pytorch-like API. The primary use of this library is for education. Use th

Sri Pranav 3 May 23, 2022
Hysterese plugin with two temperature offset areas

craftbeerpi4 plugin OffsetHysterese Temperatur-Steuerungs-Plugin mit zwei tempereaturbereich abhängigen Offsets. Installation sudo pip3 install https:

HappyHibo 1 Dec 21, 2021
Keeper for Ricochet Protocol, implemented with Apache Airflow

Ricochet Keeper This repository contains Apache Airflow DAGs for executing keeper operations for Ricochet Exchange. Usage You will need to run this us

Ricochet Exchange 5 May 24, 2022
SpanNER: Named EntityRe-/Recognition as Span Prediction

SpanNER: Named EntityRe-/Recognition as Span Prediction Overview | Demo | Installation | Preprocessing | Prepare Models | Running | System Combination

NeuLab 104 Dec 17, 2022
Deploy tensorflow graphs for fast evaluation and export to tensorflow-less environments running numpy.

Deploy tensorflow graphs for fast evaluation and export to tensorflow-less environments running numpy. Now with tensorflow 1.0 support. Evaluation usa

Marcel R. 349 Aug 06, 2022
PyTorch Connectomics: segmentation toolbox for EM connectomics

Introduction The field of connectomics aims to reconstruct the wiring diagram of the brain by mapping the neural connections at the level of individua

Zudi Lin 132 Dec 26, 2022
Translate darknet to tensorflow. Load trained weights, retrain/fine-tune using tensorflow, export constant graph def to mobile devices

Intro Real-time object detection and classification. Paper: version 1, version 2. Read more about YOLO (in darknet) and download weight files here. In

Trieu 6.1k Dec 30, 2022
The official code of Anisotropic Stroke Control for Multiple Artists Style Transfer

ASMA-GAN Anisotropic Stroke Control for Multiple Artists Style Transfer Proceedings of the 28th ACM International Conference on Multimedia The officia

Six_God 146 Nov 21, 2022
An adaptive hierarchical energy management strategy for hybrid electric vehicles

An adaptive hierarchical energy management strategy This project contains the source code of an adaptive hierarchical EMS combining heuristic equivale

19 Dec 13, 2022
Code for all the Advent of Code'21 challenges mostly written in python

Advent of Code 21 Code for all the Advent of Code'21 challenges mostly written in python. They are not necessarily the best or fastest solutions but j

4 May 26, 2022
PyTorch implementation for the paper Visual Representation Learning with Self-Supervised Attention for Low-Label High-Data Regime

Visual Representation Learning with Self-Supervised Attention for Low-Label High-Data Regime Created by Prarthana Bhattacharyya. Disclaimer: This is n

Prarthana Bhattacharyya 5 Nov 08, 2022
An open source app to help calm you down when needed.

By: Seanpm2001, Et; Al. Top README.md Read this article in a different language Sorted by: A-Z Sorting options unavailable ( af Afrikaans Afrikaans |

Sean P. Myrick V19.1.7.2 2 Oct 24, 2022