음악 소스 분리를 위한 확장형 GRU와 팽창 합성곱 결합 모델
본 논문은 Wavenet에서 영감을 얻은 스택형 팽창 합성곱(dilated convolution)을 기반으로, 시간적 정보를 더 멀리까지 전달할 수 있도록 설계된 ‘Dilated GRU’를 결합한 D2 블록을 제안한다. 제안 모델은 멜 스펙트로그램을 입력으로 고해상도 예측을 유지하면서도 효율적인 병렬 연산이 가능하며, MUSDB18 데이터셋에서 보컬 및 반주 분리 성능이 기존 최첨단 모델들을 능가한다.
저자: Jen-Yu Liu, Yi-Hsuan Yang
본 연구는 음악 소스 분리 작업에 있어 고해상도 예측을 유지하면서도 넓은 시간적 컨텍스트를 효과적으로 활용할 수 있는 새로운 신경망 구조를 제안한다. 기존의 음악 소스 분리 모델들은 주로 인코더‑디코더 형태의 U‑네트워크, 혹은 순환 신경망(RNN) 기반 구조를 사용해 왔으며, 이들 방식은 고해상도 정보를 보존하기 위해 다운샘플링‑업샘플링 과정을 거치거나, 순차 연산으로 인한 계산 비용이 크게 증가하는 단점을 가지고 있다. 이러한 문제점을 해결하고자, 저자는 Wavenet에서 도입된 스택형 팽창 합성곱(dilated convolution)의 장점을 차용한다. 팽창 합성곱은 커널 사이에 일정 간격을 두어 인접하지 않은 시간 프레임을 동시에 처리함으로써, 깊은 네트워크 없이도 수천 프레임에 이르는 넓은 수용 영역을 확보한다. 그러나 팽창 합성곱만으로는 고정된 수용 영역에 제한되며, 특히 3분 길이의 음악을 다룰 때 충분히 긴 컨텍스트를 포착하기 위해서는 매우 깊은 네트워크가 필요해 메모리와 연산량이 급증한다는 한계가 있다.
이를 보완하기 위해 저자는 ‘Dilated GRU’라는 변형된 게이트형 순환 유닛을 설계한다. 전통적인 GRU는 현재 시점 \(t\)의 은닉 상태를 직전 시점 \(t-1\)의 은닉 상태에 의존해 업데이트한다. Dilated GRU는 고정된 딜레이 \(k\)를 도입해 \(t-k\) 시점의 은닉 상태를 직접 참조하도록 변경한다. 수식적으로는 입력 \(x_t\)와 이전 은닉 상태 \(h_{t-k}\)를 이용해 업데이트 게이트 \(z_t\), 리셋 게이트 \(r_t\), 후보 은닉 상태 \(n_t\)를 계산하고, 최종 은닉 상태 \(h_t\)를 구한다. 이 구조는 시간 축을 \(k\)개의 독립적인 서브시퀀스로 분할해 병렬 연산이 가능하도록 만든다. 예를 들어 \(k=2\)인 경우 짝수와 홀수 인덱스를 동시에 처리할 수 있어 GPU 활용도가 크게 향상된다. 또한, 딜레이가 커질수록 더 먼 시점의 정보를 적은 연산 단계로 전달할 수 있어, 장기 의존성을 효율적으로 모델링한다.
제안된 모델은 Dilated GRU와 팽창 그룹 합성곱을 하나의 블록(D2 블록)으로 결합한다. 블록 내부 흐름은 다음과 같다. (1) 입력 텐서는 먼저 Dilated GRU에 전달돼 시간적 장기 의존성을 학습한다. (2) 동일 입력은 팽창 그룹 합성곱에 전달돼 채널 차원을 여러 그룹으로 나누어 연산량을 절감하면서도 지역적인 시간‑채널 패턴을 포착한다. (3) Dilated GRU와 팽창 합성곱의 출력, 그리고 원본 입력을 element‑wise 합산해 블록의 최종 출력을 만든다. 이때 스킵 연결을 사용해 고해상도 정보를 손실 없이 전달한다는 점이 인코더‑디코더 구조와 차별화된다. 그룹 합성곱은 각 그룹이 독립적으로 연산되지만, Dilated GRU가 전 채널에 걸친 완전 연결 연산을 수행함으로써 그룹 간 정보 교환을 담당한다. 따라서 모델은 연산 효율성을 유지하면서도 채널 간 상호작용을 충분히 학습한다.
실험은 MUSDB18 데이터셋을 사용해 수행된다. 데이터는 44.1 kHz 샘플링 레이트, 4096‑샘플 윈도우, 75 % 오버랩으로 STFT를 수행해 멜 스펙트로그램을 얻으며, 로그 스케일 \(\log(1+|X|)\)을 입력과 타깃으로 사용한다. 손실 함수는 평균 제곱 오차(MSE)이며, 최적화는 Adam(learning rate = 1e‑3)으로 500 epoch 동안 진행한다. 데이터 증강으로는 각 소스의 클립을 무작위 섞어 새로운 믹스를 생성하고, 매 epoch마다 섞는 순서를 바꿔 모델이 다양한 조합을 학습하도록 한다. 학습 시에는 5 초와 20 초 길이의 서브클립을 각각 사용해 두 가지 설정을 비교한다. 모델 구조는 표 1에 제시된 바와 같이, 초기 1‑D 합성곱(커널 3, 딜레이 1) → D2 블록 3개(각 블록마다 딜레이가 1, 2, 4, 8) → 최종 1‑D 합성곱으로 구성된다. 각 블록의 합성곱은 32 그룹, 각 그룹당 64 입력·64 출력 채널을 갖는다.
성능 평가는 SiSEC2018에서 사용된 SDR(신호‑왜곡 비율) 지표를 중심으로 진행된다. 제안 모델은 보컬 분리에서 SDR 6.85 dB(20 초 학습, dilation 1)와 6.81 dB(5 초 학습)로, 기존 최고 성능 모델인 TAK1(6.60 dB)보다 약 0.2 dB 이상 우수했다. 반주(전체 악기)에서도 13.40 dB의 높은 SDR을 기록했다. 특히 dilation 2 모델은 병렬 처리 효율이 높아 추론 시간에서 약 20 % 정도 빠른 것으로 보고되었다(average inference time 340 ms vs. 423 ms for dilation 1). Ablation 실험에서는 (1) 블록 내부 스킵 연결을 제거하거나, (2) Dilated GRU를 일반 합성곱으로 교체하거나, (3) 딜레이를 4 이상으로 늘렸을 때 SDR이 현저히 감소함을 확인했다. 이는 적절한 딜레이와 스킵 연결이 모델 성능에 핵심적인 역할을 함을 시사한다. 또한, 동일 모델을 각 소스별로 별도 학습한 경우(예: TAK1, UHL2)와 비교했을 때, 본 모델은 다중 소스를 동시에 학습하면서도 보컬·기타 ‘other’ 소스에서는 더 높은 성능을 보였지만, 드럼·베이스에서는 약간 뒤처지는 경향을 보였다. 이는 손실 함수에서 전체 에너지 비중이 큰 보컬·기타가 상대적으로 더 큰 가중치를 받게 되어 발생한 현상으로, 향후 소스별 가중치 조정이나 멀티태스크 학습 전략을 통해 개선 가능할 것으로 보인다.
결론적으로, 이 논문은 (1) 팽창 합성곱을 이용해 넓은 수용 영역을 효율적으로 확보하고, (2) Dilated GRU를 도입해 장기 의존성을 병렬적으로 처리함으로써 연산 병목을 해소하며, (3) 두 모듈을 스킵‑연결 블록으로 결합해 고해상도 정보를 손실 없이 전달하는 새로운 아키텍처를 제시한다. 실험 결과는 제안 모델이 기존 최첨단 방법들을 능가하는 성능을 보이며, 특히 보컬 분리에서 뛰어난 SDR 향상을 달성함을 입증한다. 향후 연구에서는 딜레이 스케줄링, 소스별 가중치 조정, 그리고 실시간 적용을 위한 경량화 방안 등을 탐색함으로써 음악 제작, 카라오케, 자동 믹싱 등 다양한 응용 분야에 활용될 수 있을 것이다.
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기