code: def test_l1l2_multiclass_squared_hinge_loss_no_linesearch(
      mult_sparse_train_data,
  ):
      mult_sparse, mult_target = mult_sparse_train_data
      clf = CDClassifier(
          penalty="l1/l2",
          loss="squared_hinge",
          multiclass=True,
          shrinking=False,
          selection="uniform",
          max_steps=0,
          max_iter=200,
          C=1.0,
          random_state=0,
      )
      clf.fit(mult_sparse, mult_target)
      np.testing.assert_almost_equal(
          clf.score(mult_sparse, mult_target), 0.9166, 3
      )
      df = clf.decision_function(mult_sparse)
      n_samples, n_vectors = df.shape
      diff = np.zeros_like(clf.errors_)
      for i in range(n_samples):
          for k in range(n_vectors):
              diff[k, i] = 1 - (df[i, mult_target[i]] - df[i, k])
      np.testing.assert_array_almost_equal(clf.errors_, diff)
      assert np.sum(clf.coef_ != 0) == 300
  
      clf = CDClassifier(
          penalty="l1/l2",
          loss="squared_hinge",
          multiclass=True,
          max_iter=20,
          C=0.05,
          random_state=0,
      )
      clf.fit(mult_sparse, mult_target)
      np.testing.assert_almost_equal(
          clf.score(mult_sparse, mult_target), 0.83, 3
      )
      nz = np.sum(clf.coef_ != 0)
      assert nz == 207
      assert nz % 3 == 0
  
imports: import numpy
  import pytest
  from sklearn.datasets import load_digits
  from sklearn.preprocessing import LabelBinarizer
  from lightning.impl.primal_cd import CDClassifier, CDRegressor
  from lightning.impl.tests.utils import check_predict_proba
label_desc: Use image node_id 24 for calling a global function with example usage: test_l1l2_multiclass_squared_hinge_loss_no_linesearch(mult_sparse_train_data) without return types