class_docstr: BBox head for `SCNet <https://arxiv.org/abs/2012.10150>`_.
  
  This inherits ``ConvFCBBoxHead`` with modified forward() function, allow us
  to get intermediate shared feature.
docstr: Forward function for classification and regression parts.
  
  Args:
      x (Tensor): Input feature.
  
  Returns:
      tuple[Tensor]:
  
          - cls_score (Tensor): classification prediction.
          - bbox_pred (Tensor): bbox prediction.
code: def _forward_cls_reg(self, x: Tensor) -> Tuple[Tensor]:
      """Forward function for classification and regression parts.
  
      Args:
          x (Tensor): Input feature.
  
      Returns:
          tuple[Tensor]:
  
              - cls_score (Tensor): classification prediction.
              - bbox_pred (Tensor): bbox prediction.
      """
      x_cls = x
      x_reg = x
  
      for conv in self.cls_convs:
          x_cls = conv(x_cls)
      if x_cls.dim() > 2:
          if self.with_avg_pool:
              x_cls = self.avg_pool(x_cls)
          x_cls = x_cls.flatten(1)
      for fc in self.cls_fcs:
          x_cls = self.relu(fc(x_cls))
  
      for conv in self.reg_convs:
          x_reg = conv(x_reg)
      if x_reg.dim() > 2:
          if self.with_avg_pool:
              x_reg = self.avg_pool(x_reg)
          x_reg = x_reg.flatten(1)
      for fc in self.reg_fcs:
          x_reg = self.relu(fc(x_reg))
  
      cls_score = self.fc_cls(x_cls) if self.with_cls else None
      bbox_pred = self.fc_reg(x_reg) if self.with_reg else None
  
      return cls_score, bbox_pred
  
file_path: mmdetection/mmdet/models/roi_heads/bbox_heads/scnet_bbox_head.py
imports: from typing import Tuple, Union
  from torch import Tensor
  from mmdet.registry import MODELS
  from .convfc_bbox_head import ConvFCBBoxHead
label_desc: Use image node_id 2 for calling the SCNetBBoxHead obj's underlying member method code with example usage: obj._forward_cls_reg(x) and returns: cls_score,  bbox_pred