class_docstr: Sparse inverse covariance w/ cross-validated choice of the l1 penalty
  
  Read more in the :ref:`User Guide <sparse_inverse_covariance>`.
  
  Parameters
  ----------
  alphas : integer, or list positive float, optional
      If an integer is given, it fixes the number of points on the
      grids of alpha to be used. If a list is given, it gives the
      grid to be used. See the notes in the class docstring for
      more details.
  
  n_refinements: strictly positive integer
      The number of times the grid is refined. Not used if explicit
      values of alphas are passed.
  
  cv : int, cross-validation generator or an iterable, optional
      Determines the cross-validation splitting strategy.
      Possible inputs for cv are:
  
      - None, to use the default 3-fold cross-validation,
      - integer, to specify the number of folds.
      - An object to be used as a cross-validation generator.
      - An iterable yielding train/test splits.
  
      For integer/None inputs :class:`KFold` is used.
  
      Refer :ref:`User Guide <cross_validation>` for the various
      cross-validation strategies that can be used here.
  
  tol : positive float, optional
      The tolerance to declare convergence: if the dual gap goes below
      this value, iterations are stopped.
  
  enet_tol : positive float, optional
      The tolerance for the elastic net solver used to calculate the descent
      direction. This parameter controls the accuracy of the search direction
      for a given column update, not of the overall parameter estimate. Only
      used for mode='cd'.
  
  max_iter : integer, optional
      Maximum number of iterations.
  
  mode: {'cd', 'lars'}
      The Lasso solver to use: coordinate descent or LARS. Use LARS for
      very sparse underlying graphs, where number of features is greater
      than number of samples. Elsewhere prefer cd which is more numerically
      stable.
  
  n_jobs : int, optional
      number of jobs to run in parallel (default 1).
  
  verbose : boolean, optional
      If verbose is True, the objective function and duality gap are
      printed at each iteration.
  
  assume_centered : Boolean
      If True, data are not centered before computation.
      Useful when working with data whose mean is almost, but not exactly
      zero.
      If False, data are centered before computation.
  
  Attributes
  ----------
  covariance_ : numpy.ndarray, shape (n_features, n_features)
      Estimated covariance matrix.
  
  precision_ : numpy.ndarray, shape (n_features, n_features)
      Estimated precision matrix (inverse covariance).
  
  alpha_ : float
      Penalization parameter selected.
  
  cv_alphas_ : list of float
      All penalization parameters explored.
  
  `grid_scores`: 2D numpy.ndarray (n_alphas, n_folds)
      Log-likelihood score on left-out data across folds.
  
  n_iter_ : int
      Number of iterations run for the optimal alpha.
  
  See Also
  --------
  graph_lasso, GraphLasso
  
  Notes
  -----
  The search for the optimal penalization parameter (alpha) is done on an
  iteratively refined grid: first the cross-validated scores on a grid are
  computed, then a new refined grid is centered around the maximum, and so
  on.
  
  One of the challenges which is faced here is that the solvers can
  fail to converge to a well-conditioned estimate. The corresponding
  values of alpha then come out as missing values, but the optimum may
  be close to these missing values.
