MelNet: A Generative Model for Audio in the Frequency Domain

Sean Vasquez, Mike Lewis

Introduction

Audio waveforms have complex structure at drastically varying timescales, which presents a challenge for generative models. Local structure must be captured to produce high-fidelity audio, while long-range dependencies spanning tens of thousands of timesteps must be captured to generate audio which is globally consistent. Existing generative models of waveforms such as WaveNet and SampleRNN are well-adapted to model local dependencies, but as these models typically only backpropagate through a fraction of a second, they are unable to capture high-level structure that emerges on the scale of several seconds.

We introduce a generative model for audio which captures longer-range dependencies than existing end-to-end models. We primarily achieve this by modelling 2D time-frequency representations such as spectrograms rather than 1D time-domain waveforms (Figure 1). The temporal axis of a spectrogram is orders of magnitude more compact than that of a waveform, meaning dependencies that span tens of thousands of timesteps in waveforms only span hundreds of timesteps in spectrograms. In practice, this enables our spectrogram models to generate unconditional speech and music samples with consistency over multiple seconds whereas time-domain models must be conditioned on intermediate features to capture structure at similar timescales. Additionally, it enables fully end-to-end text-to-speech—a task which has yet to be proven feasible with time-domain models.

Modelling spectrograms can simplify the task of capturing global structure, but can weaken a model’s ability to capture local characteristics that correlate with audio fidelity. Producing high-fidelity audio has been challenging for existing spectrogram models, which we attribute to the lossy nature of spectrograms and oversmoothing artifacts which result from insufficiently expressive models. To reduce information loss, we model high-resolution spectrograms which have the same dimensionality as their corresponding time-domain signals. To limit oversmoothing, we use a highly expressive autoregressive model which factorizes the distribution over both the time and frequency dimensions.

Modelling both fine-grained details and high-level structure in high-dimensional distributions is known to be challenging for autoregressive models. To capture both local and global structure in spectrograms with hundreds of thousands of dimensions, we employ a multiscale approach which generates spectrograms in a coarse-to-fine manner. A low-resolution, subsampled spectrogram that captures high-level structure is generated initially, followed by an iterative upsampling procedure that adds high-resolution details.

Combining these representational and modelling techniques yields a highly expressive, broadly applicable, and fully end-to-end generative model of audio. Our contributions are:

We introduce MelNet, a generative model for spectrograms which couples a fine-grained autoregressive model and a multiscale generation procedure to jointly capture local and global structure.

We show that MelNet is able to model longer-range dependencies than existing time-domain models.

We demonstrate that MelNet is broadly applicable to a variety of audio generation tasks—capable of unconditional speech generation, music generation, and text-to-speech synthesis, entirely end-to-end.

Preliminaries

We briefly present background regarding spectral representations of audio. Audio is represented digitally as a one-dimensional, discrete-time signal y=(y1,,yn)y=(y_{1},\ldots,y_{n}). Existing generative models for audio have predominantly focused on modelling these time-domain signals directly. We instead model spectrograms, which are two-dimensional time-frequency representations which contain information about how the frequency content of an audio signal varies through time. Spectrograms are computed by taking the squared magnitude of the short-time Fourier transform (STFT) of a time-domain signal, i.e. x=STFT(y)2x=\|\text{STFT}(y)\|^{2}. The value of xijx_{ij} (referred to as amplitude or energy) corresponds to the squared magnitude of the jthj{\text{th}} element of the frequency response at timestep ii. Each slice xi,x_{i,*} is referred to as a frame. We assume a time-major ordering, but following convention, all figures are displayed transposed and with the frequency axis inverted.

Time-frequency representations such as spectrograms highlight how the tones and pitches within an audio signal vary through time. Such representations are closely aligned with how humans perceive audio. To further align these representations with human perception, we convert the frequency axis to the Mel scale and apply an elementwise logarithmic rescaling of the amplitudes. Roughly speaking, the Mel transformation aligns the frequency axis with human perception of pitch and the logarithmic rescaling aligns the amplitude axis with human perception of loudness.

