docstr: Calculate losses, gradients, and update network weights; called in every training iteration
code: def backward(self):
      """Calculate losses, gradients, and update network weights; called in every training iteration"""
      # caculate the intermediate results if necessary; here self.output has been computed during function <forward>
      # calculate loss given the input and intermediate results
      self.loss_seg.backward()
  
file_path: torch-points3d/torch_points3d/models/segmentation/base.py
imports: import logging
  import torch
  import torch.nn.functional
  from typing import Any
  from torch_points3d.models.base_architectures import UnetBasedModel
  from torch_points3d.datasets.segmentation import IGNORE_LABEL
label_desc: Use image node_id 4 for calling the Segmentation_MP obj's underlying member method code with example usage: obj.backward() without return types