Source-linked AI summary

The huge Package for High-dimensional Undirected Graph Estimation in R

Tuo Zhao, Han Liu, Kathryn Roeder, John Lafferty, Larry Wasserman

arXiv:2006.14781v1stat.MLcs.LGmath.OC

TL;DR

High-dimensional undirected graph estimation requires accessible methods that support diverse models and large-scale computation. huge addresses this with an R framework combining Gaussian and semiparametric graph estimation, model selection, and lossless or lossy screening. In experiments, lossy screening provided up to 500% speedup and huge achieved the best performance for Meinshausen-Bühlmann estimation.

  • Problem

    Existing graph-estimation tools provide efficient methods, but huge is introduced to offer a broader, more modifiable framework for high-dimensional undirected graph estimation.

  • Method

    huge combines graph generation, nonparanormal transformation, screening, Meinshausen-Bühlmann and graphical-lasso estimation, and multiple model-selection methods.

  • Results

    Up to 500% speedup was observed with lossy screening, and huge achieved the best performance for Meinshausen-Bühlmann graph estimation.

  • Takeaways & Limitations

    The package provides a general, modular framework for high-dimensional graph estimation with screening options that trade computational efficiency against estimation bias.

Abstract

from arXiv · show

We describe an R package named huge which provides easy-to-use functions for estimating high dimensional undirected graphs from data. This package implements recent results in the literature, including Friedman et al. (2007), Liu et al. (2009, 2012) and Liu et al. (2010). Compared with the existing graph estimation package glasso, the huge package provides extra features: (1) instead of using Fortan, it is written in C, which makes the code more portable and easier to modify; (2) besides fitting Gaussian graphical models, it also provides functions for fitting high dimensional semiparametric Gaussian copula models; (3) more functions like data-dependent model selection, data generation and graph visualization; (4) a minor convergence problem of the graphical lasso algorithm is corrected; (5) the package allows the user to apply both lossless and lossy screening rules to scale up large-scale problems, making a tradeoff between computational and statistical efficiency.

1. Overview

huge is an R package for high-dimensional undirected graph estimation that extends existing tools with a C implementation and semiparametric, screening, and selection features.

  • huge provides an R framework for estimating high-dimensional undirected graphs from data.
  • Its core engine is written in C, making package modifications more accessible to researchers.
  • The package implements the nonparanormal method for Gaussian copula graphs and StARS for stability-based model selection.
  • huge supports both lossless and lossy screening, with lossy screening allowing scalable computation while introducing estimation bias.

2. Design and Implementation

huge organizes high-dimensional graph estimation into six modules covering data generation, transformation, screening, estimation, model selection, and visualization.

  • The package provides six functional modules spanning the graph-estimation workflow.
  • M1. Data Generator: Its data generator simulates Gaussian data with hub, cluster, band, scale-free, and Erdős-Rényi graph structures, with user-controlled sparsity and signal-to-noise ratio.
  • M2. Semiparametric Transformation: The nonparanormal module estimates semiparametric Gaussian copula models through marginally smooth transformations in one data-matrix pass.
  • M3. Graph Screening: Graph screening supports lossless and lossy rules that reduce computation, while trading increased bias for potentially lower variance.
  • M4. Graph Estimation: Graph estimation offers Meinshausen-Bühlmann covariance selection and graphical lasso methods implemented with coordinate descent and active-set techniques.
  • M5. Model Selection: Model selection includes StARS, modified RIC, and extended BIC, while visualization functions display simulated data, estimated graphs, and paths.

3. User Interface by Example

The stock-market example transforms price data, applies the nonparanormal transformation, and estimates a graphical-lasso graph path using automated regularization and default lossless screening.

  • The example uses 1,258 samples of 452 S&P 500 stocks observed between January 2003 and January 2008.
  • The workflow applies a truncation-based nonparanormal transformation before graphical-lasso graph estimation.
  • Stock observations are transformed into log-ratios of prices at consecutive times.
  • huge automatically constructs a path of 40 regularization parameters, with lossless screening enabled by default.

4. Performance Benchmark

Benchmark experiments compare huge and glasso across sample sizes and dimensionalities, finding strong performance from screening, especially for Meinshausen-Bühlmann estimation.

  • Experiments compare huge with glasso across four scenarios varying sample size n and dimensionality d, using matched sparsity levels and convergence threshold 10^-4.
  • huge achieves the best performance for Meinshausen-Bühlmann graph estimation.
  • 500%: experiments report up to 500% speedup from lossy screening.
  • Lossy screening reduces each individual lasso problem from dimension d to sample size n, improving efficiency when d ≫ n.
  • For graphical lasso, lossless screening substantially reduces computation for highly sparse estimators, while lossy screening provides further speed gains.

5. Summary

huge is a new package for high-dimensional undirected graph estimation that complements glasso with additional features and functional modules.

  • huge provides extra features and functional modules for high-dimensional undirected graph estimation, complementing the existing glasso package.
Loading 2006.14781v1…