{'fraction_non_alphanumeric': 0.03216261417728033, 'fraction_numerical': 0.0096487842531841, 'mean_word_length': 4.86236802413273, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 1, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Deep Denoising Auto-encoder for Statistical Speech Synthesis

This paper proposes a deep denoising auto-encoder technique to extract better acoustic features for speech synthesis. The technique allows us to automatically extract low-dimensional features from high dimensional spectral features in a non-linear, data-driven, unsupervised way. We compared the new stochastic feature extractor with conventional mel-cepstral analysis in analysis-by-synthesis and text-to-speech experiments. Our results confirm that the proposed method increases the quality of synthetic speech in both experiments.


INTRODUCTION
Current statistical parametric speech synthesis typically uses hidden Markov models (HMMs) to represent probability densities of speech trajectories given text [1]. This is a well-established method and it is straightforward to apply this framework for new languages. It also offers interesting advantages in terms of flexibility and compact footprint [2,3,4,5]. It is known, however, that speech synthesized from statistical models still sounds somehow artificial and less natural compared to speech synthesized by the best unit selection systems.
It is often said that averaging in statistical synthesis systems partly removes spectral fine structure of natural speech, and thus there is room for the improving the segmental quality. A stochastic postfilter approach [6] proposes to use a deep neural network (DNN) to model the conditional probability of the spectral differences between natural and synthetic speech. The approach is able to reconstruct the spectral fine structure lost during modeling and has achieved significantly quality improvement for synthetic speech [6]. In this experiment, the HMM-based speech synthesiser was trained in the mel-cepstral domain, while the DNN-based postfiler was trained in the spectral domain.
This indicates that the current statistical parametric speech synthesis suffers from quality loss due to statistical averaging in the melcepstral domain, but also due to conversion from high-dimensional spectral features to lower dimensional mel-cepstral parameters and hence this brings us a new question: are current intermediate representations such as mel-cepstral coefficients appropriate for statistical training of acoustic models? Can we automatically find a more appropriate intermediate representation that suits acoustic modelling and results in better quality of synthetic speech?
The first author performed this work while at the National Institute of Informatics, Japan.
This work was supported in part by EPSRC through Programme Grant EP/I031022/1 (NST) and EP/J002526/1 (CAF). Shinji Takaki was supported in part by NAVER Labs.
To answer this question, this paper proposes a DNN-based feature extraction method. More specifically we propose to use a deep denoising auto-encoder technique as a non-linear robust feature extractor for speech synthesis and apply it to high-dimensional spectral features obtained from STRAIGHT vocoder [7]. We compare this data-driven, unsupervised feature extraction approach with the conventional mel-cepstral analysis, which is based on a linear discrete cosine transform of the log spectrum.
This paper is organised as follows: in Section 2, we outline related DNN-based approaches and in Section 3 we describe the proposed deep denoising auto-encoder technique. In Section 4, we mention how we train the model and the experimental conditions and evaluation results are shown in Section 5. Discussions and the summary of our findings are given in Section 6.

RELATED WORK USING DNN AND AUTO-ENCODER
This section overviews related work using DNN and/or auto-encoder in the speech information processing field. DNN has been applied for acoustic modelling of speech synthesis. For instance [8] uses DNN to learn the relationship between input texts and the extract features instead of decision tree-based state tying. Restricted Boltzmann machines or deep belief networks have been used for modelling output probabilities of HMM states instead of GMMs [9]. Recurrent neural network or long-short term memory was used for prosody modelling [10] or acoustic trajectory modelling [11].
To the best of our knowledge, this is the first work to use deep denoising auto-encoder for speech synthesis, but, deep auto-encoder based bottleneck features are used by several groups for ASR [12,13] and deep denoising auto-encoder is also verified for noise-robust ASR [14] or reverberant ASR tasks [15,16].
Techniques that are closely related to this paper are a spectral binary coding approach using deep auto-encoder proposed by Deng et al [17] and a speech enhancement approach using deep denoising auto-encoder where they try to reconstruct clean spectrum from noisy spectrum [18]. The approach proposed here is also related to heteroscedastic linear discriminant analysis (HLDA) [19,20] and probabilistic linear discriminant analysis (PLDA) [21,22,23]. Our key idea is however different from these as we use deep auto-encoder based continuous bottleneck features calculated from spectrum to reconstruct high-quality synthetic speech.

Basic Auto-encoder
Auto-encoder is an artificial neural network that is used generally for learning a compressed and distributed representation of a dataset. It consists of the encoder and the decoder. The encoder maps a input arXiv:1506.05268v1 [cs.SD] 17 Jun 2015 vector x to a hidden representation y as follows: where θ = {W, b}. W and b represent a m × n weight matrix and a bias vector of dimensionality m respectively, where n is the dimension of x. The function s is a non-linear transformation on the linear mapping Wx + b. Frequently s is a sigmoid, a tanh, and a relu function. y, the output of the encoder, is then mapped to z, the output of the decoder. The mapping is performed by a linear function alone that employs a n × m weight matrix W and a bias vector of dimensionality n as follows: or a linear mapping followed by a non-linear transformation t, where θ = {W , b }. The weight for the decoding is set as the transpose of the encoding weight [24] in order to allow more layers to be stacked together and be fine-tuned with stochastic gradient descend (SGD).
In general, the output z should be interpreted as a function of parameters {θ, θ } as z = g θ (f θ (x)). The parameters {θ, θ } are optimized such that the reconstructed z is as close as possible to the original x and maximizes P (x|z). A typical loss function used is the mean square error (MSE), i.e. L(x, z) = 1 n |x − z| 2 .

Denoising Auto-encoder
The denoising auto-encoder is a variant of the basic auto-encoder. It is reported that the denoising auto-encoder can extract features more robustly than the basic auto-encoder [25]. In the denoising auto-encoder, the original data x is first corrupted tox before it is mapped to a higher representation f θ (x) by an encoder. The decoder then maps the higher representation to the output z for reconstructing the original x. The denoising auto-encoder is trained such that the reconstructed z is as close as possible to the original data x. Note that it is only during training that the denoising auto-encoder is used to reconstruct the original x from the corruptedx.

Deep Auto-encoder
Auto-encoder or denoisng auto-encoder can be made deeper by stacking multiple layers of encoders and decoders to form a deep architecture. [26] shows that deeper architecture produces better high-level features compared to the shallow architecture up to 4 encoding and 4 decoding layers. For constructing a deep auto-encoder pre-training is widely used. In pre-training, the number of layers in a deep auto-encoder increases twice as compare to a deep neural network (DNN) when stacking each pre-trained unit. It is reported that fine-tuning with back-propagation through a deep auto-encoder is ineffective due to vanishing gradients at the lower layers [27]. To over come this issue we restrict the decoding weight as the transpose of the encoding weight following [24], that is, W = W T where W T denotes transpose of W. We describe the detail of training a deep auto-encoder in the next session.  pre-training. In pre-training a 1-hidden-layer auto-encoder is trained and the encoding output of the locally trained layer is used as the input for the next layer. This layer-wise training is repeated until the desired layer size is obtained. The encoding, decoding and loss functions of each layer are represented as follows: Layer k (k>1): Note that during the pre-training of the deep denoising auto-encoder, the input x, y k for each layer are corrupted tox andỹ k respectively. After all layers are pre-trained, all the pre-trained layers are stacked for constructing a deep denoising auto-encoder in the same way as the deep auto-encoder.

Fine-tuning
The purpose of fine-tuning is to minimize the reconstruction error L(x, z) over the entire dataset and a model architecture using error back-propagation [28]. We use the mean square error (MSE) for the loss function of a deep auto-encoder and it is represented as follows: where N is the total number of training examples. The partial derivatives w.r.t weight w (l) i,j is represented as follows: where t  is the error transfer function which can be calculated recursively following i,j . For the output tanh layer we have Once we have the gradients of error function w.r.t to the weight parameters, we can fine-tune the network with error backpropagation.

Corrupted data
We used a masking technique reported in [25] to corrupt the training data for the denoising auto-encoder. This technique independently and randomly set the values of the training data in different dimensions to zero following a Bernoulli distribution. Figure 2 shows an example of original and masked spectra. In this figure, black points indicate masked regions.

EVALUATION
This section shows experimental results. We have evaluated the proposed auto-encoder method in the context of analysis-by-synthesis condition and text-to-speech conditions. In the text-to-speech experiments, the synthetic voices using the proposed acoustic features were modeled using two state-of-the-art speech synthesis systems: HMM and DNN.

Dataset
The dataset we use consists of 4569 short audio waveforms uttered by a professional English female speaker and each waveform is around 5 seconds long. For each waveform, we first extract its frequency spectra using STRAIGHT vocoder with 2049 FFT points. We then extract the low dimensional feature from each 2049-dim STRAIGHT spectrum using autoencoder. All data was sampled at 48 kHz. For comparison of the proposed method, we extracted mel-cepstral coefficients that use the same dimensions as that of auto-encoder. All other acoustic features such as log F0 and 25 aperiodicity band energies are the same for all the systems.   [29], d: masking probability of each input dimension [25].  Figure 3 shows the reconstruction mean square errors of autoencoders trained on raw frequency-warped spectrum with different number of hidden layers. It shows that the error decreases with more hidden layers, and that deep auto-encoder is better than shallow auto-encoder with the same bottleneck dimension. For the results in the rest of paper, we use architecture of the auto-encoder as 2049-500-180-120 for producing the 120-dim acoustic features, tanh units for all the layers and the inputs are 2049-dim Bark-scalebased frequency-warped spectrum, which are preprocessed with global contrast normalization. The hyperparameters used for the layer-by-layer pre-training are searched randomly and the set of values that produce the best results are selected. Table 1 shows the hyperparameters for the auto-encoders used in the experiments.

Analysis-by-synthesis experimental results
First we report the analysis-by-synthesis experimental results. For this evaluation, we have divided the above database into three subsets, that is, training, validation and test. The training subset was used as training data for building the auto-encoder, the validation subset was used as a stopping criteria during training to prevent overfitting, and the test subset was used for measuring log-spectral distortion and listening test. Figure 4 shows the original and reconstructed spectra using each technique (mel-cepstral analysis, deep auto-encoder, deep denoising auto-encoder). We can clearly see that the deep auto-encoders reconstruct high-frequency parts more precisely than mel-cepstral analysis. Figure 5 shows log spectral distortion between the original spectra and reconstructed spectra, calculated on the test subset. We can observe that the deep auto-encoder has reduced the distortion significantly compared to the mel-cepstral analysis and denoising version further reduced the distortion. Figure 6 shows subjective preference scores of these methods. The number of listeners   that performed this test were seven. They have participated in two preference tests. In the first preference test, they were asked to compare deep auto-encoder (DA) with mel-cepstral analysis (MCEP). In the second preference test, they were asked to compare deep autoencoder with deep denoising autoencoder (DDA). From the figure, we can see that deep auto-encoder based speech samples sound more natural than mel-cesptral analysis based speech samples. Deep denoising auto-encoder reduced the distortion, however, perceptual difference between clean and denoising auto-encoder is not statistically significant.

Text-to-speech experimental results
Next we report the text-to-speech experimental results. For the HMM-based speech synthesis, we have used a hidden semi-Markov model and the observation vectors for the spectral and excitation parameters contained static, delta and delta-delta values, with one stream for the spectrum, three streams for F0 and one for the bandlimited aperiodicity. The context-dependnet labels are built using the pronunciation lexicon Combilex [30]. For the DNN-based speech synthesis, we have trained a five-hidden-layer DNN for mapping between linguistic contexts and auto-encoder-based or mel-cepstral acoustic features. The number of units in each of the hidden layers was set to 512. Random initialisation was used in a similar way to [8]. Figure 7 shows subjective preference scores where we have compared the proposed auto-encoder feature with the conventional mel-cepstral feature in each of the HMM-based speech synthesis and the DNN-based speech synthesis systems. Listeners are the same as those for Figure 6. We can see that synthetic speech using the proposed feature sound more natural than the conventional mel-cepstral features in both the synthesis methods. The proposed feature seems to suit the DNN-based speech synthesis better, but, this requires further investigation.

CONCLUSIONS
In this paper we have proposed the deep denoising auto-encoder technique to extract better acoustic features for speech synthesis. We have compared the new stochastic feature extractor with the conventional mel-cepstral analysis in the analysis-by-synthesis and text-tospeech experiments and have confirmed that the proposed method can increase the quality of synthetic speech in both the conditions. Our future work includes the improvement of the deep denoising auto-encoder. In this paper, we have used the simplest noise, i.e. masking and the improvement was observed only from objective evaluation. We shall use or design different types of noises to improve the deep denoising auto-encoder for speech synthesis further.