code: def forward(self, x: Tensor) -> Tensor:
      scale = F.adaptive_avg_pool2d(x, output_size=(1, 1))
      scale = self.fc1(scale)
      scale = F.relu(scale, inplace=True)
      scale = self.fc2(scale)
      scale = F.hardsigmoid(scale, inplace=True)
      return scale * x
  
imports: from typing import Callable, List, Optional
  import torch
  from torch import nn, Tensor
  from torch.nn import functional
  from functools import partial
label_desc: Use image node_id 2 for calling the SqueezeExcitation obj's underlying member method code with example usage: obj.forward(x) and returns: unknown