class_docstr: Depth to Space feature map upsampling that preserves the input channels.
  This block performs grouped convolution to increase number of channels followed by pixel shuffle.
  
  https://github.com/pytorch/pytorch/pull/5429
  https://arxiv.org/ftp/arxiv/papers/1707/1707.02937.pdf
code: def forward(
      self,
      x: Tensor,
      output_size: Union[Tuple[int, int], torch.Size] = None,
  ) -> Tensor:
      x = self.shuffle(self.conv(x))
      return x
  
imports: from enum import Enum
  from math import hypot
  from typing import Optional, List, Tuple, Union, Type
  import torch
  from torch import nn, Tensor
label_desc: Use image node_id 2 for calling the PixelShuffleWithLinear obj's underlying member method code with example usage: obj.forward(x, output_size) and returns: x