class_docstr: Transformer-based Speech translation model from ESPNet-ST
  https://arxiv.org/abs/2004.10234
class_docstr_tok: ["Transformer-based","Speech","translation","model","from","ESPNet-ST","https",":","\/\/arxiv.org\/abs\/2004.10234"]
code: def forward(self, src_tokens, src_lengths, prev_output_tokens):
      encoder_out = self.encoder(
          src_tokens=src_tokens, src_lengths=src_lengths
      )
      decoder_out = self.decoder(
          prev_output_tokens=prev_output_tokens, encoder_out=encoder_out
      )
      return decoder_out
  
imports: import logging
  import math
  from typing import Dict, List, Optional, Tuple
  import torch
  import torch.nn
  import torch.nn.functional
  from torch import Tensor
  from fairseq import checkpoint_utils, utils
  from fairseq.data.data_utils import lengths_to_padding_mask
  from fairseq.models import FairseqEncoder, FairseqEncoderDecoderModel, register_model, register_model_architecture
  from fairseq.models.speech_to_text.modules.convolution import infer_conv_output_dim
  from fairseq.models.transformer import Embedding, TransformerDecoder
  from fairseq.modules import LayerNorm, PositionalEmbedding, TransformerEncoderLayer
label_desc: Use image node_id 9 for calling the ConvTransformerModel obj's underlying member method code with example usage: obj.forward(src_tokens, src_lengths, prev_output_tokens) and returns: decoder_out