LACE는 양자화 계층별 독립 압축 경계를 정하는 동적 프레임레이트 오디오코덱이다

LACE: Layer-Wise Compression for Dynamic Frame Rate Codecs

arXiv2609.17509v1

Thanapat Trachu2026-09-15조회 4

무엇인가

신경 오디오 코덱은 음성을 이산 코드로 바꿔 음성 생성과 음성 언어모델을 다음 토큰 예측 문제로 정식화하는 핵심 부품이지만, 프레임 레이트가 높아 시퀀스가 길어진다. 긴 시퀀스는 트랜스포머 기반 모델의 계산 비용을 키우고, 텍스트 토큰과 음성 토큰의 길이 불일치로 언어모델링 성능을 떨어뜨린다. 동적 프레임 레이트 코덱은 압축 단계로 여러 프레임을 가변 길이 세그먼트로 병합하고 각 세그먼트를 하나의 코드와 duration으로 표현해 유효 프레임 레이트를 낮춘다. 예컨대 75개 프레임 레벨 임베딩을 25개 세그먼트로 압축하면 유효 프레임 레이트는 75Hz가 아니라 25Hz가 된다. 문제는 기존 방법들이 단일 코드북 코덱에서 동작하거나 다층 양자화 이전에 압축을 한 번만 적용한다는 점이다. 그 결과 모든 양자화 계층이 같은 분할 경계를 공유하게 되는데, RVQ에서는 첫 계층이 주 신호 구조를, 깊은 계층이 세부 정보를 담당하므로 계층별 residual 임베딩의 시간적 변화율이 다르다.

어떻게 동작하나

LACE는 이 제약을 깬다. 각 양자화 계층 l에서 해당 계층의 프레임 레벨 residual 임베딩 R^l에 압축 단계를 독립적으로 적용해 계층 고유의 분할 경계 B^l, 세그먼트 레벨 residual, duration d^l, 세그먼트 코드 Z^l을 얻는다. 다음 계층의 residual을 만들 때는 코드를 duration에 따라 프레임 레벨로 반복 확장한 뒤 r_i^(l+1) = r_i^l - q_{z_i^l}^l 로 갱신한다. 표준 RVQ가 프레임 레벨 residual을 양자화하는 것과 달리, 여기서는 세그먼트 레벨 residual을 양자화한 코드를 쓰되 우변에는 프레임 레벨 residual을 그대로 두어 압축 오차와 양자화 오차가 모두 다음 계층으로 전달되게 한다. LACE는 압축 모델 자체에 구애받지 않으므로 DP 기반(CodecSlime), 인접 프레임 코사인 유사도 임계값 기반(FlexiCodec), 밀도 피크 클러스터링 기반(VARSTok)을 모두 압축 단계로 끼워 넣을 수 있다.

무엇과 다른가

계층마다 경계가 다르면 TTS 입장에서는 계층별 duration을 예측해야 하고 업샘플 후 총 길이가 계층 간에 일치해야 하는 문제가 생긴다. 이를 해결하는 것이 union alignment로, 모든 계층 경계의 합집합 B^union을 만들어 각 계층의 세그먼트 코드를 재분할한다. 합집합 경계가 기존 세그먼트 내부에 떨어지면 그 세그먼트가 쪼개지고 같은 코드가 새 duration을 배정받는다. 결과적으로 모든 계층이 같은 경계와 duration을 공유하지만, |B^union|이 |B^l| 이상이므로 유효 프레임 레이트가 올라간다. 최악의 경우 계층마다 경계가 달라 |B^union|이 T에 근접해 압축 이득이 사라진다. 그래서 도입한 것이 boundary anchor다. 앵커 계층 l*를 정해 l ≤ l*인 계층만 새 경계를 도입하고, l > l*인 깊은 계층은 앞 계층이 만든 경계를 재사용하도록 제한한다. DP 압축에서는 세그먼트 양 끝점이 B^anchor에 속하지 않으면 비용을 +∞로 두는 제약 DP로 구현하며, l*는 품질과 유효 프레임 레이트 사이를 조절하는 하이퍼파라미터다.

어떻게 쓰나

저자들은 병합과 반복을 하나의 행렬 A^l 곱으로 표현해 이론적 근거를 제시한다. A^l은 대칭이고 멱등이므로 압축 오차 R^l - A^l R^l은 같은 경계를 쓰는 임베딩과 직교한다. 양자화된 임베딩은 세그먼트 내에서 상수이므로, 세그먼트 안에서 변하는 압축 오차는 다음 계층으로 그대로 넘어간다. 모든 계층이 경계를 공유하면 이 오차가 C개 계층을 전부 통과해 양자화로 제거할 수 없는 오차 바닥이 된다. 각 계층이 최소 두 프레임을 병합하고, 양자화 계층이 centroid 조건을 근사적으로 만족하며, 압축이 포착하는 residual 에너지 비율 α_l에 하한이 있다는 세 가정 아래, 기대 잔차 오차는 E[||R^(C+1)||²_F] ≤ [1 - α_{l*}(1 - ε_max^(C-l*+1))] ∏_{l=1}^{l*-1} λ_l E[||H||²_F]로 유계된다. C가 무한대로 가면 단일 압축(l*=1)은 (1-α_1)E[||H||²_F]라는 상수 바닥으로 수렴하고, boundary anchor는 이를 ∏λ_l만큼 낮추며, 완전 계층별 압축(l*=C)은 바운드를 0으로 끌어내린다. 다만 이 바운드는 코덱 양자화 오차만 다루며, union alignment가 토큰 시퀀스를 바꾸는 downstream TTS는 포함하지 않는다.