Spectrograms are lossy representations of their corresponding time-domain signals. The Mel transformation discards frequency information and the removal of the STFT phase discards temporal information. When recovering a time-domain signal from a spectrogram, this information loss manifests as distortion in the recovered signal. To minimize these artifacts and improve the fidelity of generated audio, we model high-resolution spectrograms. The temporal resolution of a spectrogram can be increased by decreasing the STFT hop size, and the frequency resolution can be increased by increasing the number of mel channels. Generated spectrograms are converted back to time-domain signals using classical spectrogram inversion algorithms. We experiment with both Griffin-Lim and a gradient-based inversion algorithm , and ultimately use the latter as it generally produced audio with fewer artifacts.

Probabilistic Model

We use an autoregressive model which factorizes the joint distribution over a spectrogram xx as a product of conditional distributions. Given an ordering of the dimensions of xx, we define the context x<ijx_{<ij} as the elements of xx that precede xijx_{ij}. We default to a row-major ordering which proceeds through each frame xi,x_{i,*} from low to high frequency, before progressing to the next frame. The joint density is factorized as

where θij\theta_{ij} parameterizes a univariate density over xijx_{ij}. We model each factor distribution as a Gaussian mixture model with KK components. Thus, θij\theta_{ij} consists of 3K3K parameters corresponding to means {μijk}k=1K\{\mu_{ijk}\}_{k=1}^{K}, standard deviations {σijk}k=1K\{\sigma_{ijk}\}_{k=1}^{K}, and mixture coefficients {πijk}k=1K\{\pi_{ijk}\}_{k=1}^{K}. The resulting factor distribution can then be expressed as

Following the work on Mixture Density Networks and their application to autoregressive models , θij\theta_{ij} is modelled as the output of a neural network and computed as a function of the context x<ijx_{<ij}. Precisely, for some network ff with parameters ψ\psi, we have θij=f(x<ij; ψ)\theta_{ij}=f(x_{<ij};\ \psi). A maximum-likelihood estimate for the network parameters is computed by minimizing the negative log-likelihood via gradient descent.

These transformations ensure the standard deviations σijk\sigma_{ijk} are positive and the mixture coefficients πijk\pi_{ijk} sum to one.

Network Architecture

To model the distribution in an autoregressive manner, we design a network which computes the distribution over xijx_{ij} as a function of the context x<ijx_{<ij}. The network architecture draws inspiration from existing autoregressive models for images . In the same way that these models estimate a distribution pixel-by-pixel over the spatial dimensions of an image, our model estimates a distribution element-by-element over the time and frequency dimensions of a spectrogram. A noteworthy distinction is that spectrograms are not invariant to translation along the frequency axis, making the use of 2D convolution undesirable. Utilizing multidimensional recurrence instead of 2D convolution has been shown to be beneficial when modelling spectrograms in discriminative settings , which motivates our use of an entirely recurrent architecture.

Similar to Gated PixelCNN , the network has multiple stacks of computation. These stacks extract features from different segments of the input to collectively summarize the full context x<ijx_{<ij}:

The time-delayed stack computes features which aggregate information from all previous frames x<i,x_{<i,*}.

The frequency-delayed stack utilizes all preceding elements within a frame, xi,<jx_{i,<j}, as well as the outputs of the time-delayed stack, to compute features which summarize the full context x<ijx_{<ij}.

The stacks are connected at each layer of the network, meaning that the features generated by layer ll of the time-delayed stack are used as input to layer ll of the frequency-delayed stack. To facilitate the training of deeper networks, both stacks use residual connections . The outputs of the final layer of the frequency-delayed stack are used to compute the unconstrained parameters θ^\hat{\theta}.

The time-delayed stack utilizes multiple layers of multidimensional RNNs to extract features from x<i,x_{<i,*}, the two-dimensional region consisting of all frames preceding xijx_{ij}. Each multidimensional RNN is composed of three one-dimensional RNNs: one which runs forwards along the frequency axis, one which runs backwards along the frequency axis, and one which runs forwards along the time axis. Each RNN runs along each slice of a given axis, as shown in Figure 2. The output of each layer of the time-delayed stack is the concatenation of the three RNN hidden states.

