Acoustic-Fastspeech2(Custom), Vocoder-HiFiGAN 모델을 활용한 고성능 및 고속 음성합성
소량의 데이터로 개인화를 위한 Transfer Learning을 활용해 합리적인 성능 제공
실시간으로 한국어 데이터셋에 Fine-Tune과 생성이 가능한 API 제공
Fine-tune에 맞게 모델 코드 수정
Shell Script를 통한 간편한 preprocess, train, synthesis 수행
독자적인 docker image 제공
FastSpeech2와 HiFi-GAN pre-trained ckpt의 파일명을 일치시킨 후 모델 각 디렉토리에 보관합니다.
(FastSpeech2: 3만 step 학습 / HiFi-GAN - Jungil King 저자분의 공식 pretrained - UNIVERSAL_V1)
학습과 합성을 위해 모든 의존성 패키지가 포함된 도커 이미지를 불러와 실행합니다.
docker pull hws0120/e2e_speech_synthesis
run_FS2_preprocessing.sh 단계는 conda 명령어로 도커 내 가상환경에 접속하고 python 패키지 jamo를 설치합니다.
conda activate aligner
pip install jamo
run_FS2_train 또는 synthesis를 수행하기 위해 가상 환경을 종료합니다.
conda activate base
위 항목을 모두 충족하면 shell script를 실행하여 mfa를 추출합니다.
sh run_FS2_preprocessing.sh
# Enter the dataset name
[Dataset_Name](ex. HW)
성공적으로 textgrid를 생성하면 가상환경을 종료하고 학습 스크립트를 실행합니다.
sh run_FS2_train.sh
# Enter the dataset name
[Dataset_Name](ex. HW)
FastSpeech2 5000 step 학습이 완료되면, HiFi-GAN 스크립트를 실행합니다.
sh run_HiFi-GAN_train.sh
# Enter the dataset name
[Dataset_Name](ex. HW)
ckpt 폴더에 학습된 모델이 준비되면 합성을 위한 스크립트를 실행합니다.
sh run_FS2_synthesize.sh
# Enter the dataset name
[Dataset_Name](ex. HW)
학습 및 합성 과정에서 각각의 컨테이너를 구축하고 그림과 같은 과정을 수행합니다.
적절한 HiFi-GAN 체크포인트가 있을 경우, HiFi-GAN 학습은 생략하셔도 무방합니다.