class_docstr_tok: ["Sparse","inverse","covariance","w\/","cross-validated","choice","of","the","l1","penalty","Read","more","in","the",":","ref",":","`","User","Guide","<","sparse_inverse_covariance",">","`",".","Parameters","--","--","--","--","--","alphas",":","integer",",","or","list","positive","float",",","optional","If","an","integer","is","given",",","it","fixes","the","number","of","points","on","the","grids","of","alpha","to","be","used",".","If","a","list","is","given",",","it","gives","the","grid","to","be","used",".","See","the","notes","in","the","class","docstring","for","more","details",".","n_refinements",":","strictly","positive","integer","The","number","of","times","the","grid","is","refined",".","Not","used","if","explicit","values","of","alphas","are","passed",".","cv",":","int",",","cross-validation","generator","or","an","iterable",",","optional","Determines","the","cross-validation","splitting","strategy",".","Possible","inputs","for","cv","are",":","-","None",",","to","use","the","default","3-fold","cross-validation",",","-","integer",",","to","specify","the","number","of","folds",".","-","An","object","to","be","used","as","a","cross-validation","generator",".","-","An","iterable","yielding","train\/test","splits",".","For","integer\/None","inputs",":","class",":","`","KFold","`","is","used",".","Refer",":","ref",":","`","User","Guide","<","cross_validation",">","`","for","the","various","cross-validation","strategies","that","can","be","used","here",".","tol",":","positive","float",",","optional","The","tolerance","to","declare","convergence",":","if","the","dual","gap","goes","below","this","value",",","iterations","are","stopped",".","enet_tol",":","positive","float",",","optional","The","tolerance","for","the","elastic","net","solver","used","to","calculate","the","descent","direction",".","This","parameter","controls","the","accuracy","of","the","search","direction","for","a","given","column","update",",","not","of","the","overall","parameter","estimate",".","Only","used","for","mode='cd","'",".","max_iter",":","integer",",","optional","Maximum","number","of","iterations",".","mode",":","{","'cd","'",",","'lars","'","}","The","Lasso","solver","to","use",":","coordinate","descent","or","LARS",".","Use","LARS","for","very","sparse","underlying","graphs",",","where","number","of","features","is","greater","than","number","of","samples",".","Elsewhere","prefer","cd","which","is","more","numerically","stable",".","n_jobs",":","int",",","optional","number","of","jobs","to","run","in","parallel","(","default","1",")",".","verbose",":","boolean",",","optional","If","verbose","is","True",",","the","objective","function","and","duality","gap","are","printed","at","each","iteration",".","assume_centered",":","Boolean","If","True",",","data","are","not","centered","before","computation",".","Useful","when","working","with","data","whose","mean","is","almost",",","but","not","exactly","zero",".","If","False",",","data","are","centered","before","computation",".","Attributes","--","--","--","--","--","covariance_",":","numpy.ndarray",",","shape","(","n_features",",","n_features",")","Estimated","covariance","matrix",".","precision_",":","numpy.ndarray",",","shape","(","n_features",",","n_features",")","Estimated","precision","matrix","(","inverse","covariance",")",".","alpha_",":","float","Penalization","parameter","selected",".","cv_alphas_",":","list","of","float","All","penalization","parameters","explored",".","`","grid_scores","`",":","2D","numpy.ndarray","(","n_alphas",",","n_folds",")","Log-likelihood","score","on","left-out","data","across","folds",".","n_iter_",":","int","Number","of","iterations","run","for","the","optimal","alpha",".","See","Also","--","--","--","--","graph_lasso",",","GraphLasso","Notes","--","--","-","The","search","for","the","optimal","penalization","parameter","(","alpha",")","is","done","on","an","iteratively","refined","grid",":","first","the","cross-validated","scores","on","a","grid","are","computed",",","then","a","new","refined","grid","is","centered","around","the","maximum",",","and","so","on",".","One","of","the","challenges","which","is","faced","here","is","that","the","solvers","can","fail","to","converge","to","a","well-conditioned","estimate",".","The","corresponding","values","of","alpha","then","come","out","as","missing","values",",","but","the","optimum","may","be","close","to","these","missing","values","."]
code: def __init__(
      self,
      alphas=4,
      n_refinements=4,
      cv=None,
      tol=1e-4,
      enet_tol=1e-4,
      max_iter=100,
      mode="cd",
      n_jobs=1,
      verbose=False,
      assume_centered=False,
  ):
      self.alphas = alphas
      self.n_refinements = n_refinements
      self.mode = mode
      self.tol = tol
      self.enet_tol = enet_tol
      self.max_iter = max_iter
      self.verbose = verbose
      self.cv = cv
      self.n_jobs = n_jobs
      self.assume_centered = assume_centered
      # The base class needs this for the score method
      self.store_precision = True
  
imports: import warnings
  import operator
  import sys
  import time
  import numpy
  from scipy import linalg
  from .empirical_covariance_ import empirical_covariance, EmpiricalCovariance, log_likelihood
  from ..exceptions import ConvergenceWarning
  from ..utils.extmath import pinvh
  from ..utils.validation import check_random_state, check_array
  from ..linear_model import lars_path
  from ..linear_model import cd_fast
  from ..model_selection import check_cv, cross_val_score
  from ..externals.joblib import Parallel, delayed
  import collections
label_desc: Use image node_id 1 to create a new GraphLassoCV object from inherited base classes: GraphLasso with example: obj = GraphLassoCV(alphas, n_refinements, cv, tol, enet_tol, max_iter, mode, n_jobs, verbose, assume_centered)