
사전 정보 (about ASR)
ASR
- 기존 음성인식 : (Handcraft Feature Extractor ⇒) Acoustic Model

-
음성인식 성능을 올리기 위해 Acoustic Model + Language model
-
Acoustic model (AM)
-
ASR 모델은 bayes' theorem을 통해 두 가지 모델로 분리되어 이루어져 있습니다.
하나는 소리 모델 (acoustic model), 그리고 언어 모델 (language model).
-
P(W∣X) : 소리 X 가 주어졌을 때, 텍스트 W는 무엇인가를 구해야한다.
-
이 때 확률이 가장 높은 텍스트 W를 고르기 위해서 아래 같은 식이 나온다.
분모에 들어가는 P(X)는 W와 상관이 없기 때문에 argmax에서는 버려져도 상관이 없으므로, 그 아래 사진처럼 식이 단순해진다.


-
P(X∣W) : 텍스트 W가 주어졌을 때, 소리 X는 무엇인가.
⇒ 이 부분을 학습하고 수행하는 것이 ‘Acoustic Model(AM)’ 이라고 한다.
⇒ 즉, AM은 텍스트와 음성 간 관계를 밝히는 부분.
-
P(W) : 텍스트 W의 확률
⇒ 이후 나올 단어를 예측하게 모델링함으로써 특정 단어가 나올 확률을 도출할 수 있는 모델
-
(pre-trained feature extractor, Wav2Vec ⇒) Acoustic Model + Language Model

- AM training data = aligned 음성 데이터 & 전사 텍스트 데이터
- LM training data = 전사 텍스트 데이터
Wav2Vec
이전 모델
- 좋은 성능을 내기 위해서 최신 음성 인식 모델들은 너무 많은 양의 전사 오디오 데이터 (전사 텍스트(label) & 오디오 데이터)가 필요하다. (논문 발표된 19년도 기준)
- 음성 데이터 비지도 학습 연구가 있긴 했으나, 그 결과로 나온 표현 백터들을 지도 학습 음성 인식 모델을 개선하는데 사용되지 않았다.
차별점
- Wav2Vec 학습 결과로 나온 표현(벡터)들을 강력한 지도학습 ASR(Automatic Speech Recognition)을 개선하는데 사용한다.
- Wav2Vec은 fully convolutional 구조를 사용하므로, 쉽게 병렬화가 가능하기에 기존의 rnn 모델들보다 학습 시간이 적다.
- 비지도 사전 학습된 Wav2Vec을 사용해서 지도 학습 음성 인식 성능을 개선할 것.
모델 구성

목적 함수

-
Wav2Vec은 Word2Vec처럼 해당 입력이 포지티브 쌍인지 네거티브 쌍인지 이진 분류(binary classification)하는 과정에서 학습됩니다.
-
negative sampling
- 포지티브 쌍은 그림1 처럼 입력 음성의 i번째 context representation Ci와 i+1번째 hidden representaion Zi+1입니다
- 네거티브 쌍은 입력 음성의 i번째 context representation Ci와 현재 배치의 다른 음성의 hidden representation들 가운데 랜덤으로 추출해 만듭니다.
-
contrastive loss를 최소화하는 방향으로 최적화 ⇒ 비슷한 쌍들 간에 거리가 0에 가깝도록!
-
학습이 진행될 수록 포지티브 쌍 관계의 represenation은 벡터 공간에서 가까워지고, 네거티브 쌍은 멀어집니다.
- 즉, 학습이 진행될수록 encoder layer와 context layer는 input 음성의 다음시퀀스가 무엇일까에 대한 정보를 해당 음성 피쳐에 잘 담게 된다. (다음 시퀀스를 더 잘 예측하게 된다는 의미?)
-
After training, we input the representations ci produced by the context network to the acoustic model instead of log-mel filterbank features.
-
contrastive loss

1. 같은 쌍(Pos pair)은 거리가 0
2. 다른 쌍(Neg pair)은 거리가 Margin( α : 절대적 거리) 되도록 학습한다.

- Margin Parameter를 설정하기 어렵기 때문에, 크게 차이나는 Neg Sample이나, 적게 차이나는 Neg Sample이 동일한 Margin( α )으로 차이가 남
- cf. triplet loss는 상대적 거리 차이를 학습한다.
실험 (ASR with W2V)
데이터
모두 16kHz의 샘플링 레이트를 가지고 있는 영어 오디오 데이터
- TIMIT (Garofolo et al., 1993b) for phoneme recognition
- we use the standard train, dev and test split where the training data contains just over three hours of audio data.
- phoneme recognition (음소 구별) 음소는 말소리의 가장 작은 단위입니다. 우리가 읽기를 가르칠 때 우리는 아이들에게 그 소리를 나타내는 글자를 가르칩니다. 예를 들어 , 'hat'이라는 단어에는 'h' 'a'와 't'라는 3개의 음소가 있습니다.
- Wall Street Journal (WSJ; Garofolo et al. (1993a) for pre-training
- comprises about 81 hours of transcribed audio data.
- transcribed audio data
- 전사 오디오 데이터
- 오디오 데이터를 들리는대로 전사한 데이터 (오디오 + 스크립트)
- Librispeech (Panayotov et al., 2015) for pre-training
- contains a total of 960 hours of clean and noisy speech for training
평가 지표
- Final models are evaluated in terms of both word error rate (WER) and letter error rate (LER).
- WER
- common metric of the performance of an automatic speech recognition(ASR) system.
- 말한 단어 중에 몇 퍼센트의 단어를 틀리게 알아듣는가.
- ex) 10 단어를 말했을 때, 한 단어를 잘 못 알아들으면 WER는 10%로 계산
성능 향상 방법

결과

- !
- language model
- We consider a 4-gram KenLM language model (Heafield et al., 2013),
- a word-based convolutional language model (Collobert et al., 2019),
- and a character based convolutional language model (Likhomanenko et al., 2019).
- nov93dev : validation set
- nov92 : test set
Reference