티스토리 뷰
Paper/Representation
[Paper 리뷰] Multi-Resolution HuBERT: Multi-Resolution Speech Self-Supervised Learning with Masked Unit Prediction
feVeRin 2025. 5. 17. 08:20반응형
Multi-Resolution HuBERT: Multi-Resolution Speech Self-Supervised Learning with Masked Unit Prediction
- 기존의 self-supervised learning model은 20ms의 fixed resolution으로 speech signal을 처리하므로 서로 다른 resolution의 informational content를 overlook 함
- Multi-Resolution HuBERT
- Speech self-supervised learning에 multi-resolution information을 incorporate
- HuBERT-style masked prediction objective를 개선한 hierarchical Transformer architecture를 활용
- 논문 (ICLR 2024) : Paper Link
1. Introduction
- Real-world scenario에서 speech signal의 sampling rate는 8kHz에서 48kHz까지 다양하게 나타나고, 일반적으로 speech signal은 $[10,30]$ms range의 interval 내에서 short-term stationarity를 exhibit 함
- 따라서 기존 spectral feature extraction method는 대부분 $[20,40]$ms range의 window에서 STFT를 적용함
- BUT, 해당 spectral feature는 large transcribed audio data가 필요함 - 반면 Wav2Vec 2.0, HuBERT, WavLM과 같은 Self-Supervised Learning (SSL)은 unlabeled speech data를 사용하여 contextualized speech representation을 얻을 수 있음
- 해당 SSL representation은 우수한 speech contextualizing capability , low-resource task에 대한 generalizability를 가짐
- BUT, 여전히 pre-training의 fundamental unit으로 20ms의 speech frame을 추출하므로 다양한 downstream task에서 universally optimal 하지 못함
- 이를 해결하기 위해 separate SSL model을 combine 할 수 있지만, pre-training에 대한 burden이 존재함
- 따라서 기존 spectral feature extraction method는 대부분 $[20,40]$ms range의 window에서 STFT를 적용함
-> 그래서 pre-training stage에서 multiple resolution information을 integrate 한 speech SSL model인 Multi-Resolution HuBERT를 제안
- Multi-Resolution HuBERT (MR-HuBERT)
- Single model에서 multiple resolution information을 encode 하기 위해 hierarchical framework를 구성
- HuBERT-style clustering unit을 integrate 한 multi-resolution masked unit prediction objective를 통해 model을 pre-training
< Overall of Multi-Resolution HuBERT >
- Hierarchical framework를 기반으로 multi-resolution masked unit prediction을 적용한 single SSL model
- 결과적으로 기존보다 우수한 성능을 달성
2. Method
- HuBERT
- $L_{s}$가 speech signal length일 때, single-channel speech signal sequence를 $\mathbf{S}\in\mathbb{R}^{1\times L_{s}}$라고 하자
- 그러면 주어진 iteration $q$에 대해 speech signal $\mathbf{S}$는 $q-1$ iteration의 hidden state를 기반으로 training 된 pre-trained $k$-means clustering model $g^{q}(\cdot)$을 통해 initially quantize 됨
- 여기서 HuBERT는 convolution feature extractor $f_{0}^{q}(\cdot)$을 사용하여 speech signal $\mathbf{S}$를 20ms frame size로 hidden representation으로 변환함
- 특히 Wav2Vec 2.0의 masking strategy를 따라 $\alpha \%$의 frame이 starting index로 randomly choice 되고 이후 $l$ subsequent frame을 mask 함
- Masked index set은 $\mathbb{M}$으로 denote 됨 - Transformer encoder $f_{1}^{q}(\cdot)$은 cross-entropy loss를 사용하여 masked region의 quantized cluster를 predict 하고, 이때 interation $q$에서의 loss function은:
(Eq. 1) $ \mathcal{L}_{m}^{q}\left(\theta;\mathbf{S},\mathbb{M},g^{q}\right)=\sum_{t\in\mathbb{M}} \log p_{\theta}\left(g^{q}(\mathbf{S})|\tilde{H}_{0}^{q},t\right)$
- $\theta$ : model parameter, $\tilde{H}_{0}^{q}$ : convolutional feature extractor의 masked speech frame, $t$ : time step
- 특히 Wav2Vec 2.0의 masking strategy를 따라 $\alpha \%$의 frame이 starting index로 randomly choice 되고 이후 $l$ subsequent frame을 mask 함
- 한편으로 unmasked loss $\mathcal{L}_{u}$도 고려할 수 있지만, HuBERT pre-training에서 성능 향상으로 이어지지는 않음
- Architecture
- MR-HuBERT는 HuBERT의 iterative strategy를 retaining 하면서 multiple resolution에서 hidden representation을 explicitly encode 하기 위해 hierarchical Transformer를 도입함
- 먼저 $L_{R_{1}}$을 frame length, $D$를 convolution channel size에 해당하는 feature dimension이라고 하자
- Speech signal $\mathbf{S}$가 주어지면, convolutional feature extractor $f_{0}^{q}$는 high resolution $R_{1}$에서 frame-wise feature $\mathbf{H}_{0}\in\mathbb{R}^{L_{R_{1}}\times D}$를 생성함
- 이후 masking function $m(\cdot,\mathbb{M})$이 $\mathbf{H}_{0}$에 적용되어 masked feature sequence $\tilde{\mathbf{H}}_{0}\in\mathbb{R}^{L_{R_{1}}\times D}$를 생성함
- 해당 function은 $\mathbb{M}$의 index에 해당하는 feature frame을 zero-vector로 replace 함
- 다음으로 masked feature $\tilde{\mathbf{H}}_{0}$는 High Resolution Transformer Encoder인 HuBERT-style Transformer encoder $f_{1}^{q}$를 통해 $\tilde{\mathbf{H}}_{1}^{q}$를 생성함
- Encoder는 pre-convolution module과 Transformer layer stack으로 구성됨
- 여기서 pre-convolutional module은 1D convolution layer, layer normalization, GELU activation을 포함함
- $R_{2}$를 lower resolution, $L_{R_{2}}$를 downsampled hidden representation의 length라고 하자
- High resolution encoding 이후 output $\tilde{\mathbf{H}}_{1}^{q}\in\mathbb{R}^{L_{R_{1}}\times D}$는 donwsampling module $\text{DOWN}(\cdot)$을 통해 downsampled representation $\tilde{\mathbf{H}}_{2}^{q}\in \mathbb{R}^{L_{R_{2}} \times D}$를 생성함
- Downsampled $\tilde{\mathbf{H}}_{2}^{q}$는 Low Resolution Transformer Encoder $f_{2}^{q}$의 input으로 사용됨
- 이때 $f_{q}^{1}$과 달리 $f_{q}^{2}$는 pre-convolutional module을 포함하지 않음 - $f_{2}^{q}$ output $\tilde{\mathbf{H}}_{3}^{q}$는 quantization method $g_{R_{2}}^{q}(\cdot)$에 기반하여 low-resolution unit $g_{R_{2}}^{q}(\mathbf{S})\in \mathbb{N}^{+L_{R_{2}}}$를 predict 하는 데 사용됨
- 결과적으로 $\tilde{\mathbf{H}}_{3}^{q}$를 생성하는 whole process는:
(Eq. 2) $\tilde{\mathbf{H}}_{3}^{q}=f_{2}^{q}\circ\text{DOWN}\circ f_{1}^{q}\left(m\left( f_{0}^{q}(\mathbf{S}),\mathbb{M}\right)\right)$
- 최종적으로 upsampling module $\text{UP}(\cdot)$은 $\tilde{\mathbf{H}}_{3}^{q}$를 high resolution $R_{1}$으로 expand 하여 $\tilde{\mathbf{H}}_{4}^{q}\in\mathbb{R}^{L_{R_{1}}\times D}$을 생성함
- 해당 output은 $\tilde{\mathbf{H}}_{1}^{q}$와 summation 되어 다른 High Resolution Transformer Encoder $f_{3}^{q}(\cdot)$에 전달됨
- 최종적으로 quantization method $g_{R_{1}}^{q}(\cdot)$을 통해 얻어진 final output $\tilde{\mathbf{H}}_{5}^{q}\in\mathbb{R}^{L_{R_{1}} \times D}$은 high-resolution unit을 predict 하는 데 사용됨
- 즉, $\tilde{\mathbf{H}}_{3}^{q}$이 주어졌을 때 $\tilde{\mathbf{H}}_{5}^{q}$를 생성하는 process는:
(Eq. 3) $\tilde{\mathbf{H}}_{5}^{q}=f_{3}^{q}\left(\text{UP}(\tilde{\mathbf{H}}_{3}^{q})+f_{1}^{q}\left(m (f_{0}^{q}(\mathbf{S}),\mathbb{M})\right) \right)$
- 먼저 $L_{R_{1}}$을 frame length, $D$를 convolution channel size에 해당하는 feature dimension이라고 하자
- Sampling Modules
- MR-HuBERT는 upsampling module $\text{UP}(\cdot)$과 downsampling module $\text{DOWN}(\cdot)$을 활용하고, 두 sampling module은 동일한 design을 share 함
- Downsampling module의 경우, $\tilde{\mathbf{H}}^{q}_{1}$을 De-Convolutional Upsampler $\text{DeConv}(\cdot)$과 Repeat-Upsampler $\text{Repeat}(\cdot)$을 통해 각각 higher resolution $R_{1},R'_{1}$으로 rescale 함
- Output $\tilde{\mathbf{H}}_{1}^{q\text{-}up}\in\mathbb{R}^{(L_{R_{1}}\cdot R'_{1})\times D}$는 각각 Convolutional Downsampler $\text{Conv}(\cdot)$과 Skip-Downsampler $\text{Skip}(\cdot)$으로 전달됨
- 결과적으로 얻어지는 downsampling module의 final output $\tilde{\mathbf{H}}_{2}^{q}$는:
(Eq. 4) $\tilde{\mathbf{H}}_{2}^{q}=\phi\cdot\left[ \text{Skip}\left( \text{Repeat}(\tilde{\mathbf{H}}_{1}^{q})\right)+ \phi \cdot \left( \text{Conv}(\tilde{\mathbf{H}}_{1}^{q\text{-}up})+\text{Skip}(\tilde{\mathbf{H}}_{1}^{q\text{-}up})\right)\right]$
- Objectives
- MR-HuBERT는 masked unit prediction을 목표로 함
- 이를 위해 high resolution unit extraction에서 시작하여 Low Resolution Transformer Encoder $f_{2}^{q}$의 low resolution sequence와 match 되도록 low resolution unit을 subsample 함
- 이때 high resolution unit extraction은 $q-1$ iteration에서 hidden representation에 $k$-means를 적용하는 HuBERT와 유사함 - $g_{R_{1}}^{q}(\cdot)$을 $k$-means model, $d$를 subsampling function, $g_{R_{2}}^{q}$는 $g_{R_{1}}^{q}\circ d(\cdot)$이라고 하자
- Pre-training은 high-resolution과 low-resolution masked unit prediction에 대한 2가지 loss를 포함함:
(Eq. 5) $\mathcal{L}_{m}^{q\text{-}\left\{high, low\right\} }\left(\theta_{\{high,low\} };\mathbf{S},\mathbb{M},g^{q}_{ \{ R_{1},R_{2}\}} \right)=\sum_{t\in\mathbb{M}}\log p_{\theta_{\{high,low\} } }\left( g^{q}_{ \{R_{1},R_{2}\} }(\mathbf{S})|\tilde{\mathbf{H}}_{0}^{q},t\right)$
- $\theta_{high}$ : MR-HuBERT의 model parameter, $\theta_{low}$ : $\text{UP}(\cdot), f_{3}^{q}(\cdot)$을 exclude 한 partial model parameter - 결과적으로 final objective는:
(Eq. 6) $\mathcal{L}_{m}^{q}=\beta\cdot \mathcal{L}_{m}^{q\text{-}high}+\gamma \cdot \mathcal{L}_{m}^{q\text{-}low}$
- $\beta, \gamma$ : hyperparameter
- Pre-training은 high-resolution과 low-resolution masked unit prediction에 대한 2가지 loss를 포함함:
- 이를 위해 high resolution unit extraction에서 시작하여 Low Resolution Transformer Encoder $f_{2}^{q}$의 low resolution sequence와 match 되도록 low resolution unit을 subsample 함
3. Experiments
- Settings
- Dataset : LibriSpeech, LibriLight, Voxpopuli
- Comparisons : HuBERT
- Results
- 전체적으로 MR-HuBERT가 가장 뛰어난 성능을 달성함
- SUPERB Evaluation
- SUPERB framework에 대해서도 MR-HuBERT가 가장 우수한 성능을 보임
- ML-SUPERB Evaluation
- ML-SUPERB benchmark에 대해서도 MR-HuBERT의 성능이 가장 우수함
반응형
'Paper > Representation' 카테고리의 다른 글
댓글