class_docstr: Model builder for MViTv1 and MViTv2.
  
  "MViTv2: Improved Multiscale Vision Transformers for Classification and Detection"
  Yanghao Li, Chao-Yuan Wu, Haoqi Fan, Karttikeya Mangalam, Bo Xiong, Jitendra Malik, Christoph Feichtenhofer
  https://arxiv.org/abs/2112.01526
  "Multiscale Vision Transformers"
  Haoqi Fan, Bo Xiong, Karttikeya Mangalam, Yanghao Li, Zhicheng Yan, Jitendra Malik, Christoph Feichtenhofer
  https://arxiv.org/abs/2104.11227
class_docstr_tok: ["Model","builder","for","MViTv1","and","MViTv2",".","``","MViTv2",":","Improved","Multiscale","Vision","Transformers","for","Classification","and","Detection","''","Yanghao","Li",",","Chao-Yuan","Wu",",","Haoqi","Fan",",","Karttikeya","Mangalam",",","Bo","Xiong",",","Jitendra","Malik",",","Christoph","Feichtenhofer","https",":","\/\/arxiv.org\/abs\/2112.01526","''","Multiscale","Vision","Transformers","''","Haoqi","Fan",",","Bo","Xiong",",","Karttikeya","Mangalam",",","Yanghao","Li",",","Zhicheng","Yan",",","Jitendra","Malik",",","Christoph","Feichtenhofer","https",":","\/\/arxiv.org\/abs\/2104.11227"]
docstr: Reversible specific code for forward computation.
code: def _forward_reversible(self, x):
      """
      Reversible specific code for forward computation.
      """
      # rev does not support cls token or detection
      assert not self.cls_embed_on
      assert not self.enable_detection
  
      x = self.rev_backbone(x)
  
      if self.use_mean_pooling:
          x = self.fuse(x)
          x = x.mean(1)
          x = self.norm(x)
      else:
          x = self.norm(x)
          x = self.fuse(x)
          x = x.mean(1)
  
      x = self.head(x)
  
      return x
  
imports: import math
  from functools import partial
  import torch
  import torch.nn
  import torch.nn.functional
  from torch.nn.init import trunc_normal_
  import slowfast.utils.logging
  import slowfast.utils.weight_init_helper
  from slowfast.models.attention import MultiScaleBlock
  from slowfast.models.batchnorm_helper import get_norm
  from slowfast.models.common import TwoStreamFusion
  from slowfast.models.reversible_mvit import ReversibleMViT
  from slowfast.models.utils import calc_mvit_feature_geometry, get_3d_sincos_pos_embed, round_width, validate_checkpoint_wrapper_import
  from .None import head_helper, operators, resnet_helper, stem_helper
  from .build import MODEL_REGISTRY
label_desc: Use image node_id 5 for calling the MViT obj's underlying member method code with example usage: obj._forward_reversible(x) and returns: x