티스토리 뷰
Paper/Language Model
[Paper 리뷰] AudioLM: A Language Modeling Approach to Audio Generation
feVeRin 2024. 3. 10. 12:31반응형
AudioLM: A Language Modeling Approach to Audio Generation
- 고품질 audio 생성을 위해 long-term consistency를 갖춘 language model을 활용할 수 있음
- AudioLM
- Input audio를 discrete token sequence에 mapping 하고 해당 representation space에서 audio 생성을 language modeling으로 cast 함
- Audio에 pre-train 된 masked language model의 discretized activation을 사용하여 neural audio codec의 long-term structure와 discrete code를 capture
- 논문 (TASLP 2023) : Paper Link
1. Introduction
- Audio signal에는 다양한 scale의 abstraction이 포함되어 있음
- For example,
- 음성은 local acoustic, phonetic level에서 분석되고 prosody, syntax, grammar, semantics 측면에서도 분석됨
- 음악은 non-stationary acoustic signal을 가지면서 long-term structure를 따름 - Autoregressive, Adversarial, Diffusion과 같은 modeling 방식은 기존 audio 합성에서 자주 사용되고 있음
- BUT, linguistic feature나 MIDI sequence 같은 strong condition이 없으면 합성 품질이 크게 저하됨 - 그에 비해 Language Model은 다양한 content type에 대한 high-level long-term structure를 쉽게 modeling 할 수 있고, 그에 따라 높은 합성 품질을 보이고 있음
- 특히 discretized speech unit으로 train 된 Transformer는 text annotation에 의존하지 않고 coherent speech를 합성할 수 있음
- BUT, 대부분의 Language Model을 통한 audio 합성은 single speaker로 제한되어 있음
- For example,
-> 그래서 long-term coherent structure를 효과적으로 capture 하고, 다양하고 고품질의 audio 합성을 수행하는 Language Model인 AudioLM을 제안
- AudioLM
- Adversarial neural audio compression, Self-supervised representation learning, Language modeling을 결합
- Raw audio waveform에서 시작하여 self-supervised masked language modeling objective로 coarse semantic token을 구성
- 해당 token에 대한 autoregressive modeling을 통해 local dependency와 global long-term structure를 capture
- Token reconstruction을 향상하기 위해 SoundStream neural codec에서 생성된 fine-level acoustic token을 도입
- Semantic token과 acoustic token을 모두 사용해 language model의 audio 생성 품질과 long-term consistency를 향상
- Adversarial neural audio compression, Self-supervised representation learning, Language modeling을 결합
< Overall of AudioLM >
- Semantic, acoustic token을 hierarchical 한 방식으로 결합하는 audio language model
- Pre-trained w2v-BERT에서 추출한 semantic token과 SoundStream의 acoustic token을 활용하여 상호 보완
- Textual annotation 없이 phonetics, syntax, semantics 측면에서 coherent 한 음성을 생성하고 음악 생성으로도 확장
- AudioLM에서 생성된 음성을 detect 하는 classifier를 학습하여 speech continuation의 위험을 완화
2. Model
- AudioLM은 Adversarial neural audio compression, Self-supervised representation learning, Language modeling을 결합하여 구성됨
- Components
- AudioLM은
- 아래 3가지 component에 의해 처리되는 single channel audio sequence $x \in \mathbb{R}^{T}$를 고려
- Tokenizer Model
- $T' \ll T$에서 $x$를 finite vocabulary의 discrete token sequence $h = \textrm{enc}(x), \, h=(h_{1},...,h_{T'})$로 mapping - Decoder-only Transformer Language Model
- Likelihood $\prod_{t=1}^{T'}p(h_{t}|h_{<t})$를 최대화하도록 학습되고, discrete token $y$에서 동작
- 추론 시에는 token sequence $\hat{h}$를 autoregressive 하게 예측 - Detokenizer Model
- 예측된 token sequence를 audio로 mapping 하여 $\hat{x}=\textrm{dec}(\hat{h})$ waveform을 생성
- Tokenizer Model
- 이때 다음의 측면을 고려해야 함
- Token $T'$의 수는 일반적으로 $T$보다 2~3배 더 적음
- Standard self-attention의 complexity는 sequence length에 따라 quadratically 증가하므로 language model의 temporal context size를 증가시킬 수 있음 - Tokenizer와 Detokenizer는 pre-train 되고 language model 이전에 frozen 됨
- 이를 통해 tokenizer와 language model을 분리하고 training setup을 단순화함
- Token $T'$의 수는 일반적으로 $T$보다 2~3배 더 적음
- 아래 3가지 component에 의해 처리되는 single channel audio sequence $x \in \mathbb{R}^{T}$를 고려
- Trade-offs of Discrete Audio Representations
- Tokenizer, Detokenizer를 통해 discrete audio representation를 사용할 수 있음
- 이때 audio representation을 고품질로 reconstruct 하기 위해 bitrate와 그에 따른 token sequence length의 lower bound를 설정하면서, 한편으로 long-term dependency를 capture 하는 compact representation을 얻을 수 있어야 함
- 이러한 trade-off를 만족하기 위해 acoustic, semantic token을 조합하여 활용
- Semantic token은 long-term coherence를 반영하고, acoustic token은 고품질 합성을 가능하게 함
- Acoustic token을 계산하기 위해 neural codec인 SoundStream을 사용
- SoundStream은 input waveform을 embedding sequence에 mapping 하기 위해 convolution encoder를 활용
- 이때 embedding의 sampling rate는 original audio의 sampling rate보다 훨씬 낮음
- 따라서 16kHz의 input waveform에 대해 50Hz (20ms 마다 하나씩)의 embedding을 생성하도록 구성 - 각 embedding은 $N$ symbol의 vocabulary를 사용하는 $Q$ vector quantizer의 hierarchy로 구성된 Residual Vector Quantizer (RVQ)를 사용하여 discretize 됨
- For example, $N=1024$일 때 $Q=4$의 bitrate는 2000bps ($50\cdot 4\cdot \log_{2}1024$)
- 따라서, input audio sample $x$는 $T_{A}=T/320$인 codebook symbol의 matrix $Y\in \{1,...,N\}^{T_{A}\times Q}$로 표현됨 - SoundStream의 convolution decoder는 해당 discrete representation을 real-valued embedding에 mapping 한 다음, waveform을 reconstruct 함
- Codec은 reconstruction과 adversarial loss를 결합하여 end-to-end 방식으로 학습됨
- SoundStream은 input waveform을 embedding sequence에 mapping 하기 위해 convolution encoder를 활용
- Self-supervised audio representation learning을 위해 w2v-BERT를 사용하여 semantic token을 계산
- w2v-BERT는 대규모의 speech corpora를 학습할 때 input audio waveform을 rich linguistic feature set에 mapping 하는 방법을 학습함
- 이는 Masked Language Modeling (MLM) loss와 contrastive loss, 두 가지의 self-supervised objective를 사용하여 Conformer-based model을 통해 수행됨 - 해당 모델은 fine-tuning 하여 사용할 수도 있지만, AudioLM은 pre-trained w2v-BERT의 representation을 활용하여 long-term temporal structure를 modeling 함
- 이를 위해 w2v-BERT의 MLM module에서 intermediate layer를 선택하고 해당 level에서 embedding을 계산
- 추가적으로 해당 embedding에 대한 $K$개 cluster를 가지는 $k$-means clustering을 수행하고 centroid index를 semantic token으로 사용
- 이때 clustering 각 dimension이 zero mena, unit variance가 되도록 w2v-BERT embedding을 normalizing 하면 phonetic discriminability가 크게 향상됨
- w2v-BERT는 temporal dimension을 따라 downsampling을 수행하므로 real-valued 1024-dimensional feature vector가 25kHz (40ms 마다 하나씩) sampling rate로 계산됨
- Input audio sample $x$는 $T_{S} = T/640$인 semantic token sequence $z = (z_{1},...,z_{T_{S}})\in \{1,...,K\}^{T_{S}}$로 변환됨
- For example, $T=16000, K=1024$이면 bitrate는 250bps
- w2v-BERT는 대규모의 speech corpora를 학습할 때 input audio waveform을 rich linguistic feature set에 mapping 하는 방법을 학습함
- AudioLM의 hybrid tokenization scheme의 효과를 알아보기 위해
- SoundStream에서 얻은 acoustic token과 w2v-BERT에서 얻은 semantic token의 다양한 property를 audio 품질과 phonetic discriminability 측면에서 비교
- 이를 위해 ViSQOL score를 활용하여 reference와 reconstruction 간의 similarity를 계산하고, ABX error rate를 통해 phonetic discriminability를 측정 - 결과적으로 아래 표와 같이
- SoundStream으로 얻어진 acoustic token은 3.3 ViSQOL, 3.9 ViSQOL의 우수한 reconstruction 품질을 보이는 반면 phonetic discriminability는 상당히 낮은 것으로 나타남
- 반대로 w2v-BERT로 얻어진 semantic token은 phonetic discriminability는 우수하지만 reconstruction 품질이 낮음
- 즉, tokenizer를 하나만 사용하면 long-term consistency와 높은 합성 품질 모두를 만족하기 어려움
- 실제로 acoustic token에 대해 $Y$를 row-major order로 length $T_{A}\cdot Q$ length의 token sequence $y+o$로 flatten 하고, 이에 대해 decoder-only Transformer를 학습해 보면,
- $y=(y_{1}^{1},y_{1}^{2},...,y_{1}^{Q},y_{2}^{1},...,y_{T_{A}}^{Q})$
- $y_{t}^{q}$ : $t$-th time step 동안 $q$-th quantizer에 의해 생성된 token
- $o=(o_{1},o_{2},...,o_{T_{A}\cdot Q})$ : $o_{i}=(i-\,1\mod Q)\cdot N$인 residual vector quantizer의 $Q$ layer에 대한 unique token index를 생성하는 offset vector - 결과적으로 recording token과 speaker identity는 preserve 되지만 inconsistent 한 linguistic content를 가지는 음성이 생성됨
- 실제로 acoustic token에 대해 $Y$를 row-major order로 length $T_{A}\cdot Q$ length의 token sequence $y+o$로 flatten 하고, 이에 대해 decoder-only Transformer를 학습해 보면,
- 따라서 AudioLM은 semantic, acoustic token을 모두 사용하는 hybrid tokenization scheme을 활용하므로 성능의 저하 없이 두 tokenizer의 장점을 모두 활용할 수 있음
- SoundStream에서 얻은 acoustic token과 w2v-BERT에서 얻은 semantic token의 다양한 property를 audio 품질과 phonetic discriminability 측면에서 비교
- Hierarchical Modeling of Semantic and Acoustic Tokens
- 동일한 framework 내에서 semantic token과 acoustic token을 모두 modeling 함으로써 long-term consistency를 capture 하면서 고품질의 합성이 가능함
- 이를 위해 AudioLM framework는, 전체 sequence에 대한 semantic token을 modeling 한 다음, 이를 conditioning 하여 acoustic token을 예측하는 hierarchical approach를 채택
- Hierarchical approach에는 2가지 장점이 있음
- Hierarchical modeling은 semantic token이 past semantic token이 주어진 past acoustic token과 conditionally independent 하다는 가정을 반영함
- 즉, $p(z_{t}|z_{<t},y_{<t}) \approx p(z_{t}|z_{<t})$ - Semantic token과 acoustic token의 interleaved sequence를 modeling 하면 stage 당 token sequence가 줄어들어 더 계산 효율적인 학습/추론이 가능함
- Hierarchical modeling은 semantic token이 past semantic token이 주어진 past acoustic token과 conditionally independent 하다는 가정을 반영함
- 결과적으로 AudioLM은 아래 그림과 같이 3가지의 subsequent stage로 구성되고, 각 stage에서 해당 stage의 모든 previous ground-truth token을 고려하여 next token을 예측하는 decoder-only Transformer를 사용
- Semantic Modeling
- First stage에서는 long-term temporal structure를 capture 하기 위해 semantic token의 autoregressive 예측인 $p(z_{t}|z_{<t})$를 modeling 함
- Coarse Acoustic Modeling
- Second stage에서는 semantic token을 condition으로 하는 coarse $Q'$ SoundStream quantizer를 통해 acoustic token을 예측
- 이때 SoundStream의 residual quantization으로 인해 acoustic token은 hierarchical strcutre를 가짐
- Coarse quantizer의 token은 speaker ID 및 recording condition과 같은 acoustic property를 recover 하면서 다음 stage에서 modeling 되는 fine quantizer token의 fine acoustic detail만 남김 - Hierarchical structure를 처리하기 위해 row-major order로 flattening 하는 방식을 활용
- 즉, $q\leq Q'$에 대해 $p(y_{t}^{q}|z,y_{<t}^{\leq Q'},y_{t}^{<q})$를 모델링함
- 이때 해당 token sequence는 $\left( z_{1},z_{2},...,z_{T_{S}}, y_{1}^{1}, y_{1}^{2},...,y_{1}^{Q'},y_{2}^{1},y_{2}^{2},...,y_{2}^{Q'},...,y_{T_{A}}^{Q'} \right)$
- $y_{1}^{1}$ : training 중 예측된 첫 번째 token
- Second stage에서는 semantic token을 condition으로 하는 coarse $Q'$ SoundStream quantizer를 통해 acoustic token을 예측
- Fine Acoustic Modeling
- Third stage에서는 $q>Q'$에 대해 conditional probability 분포 $p(y_{t}^{q}|y^{\leq Q'}, y_{<t}^{>Q'}, y_{t}^{<q})$를 modeling 하기 위해 $Q'$의 coarse token을 fine quantizer에 대한 acoustic token으로 사용
- 즉, $y_{t}^{q}$는 coarse $Q'$ quantizer에 해당하는 모든 token과 previous time step의 fine $Q-Q'$ quantizer, current time step에서 decoding 된 token을 기반으로 예측을 수행함 - 이를 통해 second stage 이후에 남아있는 lossy compression artifact를 제거하여 audio 품질을 향상
- Third stage에서는 $q>Q'$에 대해 conditional probability 분포 $p(y_{t}^{q}|y^{\leq Q'}, y_{<t}^{>Q'}, y_{t}^{<q})$를 modeling 하기 위해 $Q'$의 coarse token을 fine quantizer에 대한 acoustic token으로 사용
- Semantic Modeling
- Second/Third stage는 single stage로 합쳐질 수 있지만, 모델이 한 번에 처리하는 sequence length를 제한하기 위해 2-stage로 나누어서 수행
- Coarse acoustic token을 condition으로 할 때,
- Fine acoustic token이 semantic token과 conditionally independent 하다는 점을 고려하면, third stage에서는 semantic token을 ignore 할 수 있어 전체 sequence length가 감소함 - Fine acoustic detail이 coarse acoustic token에 의해 locally determine 된다는 가정 하에,
- 3초의 non-overlapping audio chunk batch에 대해 third stage를 수행하여 target audio sequence length와 independent 하게 scale 할 수 있음
- Coarse acoustic token을 condition으로 할 때,
- Inference
- Training이 마무리되면 AudioLM은 conditioning signal에 따라 다양한 형태의 audio 생성을 얻을 수 있음
- Unconditional Generation
- 모든 semantic token $\hat{z}$를 unconditionally sampling 하고 이를 acoustic modeling의 conditioning으로 활용함
- 이를 통해 모델은 다양한 speaker identity, prosody, acoustic condition을 기반으로 syntactically, semantically consistent linguistic content를 생성할 수 있음
- Acoustic Generation
- Test sequence $x$에서 추출된 ground-truth semantic token $z$를 acoustic token을 생성하기 위한 conditioning으로 활용
- 이를 통해 모델은 speaker identity는 다르지만 spoken sentence의 content는 동일하게 유지하는 음성을 생성
- 즉, semantic token은 semantic content를 capture 할 수 있음
- Generating Continuations
- 짧은 prompt $x$에서 generating continuation을 수행할 수도 있음
- 먼저 prompt를 해당 semantic token $z_{\leq t_{s}}$와 coarse token $y^{\leq Q'}_{\leq t_{a}}$에 mapping 하면
- 이후 $z_{\leq t_{s}}$ conditioning을 기반으로 autoregressive semantic token $\hat{z}_{>t_{s}}$를 생성
- 그리고 전체 semantic token sequence $\left( z_{\leq t_{s}}, \hat{z}_{>t_{s}} \right)$를 prompt의 coarse acoustic token $y^{\leq Q'}_{\leq t_{a}}$과 함께 coarse acoustic model로 공급한 다음, 해당 acoustic token의 continuation을 sampling 함
- 다음으로 fine acoustic model을 사용하여 coarse acoustic token을 처리하고
- 최종적으로 prompt와 sampling 된 acoustic token을 모두 SoundStream decoder에 제공하여 waveform $\hat{x}$를 reconstruct 함
- 이를 통해 unseen speaker에 대한 3초의 음성만으로도 AudioLM은 original voice와 거의 구별할 수 없는 continuation을 생성함
- Unconditional Generation
3. Experiments
- Settings
- Dataset : Libri-Light
- Comparisons : BERT, HuBERT, CPC-BERT, GSLM
- Model Selection
- Semantic Tokens
- w2v-BERT-XL을 활용하고 quantize 할 intermediate layer와 $k$-mean cluster의 cluster 수 $K$를 선택해야 함
- w2v-BERT의 MLM module의 다양한 layer에서 계산된 sBLIMP를 활용하여 이를 결정
- 결과적으로 7번째 layer와 $K=1024$의 cluster를 사용
- Acoustic Tokens
- SoundStream을 기반으로 12개 residual vector quantizer layer, 1024 codebook size를 사용
- 12개의 quantizer layer를 coarse, fine level로 나누기 위해, $Q'=4$로 설정하여 4개의 coarse layer와 8개의 fine layer로 quantization을 수행 - 4개의 convolution block은 $(2,4,5,8)$의 stride를 가짐
- SoundStream을 기반으로 12개 residual vector quantizer layer, 1024 codebook size를 사용
- Model
- 12개 layer, 16개 attention head, 1024 embedding dimension, 4096 feed-forward layer dimension, 0.1 dropout, T5-style relative positional embedding을 가지는 decoder-only Transformer를 사용함
- 각 stage별 model parameter size는 $0.3B$
- Results
- Information Represented by the Semantic Token
- AudioLM은 WER, CER 측면에서 GSLM과 유사한 성능을 보임
- GSLM은 clean 한 환경에서 single voice만을 합성한다는 점을 고려하면 semantic token 반영 능력은 AudioLM이 더 뛰어나다고 볼 수 있음 - AudioLM의 acoustic generation의 output은 original transcript를 따르기 때문에 semantic content가 semantic token에 의해 fully capture 될 수 있음
- SoundStream token을 sampling 하고 이를 audio로 decoding 하면 우수한 transcription 품질을 유지할 수 있음
- AudioLM은 WER, CER 측면에서 GSLM과 유사한 성능을 보임
- Information Represented by the Acoustic Token
- 동일한 semantic token에 대해 다양한 speaker의 acoustic generation 능력을 확인해 보면
- Speaker classificaiton accuracy는 다소 낮게 측정되는데, 이는 semantic token은 speaker identity에 대한 information을 거의 전달하지 않는다는 것을 의미함
- 반면 sampled recording condition에서 나타나는 다양성은 주로 acoustic token을 통해 represent 됨
- Probing the Linguistic Knowledge of AudioLM
- AudioLM이 semantic token modeling을 통해 학습한 lexical, syntactic knowledge를 zero-shot 측면에서 평가
- 결과적으로 AudioLM은 가장 높은 sWUGGY, sBLIMP를 달성함
- 즉, AudioLM은 text supervision 없이도 linguistic content를 효과적으로 modeling 할 수 있음
- Generating Coherent Continuations
- Speaker identity 측면에서 acoustic consistency를 측정해 보면
- Speaker classification accuracy는 92.6%로, AudioLM은 speaker identity를 strongly preserve 할 수 있음
- Subjective Evaluation
- Sample이 original record인지, AudioLM으로 생성된 record인지에 대한 주관적인 평가를 수행해 보면
- 정확하게 분류한 비율이 51.2%로 무작위 분류와 큰 차이를 보이지 않음
- 즉, AudioLM과 실제 sample은 human evaluation 측면에서는 거의 구분하기 어려움
- Detecting Synthesis Speech
- SoundStream을 통해 compress 된 audio와 original sample을 neural network를 통해 분류해 보면
- 앞선 주관적 분류와는 달리 98.6%의 classification accuracy를 달성함
- 즉, AudioLM은 human evaluation 측면에서는 구별하기 어렵지만 간단한 audio classifier로는 쉽게 구별할 수 있음
- Piano Continuation
- 음성 외에도 피아노 음악으로 AudioLM을 확장해 보면
- AudioLM으로 합성된 음악이 83.3% 더 선호되는 것으로 나타남
반응형
'Paper > Language Model' 카테고리의 다른 글
[Paper 리뷰] Efficient Neural Music Generation (0) | 2024.05.11 |
---|---|
[Paper 리뷰] Textually Pretrained Speech Language Models (0) | 2024.03.31 |
[Paper 리뷰] MusicLM: Generating Music From Text (0) | 2024.03.09 |
[Paper 리뷰] Pengi: An Audio Language Model for Audio Tasks (0) | 2024.03.07 |
[Paper 리뷰] AudioGen: Textually Guided Audio Generation (0) | 2024.03.05 |
댓글