docstr: Args:
      input features: (B, L, I_EMBED)
  Return:
      output features: (B, H_EMBED)
docstr_tok: ["Args",":","input","features",":","(","B",",","L",",","I_EMBED",")","Return",":","output","features",":","(","B",",","H_EMBED",")"]
code: def forward(self, x):
      """
      Args:
          input features: (B, L, I_EMBED)
      Return:
          output features: (B, H_EMBED)
      """
      # Check size of tensors
      x = x.transpose(1, 2)  # (B, I_EMBED, L)
      x = self.conv(x)  # (B, H_EMBED, L)
      x = self.act(x)  # (B, H_EMBED, L)
      x = self.dropout(x)  # (B, H_EMBED, L)
      x = x.transpose(1, 2)  # (B, L, H_EMBED)
      return x
  
imports: import torch
  import torch.nn
  import torch.nn.functional
label_desc: Use image node_id 2 for calling the CNN obj's underlying member method code with example usage: obj.forward(x) and returns: x