code: def _tile(cls, op: "TypeOfTarget"):
      y = op.y
  
      # y is ndarray
      if not isinstance(y, ENTITY_TYPE):
          return sklearn_type_of_target(y)
      else:
          # make sure y executed
          yield
  
      ctx = get_context()
  
      multilabel = yield from recursive_tile(is_multilabel(y))
      yield multilabel.chunks
      multilabel = ctx.get_chunks_result([multilabel.chunks[0].key])[0]
      if multilabel:
          return "multilabel-indicator"
  
      # Invalid inputs
      if y.ndim > 2:
          return "unknown"
      if y.dtype == object and len(y):
          # [[[1, 2]]] or [obj_1] and not ["label_1"]
          first_val = ctx.get_chunks_result([y.chunks[0].key])[0].flat[
              0
          ]
          if not isinstance(first_val, str):
              return "unknown"
  
      if y.ndim == 2 and y.shape[1] == 0:
          return "unknown"  # [[]]
  
      if y.ndim == 2 and y.shape[1] > 1:
          suffix = "-multioutput"  # [[1, 2], [1, 2]]
      else:
          suffix = ""  # [1, 2, 3] or [[1], [2], [3]]
  
      if y.dtype.kind == "f":
          # check float and contains non-integer float values
          contain_float_values = yield from recursive_tile(
              mt.any(y != y.astype(int))
          )
          yield contain_float_values.chunks
          contain_float_values = ctx.get_chunks_result(
              [contain_float_values.chunks[0].key]
          )[0]
          # [.1, .2, 3] or [[.1, .2, 3]] or [[1., .2]] and not [1., 2., 3.]
          if contain_float_values:
              yield from recursive_tile(assert_all_finite(y))
              return "continuous" + suffix
  
      unique_y = yield from recursive_tile(mt.unique(y))
      yield unique_y.chunks + [unique_y]
      if (len(unique_y) > 2) or (y.ndim >= 2 and len(y[0]) > 1):
          return (
              "multiclass" + suffix
          )  # [1, 2, 3] or [[1., 2., 3]] or [[1, 2]]
      else:
          return "binary"
  
imports: import itertools
  from collections.abc import Sequence
  from typing import List
  import numpy
  from scipy.sparse import spmatrix
  from sklearn.utils.multiclass import is_multilabel, type_of_target
  from ...None import opcodes
  from ...None import tensor
  from ...core import ENTITY_TYPE, TILEABLE_TYPE, recursive_tile
  from ...core.context import get_context
  from ...serialization.serializables import AnyField, ListField
  from ...tensor.core import TensorOrder, TENSOR_TYPE
  from ...typing import TileableType
  from ...utils import has_unknown_shape
  from ..operands import LearnOperand, LearnOperandMixin, OutputType
  from ..utils import assert_all_finite
  from .validation import check_array
label_desc: Use image node_id 3 for calling the TypeOfTarget obj's underlying member method code with example usage: obj._tile(cls, op) and returns: sklearn_type_of_target, str, str, str, unknown, str, str, unknown