전제와 한계

TTS 학습에서는 union alignment 덕분에 모든 계층이 경계와 duration을 공유하므로 첫 양자화 계층의 duration만 예측해 나머지 계층에 그대로 적용한다. 모델은 delay-pattern 형식으로 세그먼트 코드를 예측하는 자기회귀 decoder-only 트랜스포머이고, 코드 예측 head 옆에 duration head를 두며 학습된 duration 임베딩을 코드 임베딩에 더한다. 코드는 cross-entropy, duration은 클래스 불균형 때문에 focal loss로 학습하고 손실 가중치는 각각 1과 3이다. 추론은 top-p 0.8, temperature 1.0의 nucleus sampling을 쓴다. 실험은 24kHz LibriTTS의 train-clean-100, train-clean-360, train-other-500으로 학습하고 test-clean으로 평가했으며, 백본은 ESPnet-Codec 레시피로 LibriTTS에 사전학습된 SoundStream, EnCodec, DAC를 쓴다. 각 모델을 80k iteration 동안 end-to-end로 파인튜닝하고 Adam 학습률 1e-4, 4대의 V100 32GB를 사용했다. 베이스라인 CodecSlime, FlexiCodec, VARSTok은 같은 백본과 파인튜닝 설정 위에서 압축 모델만 바꿔 재구현했다.

재구성 실험은 약 8.6kbps로 비트레이트를 맞춰 비교했는데, LACE는 계층마다 duration 시퀀스가 하나씩 추가되므로 같은 비트레이트를 단일 압축보다 낮은 유효 프레임 레이트에서 달성한다(22.5Hz 대 27Hz). 세 가지 백본과 세 가지 압축 모델의 모든 조합에서 LACE가 단일 압축 베이스라인을 능가했고, 파인튜닝 없이 사전학습 모델만 쓴 상태에서도 모든 비트레이트 구간에서 우세해 개선이 LACE 자체에서 온다는 것을 보였다. TTS는 DAC 백본에 DP 압축을 써서 압축 없음과 단일 DP 압축 두 베이스라인과 비교했고, 같은 목표 압축률 γ에서 LACE가 모든 품질 지표에서 앞섰다. 대신 union alignment로 유효 프레임 레이트가 올라가 RTF는 단일 압축보다 높지만, 압축 없는 베이스라인보다는 RTF가 낮다. WER 기준으로 γ=0.5에서 LACE 14% 대 단일 압축 61%, γ=0.7에서 14% 대 21%였다. γ를 올리면 합성 품질은 좋아지고 RTF도 올라간다. 반면 앵커 계층 l*를 2 이상으로 올리면 품질이 개선되지 않고 WER이 악화되는데, 저자들은 union alignment가 긴 세그먼트를 잘게 쪼개 반복 코드 ID를 만들고 이것이 TTS 모델을 같은 코드 반복 예측으로 편향시킨다고 가설을 세운다. repetition-aware sampling 도입을 향후 과제로 남겼다. MOS에서는 γ=0.5 단일 압축과 무압축이 비슷했지만 paired t-test로 p<0.01 수준에서 구분 가능했다. 25개 발화에 대해 35명 평가자가 참여했다.

분석 파트에서 저자들은 사전학습 코덱의 연속 프레임 residual 간 코사인 유사도 분포가 얕은 계층에서는 1 근처에 몰리고 깊은 계층으로 갈수록 0 쪽으로 이동함을 보였다. 깊은 계층의 residual이 더 빠르게 변한다는 뜻으로 계층별 압축을 정당화하며, 얕은 계층의 변화가 느려 분할 결정의 영향이 크기 때문에 앞 계층이 먼저 경계를 정하게 하는 boundary anchor의 근거가 된다. 사전학습 DAC에서 l*를 바꿔가며 양자화 오차를 측정한 결과 LACE가 일관되게 낮았고 계층이 늘수록 격차가 벌어졌으며, 단일 압축은 상수 바닥으로 수렴했다. γ가 1에 가까워지면 α_1이 1에 가까워져 격차가 좁아진다. 한계로는 이론 바운드가 코덱 양자화 오차만 다루고 downstream TTS는 다루지 않는다는 점, union alignment가 유효 프레임 레이트를 높인다는 점, l*를 2보다 크게 잡으면 WER이 악화된다는 점이 명시되어 있다. 실무에서 도입한다면 압축률 γ와 앵커 계층 l* 두 축이 품질·프레임 레이트·RTF를 동시에 좌우하므로, 자신의 백본과 압축 모델 조합에서 이 두 값을 함께 스윕해 확인하는 것이 좋다.