티스토리 뷰
Paper/ASR
[Paper 리뷰] CrisperWhisper: Accurate Timestamps on Verbatim Speech Transcriptions
feVeRin 2025. 3. 31. 21:58반응형
CrisperWhisper: Accurate Timestamps on Verbatim Speech Transcriptions
- Whisper의 tokenizer를 adjust 하여 word-level timestamps precision을 향상할 수 있음
- CrisperWhisper
- Whisper decoder의 cross-attention score에 dynamic time warping을 적용
- 추가적인 fine-tuning을 통해 robustness를 향상
- 논문 (INTERSPEECH 2024) : Paper Link
1. Introduction
- Automatic Speech Recognition (ASR)에서 large-scale, weakly supervised learning은 뛰어난 성능을 보이고 있음
- 특히 Sequence-to-Sequence (Seq2Seq) transformer인 Whisper는 680,000 hours의 large dataset을 활용해 강력한 generalizability를 달성함
- BUT, Whisper는 filler word, recurring utterance, artifact를 eliminate 하여 context에 suitable 한 intended transcription style을 만들어냄 - 한편으로 verbatim speech transcription은 모든 articulated utterance를 capture 하는 것을 목표로 함
- 특히 'uh', 'um'과 같은 common filler나 word repetition, correction 등의 speech disfluency를 distinguish함 - 이때 verbatim speech transcription을 위해서는 word-level timestamps가 필요함
- 이를 위해 WhisperX와 같이 Wav2Vec 2.0의 timing information을 활용할 수 있음
- BUT, noisy environment에 대한 robustness가 낮고 VAD-based segmentation으로 인해 complexity가 증가함 - 또는 Whisper decoder의 attention score에 Dynamic Time Warping (DTW)를 적용할 수 있음
- 이를 위해 WhisperX와 같이 Wav2Vec 2.0의 timing information을 활용할 수 있음
- 특히 Sequence-to-Sequence (Seq2Seq) transformer인 Whisper는 680,000 hours의 large dataset을 활용해 강력한 generalizability를 달성함
-> 그래서 Whisper 기반의 single model word-level timestamp를 위한 CrisperWhisper를 제안
- CrisperWhisper
- Whisper tokenize를 adjust 하고 noise robustness를 위해 artificial perturbation에 대한 fine-tuning을 수행
- Whisper decoder에 대한 DTW 적용을 통해 verbatim transcription style을 개선
< Overall of CrisperWhisper >
- Whisper와 DTW를 활용한 crisp timestamp model
- 결과적으로 기존보다 우수한 word-level timestamp 성능을 달성
2. Method
- DTW for Timestamp Prediction
- Intuition
- Whisper는 encoder-decoder structure를 기반으로 하고, encoder는 multiple transformer encoder block을 통해 audio를 처리함
- 먼저 audio는 16kHz로 resample 되어 80-channel log-magnitude mel-spectrogram으로 변환되고 convolution을 통해 downsampling 됨
- 그러면 encoder는 25ms window에서 20ms stride로 downsample 된 해당 spectrogram을 기반으로 동작함
- 이는 20ms step으로 shift 된 25ms audio를 의미
- 특히 Whisper-large model은 byte-level Byte Pair Encoding (BPE) text tokenizer를 활용하여 target을 생성하고, transformer decoder는 cross-attention을 사용함
- 즉, resulting cross-attention score는 token prediction score 중에 decoder가 encoder output의 specific segment에 focus 하는 것을 반영함
- 이는 decoder strategy가 current token prediction과 most relevant 한 encoder output region을 priortize 한다는 것을 의미함 - 따라서 논문은 cross-attention score를 사용하여 current token을 decode 하는 25ms audio frame을 assess 하고 해당 frame의 aggregate를 timestamps로 활용함
- 즉, resulting cross-attention score는 token prediction score 중에 decoder가 encoder output의 specific segment에 focus 하는 것을 반영함
- Whisper는 encoder-decoder structure를 기반으로 하고, encoder는 multiple transformer encoder block을 통해 audio를 처리함
- DTW and Cost Matrix Construction
- CrisperWhisper는 두 sequence 간의 optimal cost인 monotonic, continuous alignment를 find 하기 위해 DTW algorithm을 채택함
- 이때 sequence elements 간의 alignment expense를 measure 하기 위해서는 cost matrix가 필요함
- 즉, encoded acoustic signal을 represent 하는 encoder output $E=\{e_{1},e_{2},...,e_{n}\}$과 decoder token prediction $D=\{d_{1},d_{2},...,d_{m}\}$을 의미함
- Decoder의 suitable attention heads set $H=\{h_{1},h_{2},...,h_{l}\}$이 주어졌을 때 cost matrix는 다음과 같이 정의됨:
- 먼저 각 $d_{i}$는 cross-attention vector $A_{i}=\{a_{i1},a_{i2},...,a_{il}\}$과 associate 되어 있음
- $a_{ik}\in\mathbb{R}^{n}$ : $i$-th token을 decoding 할 때 $k$-th attention head의 attention score - 그러면 해당 vector를 $\bar{A}_{i}=\frac{1}{l}\sum_{k=1}^{l}a_{ik}$과 같이 average 하고 normalize 하여 cost matrix $C$를 구할 수 있음:
(Eq. 1) $C:=-\begin{bmatrix}
\frac{\bar{A}_{1}}{||\bar{A}_{1}||_{2}} \\
\vdots \\
\frac{\bar{A}_{m}}{||\bar{A}_{m}||_{2}}
\end{bmatrix}$
- 먼저 각 $d_{i}$는 cross-attention vector $A_{i}=\{a_{i1},a_{i2},...,a_{il}\}$과 associate 되어 있음
- 여기서 punctuation은 clear acoustic representation이 없으므로 alignment에서 timestamp가 주어지지 않아야 함
- 따라서 cost matrix constructing 이전에 $D$에서 punctuation에 해당하는 모든 token을 remove 함
- CrisperWhisper는 두 sequence 간의 optimal cost인 monotonic, continuous alignment를 find 하기 위해 DTW algorithm을 채택함
- Retokenization
- Whisper vocabulary의 token은 space가 prefix 되는 경우가 많음
- 실제로 Whisper vocabulary를 기반으로 CommonVoice14 transcript에 BPE algorithm을 적용했을 때, original transcript의 space 중 13% 만이 explicit space token에 mapping 됨
- e.g.) 'This is a long pause.' 를 Whisper tokenizer로 tokenizing 하면 $\text{['This',' is',' a',' long',' pause','.']}$가 됨
- 즉, space는 standalone entity가 아닌 token start 부분에 include 됨 - 결과적으로 해당 tokenization은 token beginning에 위치한 pause를 inadvertently integrate 하기 때문에 audio segment를 token에 align 하는 DTW에 영향을 미침
- e.g.) 'This is a long pause.' 를 Whisper tokenizer로 tokenizing 하면 $\text{['This',' is',' a',' long',' pause','.']}$가 됨
- 따라서 CrisperWhisper는 space가 token의 beginning에만 exclusively found 되고 end/middle에는 나타나지 않는다는 점을 기반으로, space token 자체를 제외한 모든 space token을 strip 하고 unique token만 keeping 함
- 이때 tokenizer의 merge를 해당 reduced vocabulary와 congruent 되도록 adjust 함
- 해당 adjustment를 통해 모든 space는 individually tokenize 되므로, DTW algorithm은 word 간의 pause를 detect 할 수 있음
- e.g.) Retokenization을 활용했을 때, 'This is a long pause.' 는 $\text{['This','is','a','long','pause','.']}$가 생성됨 - 추가적으로 'uh', 'um' token을 re-purpose 하여 filled pause event를 canonically transcribe 함
- 실제로 Whisper vocabulary를 기반으로 CommonVoice14 transcript에 BPE algorithm을 적용했을 때, original transcript의 space 중 13% 만이 explicit space token에 mapping 됨
- Pause Heuristics
- DTW algorithm은 non-distinct attention으로 인해 pause duration을 overestimation 할 수 있음
- 따라서 논문은 pause duration에 대해 preceding/subsequent word 사이를 evenly split 하는 heuristic을 도입함
- 이때 cap은 160ms로 설정하여 pause duration의 observed distribution을 기반으로 하고, insubstantial artifact pause와 meaningful speech pause를 distinguishing 하도록 함
- 해당 cap을 surpassing 하는 duration은 genuine pause로 identify 되어 speech rhythm을 accurately represent 함
- 따라서 논문은 pause duration에 대해 preceding/subsequent word 사이를 evenly split 하는 heuristic을 도입함
3. Experiments
- Settings
- Dataset : AMI Meeting, Podcast-Fillers, CommonVoice14, FSDnoisy18k, AudioSet
- Comparisons : WhisperT, WhisperX
- Results
- 전체적으로 CrisperWhisper의 성능이 가장 뛰어남
- Noise robustness 측면에서도 CrisperWhisper가 우수함
- Disfluency Segmentation Performance
- CrisperWhisper는 verbatim을 transcribe 하므로 repetition, false start 등의 disfluency type을 효과적으로 detect/segment 할 수 있음
- Verbatim Transcription Performance
- CrisperWhisper는 spontaneous speech dataset에서도 뛰어난 ASR 성능을 보임
반응형
'Paper > ASR' 카테고리의 다른 글
댓글