안녕하세요. MeloTTS fine turning을 다른분들이 올려준 자료를 가지고 진행하고 있습니다.

참고를하여 진행하고 있으나 매끄럽지 못한 부분이 생겨 질문을 다시 드립니다.


제 작업 순서는 다음과 같습니다.

1. download_utils.py에서 필요한 것들 다운로드

-> G_0.pth 이름 바꾸고  logs/KR-default 저장


->./config/config.json에 저장


-> logs/KR-default 저장


2. 데이터 전처리를 metadata.list로 합니다. (테스트로 현재 10개만 사용)

형식은 아래와 같습니다. 

./data/KR-default/wavs/1_0000.wav|KR-default|KR|그는 괜찮은 척하려고 애쓰는 것 같았다.

...

데이터 역시 같은 경로(./data/KR-default/wavs/)에 있습니다.

python preprocess_text.py --metadata data/KR-default/metadata.list 로 전처리를 해주니 ./data/KR-default/config.json 생성


3. 1번에서 다운받은 config.json가 2번을 진행할 때 디폴트로 사용되는거 같고 실제로 값을 지정해도 결과는 같았던거 같습니다.


bash train.sh data/KR-default/config.json 2 


torchrun  --nproc_per_node 2 --master_port 10902 train.py --c data/KR-default/config.json --model KR-default --pretrain_G logs/KR-default/G_0.pth --pretrain_D logs/KR-default/D.pth --pretrain_dur logs/KR-default/DUR.pth


터미널에서 두가지 방식으로 학습을 진행해 보았고 1번에서 다운받은 config.json을 사용하니 학습 진행시 seed 등이 없다는 에러가 생겨 깃허브에 있는 json과 비교해 없는 값들은 채워 넣고 다시 2번을 진행하였습니다.


다시 진행하니 


buckets: [12, 12]

Using noise scaled MAS for VITS2

Using duration discriminator for VITS2

(torch.Size([10, 192]), torch.Size([8, 192]))

(torch.Size([10, 192]), torch.Size([8, 192]))

(torch.Size([256, 256]), torch.Size([1, 256]))

enc_p.language_emb.weight is not in the checkpoint

(torch.Size([256, 256]), torch.Size([1, 256]))

emb_g.weight is not in the checkpoint

list index out of range


오류가 발생해 confing.json에 있는 num_languages 값을 10으로도 8로도 바꾸어 주었지만 현재 여기서 넘어가지 못하고 있는 상황입니다.


두서 없는 질문 죄송하고 긴글 읽어주셔서 감사합니다.