다중화자 파인튜닝에 관해 질문 드립니다.

#3
by soominjung - opened

안녕하세요. 먼저 사전학습모델을 제공해주신 것에 감사드리며, 다중화자 파인튜닝 방법에 관해 질문 드립니다.

제공해주신 사전학습모델에 제가 가진 데이터를 학습하니 파인튜닝이 잘 진행 되는 것을 확인하였습니다.
다만, 파인튜닝 데이터에 sid 0을 라벨링하여 학습을 진행한 경우 sid 0은 정상적인 목소리로 발화를 생성하는데 반해
sid 1~69의 목소리는 이상한 기계음으로 변질되는 것을 발견했습니다.

만약 제가 a, b, c 화자의 발화데이터로 파인튜닝을 하고자 하면 이를 무조건 한번에 학습 시켜야하는 건가요?
a, b 화자 먼저 학습하고 그 이후에 얻게된 c 발화데이터를 학습하기 위해 a, b 데이터로 파인튜닝된 모델에 c 데이터를 학습하는 방법은 없을까요?
(현재 이런 방식으로 하면 a, b 데이터에 해당하는 sid는 제대로된 목소리를 생성하지 못하는 것을 확인 했습니다.)

넵 안녕하세요. sid를 0,1을 먼저 학습시키고, global_step이 어느 정도 돌아간 후에 학습을 중단하고, sid 2를 추가하여 훈련을 재개하겠다는 말씀이신가요?

학습 중 화자를 추가하면 global_step값이 아마 0으로 초기화되는 것으로 알고 있습니다. 저도 학습 도중 화자 한 명이 누락되어 추가하고 다시 학습하려고 했지만, 스텝수가 완전 초기화가 되버려 다시 재학습을 시켰던 경험이 있습니다. 하지만 이 경우에선 사전학습 모델이 사용되지 않았습니다.

답변 감사합니다!
sid 0,1,2가 사전학습 되어있는 모델에 sid 0,1를 파인튜닝한 후 추가로 sid 3을 학습하려고 합니다.
우선 이 경우에도 global_step 값이 초기화 되는지 확인 해봐야겠네요. global_step이 초기화되면 모델 학습이 아예 리셋 되는 건가요? global_step이 어떤 의미를 가지는지 궁금합니다.

global_step이 0이라고 표시되도 모델의 전체적인 가중치는 남아 있는 거 같습니다. 0으로 초기화되어도 보기엔 불편한데, 성능에는 딱히 큰 영향은 없어 보입니다.

Sign up or log in to comment