code: def backward(ctx, grad_output):
      rois, argmax = ctx.saved_tensors
      grad_input = grad_output.new_zeros(ctx.input_shape)
  
      ext_module.roi_pool_backward(
          grad_output,
          rois,
          argmax,
          grad_input,
          pooled_height=ctx.output_size[0],
          pooled_width=ctx.output_size[1],
          spatial_scale=ctx.spatial_scale,
      )
  
      return grad_input, None, None, None
  
file_path: lavis/lavis/common/annotator/uniformer/mmcv/ops/roi_pool.py
imports: import torch
  import torch.nn
  from torch.autograd import Function
  from torch.autograd.function import once_differentiable
  from torch.nn.modules.utils import _pair
  from ..utils import ext_loader
label_desc: Use image node_id 3 for calling the RoIPoolFunction obj's underlying member method code with example usage: obj.backward(ctx, grad_output) and returns: grad_input,  None,  None,  None