We denote the function computed at layer ll of the time-delayed stack (three RNNs followed by concatenation) as Flt\mathcal{F}^{t}_{l}. At each layer, the time-delayed stack uses the feature map from the previous layer, ht[l1]h^{t}[l-1], to compute the subsequent feature map \mathcal{F}^{t}_{l}\big{(}h^{t}[l-1]\big{)} which consists of the three concatenated RNN hidden states. When using residual connections, the computation of ht[l]h^{t}[l] from ht[l1]h^{t}[l-1] becomes

To ensure the output hijt[l]h^{t}_{ij}[l] is only a function of frames which lie in the context x<ijx_{<ij}, the inputs to the time-delayed stack are shifted backwards one step in time:

2 Frequency-Delayed Stack

The frequency-delayed stack is a one-dimensional RNN which runs forward along the frequency axis. Much like existing one-dimensional autoregressive models (language models, waveform models, etc.), the frequency-delayed stack operates on a one-dimensional sequence (a single frame) and estimates the distribution for each element conditioned on all preceding elements. The primary difference is that it is also conditioned on the outputs of the time-delayed stack, allowing it to use the full two-dimensional context x<ijx_{<ij}.

We denote the function computed by the frequency-delayed stack as Flf\mathcal{F}^{f}_{l}. At each layer, the frequency-delayed stack takes two inputs: the the previous-layer outputs of the frequency-delayed stack, hf[l1]h^{f}[l-1], and the current-layer outputs of the time-delayed stack ht[l]h^{t}[l]. These inputs are summed and used as input to a one-dimensional RNN to produce the output feature map \mathcal{F}^{f}_{l}\big{(}h^{f}[l-1],\ h^{t}[l]\big{)} which consists of the RNN hidden state:

To ensure that hijf[l]h^{f}_{ij}[l] is computed using only elements in the context x<ijx_{<ij}, the inputs to the frequency-delayed stack are shifted backwards one step along the frequency axis:

At the final layer, layer LL, a linear map is applied to the output of the frequency-delayed stack to produce the unconstrained parameters:

3 Centralized Stack

The recurrent state of the time-delayed stack is distributed across an array of RNN cells which tile the frequency axis. To allow for a more centralized representation, we optionally include an additional stack consisting of an RNN which, at each timestep, takes an entire frame as input and outputs a single vector consisting of the RNN hidden state. Denoting this function as Flc\mathcal{F}^{c}_{l} gives the layer update

Similar to the time-delayed stack, the centralized stack operates on frames which are shifted backwards one step along the time axis:

The output of the centralized stack is input to the frequency-delayed stack at each layer, meaning that the frequency-delayed stack is a function of three inputs: hf[l1]h^{f}[l-1], ht[l]h^{t}[l], and hc[l]h^{c}[l]. These three inputs are simply summed and used as input to the RNN in the frequency-delayed stack.

4 Conditioning

To incorporate conditioning information into the model, conditioning features zz are simply projected onto the input layer along with the inputs xx, altering Equations 7 and 9:

Reshaping, upsampling, and broadcasting can be used as necessary to ensure the conditioning features have the same time and frequency shape as the input spectrogram, e.g. a one-hot vector representation for speaker ID would first be broadcast along both the time and frequency axes.

Learned Alignment

The original formulation parameterizes ϕi(  ; γi)\phi_{i}(\ \cdot\ ;\ \gamma_{i}) as an unnormalized Gaussian mixture model, whereas we use a discretized mixture of logistics . In either case, the distribution is parameterized by γi={κim,βim,αim}m=1M\gamma_{i}=\{\kappa_{i}^{m},\beta_{i}^{m},\alpha_{i}^{m}\}_{m=1}^{M}, corresponding to MM means, scales, and mixture coefficients. We define the function gg as a trainable linear mapping of the RNN hidden state hih_{i} followed by transformations which constrain the mixture coefficients αim\alpha_{i}^{m} to sum to one, the scales βim\beta_{i}^{m} to be positive, and the means κim\kappa_{i}^{m} to be monotonically increasing with ii:

The resulting mixture of logistics distribution parameterized by γi\gamma_{i} has the distribution function

which is then used to compute the discretized attention distribution

