class_docstr: Convolutional decoder
class_docstr_tok: ["Convolutional","decoder"]
docstr: Split and transpose encoder outputs.
docstr_tok: ["Split","and","transpose","encoder","outputs","."]
code: def _split_encoder_out(self, encoder_out):
      """Split and transpose encoder outputs."""
      # transpose only once to speed up attention layers
      encoder_a, encoder_b = encoder_out
      encoder_a = encoder_a.transpose(0, 1).contiguous()
      encoder_b = encoder_b.transpose(0, 1).contiguous()
      result = (encoder_a, encoder_b)
      return result
  
imports: import logging
  import math
  import os
  import torch
  import torch.nn
  import torch.nn.functional
  from fairseq import checkpoint_utils
  from fairseq.incremental_decoding_utils import with_incremental_state
  from fairseq.models import CompositeEncoder, FairseqDecoder, FairseqEncoder, FairseqEncoderDecoderModel, register_model, register_model_architecture
  from fairseq.modules import DownsampledMultiHeadAttention, FairseqDropout, GradMultiply, LayerNorm, LearnedPositionalEmbedding, LinearizedConvolution
label_desc: Use image node_id 5 for calling the FConvDecoder obj's underlying member method code with example usage: obj._split_encoder_out(encoder_out) and returns: result