diff --git a/egs/librispeech/ASR/conformer_ctc2/.train.py.swp b/egs/librispeech/ASR/conformer_ctc2/.train.py.swp index 0877c9d6e..9e8e4b1da 100644 Binary files a/egs/librispeech/ASR/conformer_ctc2/.train.py.swp and b/egs/librispeech/ASR/conformer_ctc2/.train.py.swp differ diff --git a/egs/librispeech/ASR/conformer_ctc2/train.py b/egs/librispeech/ASR/conformer_ctc2/train.py index 3577d538a..2c2ea6192 100755 --- a/egs/librispeech/ASR/conformer_ctc2/train.py +++ b/egs/librispeech/ASR/conformer_ctc2/train.py @@ -641,7 +641,7 @@ def compute_loss( ctc_loss = (1-params.interctc_weight) * ctc_loss + params.interctc_weight * inter_ctc_loss - if (params.condition and params.group_num > 0) or (params.interctc and params.group_num > 0) or (params.group_num > 0): + if (params.condition and params.group_num > 0) or (params.interctc and params.group_num > 0): dense_fsa_vec = k2.DenseFsaVec( nnet_output[0], supervision_segments, @@ -676,7 +676,22 @@ def compute_loss( ) ctc_loss = (1-params.interctc_weight) * ctc_loss + params.interctc_weight * inter_ctc_loss - + + if not params.interctc and not params.condition and params.group_num > 0: + dense_fsa_vec = k2.DenseFsaVec( + nnet_output[0], + supervision_segments, + allow_truncate=params.subsampling_factor - 1, + ) + + ctc_loss = k2.ctc_loss( + decoding_graph=decoding_graph, + dense_fsa_vec=dense_fsa_vec, + output_beam=params.beam_size, + reduction=params.reduction, + use_double_scores=params.use_double_scores, + ) + if not params.interctc and not params.condition and params.group_num == 0: dense_fsa_vec = k2.DenseFsaVec( nnet_output,