The network needs a criterion by which it can determine whether it has finished ‘reading’ the text and can terminate sampling. If we interpret ϕi(u; γi)\phi_{i}(u;\ \gamma_{i}) as the network’s belief that it is reading character cuc_{u} at timestep ii, then the network’s belief that it has passed the final character cUc_{U} is U+1ϕi(u; γi)\sum_{U+1}^{\infty}\phi_{i}(u;\ \gamma_{i}), which can be expressed in closed form as Fi(U+0.5; γi)\overline{F}_{i}(U+0.5;\ \gamma_{i}) where Fi\overline{F}_{i} is the survival function 1Fi1-F_{i}. We stop sampling based on a simple threshold of this value, terminating at the first timestep ii such that Fi(U+0.5; γi)>τ\overline{F}_{i}(U+0.5;\ \gamma_{i})>\tau. We compute an estimate for τ\tau after the network is trained, using the empirical mean τ^=1Nn=1NFTn(Un+0.5; γTn)\hat{\tau}=\frac{1}{N}\sum_{n=1}^{N}\overline{F}_{T_{n}}(U_{n}+0.5;\ \gamma_{T_{n}}).

Multiscale Modelling

To improve audio fidelity, we generate high-resolution spectrograms which have the same dimensionality as their corresponding time-domain representations. Under this regime, a single training example has several hundreds of thousands of dimensions. Capturing global structure in such high-dimensional distributions is challenging for autoregressive models, which are biased towards capturing local dependencies. To counteract this, we utilize a multiscale approach which effectively permutes the autoregressive ordering so that a spectrogram is generated in a coarse-to-fine order.

The elements of a spectrogram xx are partitioned into GG tiers x1,,xGx^{1},\ldots,x^{G}, such that each successive tier contains higher-resolution information. We define x<gx^{<g} as the union of all tiers which precede xgx^{g}, i.e. x<g = (x1,,xg1)x^{<g}~{}=~{}(x^{1},\ldots,x^{g-1}). The distribution is factorized over tiers:

and the distribution of each tier is further factorized element-by-element as described in Section 3. We explicitly include the parameterization by ψ=(ψ1,,ψG)\psi=(\psi^{1},\ldots,\psi^{G}) to indicate that each tier is modelled by a separate network.

During training, the tiers are generated by recursively partitioning a spectrogram into alternating rows along either the time or frequency axis. We define a function split which partitions an input into even and odd rows along a given axis. The initial step of the recursion applies the split function to a spectrogram xx, or equivalently x<G+1x^{<G+1}, so that the even-numbered rows are assigned to xGx^{G} and the odd-numbered rows are assigned to x<Gx^{<G}. Subsequent tiers are defined similarly in a recursive manner:

At each step of the recursion, we model the distribution p(xgx<g; ψg)p(x^{g}\mid x^{<g};\ \psi^{g}). The final step of the recursion models the unconditional distribution over the initial tier p(x1; ψ1)p(x^{1};\ \psi^{1}).

To model the conditional distribution p(xgx<g; ψg)p(x^{g}\mid x^{<g};\ \psi^{g}), the network at each tier needs a mechanism to incorporate information from the preceding tiers x<gx^{<g}. To this end, we add a feature extraction network which computes features from x<gx^{<g} which are used to condition the generation of xgx^{g}. We use a multidimensional RNN consisting of four one-dimensional RNNs which run bidirectionally along slices of both axes of the context x<gx^{<g}. A layer of the feature extraction network is similar to a layer of the time-delayed stack, but since the feature extraction network is not causal, we include an RNN which runs backwards along the time axis and do not shift the inputs. The hidden states of the RNNs in the feature extraction network are used to condition the generation of xgx^{g}. Since each tier doubles the resolution, the features extracted from x<gx^{<g} have the same time and frequency shape as xgx^{g}, allowing the conditioning mechanism described in section 4.4 to be used straightforwardly.

2 Sampling

To sample from the multiscale model we iteratively sample a value for xgx^{g} conditioned on x<gx^{<g} using the learned distributions defined by the estimated network parameters ψ^=(ψ^1,,ψ^G)\hat{\psi}=(\hat{\psi}^{1},\ldots,\hat{\psi}^{G}). The initial tier, x1x^{1}, is generated unconditionally by sampling from p(x1; ψ^1)p(x^{1};\ \hat{\psi}^{1}) and subsequent tiers are sampled from p(xgx<g; ψ^g)p(x^{g}\mid x^{<g};\ \hat{\psi}^{g}). At each tier, the sampled xgx^{g} is interleaved with the context x<gx^{<g}:

