docs: def verify_dataset(X, y):
      """Verifies if a dataset is valid for use i.e. scikit-learn format
  
      Used to verify a dataset by returning shape and basic statistics of
      returned data. This will also provide quick and dirty check on
      capability of host machine to process the data.
  
      Args:
          X (array-like): Features array
  
          y (array-like): Label array
  
      Returns:
          X_shape (2-tuple of int): Shape of X returned
  
          y_shape (1-tuple of int): Shape of y returned
  
      Raises:
          AssertionError: `X_shape` must be of length 2 and `y_shape` must be of
              length 1. `X` must have the same number of elements as `y`
              i.e. X_shape[0] == y_shape[0]. If any of these conditions are not met,
              an AssertionError is raised.
      """
      X_shape, y_shape = np.array(X).shape, np.array(y).shape
      if len(X_shape) != 2:
          raise exceptions.UserError("X must be 2-dimensional array")
      if len(y_shape) != 1:
          raise exceptions.UserError("y must be 1-dimensional array")
      if X_shape[0] != y_shape[0]:
          raise exceptions.UserError("X must have same number of elements as y")
      return dict(
          features_shape=X_shape,
          labels_shape=y_shape
      )