code: def generate_toy_data(
      n_train=100,
      mean_a=np.asarray([0, 0]),
      std_dev_a=1.0,
      mean_b=3,
      std_dev_b=0.5,
  ):
      # positive examples are distributed normally
      X1 = (np.random.randn(n_train, 2) * std_dev_a + mean_a).T
  
      # negative examples have a "ring"-like form
      r = np.random.randn(n_train) * std_dev_b + mean_b
      angle = np.random.randn(n_train) * 2 * np.pi
      X2 = np.array(
          [r * np.cos(angle) + mean_a[0], r * np.sin(angle) + mean_a[1]]
      )
  
      # stack positive and negative examples in a single array
      X_train = np.hstack((X1, X2))
  
      # label positive examples with +1, negative with -1
      y_train = np.zeros(n_train * 2)
      y_train[:n_train] = 1
      y_train[n_train:] = -1
  
      return [X_train, y_train]
  
imports: import itertools
  import matplotlib.pyplot
  import numpy
label_desc: Use image node_id 1 for calling a global function with example usage: generate_toy_data(n_train, mean_a, std_dev_a, mean_b, std_dev_b) and returns: list