The interleave function is simply the inverse of the split function. Sampling terminates once a full spectrogram, x<G+1x^{<G+1}, has been generated. A spectrogram generated by a multiscale model is shown in Figure 5 and the sampling procedure is visualized schematically in Figure 6.

Experiments

To demonstrate the MelNet is broadly applicable as a generative model for audio, we train the model on a diverse set of audio generation tasks using four publicly available datasets. We explore three unconditional audio generation tasks (single-speaker speech generation, multi-speaker speech generation, and music generation) as well as two text-to-speech tasks (single-speaker TTS and multi-speaker TTS). Generated audio samples for each task are available on the accompanying web page.https://audio-samples.github.io We include samples generated using the priming and biasing procedures described by Graves . Biasing lowers the temperature of the distribution at each timestep and priming seeds the model state with a given sequence of audio prior to sampling.

Speech and music have rich hierarchies of latent structure. Speech has complex linguistic structure (phonemes, words, syntax, semantics, etc.) and music has highly compositional musical structure (notes, chords, melody and rhythm, etc.). The presence of these latent structures in generated samples can be used as a proxy for how well a generative model has learned dependencies at various timescales. As such, a qualitative analysis of unconditional samples is an insightful method of evaluating generative models of audio. We train MelNet on three unconditional audio generation tasks—single-speaker speech generation, multi-speaker speech generation, and music generation. For completeness, the sections below include brief discussions and qualitative observations regarding the generated samples. However, it is not possible to convey the many characteristics of the generated samples in text and we highly encourage the reader to listen to the audio samples and make their own judgments. In addition to qualitative analysis, we quantitatively compare MelNet to a WaveNet baseline across each of the three unconditional generation tasks.

To test the model’s ability to model a single speaker in a controlled environment, we utilize the Blizzard 2013 dataset , which consists of audiobook narration performed in a highly animated manner by a professional speaker. We use a 140 hour subset of this dataset for which we were able to find transcriptions, making the dataset also suitable for future text-to-speech experiments. We find that MelNet frequently generates samples that contain coherent words and phrases. Even when the model generates incoherent speech, the intonation, prosody, and speaker characteristics remain consistent throughout the duration of the sample. Furthermore, the model learns to produce speech using a variety of character voices and learns to generate samples which contain elements of narration and dialogue. Biased samples tend to contain longer strings of comprehensible words but are read in a less expressive fashion. When primed with a real sequence of audio, MelNet is able to continue sampling speech which has consistent speaking style and intonation.

1.2 Multi-Speaker Speech

Audiobook data is recorded in a highly controlled environment. To demonstrate MelNet’s capacity to model distributions with significantly more variation, we utilize the VoxCeleb2 dataset . The VoxCeleb2 dataset consists of over 2,000 hours of speech data captured with real world noise including laughter, cross-talk, channel effects, music and other sounds. The dataset is also multilingual, with speech from speakers of 145 different nationalities, covering a wide range of accents, ages, ethnicities and languages. When trained on the VoxCeleb2 dataset, we find that MelNet is able to generate unconditional samples with significant variation in both speaker characteristics (accent, language, prosody, speaking style) as well as acoustic conditions (background noise and recording quality). While the generated speech is generally not comprehensible, samples can often be identified as belonging to a specific language, indicating that the model has learned distinct modalities for different languages. Furthermore, it is difficult to distinguish real and fake samples which are spoken in foreign languages. For foreign languages, semantic structures are not understood by the listener and cannot be used to discriminate between real and fake. Consequently, the listener must rely largely on phonetic structure, which MelNet is able to realistically model.

1.3 Music

To show that MelNet can model audio modalities other than speech, we apply the model to the task of unconditional music generation. We utilize the MAESTRO dataset , which consists of over 172 hours of solo piano performances. The samples demonstrate that MelNet learns musical structures such as melody and harmony. Furthermore, generated samples often maintain consistent tempo and contain interesting variation in volume, timbre, and rhythm.

1.4 Human Evaluation

