code: def test_matnorm_regression_optimizerChoice(seeded_rng):
      # Y = XB + eps
      # Y is m x n, B is n x p, eps is m x p
      X = norm.rvs(size=(m, n))
      B = norm.rvs(size=(n, p))
      Y_hat = X.dot(B)
      rowcov_true = np.eye(m)
      colcov_true = wishart.rvs(p + 2, np.eye(p))
  
      Y = Y_hat + rmn(rowcov_true, colcov_true)
  
      row_cov = CovIdentity(size=m)
      col_cov = CovUnconstrainedInvCholesky(size=p)
  
      model = MatnormalRegression(
          time_cov=row_cov, space_cov=col_cov, optimizer="CG"
      )
  
      model.fit(X, Y, naive_init=False)
  
      assert pearsonr(B.flatten(), model.beta_.flatten())[0] >= corrtol
  
      pred_y = model.predict(X)
      assert pearsonr(pred_y.flatten(), Y_hat.flatten())[0] >= corrtol
  
file_path: brainiak/tests/matnormal/test_matnormal_regression.py
imports: import pytest
  import numpy
  from scipy.stats import norm, wishart, pearsonr
  from brainiak.matnormal.covs import CovIdentity, CovUnconstrainedCholesky, CovUnconstrainedInvCholesky, CovDiagonal
  from brainiak.matnormal.regression import MatnormalRegression
  from brainiak.matnormal.utils import rmn
label_desc: Use image node_id 3 for calling a global function with example usage: test_matnorm_regression_optimizerChoice(seeded_rng) without return types