class_docstr: Computes a sparse inverse covariance matrix estimation using quadratic
  approximation and EBIC model selection. (Convenience Class)
  
  Note: This estimate can be obtained using the more general QuicGraphicalLasso
        estimator and taking advantage of `ebic_select()` and
        `lambda_at_index()` methods.
  
  See analogous sklearn.linear_model.LassoLarsIC.
  
  Parameters
  -----------
  lam : scalar or 2D ndarray, shape (n_features, n_features) (default=0.5)
      Regularization parameters per element of the inverse covariance matrix.
  
      If a scalar lambda is used, a penalty matrix will be generated
      containing lambda for all values in both upper and lower triangles
      and zeros along the diagonal.  This differs from the scalar graphical
      lasso by the diagonal. To replicate the scalar formulation you must
      manualy pass in lam * np.ones((n_features, n_features)).
  
  path : array of floats or int (default=100)
      An array of float values for scaling lam.
      An int will choose the number of log-scale points to fit.
  
  gamma : float (default=0)
      Extended Bayesian Information Criteria (EBIC) for model selection.
      Choice of gamma=0 leads to classical BIC
      Positive gamma leads to stronger penalization of large graphs.
  
  tol : float (default=1e-6)
      Convergence threshold.
  
  max_iter : int (default=1000)
      Maximum number of Newton iterations.
  
  Theta0 : 2D ndarray, shape (n_features, n_features) (default=None)
      Initial guess for the inverse covariance matrix. If not provided, the
      diagonal identity matrix is used.
  
  Sigma0 : 2D ndarray, shape (n_features, n_features) (default=None)
      Initial guess for the covariance matrix. If not provided the diagonal
      identity matrix is used.
  
  method : one of 'quic'... (default=quic)
  
  verbose : integer
      Used in quic routine.
  
  init_method : one of 'corrcoef', 'cov', 'spearman', 'kendalltau',
      or a custom function.
      Computes initial covariance and scales lambda appropriately.
      Using the custom function extends graphical model estimation to
      distributions beyond the multivariate Gaussian.
      The `spearman` or `kendalltau` options extend inverse covariance
      estimation to nonparanormal and transelliptic graphical models.
      Custom function must return ((n_features, n_features) ndarray, float)
      where the scalar parameter will be used to scale the penalty lam.
  
  auto_scale : bool
      If True, will compute self.lam_scale_ = max off-diagonal value when
      init_method='cov'.
      If false, then self.lam_scale_ = 1.
      lam_scale_ is used to scale user-supplied self.lam during fit.
  
  Attributes
  ----------
  covariance_ : 2D ndarray, shape (n_features, n_features)
      Estimated covariance matrix
  
  precision_ : 2D ndarray, shape (n_features, n_features)
      Estimated pseudo-inverse matrix.
  
  sample_covariance_ : 2D ndarray, shape (n_features, n_features)
      Estimated sample covariance matrix
  
  lam_ : (float)
      Lambda chosen by EBIC (with scaling already applied).