Making quantitative comparisons with existing generative models such as WaveNet is difficult for various reasons. While WaveNet and MelNet both produce exact density estimates, these models cannot be directly compared using log-likelihood as they operate on different representations. We instead resort to comparing both models by evaluating their ability to model long-range dependencies. To make this comparison quantitatively, we conduct an experiment where we provide an anonymized ten second sample from both models to human evaluators and ask them to identify the sample which exhibits longer-term structure. Further details of the methodology for this experiment are provided in Appendix A.1. We conduct this experiment for each of the three unconditional audio generation tasks and report results in Table 2(a). Evaluators overwhelmingly agreed that samples generated by MelNet had more coherent long-range structure than samples from WaveNet. Samples from both models are included on the accompanying web page.

In addition to comparing MelNet to an unconditional WaveNet model for music generation, we also compare to a two-stage Wave2Midi2Wave model which conditions WaveNet on MIDI generated by a separately-trained Music Transformer . Results, shown in Table 2(b), show that despite having the advantage of directly modelling the musical notes, the two-stage model does not capture long-range structure as well as a MelNet model that is trained entirely end-to-end.

2 Text-to-Speech Synthesis

We apply MelNet to the tasks of single-speaker and multi-speaker TTS. As was done for the unconditional tasks, we provide audio samples on the accompanying web page and provide a brief qualitative analysis of samples in the following sections. We then quantitatively evaluate our text-to-speech models on the task of density estimation.

To assess MelNet’s ability to perform the task of single-speaker text-to-speech, we again use the audiobook data from the Blizzard 2013 dataset, including the corresponding transcriptions. As the dataset contains speech which is spoken in a highly expressive manner with significant variation, the distribution of audio given text is highly multimodal. To demonstrate that MelNet has learned to model these modalities, we include multiple speech samples for a given text. The samples demonstrate that MelNet learns to produce diverse vocalizations for the same text, many of which we are unable to easily distinguish from ground truth data. Furthermore, MelNet learns to infer speaking characteristics from text—samples which contain dialogue are read using various character voices, while narrative text is read in a relatively inexpressive manner. When primed with a sequence of audio, MelNet effectively infers speaker characteristics and can perform text-to-speech on unseen text while preserving the speaking style of the priming sequence.

2.2 Multi-Speaker TTS

We also train MelNet on a significantly more challenging multi-speaker dataset. The TED-LIUM 3 dataset consists of 452 hours of recorded TED talks. The dataset has various characteristics that make it particularly challenging. Firstly, the transcriptions are unpunctuated, unnormalized, and contain errors. Secondly, speaker IDs are noisy, as they do not discriminate between multiple speakers within a given talk, e.g. questions from interviewers and audience members. Lastly, the dataset includes significant variation in recording conditions, speaker characteristics (over 2,000 unique speakers with diverse accents), and background noise (applause and background music are common). Despite this, we find that MelNet is capable of producing realistic text-to-speech samples and can generate samples for different speakers by conditioning on different speaker IDs. Generated samples also contain speech disfluencies (e.g. umms and ahhs), repeated and skipped words, applause, laughter, and various other idiosyncrasies which result from the noisy nature of the data.

2.3 Density Estimation

Generative models trained with maximum-likelihood are most directly evaluated by the likelihood they assign to unseen data. Similar to MelNet, many existing works for end-to-end TTS are designed to model two-dimensional spectral features. However, density estimates cannot be used straightforwardly for comparison because existing TTS models generally do not use log-likelihood as a training objective. To make density estimation comparisons possible, we instead define a set of surrogate models which encode assumptions made by existing TTS models and compare the density estimates of these models to our own:

Diagonal Gaussian The vast majority of end-to-end TTS systems such as Tacotron , DeepVoice , VoiceLoop , Char2Wav , and ClariNet utilize a coarse autoregressive model, where spectral features are factorized as a product of per-frame factors. The elements within each frame are assumed to be conditionally independent and unimodal (given all preceding frames). To represent this class of models, we use a model which factorizes the distribution over frames

VAE: Global z Subsequent works have used a similar frame-level factorization, but utilized a variational autoencoder (VAE) to jointly model a latent variable zz which conditions the generation of each frame. The joint distribution p(x,z)p(x,z) is decomposed as p(z)p(xz)p(z)p(x\mid z), where

As before, the conditional distribution over each frame, p(xi,x<i,,z)p(x_{i,*}\mid x_{<i,*},z), is modelled as a Gaussian with diagonal covariance.

