일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- singing voice synthesis
- Vocoder
- text-to-speech
- 학습
- deep voice
- 윈도우
- YOLO
- waveglow
- 음성 합성
- 보코더
- 노래합성
- 한국어 tts
- 딥러닝 음성 합성
- DCTTS
- tacotron
- 딥러닝 보코더
- 딥러닝
- TTS
- you only look once
- 한국어 음성 합성
- 타코트론
- 트레이닝
- korean tts
- melgan
- Today
- Total
chldkato
윈도우에서 waveglow 학습하기 본문
nvidia apex가 필요한데 윈도우에서 apex 설치가 잘 안되고
싱글 gpu 사용중이라 apex를 안쓰고 실행했습니다.
1080ti 1개와 cuda10.0, cudnn7.5 사용 중입니다.
1. 코드 다운로드 및 학습 준비
https://github.com/NVIDIA/waveglow
github에 나와있는대로 진행합니다.
git clone https://github.com/NVIDIA/waveglow.git
cd waveglow
git submodule init
git submodule update
pip3 install -r requirements.txt
다음에 Apex를 설치하라고 되있는데 저는 설치가 안되서 Apex를 코드에서 배제하고 실행하겠습니다.
그리고 pytorch를 설치해줍니다. 아래는 cuda10.0 버전 기준입니다.
conda install pytorch torchvision cuda100 -c pytorch
2. 데이터 준비
1) LJ speech 데이터를 받은 후 압축을 풀어서 wave 파일들만 waveglow/data 경로에 넣어줍니다.
https://keithito.com/LJ-Speech-Dataset/
2) 학습, 테스트 데이터 셋을 만들어 줍니다.
저는 리눅스 기본 명령어를 cmd에서 가능하게 설치해놔서 그대로 했습니다.
윈도우에서는 ls 대신 dir로 하면 되는걸로 알고있습니다.
아래부터 모든 명령문은 waveglow 경로에서 실행하시면 됩니다.
ls data/*.wav | tail -n+10 > train_files.txt
ls data/*.wav | head -n10 > test_files.txt
3. 학습
train.py에서 33번째줄(from distributed...)과 34번째줄(from torch.utils...)을 주석처리합니다.
그리고 config.json을 열어서 fp16_run을 false로 수정합니다.
참고로 fp16_run이 true면 연산 속도가 빨라지는데 gpu가 10xx보다 높아야합니다. ex) 2080, v100
기본 batch_size가 12일텐데 싱글 1080ti로는 out of memory가 뜹니다.
저는 batch_size를 1로 수정했고 학습하면 gpu에서 4기가 정도의 메모리를 차지합니다.
다른 방법으로는 WN_config에서 n_layers 값을 줄여줘도 됩니다.
mkdir checkpoints
python train.py -c config.json
4. 테스트
python mel2samp.py -f test_files.txt -o . -c config.json
ls *.pt > mel_files.txt
python inference.py -f mel_files.txt -w checkpoints/waveglow_10000 -o . -s 0.6
waveglow_10000에서 숫자는 checkpoints 폴더 확인하시고 수정하면 됩니다.
완료되면 waveglow 경로에 음성 파일이 생성됩니다.
'딥러닝' 카테고리의 다른 글
윈도우에서 Tacotron 한국어 TTS 학습하기 (98) | 2020.03.25 |
---|---|
윈도우에서 DCTTS (Deep Convolutional TTS) 학습하기 (19) | 2019.10.30 |
딥러닝 음성 합성 (TTS) / 보코더 github, 논문 모음 (0) | 2019.09.15 |
윈도우에서 딥러닝 음성 합성(Multi-Speaker Tacotron) 학습하기 (12) | 2019.07.28 |
윈도우에서 YOLO 학습하기 (9) | 2019.07.12 |