추가 데이터 lm 학습 관련 질문

160 views
Skip to first unread message

Oh Seo

unread,
Sep 17, 2021, 12:15:51 PM9/17/21
to zeroth-help
이번에 진행중인 연구에서
한국어 음성의 프레임별로 음소 정보를 뽑을 필요가 있어서 zeroth를 사용하고 있습니다.

단순 음성인식 후 음소를 추출하니 정확도가 떨어져서
기존 zeroth openslr 모델에 run.sh를 새로운 데이터에 맞게 바꿨고 새로 훈련을 진행하려고 하는데 궁금한 것이 있어 질문 드립니다.

zeroth 깃허브에서 추가 데이터 관련해서 
이 페이지에 대한 설명을 들었었는데 lexicon과 lm 생성 등과 관련된 내용이었습니다.
그런데 제가 보기에는 run.sh에서는 추가 데이터에 대해서 /data/local/lm/run.sh 를 실행하지 않는 것처럼 보였습니다. 

우선은 추가 데이터의 script(대본, trans.txt, text) 에 위 /data/local/lm/run.sh에서 진행하는 text normalization 작업을 완료한 상태이긴 합니다.
추가 데이터에 대해서는 /data/local/lm/run.sh를 실행해서 lm을 새로 생성하거나 추가적으로 훈련하지 않고
local/download_lm.sh 를 통해 다운받은 lm 그대로 훈련을 진행해도 성능 향상이나 추가 데이터에 대한 올바른 음소(음성)인식이 이루어질까요?

이승현

unread,
Sep 24, 2021, 1:03:27 AM9/24/21
to zeroth-help
s5/run.sh는 음향 모델만을 학습하고, 추가로 미리 준비된 언어 모델과 발음 사전을 음향 모델과 합성해 디코딩을 진행하는 정도입니다.
추가 데이터의 script들은 언어 모델과 발음 사전에 영향을 끼치지 않습니다. 오직 음향 모델 학습에만 사용이 됩니다.
음향 모델이 하는 일이 신호를 음소로 인식하는 것이니 이 부분에서 성능 향상은 당연히 있습니다.
그러나 이 음소들로 단어를 표현하거나 그 단어들로 문장을 표현하는 부분은 발음 사전과 언어 모델의 역할입니다.
이 부분에서는 성능 향상이 없습니다. 

추가 데이터를 이용해 새롭게 LM을 구축하려면 data/local/lm/run.sh를 참고하시면 됩니다. 이 경우 LM 구축에 사용될 텍스트 데이터는 따로 준비해서 적절한 경로에 위치해야 합니다. 이 부분은 해당 스크립트를 보시면 알 수 있습니다.

또는 이미 가지고 있는 LM에 추가를 하고 싶으시면 data/local/lm/run_task.sh와 data/local/lm/run_merge.sh를 참고하시면 됩니다. run_task.sh를 먼저 실행해 작은 LM을 구축하고 기존 LM과 결합하는 방식입니다.

음소 정보만을 필요로 하신다면 굳이 LM과 발음 사전을 건드릴 필요는 없을 것 같습니다.




2021년 9월 18일 토요일 오전 1시 15분 51초 UTC+9에 3ho...@gmail.com님이 작성:
Reply all
Reply to author
Forward
0 new messages