VAE: Local z We also introduce a more expressive VAE which differs only in that it utilizes a sequence of latent variables z=(z1,,zT)z=(z_{1},\ldots,z_{T}) instead of a single global latent variable:

MelNet To represent the model introduced in this work, we use the probabilistic model described in Section 3, as well as a Gaussian variant which simply replaces the GMM with a univariate Gaussian.

We constrain each model to use roughly the same number of parameters and briefly tune hyperparameters to ensure each model is reasonably representative of the potential of each probabilistic model. We found that the variation resulting from hyperparameters was relatively small in comparison to the margins between different probabilistic models. Further details for these models can be found in Appendix A.3.

Results shown in Table 3 demonstrate that fine-grained autoregressive model used by MelNet can greatly improve density estimates for both unconditional speech generation and TTS. The results also demonstrate that the unimodality and independence assumptions made by existing TTS models are detrimental to density estimates. Conditioning on latent variables relaxes these independence assumptions and improves performance, though density estimates by VAE models are still inferior to a full autoregressive factorization. Furthermore, even with a fine-grained factorization, it is beneficial to utilize a multimodal distribution to model the conditional distribution over each element.

Related Work

The predominant line of research regarding generative models for audio has been directed towards modelling time-domain waveforms with autoregressive models . WaveNet is a competitive baseline for audio generation, and as such, is used for comparison in many of our experiments. However, we note that the contribution of our work is in many ways complementary to that of WaveNet. MelNet is more proficient at capturing high-level structure, whereas WaveNet is capable of producing higher-fidelity audio. Several works have demonstrated that time-domain models can be used to invert spectral representations to high-fidelity audio , suggesting that MelNet could be used in concert with time-domain models such as WaveNet.

In this work, we tackle the problem of jointly learning global and local structure in an end-to-end manner. This is in contrast to various works which circumvent the problem of capturing high-level structure by conditioning waveform generation on intermediate features. Notable such examples include the application of WaveNet to the tasks of text-to-speech and MIDI-conditional music generation . In the case of TTS, WaveNet depends on a traditional TTS pipeline to produce finely annotated linguistic features (phones, syllables, stress, etc.) as well as pitch and timing information. In the case of MIDI-conditional music generation, WaveNet relies upon a symbolic music representation (MIDI) which contains the pitch, volume, and timing of notes. These approaches require datasets with annotated features and are dependent upon human knowledge to determine appropriate domain-specific representations. In contrast to these approaches, MelNet does not require any intermediate supervision. MelNet is capable of learning TTS in an entirely end-to-end manner, whereas waveform models have not yet demonstrated the capacity to perform TTS without the assistance of intermediate linguistic features. Additionally, we demonstrate that MelNet uncovers high-level musical structure as well as two-stage models that separately model intermediate MIDI representations .

Dieleman et al. and van den Oord et al. capture long-range dependencies in waveforms by utilizing a hierarchy of autoencoders. This approach requires multiple stages of models which must be trained sequentially, whereas the multiscale approach in this work can be parallelized over tiers. Additionally, these approaches do not directly optimize the data likelihood, nor do they admit tractable marginalization over the latent codes. We also note that the modelling techniques devised in these works can be broadly applied to autoregressive models such as ours, making their contributions largely complementary to ours.

Recent works have used generative adversarial networks (GANs) to model both waveforms and spectral representations . As with image generation, it remains unclear whether GANs capture all modes of the data distribution. Furthermore, these approaches are restricted to generating fixed-duration segments of audio, which precludes their usage in many audio generation tasks.

Many existing end-to-end TTS models are designed to generate a single high-quality sample for a given text . MelNet instead focuses on modelling the full breadth of the conditional distribution of audio given text. We use the task of density estimation to demonstrate that MelNet captures this distribution better than probabilistic models that are commonly used by existing TTS systems, and we show that unimodality and independence assumptions made by existing TTS models are overly restrictive. Utilizing a more flexible probabilistic model allows MelNet to generate spectrograms with realistic textures without oversmoothing or blurring. This enables generated spectrograms to be directly inverted to high-fidelity audio using classical spectrogram inversion algorithms, whereas existing spectrogram models which produce audio of comparable quality rely on neural vocoders to correct for oversmoothing .

