code: def unsorted_segment_min(
      data: paddle.Tensor,
      segment_ids: paddle.Tensor,
      num_segments: Union[int, paddle.Tensor],
  ) -> paddle.Tensor:
      ivy.utils.assertions.check_unsorted_segment_valid_params(
          data, segment_ids, num_segments
      )
      if data.dtype == paddle.float32:
          init_val = 3.4028234663852886e38  # float32 max
      elif data.dtype == paddle.float64:
          init_val = 1.7976931348623157e308  # float64 max
      elif data.dtype == paddle.int32:
          init_val = 2147483647
      elif data.dtype == paddle.int64:
          init_val = 9223372036854775807
      else:
          raise TypeError("Unsupported data type")
      # Using paddle.full is causing integer overflow for int64
      res = paddle.empty(
          (num_segments,) + tuple(data.shape[1:]), dtype=data.dtype
      )
      res[:] = init_val
      for i in range(num_segments):
          mask_index = segment_ids == i
          if paddle.any(mask_index):
              res[i] = paddle.min(data[mask_index], 0)
  
      return res
  
file_path: ivy/ivy/functional/backends/paddle/experimental/creation.py
imports: from typing import Optional, Tuple, Union
  import math
  import paddle
  import ivy.functional.backends.paddle
  from paddle.device import core
  from ivy.func_wrapper import with_supported_dtypes, with_unsupported_device_and_dtypes
  import ivy
  from ..None import backend_version
label_desc: Use image node_id 6 for calling a global function with example usage: unsorted_segment_min(data, segment_ids, num_segments) and returns: res