File size: 1,375 Bytes
fdcaac3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/bin/bash

. ./path.sh || exit 1;

dir=$1
average_num=$2
decoding_chunk_size=$3

echo "***************"
echo "dir=$dir"
echo "average_num=$average_num"
echo "decoding_chunk_size=$decoding_chunk_size"
echo "***************"

dict=exp/wenet_efficient_conformer_librispeech_v2/train_960_unigram5000_units.txt
decode_checkpoint=$dir/final.pt

ctc_weight=0.5
reverse_weight=0.3

decode_modes="attention_rescoring ctc_greedy_search ctc_prefix_beam_search attention"

recog_set="test_clean test_other"
n_gpu=0

for testset in ${recog_set} ; do
  test_dir=$dir/test_${testset}
  if [ ! -d $test_dir ] ; then
    mkdir -p $test_dir
  fi
  for mode in ${decode_modes} ; do
    echo ""
    echo "==> ${testset}, ${mode} "
    nohup python wenet/bin/recognize.py --gpu $n_gpu \
      --mode $mode \
      --config ${dir}/train.yaml \
      --data_type "raw" \
      --test_data data/${testset}/data.list \
      --checkpoint ${decode_checkpoint} \
      --beam_size 10 \
      --batch_size 1 \
      --penalty 0.0 \
      --dict $dict \
      --ctc_weight $ctc_weight \
      --reverse_weight $reverse_weight \
      --result_file $test_dir/text_avg${average_num}_${mode}_${decoding_chunk_size} \
      ${decoding_chunk_size:+--decoding_chunk_size $decoding_chunk_size} > logs/decode_avg${average_num}_${mode}_${decoding_chunk_size}.log &

    n_gpu=`expr $n_gpu + 1`

  done
done