The network architecture used for MelNet is heavily influenced by recent advancements in deep autoregressive models for images. Theis and Bethge introduced an LSTM architecture for autoregressive modelling of 2D images and van den Oord et al. introduced PixelRNN and PixelCNN and scaled up the models to handle the modelling of natural images. Subsequent works in autoregressive image modelling have steadily improved state-of-the-art for image density estimation . We draw inspiration from many of these models, and ultimately design a recurrent architecture of our own which is suitable for modelling spectrograms rather than images.

We use a multidimensional recurrence in both the time-delayed stack and the upsampling tiers to extract features from two-dimensional inputs. Our multidimensional recurrence is effectively ‘factorized’ as it independently applies one-dimensional RNNs across each dimension. This approach differs from the tightly coupled multidimensional recurrences used by MDRNNs and Grid LSTMs and more closely resembles the approach taken by ReNet . Our approach allows for efficient training as we can extract features from an M×NM\times N grid in max(M,N)\max(M,N) sequential recurrent steps rather than the M+NM+N sequential steps required for tightly coupled recurrences. Additionally, our approach enables the use of highly optimized one-dimensional RNN implementations.

Various approaches to image generation have succeeded in generating high-resolution, globally coherent images with hundreds of thousands of dimensions . The methods introduced in these works are not directly transferable to waveform generation, as they exploit spatial properties of images which are absent in one-dimensional audio signals. However, these methods are more straightforwardly applicable to two-dimensional representations such as spectrograms. Of particular relevance to our work are approaches which combine autoregressive models with multiscale modelling . We demonstrate that the benefits of a multiscale autoregressive model extend beyond the task of image generation, and can be used to generate high-resolution, globally coherent spectrograms.

Conclusion

We have introduced MelNet, a generative model for spectral representations of audio. MelNet combines a highly expressive autoregressive model with a multiscale modelling scheme to generate high-resolution spectrograms with realistic structure on both local and global scales. In comparison to previous works which model time-domain signals directly, MelNet is particularly well-suited to model long-range temporal dependencies. Experiments show promising results on a diverse set of tasks, including unconditional speech generation, music generation, and text-to-speech synthesis.

Acknowledgements

We thank Kyle Kastner for reviewing a draft of this paper and providing helpful feedback.

References

Appendix A Experimental Details

For each of the three unconditional audio generation tasks, we generated 50 ten-second samples from WaveNet and 50 ten-second samples from MelNet. Participants were shown an anonymized, randomly-drawn sample from each model and instructed to “select the sample which has more coherent long-term structure.” We collected 50 human evaluations for each task.

A.2 WaveNet Baseline

The human evaluation experiments require samples from a baseline WaveNet model. For the Blizzard and VoxCeleb2 datasets, we use our own reimplementation. Our WaveNet model uses 8-bit μ\mu-law encoding and models each sample with a discrete distribution. Each model is trained for 150,000 steps. We use the Adam optimizer with a learning rate of 0.001 and batch size of 32. Additional hyperparameters are reported in Table 4.

We do not use our WaveNet implementation for human evaluation on the MAESTRO dataset. The authors that introduce this dataset provide roughly 2 minutes of audio samples on their websitehttps://goo.gl/magenta/maestro-examples for both unconditional WaveNet and Wave2Midi2Wave models. We generate 50 random ten-second slices from these 2 minutes and directly use them for the human evaluations.

A.3 Density Estimation

We use the Blizzard dataset for all density estimation experiments. We use low-resolution spectrograms which are typically used by existing TTS systems. These spectrograms have 80 mel channels and are computed with a STFT hop size of 512 and STFT window size of 65126\cdot 512.

All baseline models use similar network architectures which are composed of multi-layer LSTMs with residual connections. The baseline models use 1024 hidden units whereas the MelNet models use 512 hidden units. The MelNet models do not use multiscale orderings. All models have 8-layer autoregressive decoders and the VAE models have an additional 4-layer inference network. The global VAE model uses a 512-dimensional latent vector and the local VAE model uses a sequence of 32-dimensional latent vectors. VAE models are trained with KL annealing over the first epoch. When evaluating density estimates for text-to-speech synthesis, all models use the attention mechanism described in Section 5.