code: def _soft_dtw_grad_batch(D, R, E, gamma, be=None):
      """Compute gradient of soft-DTW w.r.t. D.
  
      Parameters
      ----------
      D : array-like, shape=(b, m, n), dtype=float64
      R : array-like, shape=(b, m+2, n+2), dtype=float64
      E : array-like, shape=(b, m+2, n+2), dtype=float64
      gamma : float64
          Regularization parameter.
      be : Backend object or string or None
          Backend. If `be` is an instance of the class `NumPyBackend` or the string `"numpy"`,
          the NumPy backend is used.
          If `be` is an instance of the class `PyTorchBackend` or the string `"pytorch"`,
          the PyTorch backend is used.
          If `be` is `None`, the backend is determined by the input arrays.
          See our :ref:`dedicated user-guide page <backend>` for more information.
      """
      be = instantiate_backend(be, D, R, E)
      for i_sample in prange(D.shape[0]):
          _soft_dtw_grad(
              D[i_sample, :, :],
              R[i_sample, :, :],
              E[i_sample, :, :],
              gamma,
              be=be,
          )
  
file_path: tslearn/tslearn/metrics/soft_dtw_fast.py
imports: import numpy
  from numba import njit, prange
  from tslearn.backend.backend import instantiate_backend
label_desc: Use image node_id 10 for calling a global function with example usage: _soft_dtw_grad_batch(D, R, E, gamma, be) without return types