docstr: ConvTranspose2d with Gated Linear Units (GLU).
  
  Input and output shapes are the same as regular ConvTranspose2d layers.
  
  Reference: Section III-B in [1]
  
  Args:
      in_channels (int): number of input channels
      out_channels (int): number of output channels
      kernel_size (int/tuple): kernel size in ConvTranspose2d
      stride (int/tuple): stride size in ConvTranspose2d
      padding (int/tuple): padding size in ConvTranspose2d
      output_padding (int/tuple): Additional size added to one side of each
          dimension in the output shape
docstr_tok: ["ConvTranspose2d","with","Gated","Linear","Units","(","GLU",")",".","Input","and","output","shapes","are","the","same","as","regular","ConvTranspose2d","layers",".","Reference",":","Section","III-B","in","[","1","]","Args",":","in_channels","(","int",")",":","number","of","input","channels","out_channels","(","int",")",":","number","of","output","channels","kernel_size","(","int\/tuple",")",":","kernel","size","in","ConvTranspose2d","stride","(","int\/tuple",")",":","stride","size","in","ConvTranspose2d","padding","(","int\/tuple",")",":","padding","size","in","ConvTranspose2d","output_padding","(","int\/tuple",")",":","Additional","size","added","to","one","side","of","each","dimension","in","the","output","shape"]
code: def __init__(
      self,
      in_channels,
      out_channels,
      kernel_size,
      stride,
      padding=0,
      output_padding=(0, 0),
  ):
      """ConvTranspose2d with Gated Linear Units (GLU).
  
      Input and output shapes are the same as regular ConvTranspose2d layers.
  
      Reference: Section III-B in [1]
  
      Args:
          in_channels (int): number of input channels
          out_channels (int): number of output channels
          kernel_size (int/tuple): kernel size in ConvTranspose2d
          stride (int/tuple): stride size in ConvTranspose2d
          padding (int/tuple): padding size in ConvTranspose2d
          output_padding (int/tuple): Additional size added to one side of each
              dimension in the output shape
      """
      super().__init__()
      self.deconv1 = nn.ConvTranspose2d(
          in_channels=in_channels,
          out_channels=out_channels,
          kernel_size=kernel_size,
          stride=stride,
          padding=padding,
          output_padding=output_padding,
      )
      self.deconv2 = nn.ConvTranspose2d(
          in_channels=in_channels,
          out_channels=out_channels,
          kernel_size=kernel_size,
          stride=stride,
          padding=padding,
          output_padding=output_padding,
      )
  
      self.sigmoid = nn.Sigmoid()
  
imports: from typing import List
  import torch
  import torch.nn
  from espnet2.enh.layers.conv_utils import conv2d_output_shape, convtransp2d_output_shape
label_desc: Use image node_id 1 to create a new GluConvTranspose2d object from inherited base classes: nn with example: obj = GluConvTranspose2d(in_channels, out_channels, kernel_size, stride, padding, output_padding)