# ################################ # Model: Transducer ASR # Augmentation: SpecAugment # Authors: Pooneh Mousavi 2023 # ################################ # Feature parameters (FBANKS etc) sample_rate: 16000 n_fft: 400 n_mels: 80 # Model parameters activation: !name:torch.nn.LeakyReLU dropout: 0.15 cnn_blocks: 3 cnn_channels: (128, 200, 256) inter_layer_pooling_size: (2, 2, 2) cnn_kernelsize: (3, 3) time_pooling_size: 4 rnn_class: !name:speechbrain.nnet.RNN.LSTM rnn_layers: 5 rnn_neurons: 1024 rnn_bidirectional: True dnn_blocks: 2 dnn_neurons: 1024 dec_neurons: 1024 joint_dim: 1024 # Outputs output_neurons: 1000 # BPE size, index(blank/eos/bos) = 0 # transducer_beam_search : True # Decoding parameters # Be sure that the bos and eos index match with the BPEs ones blank_index: 0 bos_index: 0 eos_index: 0 min_decode_ratio: 0.0 max_decode_ratio: 1.0 beam_size: 4 nbest: 1 # by default {state,expand}_beam = 2.3 as mention in paper # https://arxiv.org/abs/1904.02619 state_beam: 2.3 expand_beam: 2.3 transducer_beam_search: True normalizer: !new:speechbrain.processing.features.InputNormalization norm_type: global compute_features: !new:speechbrain.lobes.features.Fbank sample_rate: !ref n_fft: !ref n_mels: !ref enc: !new:speechbrain.lobes.models.CRDNN.CRDNN input_shape: [null, null, !ref ] activation: !ref dropout: !ref cnn_blocks: !ref cnn_channels: !ref cnn_kernelsize: !ref inter_layer_pooling_size: !ref time_pooling: True using_2d_pooling: False time_pooling_size: !ref rnn_class: !ref rnn_layers: !ref rnn_neurons: !ref rnn_bidirectional: !ref rnn_re_init: True dnn_blocks: !ref dnn_neurons: !ref enc_lin: !new:speechbrain.nnet.linear.Linear input_size: !ref n_neurons: !ref emb: !new:speechbrain.nnet.embedding.Embedding num_embeddings: !ref consider_as_one_hot: True blank_id: !ref dec: !new:speechbrain.nnet.RNN.GRU input_shape: [null, null, !ref - 1] hidden_size: !ref num_layers: 1 re_init: True # For MTL with LM over the decoder dec_lin: !new:speechbrain.nnet.linear.Linear input_size: !ref n_neurons: !ref bias: False Tjoint: !new:speechbrain.nnet.transducer.transducer_joint.Transducer_joint joint: sum # joint [sum | concat] nonlinearity: !ref transducer_lin: !new:speechbrain.nnet.linear.Linear input_size: !ref n_neurons: !ref bias: False log_softmax: !new:speechbrain.nnet.activations.Softmax apply_log: True asr_model: !new:torch.nn.ModuleList - [!ref , !ref , !ref , !ref ] tokenizer: !new:sentencepiece.SentencePieceProcessor # We compose the inference (encoder) pipeline. encoder: !new:speechbrain.nnet.containers.LengthsCapableSequential input_shape: [null, null, !ref ] compute_features: !ref normalize: !ref model: !ref decoder: !new:speechbrain.decoders.transducer.TransducerBeamSearcher decode_network_lst: [!ref , !ref ] tjoint: !ref classifier_network: [!ref ] blank_id: !ref beam_size: !ref nbest: !ref state_beam: !ref expand_beam: !ref modules: normalizer: !ref encoder: !ref decoder: !ref pretrainer: !new:speechbrain.utils.parameter_transfer.Pretrainer loadables: normalizer: !ref asr: !ref tokenizer: !ref