code: def test_nmf_transform_custom_init(Estimator, solver):
      # Smoke test that checks if NMF.transform works with custom initialization
      random_state = np.random.RandomState(0)
      A = np.abs(random_state.randn(6, 5))
      n_components = 4
      avg = np.sqrt(A.mean() / n_components)
      H_init = np.abs(avg * random_state.randn(n_components, 5))
      W_init = np.abs(avg * random_state.randn(6, n_components))
  
      m = Estimator(
          n_components=n_components,
          init="custom",
          random_state=0,
          tol=1e-3,
          **solver,
      )
      m.fit_transform(A, W=W_init, H=H_init)
      m.transform(A)
  
imports: import re
  import sys
  import warnings
  from io import StringIO
  import numpy
  import pytest
  from scipy import linalg
  from sklearn.base import clone
  from sklearn.decomposition import NMF, MiniBatchNMF, non_negative_factorization
  from sklearn.decomposition import _nmf
  from sklearn.exceptions import ConvergenceWarning
  from sklearn.utils._testing import assert_allclose, assert_almost_equal, assert_array_almost_equal, assert_array_equal, ignore_warnings
  from sklearn.utils.extmath import squared_norm
  from sklearn.utils.fixes import CSC_CONTAINERS, CSR_CONTAINERS
label_desc: Use image node_id 11 for calling a global function with example usage: test_nmf_transform_custom_init(Estimator, solver) without return types