code: def bench_one(
      name,
      X,
      W0,
      H0,
      X_shape,
      clf_type,
      clf_params,
      init,
      n_components,
      random_state,
  ):
      W = W0.copy()
      H = H0.copy()
  
      clf = clf_type(**clf_params)
      st = time()
      W = clf.fit_transform(X, W=W, H=H)
      end = time()
      H = clf.components_
  
      this_loss = _beta_divergence(X, W, H, 2.0, True)
      duration = end - st
      return this_loss, duration
  
imports: import numbers
  import sys
  import warnings
  from time import time
  import matplotlib.pyplot
  import numpy
  import pandas
  from joblib import Memory
  from sklearn.decomposition import NMF
  from sklearn.decomposition._nmf import _beta_divergence, _check_init, _initialize_nmf
  from sklearn.exceptions import ConvergenceWarning
  from sklearn.feature_extraction.text import TfidfVectorizer
  from sklearn.utils import check_array
  from sklearn.utils._testing import ignore_warnings
  from sklearn.utils.extmath import safe_sparse_dot, squared_norm
  from sklearn.utils.validation import check_is_fitted, check_non_negative
label_desc: Use image node_id 5 for calling a global function with example usage: bench_one(name, X, W0, H0, X_shape, clf_type, clf_params, init, n_components, random_state) and returns: this_loss,  duration