일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- waveglow
- 음성 합성
- YOLO
- 딥러닝 보코더
- DCTTS
- korean tts
- 학습
- 트레이닝
- text-to-speech
- 딥러닝
- 노래합성
- Vocoder
- you only look once
- tacotron
- 딥러닝 음성 합성
- TTS
- deep voice
- 보코더
- 타코트론
- singing voice synthesis
- 윈도우
- 한국어 음성 합성
- melgan
- 한국어 tts
- Today
- Total
chldkato
윈도우에서 MelGAN 학습하기 본문
Pytorch
https://github.com/chldkato/MelGAN-pytorch
Tensorflow2
https://github.com/chldkato/MelGAN-Tensorflow2
1. 한국어 음성 데이터 KSS preprocess
https://www.kaggle.com/bryanpark/korean-single-speaker-speech-dataset
위의 KSS 데이터를 사용합니다. (약 4기가)
다른 데이터를 사용해도 무방합니다 (ex: ljspeech)
다운로드 한 후 아래와 같이 압축을 풀어주세요
MelGAN-pytorch
|- archive
|- kss
|- 1
|- 2
|- 3
|- 4
|- transcript.v.1.x.txt
학습에 사용할 데이터를 만들기 위해 preprocess를 실행합니다
python preprocess.py
실행하면 train, valid 폴더가 생성됩니다
train, valid에는 22050으로 다운샘플한 wav와 멜스펙트로그램에 대한 npy 파일이 만들어집니다
2. 학습
- pytorch
name을 정하고 train.py를 실행하면 학습이 진행됩니다
python train.py -n name
실행 후에는 ckpt 폴더에 학습한 모델이 저장됩니다
이전에 학습한 모델을 불러와서 다시 학습하려면 아래와 같이 실행하면 됩니다
python train.py -n name -p ./ckpt/name/ckpt-0850000step.pt
기본적으로 코드를 받으면 logs 폴더에 1200 epoch까지 학습한 모델이 저장되있습니다
본인이 학습한 모델에 맞게 숫자를 수정하면 됩니다
- Tensorflow2
python train.py
학습, 재학습 모두 train.py를 실행하면 됩니다.
재학습시 checkpoint 파일에 기록된 모델을 불러옵니다 (파일을 수정하지 않았으면 가장 최근에 학습한 모델을 불러옴)
3. Inference
- pytorch
불러올 모델을 지정하여 eval.py를 실행하면 됩니다
python inference.py -p ./ckpt/name/ckpt-0850000step.pt
미리 학습한 모델이 있기 때문에 test 폴더에 wav 음성 파일을 넣고
바로 위의 코드를 실행하면 생성된 음성과 스펙트로그램이 output 폴더에 저장됩니다
재학습과 마찬가지로 숫자는 본인에 맞게 수정하면 됩니다
- Tensorflow2
python inference.py
inference.py를 실행하면 pytorch와 마찬가지로 동작합니다.
아래와 같은 스펙트로그램을 얻을 수 있습니다
아래는 타코트론과 melgan을 함께 쓴 결과물입니다
사용한 그래픽카드: 1080ti 1개
'딥러닝' 카테고리의 다른 글
DCTTS 정리 (0) | 2020.10.28 |
---|---|
Tacotron2 정리 (0) | 2020.05.08 |
Tacotron 정리 (8) | 2020.04.03 |
MelGAN 정리 (4) | 2020.04.03 |
윈도우에서 Tacotron 한국어 TTS 학습하기 (98) | 2020.03.25 |