class_docstr: RegNet backbone.
  
  More details can be found in `paper <https://arxiv.org/abs/2003.13678>`_ .
  
  Args:
      arch (dict): The parameter of RegNets.
  
          - w0 (int): initial width
          - wa (float): slope of width
          - wm (float): quantization parameter to quantize the width
          - depth (int): depth of the backbone
          - group_w (int): width of group
          - bot_mul (float): bottleneck ratio, i.e. expansion of bottleneck.
      strides (Sequence[int]): Strides of the first block of each stage.
      base_channels (int): Base channels after stem layer.
      in_channels (int): Number of input image channels. Default: 3.
      dilations (Sequence[int]): Dilation of each stage.
      out_indices (Sequence[int]): Output from which stages.
      style (str): `pytorch` or `caffe`. If set to "pytorch", the stride-two
          layer is the 3x3 conv layer, otherwise the stride-two layer is
          the first 1x1 conv layer.
      frozen_stages (int): Stages to be frozen (all param fixed). -1 means
          not freezing any parameters.
      norm_cfg (dict): dictionary to construct and config norm layer.
      norm_eval (bool): Whether to set norm layers to eval mode, namely,
          freeze running stats (mean and var). Note: Effect on Batch Norm
          and its variants only.
      with_cp (bool): Use checkpoint or not. Using checkpoint will save some
          memory while slowing down the training speed.
      zero_init_residual (bool): whether to use zero init for last norm layer
          in resblocks to let them behave as identity.
      pretrained (str, optional): model pretrained path. Default: None
      init_cfg (dict or list[dict], optional): Initialization config dict.
          Default: None
  
  Example:
      >>> from mmdet.models import RegNet
      >>> import torch
      >>> self = RegNet(
              arch=dict(
                  w0=88,
                  wa=26.31,
                  wm=2.25,
                  group_w=48,
                  depth=25,
                  bot_mul=1.0))
      >>> self.eval()
      >>> inputs = torch.rand(1, 3, 32, 32)
      >>> level_outputs = self.forward(inputs)
      >>> for level_out in level_outputs:
      ...     print(tuple(level_out.shape))
      (1, 96, 8, 8)
      (1, 192, 4, 4)
      (1, 432, 2, 2)
      (1, 1008, 1, 1)
docstr: Adjusts the compatibility of widths and groups.
  
  Args:
      widths (list[int]): Width of each stage.
      bottleneck_ratio (float): Bottleneck ratio.
      groups (int): number of groups in each stage
  
  Returns:
      tuple(list): The adjusted widths and groups of each stage.
docstr_tok: ["Adjusts","the","compatibility","of","widths","and","groups",".","Args",":","widths","(","list","[","int","]",")",":","Width","of","each","stage",".","bottleneck_ratio","(","float",")",":","Bottleneck","ratio",".","groups","(","int",")",":","number","of","groups","in","each","stage","Returns",":","tuple","(","list",")",":","The","adjusted","widths","and","groups","of","each","stage","."]
code: def adjust_width_group(self, widths, bottleneck_ratio, groups):
      """Adjusts the compatibility of widths and groups.
  
      Args:
          widths (list[int]): Width of each stage.
          bottleneck_ratio (float): Bottleneck ratio.
          groups (int): number of groups in each stage
  
      Returns:
          tuple(list): The adjusted widths and groups of each stage.
      """
      bottleneck_width = [
          int(w * b) for w, b in zip(widths, bottleneck_ratio)
      ]
      groups = [
          min(g, w_bot) for g, w_bot in zip(groups, bottleneck_width)
      ]
      bottleneck_width = [
          self.quantize_float(w_bot, g)
          for w_bot, g in zip(bottleneck_width, groups)
      ]
      widths = [
          int(w_bot / b)
          for w_bot, b in zip(bottleneck_width, bottleneck_ratio)
      ]
      return widths, groups
  
file_path: mmdetection/mmdet/models/backbones/regnet.py
imports: import warnings
  import numpy
  import torch.nn
  from mmcv.cnn import build_conv_layer, build_norm_layer
  from mmdet.registry import MODELS
  from .resnet import ResNet
  from .resnext import Bottleneck
label_desc: Use image node_id 5 for calling the RegNet obj's underlying member method code with example usage: obj.adjust_width_group(widths, bottleneck_ratio, groups) and returns: widths,  groups