기록하는삶

[파이썬/Python] 한국어 STT, kospeech 활용기(2) _ 폴더 위치 변경 및 모듈 설치 본문

AI/kospeech(한국어 STT)

[파이썬/Python] 한국어 STT, kospeech 활용기(2) _ 폴더 위치 변경 및 모듈 설치

mingchin 2021. 12. 28. 15:14
728x90
반응형

지난 글: https://mingchin.tistory.com/201

 

[파이썬/Python] 한국어 STT, kospeech 활용기(1) _ 단어 사전 및 transcript.txt 생성하기

오늘부터 몇 개로 나누어 작성할 글은 kospeech가 제공하는 모델 중 deepspeech2 기반 & 3가지 방법 중 character unit의 전처리를 가지고 진행했던 프로젝트를 복기하고 정리하는 글이다. 혹여나 나의 글

mingchin.tistory.com

지난 글에서 kospeech를 활용하기 위한 전처리, 글자 사전 만들기 및 transcript.txt 파일 만들기를 진행했다. 이제 베이스 모델 중 deepspeech2를 이용해 모델을 학습시키는 절차까지 정리해보려고 한다.

0) 학습 준비
원 저자의 깃허브에 보면 아래와 같은 설명이 있다.

전처리를 하면서 설치한 패키지도 있고 아닌 것도 있는데, 필자는 파일이 보유한 setup.py 파일을 이용하는 맨 아래의 방법을 이용하고자 했다.

이렇게 setup.py의 위치에서 아래 코드를 실행하면 해당 파일이 지정한 패키지들을 다운받기 시작한다.

pip install -e .

잘 나가다가 에러도 뜬다. levenshtein은 문자열의 편집거리를 구하는데 사용하는 패키지로, 이후 CER 수치 계산에 활용된다. 저기서 에러가 났다는 것 정도만 확인하고 기다린다. 그럼 추가로 levenshtein 관련 에러가 발생하고 종료된다.

 

1) 학습 코드로 디버깅

이제 해당 코드를 반복해서 실행하면서, 발생하는 모든 버그들을 해결해 줄 차례다. '$DATASET_PATH'에 오디오 파일의 경로를 입력해주면 되는데, 이 부분을 절대 경로로 표현한다고 해서 문제될 것이 없으니 가급적 절대 경로로 표현하는 것이 나아보인다. (이후에 상대경로가 문제가 되는 경우가 있었다.)

 

이제부터는 '학습 실행 코드 입력 -> 에러 해결'의 무한 반복이다.

 

① hydra

pip install hydra-core --upgrade

 

② kospeech

여기서 'pip install kospeech'를 하면 당연히 없다. (?????)

에러를 잘 읽어보면, /bin/main.py 파일의 24번째 줄에서 에러가 발생했다.

이 main.py와 동일 위치에서 'kospeech'라는 폴더로부터 수많은 것들을 import해오게 되어있는데, 정작 main.py가 위치한 bin 폴더에는 kospeech 폴더가 없다. 따라서 원래 하나 상위 폴더에 존재하는 kospeech 폴더를 bin 폴더의 안쪽으로 옮겨준다.

③ librosa

pip install librosa

④ astropy

pip install astropy

⑤ BeamDecoderRNN

맨 마지막 에러 발생 위치는 /bin/kospeech/models/__init__.py의 line 32다. 

실제 해당 위치에 존재하지 않는 Class를 import하게 되어있다. 우리는 LAS(Listen Attend and Spell) 모델을 사용하지 않을 뿐더라, 존재하지 않는 친구이니 삭제해주자. (저장을 잊지 말자.)

 

⑥ Levenshtein

pip install Levenshtein

 

⑦ ???

이러한 에러를 만났다면, "" 대신 ''를 경로에 사용했기 때문이다. datasetpath에 있는 ''를 ""로 바꾸어주자.

 

⑧ transcripts.txt

여기까지 성공했다면, 성공적으로 layer를 깔아두고 학습 직전까지 진행된 것을 알 수 있다.

이전에 생성한 transcripts.txt 파일을 적당한 위치에 넣어주자. 아마 현재는 /dataset 안에 있을 것이고, 이를 /data 폴더에 복사 붙여넣기 해주자.

 

⑨ torchaudio

pip install torchaudio

⑩ ??!??

되는가 싶더니 어림도 없다. 지금까지는 필요한 모듈 설치에 가깝고, 이제부터 코드를 하나씩 까보며 이해하고 필요한 부분을 내 데이터에 맞게 수정하거나 삭제하는 등의 작업이 필요하다. 다음 글에서 이어가보도록 하겠다.

728x90
반응형