code: def forward(self, x):
      # (N, C, T, H, W) -> (N, T, H, W, C).
      x = x.permute((0, 2, 3, 4, 1))
      x = self.projection(x)
      # Performs fully convlutional inference.
      if not self.training:
          x = self.act(x)
          x = x.mean([1, 2, 3])
      x = x.flatten(start_dim=1)
      return x
  
file_path: ClassyVision/classy_vision/heads/fully_convolutional_linear_head.py
imports: from collections.abc import Sequence
  from typing import Any, Dict, List, Optional
  import torch.nn
  from classy_vision.generic.util import is_pos_int
  from classy_vision.heads import ClassyHead, register_head
label_desc: Use image node_id 2 for calling the FullyConvolutionalLinear obj's underlying member method code with example usage: obj.forward(x) and returns: x