안녕하세요 Zeroth를 이용하여 모델을 만드는 작업까지 완료하였고 Zeroth help를 통해서 많이 참고하여 익히고 있습니다.
제가 이번에 하려고 하는 것은 3000시간 모델 생성까지는 완료 하였고
LM 만 추가하여 Transfer Learning을 하려고 합니다.
models/3000> ll
합계 5386544
-rw-r--r--. 1 root root
4634716808 2월 25 02:31 G.carpa
-rw-r--r--. 1 root root 54006802 2월 25 01:50 G.fst
-rw-r--r--. 1 root root 742873057 3월 14 09:10 HCLG.fst
drwxr-xr-x. 2 root root 139 4월 6 13:21 conf
-rw-r--r--. 1 root root 11536 3월 2 01:04 final.config
-rw-r--r--. 1 root root 74887819 3월 14 09:10 final.mdl
-rw-r--r--. 1 root root 1 3월 14 09:10 frame_subsampling_factor
drwxr-xr-x. 2 root root 153 4월 6 15:41 ivector_extractor
-rw-r--r--. 1 root root 1766 3월 14 09:10 phones.txt
drwxr-xr-x. 3 root root 4096 3월 15 12:26 testwav
-rw-r--r--. 1 root root 2076 3월 14 09:10
word_boundary.int-rw-r--r--. 1 root root 9295121 3월 14 09:10 words.txt
lm 추가는 run_task.sh와 run_merge.sh를 이용하여 Zeroth lm에 추가하는 방식으로 lm 모델
mixed_~~~.lm.(tg, fg, tgsmall, tgmed).arpa.gz 까지 생성해놓은 상태입니다.
AM+LM Transfer Learning은 local/chain/multi_condition/run_tdnn_1n.sh 을 변경하고 kaldi의 run_tdnn_wsj_rm_1a.sh을 참조하여 수정하였습니다.
local/chain/multi_condition/run_tdnn_1n.sh 에서
primary_lr_factor=0.25
src_mdl=models/3000/final.mdl
stage 12에다가
$train_cmd $dir/log/generate_input_mdl.log \
nnet3-am-copy --raw=true --edits="set-learning-rate-factor name=* learning-rate-factor=$primary_lr
$src_mdl $dir/input.raw || exit 1;
steps/nnet3/chain/train.py 아래 파라미터 추가하여 Transfer Learning 진행
--trainer.input-model $dir/input.raw
위의 3000시간 모델 파일과 생성된 mixed_~~~.lm.(tg, fg, tgsmall, tgmed).arpa.gz 을 이용하여 LM만 Transfer Learning 하는 방법에 대해 문의드립니다.
제가 이해를 잘 못한 부분이나 부족한 부분,
위에서 LM+AM Transfer Learning 에서 수정해야할 부분이있다면 그 부분도 조언 부탁드립니다.