WaveGlow는 음성 합성을 위한 플로우 기반 생성 모델로, 2018년 10월 NVIDIA 연구진에 의해 발표되었다. 이 모델은 멜 스펙트로그램 표현을 일련의 가역 변환을 통해 원시 오디오 파형으로 변환하며, 이를 통해 고품질 음성 출력을 병렬로 생성할 수 있다. WaveNet과 같은 이전의 자기회귀 모델과 달리 WaveGlow는 샘플을 순차적으로 생성하지 않으므로 합성 시간을 크게 줄이면서도 유사한 수준의 음질을 유지한다.
이 모델은 NVIDIA의 오디오 및 딥러닝 팀 간 협업으로 설계되었으며, 주요 기여자로는 Xin Wang, Sercan Arik 등이 있다. WaveGlow의 아키텍처는 이미지 생성을 위한 플로우 기반 모델인 Glow의 요소와 WaveNet의 확장된 합성곱( dilated convolutions )을 결합하여, 멜 스펙트로그램과 오디오 쌍 데이터로 end-to-end 학습되는 단일 신경망을 구성한다. 원래 구현은 BSD-3-Clause 라이선스로 공개되어 학술 및 상업적 사용이 널리 가능하다.
아키텍처 및 학습
WaveGlow는 12개의 커플링 레이어로 구성되며, 각 레이어는 일련의 가역 1x1 합성곱과 아핀 변환을 포함한다. 네트워크는 멜 스펙트로그램과 무작위 가우시안 노이즈를 입력으로 받아, 이 노이즈를 레이어들을 통해 변환하여 파형을 생성한다. 모든 변환은 가역적으로 설계되어, 학습 중에는 출력 파형의 로그 우도를 직접 최대화할 수 있다.
학습에는 22.05 kHz로 다운샘플링된 무압축 오디오 클립 데이터셋이 사용되며, 스펙트로그램은 1024포인트 단시간 푸리에 변환(STFT)으로 계산된다. 손실 함수는 출력의 로그 우도와 스펙트럼 일관성 제약을 결합하여 아티팩트를 줄인다. 일반적으로 배치 크기는 24이며, 각 시퀀스는 16,000 샘플 길이로 설정된다. 모델은 약 8,790만 개의 매개변수를 가지며, 단일 NVIDIA V100 GPU에서 1.5초 길이의 오디오를 50밀리초 만에 합성할 수 있어 실시간보다 150배 빠른 속도를 제공한다.
이전 연구와의 관계
WaveGlow는 생성 AI 분야에서 플로우 기반 접근법을 음성 합성에 적용한 사례이다. 이전의 WaveNet과 Deep Voice 모델은 자기회귀 방식으로 파형을 샘플 단위로 생성하여 높은 음질을 달성했지만, 생성 속도가 매우 느렸다. WaveGlow는 이러한 병목을 제거하고 모든 샘플을 병렬로 생성함으로써 속도를 개선했다. 또한 Google DeepMind의 Parallel WaveNet과 유사한 목표를 공유하지만, 별도의 증류 과정 없이 단일 모델로 직접 학습된다는 차이가 있다.
응용 및 배포
WaveGlow는 NVIDIA의 대화형 AI 툴킷인 NeMo에 통합되어 Tacotron 기반 텍스트-음성 변환 시스템에서 멜 스펙트로그램을 오디오로 변환하는 데 사용되었다. 모델의 빠른 추론 속도는 가상 비서 및 오디오북 제작과 같은 실시간 응용 프로그램을 가능하게 했다. 2020년 기준으로 WaveGlow는 신경 보코더(neural vocoder)의 표준 기준 모델로 널리 인용되었으며, 이후 HiFi-GAN과 같은 후속 모델들과 비교 기준이 되었다.
영향 및 유산
WaveGlow의 출시는 플로우 기반 생성 모델이 오디오 합성에서도 효과적임을 입증하며 후속 연구에 영향을 미쳤다. Parallel WaveNet 및 SqueezeWave와 같은 병렬 보코더 연구의 기반을 마련했으며, 이후 MelGAN 및 WaveGAN과 같은 GAN 기반 모델들이 더 낮은 계산 비용으로 유사한 음질을 달성하면서 점차 대체되었다. 그럼에도 WaveGlow는 자기회귀 모델의 속도 한계를 극복한 중요한 이정표로 남아 있다. 2025년 기준으로 원래 저장소는 보관 상태로 전환되었지만, 그 설계 원리는 여전히 최신 음성 합성 연구에 영향을 미치고 있다.
기술적 세부 사항
WaveGlow는 입력 멜 스펙트로그램 S와 평균이 0인 가우시안 노이즈 z를 받아, 가역 함수 f를 통해 출력 파형 x = f(z, S)를 생성한다. 각 커플링 레이어는 입력을 두 부분으로 분할하고, 한 부분은 비가역 신경망(일반적으로 WaveNet의 확장 합성곱)을 통해 변환되며, 나머지 부분은 아핀 변환으로 업데이트된다. 최종 출력은 22.05 kHz로 샘플링된 파형이다.
학습 과정에서는 배치 크기 256, 1.6초 길이의 클립을 사용하며, 200 에포크 동안 학습률 5e-4에서 시작하여 40 에포크마다 절반으로 감소시킨다. 가중치 정규화와 레이어 정규화가 적용되며, 스펙트로그램은 50% 오버랩의 한(Hanning) 윈도우로 계산된다.
비판 및 개선점
WaveGlow는 속도와 음질 면에서 혁신적이었지만, 일부 비판도 존재했다. 비영어권 언어나 잡음이 많은 입력에서 아티팩트가 발생할 수 있었으며, GAN 기반 보코더에 비해 생성 품질이 다소 떨어진다는 평가도 있었다. 또한 가역성 제약으로 인해 모델 용량이 제한될 수 있다는 지적이 있었다. 이후 연구에서는 트랜스포머 기반 인코더를 도입하거나 다양한 샘플링 레이트를 지원하는 변형 모델이 제안되었다. 그럼에도 WaveGlow는 플로우 기반 음성 합성의 기초를 다졌으며, 현재 딥러닝 음성 합성 연구의 중요한 참조점으로 남아 있다.