code: def unsorted_segment_min(
      data: Union[ivy.Array, ivy.NativeArray],
      segment_ids: Union[ivy.Array, ivy.NativeArray],
      num_segments: Union[int, ivy.Array, ivy.NativeArray],
  ) -> ivy.Array:
      """Compute the minimum along segments of an array. Segments are defined by
      an integer array of segment IDs.
  
      Note
      ----
      If the given segment ID `i` is negative, then the corresponding
      value is dropped, and will not be included in the result.
  
      Parameters
      ----------
      data
          The array from which to gather values.
  
      segment_ids
          Must be in the same size with the first dimension of `data`. Has to be
          of integer data type. The index-th element of `segment_ids` array is
          the segment identifier for the index-th element of `data`.
  
      num_segments
          An integer or array representing the total number of distinct segment IDs.
  
      Returns
      -------
      ret
          The output array, representing the result of a segmented min operation.
          For each segment, it computes the min value in `data` where `segment_ids`
          equals to segment ID.
      """
      return ivy.current_backend().unsorted_segment_min(
          data, segment_ids, num_segments
      )
  
imports: from typing import Union, Tuple, Optional, Sequence, Iterable, Generator
  import warnings
  import ivy
  from ivy.utils.backend import current_backend
  from ivy.utils.exceptions import handle_exceptions
  from ivy.func_wrapper import outputs_to_ivy_arrays, handle_nestable, to_native_arrays_and_back, handle_out_argument, infer_dtype, handle_array_like_without_promotion, inputs_to_ivy_arrays, handle_device, handle_backend_invalid, handle_array_function
label_desc: Use image node_id 12 for calling a global function with example usage: unsorted_segment_min(data, segment_ids, num_segments) and returns: ivy