class_docstr: Construct convolution-based channel-wise SELayer.
class_docstr_tok: ["Construct","convolution-based","channel-wise","SELayer","."]
code: def forward(self, x):
      b, c, t, _, _ = x.size()  # n, c, t, h, w
      y = self.conv1(x)  # n, c/r, t, h, w
      y = self.bn1(y)  # n, c/r, t, h, w
      y = self.avg_pool(y)  # n, c/r, 1, 1, 1
      y = self.conv2(y)  # n, c, 1, 1, 1
      y = self.bn2(y)  # n, c, 1, 1, 1
      y = self.sigmoid(y)  # n, c, 1, 1, 1
      # out = x * y.expand_as(x)  # n, c, t, h, w
      y = y - 0.5
      out = x + x * y.expand_as(x)
      return out
  
imports: import torch
  import torch.nn
label_desc: Use image node_id 2 for calling the SELayerCoC obj's underlying member method code with example usage: obj.forward(x) and returns: out