class_docstr_tok: ["Computes","a","sparse","inverse","covariance","matrix","estimation","using","quadratic","approximation","and","EBIC","model","selection",".","(","Convenience","Class",")","Note",":","This","estimate","can","be","obtained","using","the","more","general","QuicGraphicalLasso","estimator","and","taking","advantage","of","`","ebic_select","(",")","`","and","`","lambda_at_index","(",")","`","methods",".","See","analogous","sklearn.linear_model.LassoLarsIC",".","Parameters","--","--","--","--","--","-","lam",":","scalar","or","2D","ndarray",",","shape","(","n_features",",","n_features",")","(","default=0.5",")","Regularization","parameters","per","element","of","the","inverse","covariance","matrix",".","If","a","scalar","lambda","is","used",",","a","penalty","matrix","will","be","generated","containing","lambda","for","all","values","in","both","upper","and","lower","triangles","and","zeros","along","the","diagonal",".","This","differs","from","the","scalar","graphical","lasso","by","the","diagonal",".","To","replicate","the","scalar","formulation","you","must","manualy","pass","in","lam","*","np.ones","(","(","n_features",",","n_features",")",")",".","path",":","array","of","floats","or","int","(","default=100",")","An","array","of","float","values","for","scaling","lam",".","An","int","will","choose","the","number","of","log-scale","points","to","fit",".","gamma",":","float","(","default=0",")","Extended","Bayesian","Information","Criteria","(","EBIC",")","for","model","selection",".","Choice","of","gamma=0","leads","to","classical","BIC","Positive","gamma","leads","to","stronger","penalization","of","large","graphs",".","tol",":","float","(","default=1e-6",")","Convergence","threshold",".","max_iter",":","int","(","default=1000",")","Maximum","number","of","Newton","iterations",".","Theta0",":","2D","ndarray",",","shape","(","n_features",",","n_features",")","(","default=None",")","Initial","guess","for","the","inverse","covariance","matrix",".","If","not","provided",",","the","diagonal","identity","matrix","is","used",".","Sigma0",":","2D","ndarray",",","shape","(","n_features",",","n_features",")","(","default=None",")","Initial","guess","for","the","covariance","matrix",".","If","not","provided","the","diagonal","identity","matrix","is","used",".","method",":","one","of","'quic","'","...","(","default=quic",")","verbose",":","integer","Used","in","quic","routine",".","init_method",":","one","of","'corrcoef","'",",","'cov","'",",","'spearman","'",",","'kendalltau","'",",","or","a","custom","function",".","Computes","initial","covariance","and","scales","lambda","appropriately",".","Using","the","custom","function","extends","graphical","model","estimation","to","distributions","beyond","the","multivariate","Gaussian",".","The","`","spearman","`","or","`","kendalltau","`","options","extend","inverse","covariance","estimation","to","nonparanormal","and","transelliptic","graphical","models",".","Custom","function","must","return","(","(","n_features",",","n_features",")","ndarray",",","float",")","where","the","scalar","parameter","will","be","used","to","scale","the","penalty","lam",".","auto_scale",":","bool","If","True",",","will","compute","self.lam_scale_","=","max","off-diagonal","value","when","init_method='cov","'",".","If","false",",","then","self.lam_scale_","=","1.","lam_scale_","is","used","to","scale","user-supplied","self.lam","during","fit",".","Attributes","--","--","--","--","--","covariance_",":","2D","ndarray",",","shape","(","n_features",",","n_features",")","Estimated","covariance","matrix","precision_",":","2D","ndarray",",","shape","(","n_features",",","n_features",")","Estimated","pseudo-inverse","matrix",".","sample_covariance_",":","2D","ndarray",",","shape","(","n_features",",","n_features",")","Estimated","sample","covariance","matrix","lam_",":","(","float",")","Lambda","chosen","by","EBIC","(","with","scaling","already","applied",")","."]
code: def __init__(
      self,
      lam=1.0,
      path=100,
      gamma=0,
      tol=1e-6,
      max_iter=1000,
      Theta0=None,
      Sigma0=None,
      method="quic",
      verbose=0,
      score_metric="log_likelihood",
      init_method="corrcoef",
      auto_scale=True,
  ):
      # quic-specific params
      self.lam = lam
      self.tol = tol
      self.max_iter = max_iter
      self.Theta0 = Theta0
      self.Sigma0 = Sigma0
      self.method = method
      self.verbose = verbose
      self.path = path
      self.gamma = gamma
  
      super(QuicGraphicalLassoEBIC, self).__init__(
          init_method=init_method,
          score_metric=score_metric,
          auto_scale=auto_scale,
      )
  
imports: from __future__ import absolute_import
  import sys
  import time
  import operator
  import numpy
  from functools import partial
  from sklearn.covariance import EmpiricalCovariance
  from sklearn.utils import check_array, as_float_array, deprecated
  from numpy.testing import assert_array_almost_equal
  from joblib import Parallel, delayed
  from sklearn.model_selection import cross_val_score, RepeatedKFold
  from .None import pyquic
  from .inverse_covariance import InverseCovarianceEstimator, _init_coefs, _compute_error, _validate_path
label_desc: Use image node_id 1 to create a new QuicGraphicalLassoEBIC object from inherited base classes: InverseCovarianceEstimator with example: obj = QuicGraphicalLassoEBIC(lam, path, gamma, tol, max_iter, Theta0, Sigma0, method, verbose, score_metric, init_method, auto_scale)