티스토리 뷰
Paper/Representation
[Paper 리뷰] Speech2Vec: A Sequence-to-Sequence Framework for Learning Word Embeddings from Speech
feVeRin 2025. 3. 20. 21:44반응형
Speech2Vec: A Sequence-to-Sequence Framework for Learning Word Embeddings from Speech
- Speech corpus로부터 얻어진 audio segment의 fixed-length vector representation을 학습하여 semantic information을 얻을 수 있음
- Speech2Vec
- RNN encoder-decoder framework를 기반으로 semantically simillar 한 embedding을 얻음
- Training을 위해 Skipgrams, Continuous Bag-of-Words를 활용
- 논문 (INTERSPEECH 2018) : Paper Link
1. Introduction
- Natural Language Processing (NLP)에서는 Word2Vec, GloVe 등을 활용하여 word를 fixed-dimensional vector나 word embedding으로 변환함
- 이와 비슷하게 speech에서도 vector representation을 얻을 수 있음
- BUT, 일반적인 representation은 semantic이 아닌 acoustic-phonetic notion에 기반하므로 서로 다른 instance가 latent embedding space의 same point에 mapping 될 수 있음
-> 그래서 word와 관련된 acoustic segment가 아닌 neighboring acoustic region에 focus 할 수 있는 acoustic embedding model인 Speech2Vec을 제안
- Speech2Vec
- RNN Encoder-Decoder framework를 기반으로 arbitrary length의 audio segment를 처리
- Word2Vec과 같이 Skipgrams/Continuous Bag-of-Words (CBOW) approach를 통해 model을 training
< Overall of Speech2Vec >
- RNN Encoder-Decoder framework를 기반으로 Skipgrams, CBOW training을 적용
- 결과적으로 기존보다 뛰어난 성능의 embedding을 획득
2. Method
- Acoustic feature (MFCC 등)에 대한 variable length sequence로 represent 된 word에 대해,
- 논문은 audio segment의 fixed-length embedding
을 학습하는 것을 목표로 함x=(x1,x2,...,xT)
- : timext 에서의 acoustic feature,t : sequence lengthT - 결과적으로 해당 word embedding은 original audio segment의 semantic을 describe 할 수 있어야 함
- 논문은 audio segment의 fixed-length embedding
- RNN Encoder-Decoder Framework
- Recurrent Neural Network (RNN) encoder-decoder는 Encoder RNN/Decoder RNN으로 구성됨
- 먼저 input sequence
에 대해 encoder는 각 symbolx=(x1,x2,xT) 를 sequentially read 하고 RNN의 hidden statexi 를 update 함ht - 이후 last symbol
가 process 된 다음, 해당 hidden statexT 는 entire input sequence의 learned representation으로 interpret 됨hT - 최종적으로
를 사용하여 hidden state를 initializing 함으로써 decoder는 output sequencehT 를 sequentially generate 함y=(y1,y2,...,yT′)
- 이때 은 서로 다를 수 있음T,T′
- 먼저 input sequence

- Speech2Vec
- 논문은 Speech2Vec을 training하기 위해 Skipgrams와 Continuous Bag-of-Words (CBOW)의 2가지 method를 도입함
- Training Speech2Vec with Skipgrams
- Skipgrams는 speech corpus의 각 audio segment (word)
에 대해, Speech2Vec이 certain rangex(n) 내에서k 전후의 audio segment (nearby word)x(n) 를 predict 하도록 training 됨{x(n−k),...,x(n−1),x(n+1),...,x(n+k)} - Training 중에 encoder는
을 input으로 사용하여 fixed-dimensional vector representationx(n) 으로 encoding 됨z(n) - 이후 decoder는
을 several output sequencez(n) 에 mapping 함y(i),i∈{n−k,...,n−1,n+1,...,n+k} - 이때 model은 Mean Squared Error
를 사용해 output sequence와 해당 nearby audio segment 간의 gap을 minimize 하는 방식으로 training 됨∑i||x(i)−y(i)||2
- 이후 decoder는
- 해당 방식은 nearby audio segment를 successfully decode 하기 위해서는 encoded vector representation
에 current audio segmentz(n) 에 대한 sufficient semantic information이 포함되도록 함x(n)
- Training 이후 은z(n) 의 word embedding으로 취급함x(n)
- Skipgrams는 speech corpus의 각 audio segment (word)
- Training Speech2Vec with CBOW
- Skipgrams Speech2Vec은 nearby audio segment를
에서 predict 하지만, CBOW Speech2Vec의 경우z(n) 을 target으로 설정하고 nearby audio segment로부터 target을 infer 하는 것을 목표로 함x(n) - Training 중에 모든 nearby audio segment는 shared encoder에 의해
로 encoding 되고 해당 summationh(i),i∈{n−k,...,n−1,n+1,...,n+k} 은 decoder를 통해z(n)=∑ih(i) 을 생성하는 데 사용됨x(n)
- Training 이후 은z(n) 에 대한 word embedding으로 사용됨x(n) - 실험적으로는 Skipgrams Speech2Vec이 CBOW Speech2Vec 보다 더 나은 성능을 보임
- Skipgrams Speech2Vec은 nearby audio segment를
- Differences Between Speech2Vec and Word2Vec
- Speech2Vec은 Word2Vec의 speech version으로써 audio의 spoken word에서 semantic information을 capture 하는 audio segment의 fixed-length embedding을 학습하는 것을 목표로 함
- BUT, Word2Vec과는 다음의 차이점을 가짐:
- Word2Vec architecture는 input/output으로 one-hot encoded vector를 사용하는 fully-connected neural network로 구성됨
- 반면 Speech2Vec은 acoustic feature의 variable length를 처리하기 위해 RNN encoder-decoder를 사용함 - Word2Vec에서 particular word의 embedding을 deterministic 함
- 즉, 동일한 word의 모든 instance는 하나의 embedding vector로 represent 됨
- 반면 Speech2Vec은 spoken word의 모든 instance가 서로 다르므로, 동일한 word라도 instance가 fully similar 하지만 서로 차이가 있는 embedding vector로 represent 됨
- Word2Vec architecture는 input/output으로 one-hot encoded vector를 사용하는 fully-connected neural network로 구성됨
- BUT, Word2Vec과는 다음의 차이점을 가짐:
3. Experiments
- Settings
- Dataset : LibriSpeech
- Comparisons : Word2Vec
- Results
- 전체적으로 Skipgrams Speech2Vec이 가장 좋은 성능을 달성함
- Skipgrams Speeech2Vec은 text 보다 prosody와 같은 speech의 semantic information을 capture하기 때문
- 추가적으로 embedding size를 늘리는 것이 항상 성능 향상으로 이어지지는 않음

- Impact of Training Corpus Size
- Training size가 클수록 성능이 향상됨

- Variance Study
- 모든 word를 corpus에 apear 한 횟수
을 기준으로N 의 sub-group으로 partition 함5~99,100~999,1000~9999,≥10k
- 이후 번 apear 한 given wordN 의 모든 vector representationw 에 대해 각 dimension의 standard deviation을 계산{w1,w2,...,wN} - 결과적으로 Skipgrams model은 CBOW model 보다 더 낮은 variance를 보임
- 모든 word를 corpus에 apear 한 횟수

- Visualization
-SNE 측면에서 learned word embedding은 antonym/synonym을 capture 하는 것으로 나타남t

반응형