mirror of
https://github.com/k2-fsa/icefall.git
synced 2025-08-08 09:32:20 +00:00
64 lines
1.4 KiB
Bash
Executable File
64 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Please run ./prepare.sh first
|
|
|
|
stage=-1
|
|
stop_stage=100
|
|
|
|
# Number of GPUs to use for training
|
|
world_size=1
|
|
|
|
# Number of epochs to train
|
|
num_epochs=20
|
|
|
|
# Use this epoch for computing ppl
|
|
use_epoch=19
|
|
|
|
# number of models to average for computing ppl
|
|
use_avg=2
|
|
|
|
exp_dir=./my-rnnlm-exp
|
|
|
|
. shared/parse_options.sh || exit 1
|
|
|
|
log() {
|
|
# This function is from espnet
|
|
local fname=${BASH_SOURCE[1]##*/}
|
|
echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*"
|
|
}
|
|
|
|
if [ $stage -le 0 ] && [ $stop_stage -ge 0 ]; then
|
|
log "Training RNN LM"
|
|
|
|
./rnn_lm/train.py \
|
|
--exp-dir $exp_dir \
|
|
--start-epoch 0 \
|
|
--num-epochs $num_epochs \
|
|
--world-size $world_size \
|
|
--use-fp16 0 \
|
|
--vocab-size 500 \
|
|
--lm-data ./data/lm_training_bpe_500/sorted_lm_data.pt \
|
|
--lm-data-valid ./data/lm_training_bpe_500/sorted_lm_data-valid.pt \
|
|
--embedding-dim 800 \
|
|
--hidden-dim 200 \
|
|
--num-layers 2 \
|
|
--tie-weights false \
|
|
--batch-size 50
|
|
fi
|
|
|
|
if [ $stage -le 1 ] && [ $stop_stage -ge 1 ]; then
|
|
log "Computing perplexity"
|
|
|
|
./rnn_lm/compute_perplexity.py \
|
|
--exp-dir $exp_dir \
|
|
--epoch $use_epoch \
|
|
--avg $use_avg \
|
|
--vocab-size 500 \
|
|
--lm-data ./data/lm_training_bpe_500/sorted_lm_data-test.pt \
|
|
--embedding-dim 800 \
|
|
--hidden-dim 200 \
|
|
--num-layers 2 \
|
|
--tie-weights false \
|
|
--batch-size 50
|
|
fi
|