https://ieeexplore.ieee.org/document/8114355
Whispered Speech Recognition Using Deep Denoising Autoencoder and Inverse Filtering
Due to the profound differences between acoustic characteristics of neutral and whispered speech, the performance of traditional automatic speech recognition (ASR) systems trained on neutral speech degrades significantly when whisper is applied. In order t
ieeexplore.ieee.org
해당 논문을 보고 작성했습니다.
Abstract
neutral speech와 whispered speech의 acoustic characteristic이 크게 다르기 때문에, whispered speech에 대한 neutral speech로 학습된 전통적인 automatic speech recognition (ASR) system의 성능이 매우 감소하게 됩니다. train/test situation의 mismatch를 분석하고 whisper recognition을 개발하기 위해, 이 연구에서는 whispered speech의 음향적 특성을 분석하여 whispered speech recognition의 mismatched condition 문제를 완화하고 새로운 robust cepstral feature를 제안하고 whisper recognition 성능을 향상시키는 deep denoising autoencoder 기반 preprocessing approach를 제안합니다. 실험 결과를 통해 Teager-energy-based cepstral feature (TECC)가 기존 Mel-frequency cepstral coefficients (MFCC) 보다 더 뛰어난 whisper descriptor 성능을 보인다는 것을 확인하였습니다. DDAE, TECC feature를 사용하는 새로운 framework가 whisper recognition 정확도를 크게 향상시키고 traditional MFCC와 GMM-HMM (Gaussian mixture density-Hidden Markov model) baseline보다 뛰어난 결과를 보였습니다.
Introduction
whsiper는 다양한 상황에서 자주 사용되는 특정 형태의 의사 소통 방식입니다. 조용하고 친밀한 분위기를 조성하기 위해 사용되기도 하며, 비밀스럽고 사적인 정보를 타인으로부터 보호하기 위해 사용됩니다. 또한, 도서관이나 회의와 같이 다른 사람을 방해하지 않기 위해 사용되며, 범죄 활동에서도 사용될 수 있습니다. 한편, whisper는 의식적으로 발화되는 경우뿐만 아니라, 성대 구조의 만성 질환과 같은 건강 문제로 인해 발생하기도 합니다.
whisper는 일반적으로 음성 기술에 있어 중요한 연구 주제가 되었는데, 이는 normal speech와 비교하여 음향적 특성이 크게 다르기 때문입니다. 이러한 차이는 주로 성대 진동의 부재, 잡음 구조, lower SNR (Signal-to-Noise Ratio) 때문입니다. neutral speech을 위해 설계된 대부분의 ASR system들은 이러한 acoustic mismatch를 처리하지 못합니다. 따라서 neutral trained ASR system의 성능이 whispered audio에 대해 크게 저하됩니다. automatic whisper recognition에 대한 연구는 여전히 초기 단계에 있으며 관련 연구가 몇 편밖에 존재하지 않습니다. 기존 연구들은 음향적 불일치를 완화하기 위해 model adaptation, feature transformation 또는 throat microphone과 같은 대체 감지 기술의 사용을 제안하였습니다. 또한, whisper speech condition에서 단어 인식을 위한 audio-visual approach도 제안되었습니다. 대다수의 whisper recognition 연구들은 GMM-HMM (Gaussian mixture density-Hidden Markov model) system과 traditional MFCC (Mel-Frequency Cepstral Coefficient) 또는 PLP (Perceptual Linear Prediction) feature를 사용합니다.
이 연구의 저자들의 contribution은 SOTA acoustic modeling technique인 deep denoising autoencoder (DDAE)를 사용하여 model adaptation 없이도 whisper recognition performance를 크게 향상시킬 수 있음을 입증하였습니다. DDAE는 whispered speech의 cepstral feature vector를 neutral speech의 clean cepstral feature vector로 변환합니다. 구체적으로,
DDAE에 의한 feature extraction은 original neutral speech data의 inverse filtering 에 의해 인공적으로 생성된 pseudo-whisper feature로부터 original neutral speech feature를 예측하도록 deep neural network를 학습시킴으로써 이루어집니다. 그다음 얻어진 cepstreal feature를 original cepstral feature에 concatenate 한 다음 conventional GMM-HMM recognizer에 넣어 word recognition task를 수행하도록 합니다. 저자들의 feature mechanism은 whisper-robust feature입니다. input feature vector에 관해, 저자들은 traditional MFCC (Mel-Frequency Cepstral Coefficients), TECC (Teager Energy Cepstral Coefficients), TEMFCC (Teager Energy Cepstral Coefficients)라는 3가지 종류의 cepstral coefficient로 실험을 진행하였습니다. 이 두 가지는 Teager energy를 계산하기 위해 non linear TEO (Teager-Energy Operator)를 사용합니다. 현재까지, 비선형 TEO-based feature는 조용하고 unvoiced murmured speech의 ASR 뿐만 아니라 stress and noisy condition에서의 speech classification에서 매우 유망한 결과를 보였습니다. whispered speech의 특징은 non-audible murmur, noised speech, speech under stress와 매우 유사합니다. 이러한 유사성으로 인해, TECC와 TEMFCC가 whispered speech의 good descriptor가 될 것으로 예측합니다. whispered speech recognition 실험은 Whi-Spe라는 특별히 제작된 database에서 진행되었으며, 10,000개의 neutral & whisper speech의 parallel audio로 구성됩니다.
이 연구에서 또 다른 중요한 task는 train/test condition mismatch 상황에서 발생하는 confusion을 분석하는 것입니다. speaker가 ASR system 앞에서 neutral speech에서 whispered speech로 전환하는 실제 상황이 존재하며, 이러한 mismatch scenario를 더 잘 이해하고 더 나은 whispered recognition 결과를 보이는 system을 개발하기 위해 발생하는 confusion을 분석했습니다. 본 연구에서 acoustic characteristic 분석, cepstral coefficient, cepstral distance 분포 뿐만 아니라 confusion matric 분석을 진행하였습니다. 이러한 결과를 토대로, 새로운 speech signal pre-processing approach를 제안하였습니다. 이 방식은 TECC feature, inverse filtering, DDAE를 포함하며, neutral speech와 whisper speech 사이 차이를 줄이며 mismathced scenario에서의 word recognition rate를 향상시켰습니다.
Whisper
Corpus of Neutral/Whispered Speech
이 분야에서는 사용할 공개된 dataset이 부족하다는 사실을 고려하여, 저자들은 세르비아어를 사용하는 Whi-Spe라는 special speech corpus를 개발하였습니다. 이 corpus는 5000개의 neutral speech와 5000개의 whisper speech로 구성되며, 각각 동일한 단어로 pair를 이룹니다. corpus는 50개의 다양한 단어로 구성되어 있습니다. whispered speech와 neutral speech 모두 5명의 남성, 여성이 녹음하였습니다.
Acoustic Analysis of Whispered Speech
whisper는 neutral speech와 characteristic, nature, generation mechanism이 다른 speech mode입니다. whisper's generation mechanism의 주요 특징 중 하나는 성대 진동이 없다는 점입니다. neutral speech와 비교했을 때, pharyngeal cavity가 좁아지고 혀의 위치가 달라지고 입술, 입 모양도 달라지고 vocal tract 모양도 달라집니다. 성도 모양이 달라지고 조음 기관의 변화로 인해, whisper는 독특한 acoustic characteristic을 갖게 됩니다. ASR system에서 발생하는 acoustic mismatch를 더 잘 설명하기 위해, 여러 time-domain과 spectral-domain 예시를 보이면 다음과 같습니다.
위 그림은 neutral speech와 whispered speech의 waveform, spectrogram을 보여줍니다. time waveform을 보면 amplitude intensity의 차이를 볼 수 있습니다. whisper의 경우, sonority의 부재로 인해 voiced phoneme (주로 모음)의 amplitude가 상당히 낮아지며, unvoicded phoneme의 amplitude는 비슷한 모습을 보입니다. whisper는 완전히 noisy 한 구조를 가지며, energy가 현저히 낮은 모습을 보입니다. whispered speech duration은 약간 더 길며, 특히 utterance의 길이가 길수록 명확히 나타납니다.
spectrogram을 보면 neutral speech와 whispered speech의 차이를 알 수 있습니다. whisper에서 성대 구조는 다르지만, spectrogram은 가장 중요한 spectral speech characteristic을 유지하는 것을 볼 수 있습니다. noisy한 구조를 가짐에도 불구하고, 몇몇 phoneme들은 spectral concentrate가 여전히 유지되기도 합니다. 가장 중요한 spectral 변화는 모음에서 발생하며, whispered speech에서 lower formant의 위치가 higher frequency로 이동되는 모습을 보입니다. 반면 무성 자음은 spectral domain 내에서 큰 변화가 발견되지는 않았습니다. whispered speech의 sonority의 부족도 long-term average spectrum에서도 발견되며, neutral speech보다 훨씬 평평한 spectral slope을 보입니다.
neutral speech와 whisper speech의 동일한 단어의 차이를 정량화하기 위해, cepstral dissimilarity 척도로 cepstral distance를 사용할 수 있습니다. cepstral distance (CD)는 다음과 같이 정의됩니다.
위 식에서 $c_{i}^{(n)}$는 neutral speech의 MFCC, $c_{i}^{(w)}$는 whispered speech의 MFCC를 의미합니다. N은 각 단어 당 고정된 수의 cepstral coefficient를 나타냅니다. Whi-Spe corpus에 있는 각 단어의 average CD를 구하면 다음과 같습니다.
위 그래프는 단어에 존재하는 무성 자음의 비율과의 상관성을 보여줍니다.
best fit straight line은 strong negative correlation (Pearson's coefficient -0.834)를 나타내며, 이는 낮은 무성 자음 ratio를 띄는 단어가 더 높은 CD를 갖는다는 것을 의미합니다. 예를 들어 총 4개 phoneme으로 구성되고, 이 중 3개가 무성 자음인 단어의 경우, ratio가 0.75이며 가장 낮은 CD인 4.7dB를 보였습니다. 반대로 무성 자음이 없는 단어의 경우, ratio가 0이며 가장 높은 CD값을 보이며, 평균 6.7dB를 보입니다. 이는 모음과 유성 자음의 특징이 무성 자음보다 더 크게 변화한다는 것을 의미합니다.
Cepstral coefficient는 neutral speech와 whispered speech 간의 차이를 더욱 구체적으로 분석하는 데 활용될 수 있습니다. 예를 들어, 첫 두 cepstral coefficient인 $c_0, c_1$의 분포는 Whi-Spe database에 있는 energy와 spectral slope을 검증하는 데 사용될 수 있습니다. 구체적으로 $c_0$는 signal energy에 대한 정보를 반영하고 있으며, $c_1$은 spectral slope에 대한 정보를 반영하고 있습니다.
위 그림은 neutral speech와 whispered speech의 $c_0, c_1$ 분포를 보여줍니다.
neutral speech recording의 unvoiced/voiced speech segment의 ratio는 37.65/62.35%이고, whispered recording의 ratio는 99.2/0.8%입니다. neutral speech의 distribution은 voiced segment가 unvoiced segment보다 더 높은 energy (더 높은 $c_0$ value)를 가지는 경향을 보입니다. whisper의 경우, unvoiced segment가 대부분이며 전반적인 분포가 neutral speech보다 더 낮은 energy를 갖도록 shifting 된 모습을 보입니다.
$c_1$은 spectral slope을 반영합니다. neutral speech의 경우, voiced distribution에서 가장 높은 $c_1$ value를 보여줍니다. 즉 voiced에서 가파른 slope을 가짐을 의미합니다. unvoiced segment는 더 낮은 $c_1$ value를 보이며 완만한 slope을 가짐을 의미합니다. whisper의 경우, 모든 분포가 $c_1$이 더 낮게 왼쪽으로 이동된 모습을 보입니다. 전반적인 spectral slope이 완만해짐을 의미합니다. $c_0$의 분포와 다르게, 분포의 위치 차이가 눈에 띄게 보입니다.
whisper를 생성할 때 위와 같이 neutral speech와 차이가 발생하기 때문에, traditional ASR system으로 recognition을 수행할 때 어려움을 겪게 됩니다. energy level 차이의 경우, whispering을 할 때 좀 더 microphone을 가깝게 위치하면 문제를 완화할 수 있습니다. 또는 simple signal amplification을 통해 보정을 할 수도 있습니다. 하지만 spectral slope의 차이와 같은 spectral 차이는 여전히 남아 있으며, 적절한 modification이 필요합니다.
Model
위 그림은 저자들이 제안하는 ASR system을 보여줍니다. framework는 audio signal을 처리하기 위해 2가지 feature extractor와 1가지 GMM-HMM으로 구성됩니다. 첫 번째 extractor는 MFCC, TECC, TEMFCC cepstral feature extraction역할을 수행합니다. 두 번째 extractor는 deep denoising autoencoder (DDAE) 안에 존재하며, 이는 whispered speech effect를 filtering 하고 clean neutral speech feature를 reconstruct 하는 역할을 수행합니다. 그리고 DDAE output은 mismatched whispered speech를 보완하기 위해 robust cepstral feature를 제공합니다. 최종적으로 GMM-HMM은 두 extractor에서 얻어진 cepstral feature sequence를 바탕으로 isolated word를 인식합니다.
Feature Extraction
저자들은 3가지 cepstral feature에 대한 실험을 진행하였습니다. Mel-frequency Cepstral Coefficient (MFCC), Teager Energy Cepstral Coefficient (TECC) and Teager-Energy based Mel-frequency Cepstral Coefficient (TEMFCC)로 실험을 진행하였습니다. 이 feature들은 25ms time frame마다 추출되었으며, step size는 10ms로 설정하였습니다. MFCC는 ASR에서 자주 사용되는 traditional cepstral feature이며, extraction 과정은 다음과 같습니다. 1) speech signal으로 discrete Fourier transform (DFT)을 계산하고, 2) power spectrum을 계산한 다음, 3) 30개 triangular shaped filter로 구성된 Mel-filterbank를 적용하고, 4) 각 filter의 signal output log energy를 추정한 다음 5) discrete cosine transform (DCT)을 수행해 cepstral coefficient를 구합니다. 그리고 그중 첫 12개 MFCC만 추출하여 사용합니다. 최종적으로 communication channel의 특성과 recording device로부터 발생되는 convolutional distortion을 제거하기 위해 cepstral mean subtraction (CMS)을 사용해 feature vector를 channel normalize 합니다. 하지만 CMS는 추가되는 environmental noise의 영향을 부분적으로 줄여주기만 하지, 완전히 제거하지는 못합니다.
TEMFCC와 TECC라는 두 가지 cepstral coefficient는 비교적 새로운 방식이며, 기존보다 noise intererence에 더 robust 합니다. 그리고 whispered speech recognition에서는 아직 충분한 연구가 이루어지지 않았습니다. basic algorithm은 MFCC feature와 유사하지만, energy estimation 방식에서 큰 차이가 있습니다. TEMFCC와 TECC calucation에서 nonlinear Teager-energy operator (TEO)를 사용합니다. TEO는 speech 생성을 nonlinear 하게 modeling 하는 데 사용됩니다. 전통적인 음향 이론은 성대에서 나오는 공기 흐름이 plane wave로 전파된다고 가정합니다. 하지만 실제로는 복잡한 vortex-flow 상호작용이 존재하며, nonlinear 한 특성을 갖습니다. whispered speech는 nonlinear 하고 extremely turbulent 한 airflow를 갖기 때문에, TEO가 signal을 처리할 때 절절한 방법이 됩니다. signal's source의 운동 에너지만 고려하여 signal energy approximation을 수행하는 기존의 방식과 다르게, TEO는 resonance signal의 true total source energy를 계산하고, amplitude and frequency information과 결합합니다. total source energy는 potential energy와 kinetic energy의 합이며, total source energy는 진폭과 주파수 제곱의 곱에 비례합니다. 그리고 이 값이 speech signal을 생성하는 데 필요한 true energy입니다. 이러한 추가적인 정보는 빠르게 변화하는 에너지의 time-frequency description을 향상시키는 데 도움을 줄 수 있으며, feature vector에 있는 formant information representation도 향상시킬 수 있습니다. contiuous-time signal의 경우, TEO는 다음 식으로 정의됩니다.
위 식에서 $\dot{x}(t)$는 speech signal $x(t)$의 first time derivative를 의미하고, $\ddot{x}(t)$는 second-time derivative를 나타냅니다. TEO's good features는 계산하는 데 간단하고 빠르다는 점이며, real-time continuous speech recognition에서 사용할 수 있다는 점입니다. discrete time signal의 경우, 각 time instance에서 인접한 3개 signal sample만 필요로 하며, 다음과 같이 정의됩니다.
TEO를 활용하는 것 외에도, TECC feature는 MFCC 및 TEMFCC 특징과 비교했을 때, 또 하나의 차별적인 특징을 갖습니다. 이 연구에서는 MFCC와 TEMFCC feature extraction에서 사용하는 Mel-filterbank에 있는 filter 수 (L = 30)와 동일한 수의 filter를 가지는 Gammatone filterbank를 사용합니다. Mel filter는 비대칭적이고 triangular and constant-Q type이지만, Gammatone filter는 비대칭적이고 non-constant-Q type이고, Mel filter와 비교했을 때 더 부드럽고 넓은 대역폭을 갖습니다. Gammatone filterbank는 인간의 달팽이관, basilar membrane 특성을 모방하여 설계된 청각 기반 filterbank입니다. 이는 Mel-filterbank보다 뛰어나며 signal이 noise나 다른 harmful interference에 의해 저하된 signal에서도 robust 한 성능을 보여줍니다. 최근 연구들은 human physiology 특성에 맞춰 auditory filter bandwidth를 정하며, ERB (Equivalent Rectangular Bandwidth) function으로 구합니다.
식으로 나타내면 위와 같습니다. $f_c$는 central frequency를 나타내며 Hz입니다. 이후 asymmetrical Gammatone filter의 impulse response는 다음으로 표현됩니다.
위 식에서 A, b, η는 Gammatone design parameter이고, $f_c$는 filter central frequency를 나타냅니다.
최종적으로 speech signal dynamic을 더 잘 표현하기 위해, MFCC, TECC, TEMFCC feature vector들은 해당 feature의 first (delta) and second-time (delta-delta) derivative를 구해 concatenate 합니다. 이를 통해 각 frame들은 36-dimensional vector로 표현됩니다(12 static feature + 12 delta + 12 delta-delta).
Denoising Autoencoder (DAE)
deep autoencoder는 DNN (Deep Neural Network)의 special type으로, output이 input을 reconstruction 한 결과입니다. 주로 차원 축소 및 feature extraction에서 주로 사용됩니다. 일반적으로 autoencoder는 original feature vector를 표현하는 input layer와 reconstruction을 위한 output layer로 구성됩니다. feature compression이 목표인 경우, hidden layer의 dimension은 input dimension보다 작아도 되며, feature를 더 높은 차원의 space로 mapping 하기 위해선 더 높은 차원을 사용하면 됩니다. autoencoder는 nonlinear function $f_{\theta}(x)$으로 input unit과 hidden node의 deterministic mapping을 학습합니다.
위 식에서 $W$는 $d \times d'$ weight matrix이고 $b$는 bias vector이며, $f_1(\cdot)$은 sigmoid나 tanh과 같은 nonlinear function입니다. 이 mapping을 encoder라 부릅니다. latent representation $y$는 그다음 input signal을 reconstruct 하기 위해 사용됩니다.
위 식에서 $W'$는 $d' \times d$의 weight matrix이며, $b'$는 bias vector이고, $f_2(\cdot)$는 nonlinear function입니다. 이 mapping을 decoder라 부릅니다. 학습의 goal은 다음 squared error function을 minimize 하는 것입니다.
autoencoder가 단순히 identity mapping function을 학습하는 것을 방지하기 위해, 몇몇 constraint를 학습 때 사용합니다. 예를 들어 input signal에 Gaussian noise를 추가하거나 dropout trick을 사용하여 input data에서 특정 value를 0으로 만들어줍니다. 이렇게 input에 noise를 추가하는 autoencoder를 denoising autoencoder (DAE)라 부릅니다. DAE는 autoencoder와 동일한 구조이지만, input data가 손상된 형태의 data입니다. DAE는 corrupted input data ($\hat{x}$ - input signal)을 clean output ($x$ - teacher signal)로 변환하도록 feature mapping을 사용합니다. 저자들은 deep DAE를 이용하여 whispered speech의 cepstral feature vector를 neutral speech의 clean cepstral feature vector로 변환하기 위해 deep DAE를 사용합니다. 구조는 Fig. 4와 같으며, sigmoid function을 사용하는 2개 encoder layer와 linear fuction을 사용하는 decoder layer로 구성됩니다. input layer는 11x36 node로 구성되며, output은 36개 node로 구성됩니다. 즉 11개의 연속된 frame에서 36 cepstral coefficient를 이용하며, 중간의 clean cepstral feature를 output 하는 구조입니다. 36차원 output feature vector는 feature extractor의 original 36차원 feature vector와 함께 GMM-HMM에 feed 됩니다.
학습에서 parallel deteriorated and clean speech data를 사용하며, DDAE는 pseudo-whisper cepstral feature로 pre-train 되고 neutral speech cepstral feature로 fine-tuning 될 수 있습니다. 저자들은 neutral speech sample에 inverse filtering을 적용하고 random Gaussian noise with 10dB SNR을 추가하여 pseudo-whisper sample을 생성하여 사용했습니다. 이러한 pseudo-whisper data는 pre-training process에서 사용되고, neutral speech data를 DDAE를 fine-tuning 할 때 사용됩니다. inverse filtering 이후 noise를 추가하여 더 robust 하게 만들었습니다. 그리고 이를 통해 DDAE가 trivial identity solution을 학습하는 것을 피할 수 있었습니다.
Results
ASR Performance Evaluation - Matched train/test Scenarios
Whi-Spe dataset을 사용하여 GMM-HMM system을 기반으로 수행한 speaker-dependent word recognition 실험 결과를 보입니다. denoising autoencoder 없이 실험을 진행하였으며, 결과는 위와 같습니다. train과 test 모두 neutral을 사용하거나, 둘 다 whisper를 사용한 경우에 대한 실험을 진행하였습니다. TECC + delta + delta-delta가 가장 좋은 성능을 보여주는 것을 알 수 있습니다.
ASR Performance Evaluation - Mismatched train/test Scenarios
ASR system의 일반적인 문제 중 하나는 speaker가 neutral speech에서 whisper speech로 전환하거나, 그 반대의 경우에 발생하는 성능 저하입니다. 이는 train과 test가 mismatch 한 경우이며, 이에 대한 실험을 진행하였고 결과는 위와 같습니다. 저자들이 제안한 TECC + delta + delta-delta가 가장 좋은 성능을 보이는 것을 알 수 있습니다.
이 외에도 저자들은 다양한 실험을 진행하였습니다.
Conclusion
저자들은 널리 사용되는 DDAE를 이용하여 whispered speech recognition이라는 복잡한 ASR 문제를 해결하는 방법을 제안합니다. 즉 DDAE 기반의 새로운 ASR system을 제안하며, 이는 continuous speech recogntion에도 적용될 수 있습니다. Whi-Spe dataset을 활용하여 train/test의 mismatch에서도 뛰어난 성능을 보인다는 것을 입증하였습니다.