Convolutional Sequence Modeling Revisited

Abstract: This paper revisits the problem of sequence modeling using convolutional 
      architectures.  Although both convolutional and recurrent architectures have a
      long history in sequence prediction, the current "default" mindset in much of
      the deep learning community is that generic sequence modeling is best handled
      using recurrent networks.  The goal of this paper is to question this assumption. 
      Specifically, we consider a simple generic temporal convolution network (TCN),
      which adopts features from modern ConvNet architectures such as a dilations and 
      residual connections.  We show that on a variety of sequence modeling tasks,
      including many frequently used as benchmarks for evaluating recurrent networks,
      the TCN outperforms baseline RNN methods (LSTMs, GRUs, and vanilla RNNs) and
      sometimes even highly specialized approaches.  We further show that the
      potential "infinite memory" advantage that RNNs have over TCNs is largely
      absent in practice: TCNs indeed exhibit longer effective history sizes than their 
      recurrent counterparts.   As a whole, we argue that it may be time to (re)consider 
      ConvNets as the default "go to" architecture for sequence modeling.

Reviews and author responses:

In this paper, the authors argue for the use of convolutional architectures as a general purpose tool for sequence modeling. They start by proposing a generic temporal convolution sequence model which leverages recent advances in the field, discuss the respective advantages of convolutional and recurrent networks, and benchmark their architecture on a number of different tasks.

The paper is clearly written and easy to follow, does a good job of presenting both the advantages and disadvantages of the proposed method, and convincingly makes the point that convolutional architectures should at least be considered for any sequence modeling task; they are indeed still often overlooked, in spite of some strong performances in language modeling and translation in recent works.

The only part which is slightly less convincing is the section about effective memory size. While it is true that learning longer term dependencies can be difficult in standard RNN architectures, it is interesting to notice that the SoTA results presented in appendix B.3 for language modeling on larger data sets are architectures which focus on remedying this difficulty (cache model and hierarchical LSTM). It would also be interesting to see how TCN works on word prediction tasks which are devised explicitly to test for longer memory, such as Lambada (1) or Children Books Test (2).

As a minor point, adding a measure of complexity in terms of number of operations could be a useful hardware-independent indication of the computational cost of the architecture.

Pros:
- Clearly written, well executed paper
- Makes a strong point for the use of convolutional architecture for sequences
- Provides useful benchmarks for the community

Cons:
- The claims on effective memory size need more context and justification

1: The LAMBADA dataset: Word prediction requiring a broad discourse context, Paperno et al. 2016
2: The Goldilocks principle: reading children's books with explicit memory representation, Hill et al. 2016

The authors claim that convolutional networks should be considered as possible replacements of recurrent neural networks as the default choice for solving sequential modelling problems. The paper describes an architecture similar to wavenet with residual connections. Empirical results are presented on a large number of tasks where the convolutional network often outperforms modern recurrent baselines or reaches similar performance.

The biggest strength of the paper is the large number of tasks on which the models are evaluated. The experiments seem sound and the information in both the paper and the appendix seem to allow for replication. That said, I don’t think that all the tasks are very relevant for comparing convolutional and recurrent architectures. While the time windows that RNNs can deal with are infinite in principle, it is common knowledge that the effective length of the dependencies RNNs can model is quite limited in practise. Many of the artificial task like the adding problem and sequential MNIST have been designed to highlight this weakness of RNNs. I don’t find it very surprising that these tasks are easy to solve with a feedforward architecture with a large enough context window. The more impressive results are in my opinion those on the language modelling tasks where one would indeed expect RNNs to be more suitable for capturing dependencies that require stack-like memory functionality. 

While the related work is quite comprehensive, it downplays the popularity of convolutional architectures throughout history a bit. Especially in speech recognition, RNNs have only recently started to gain popularity while deep feedforward networks applied to overlapping time windows (i.e., 1D convolutions) have been the state-of-the-art for years. Of course the recent successes of dilated convolutions are likely to change the landscape in this application domain yet again.

The paper is well-structured and written. If anything, it is perhaps a little bit wordy at times but I prefer that over obscurity due to brevity.

The ideas in the paper are not novel and neither do the authors claim that they are. Unfortunately, I also think that the impact of the work is also somewhat limited due to the enormous success of the wavenet architecture. I do think that the results on the real-world tasks are valuable and worthy of publication. However, I feel that the authors exaggerate the extent to which researchers in this field still consider RNNs superior models for sequences. 

+ Many experiments and tasks.
+ Well-written and clear.
+ Good results
- Somewhat exaggerated claims about the extent to which RNNs are still being considered more suitable sequence models
 than dilated convolutions. Especially in light of the success of Wavenet.
- Not much novelty/originality.


This paper argues that convolutional networks should be the default
approach for sequence modeling.

The paper is nicely done and rather easy to understand. Nevertheless, I find
it difficult to assess its significance. In order to support the original hypothesis,
I think that a much larger and more diverse set of experiments should have
been considered. As pointed out by another reviewer please add  https://arxiv.org/abs/1703.04691
to your references.

We thank the reviewers and other discussants for their comments. In order to address points discussed in OpenReview reviews, comments, and our responses, we have updated our paper. The key changes are as follows:

1. We’ve added content to the Related Work section. This content elaborates on the relationship to prior work (e.g., non-dilated gated ConvNets, convolutional models for sequence to sequence prediction, etc.), in accordance with our responses to OpenReview reviews and comments. As highlighted in the revision, the TCN model we focus on avoids much of the specialized machinery present in prior work and is evaluated on an extremely diverse set of tasks rather than a specific domain or application.

2. We have added experiments on the LAMBADA dataset, as suggested by Reviewer 3, which in fact show very strong performance for the TCN models.  LAMBADA is an especially challenging task where each data sample consists of a long context segment (4.6 sentences on average) and a target sentence, the last word of which needs to be predicted. In this setting, a human can perfectly predict the last word when given the context, but most of the existing models (e.g., LSTM, vanilla RNN) fail to do so. As shown in Table 1 of Section 4 in the revision, without much tuning (due to limited rebuttal time), TCN can achieve a perplexity of < 1300 on LAMBADA, substantially outperforming LSTMs (~4000 ppl) and vanilla RNNs (~15000 ppl), as listed in prior works. This is a strong result that suggests that TCNs are able to recall from a much larger context than recurrent networks, and thus may be more suitable for tasks where long dependencies are required.

3. The appendix now includes a new section that compares the baseline TCN to a TCN that uses a gating mechanism.  This mainly serves as a comparison point to the Dauphin et al. paper, which one reviewer pointed out was not sufficiently addressed in our original draft.  Our experiments show that a gating mechanism can indeed be useful on certain language modeling tasks, but such benefits may not generalize well to other tasks (e.g., polyphonic music and other benchmark tasks).  Thus, while we do absolutely agree with the relevance of the Dauphin et al. paper, and stress this more in the update, we also feel that much the same considerations apply here as to e.g., the WaveNet paper, where the focus of the previous work was really on a single domain, whereas our paper stresses the generality of convolutional sequence models.

4. The revision includes the latest results on certain large experiments (e.g., Wikitext-103).  Specifically, as mentioned in our responses, the TCN achieves a perplexity of 45.2 on this dataset (the only change from our original result was simple optimizing the model for longer), compared to an LSTM that achieves 48.4 perplexity.


Thanks for your note.  We will certainly update the paper to include this arXiv report.  However, we also believe that the precise conclusions of this report are somewhat orthogonal as it applies an architecture virtually identical to WaveNet to one particular time series prediction task; thus, from an architectural standpoint, we think that the WaveNet paper is the more relevant prior work, which of course we do cite and discuss.  In contrast, the goal of our current work is to highlight a simpler architecture and empirically study it across a wide range of sequence modeling tasks.  But as mentioned, we're happy to include the reference and explain this connection.


Thank you very much for the review, we agree with virtually all your points.   As per your suggestion, we are currently integrating experiments on the LAMBADA dataset into the paper, and will post a revision with these results shortly.


Thank you very much for this review.  We agree on most points, except in the ultimate conclusions and assessment of the current "default" mindset of temporal modeling in RNNs.

First, we agree that speech data in particular (or perhaps audio data more broadly), is indeed one instance where CNNs do appear to have a historical edge over recurrent models, and we can emphasize this in the background section.  Indeed, as you mention, the success of WaveNet has certainly made clear the power of CNNs in this application domain.

The question, then, is to what extent the community already feels that the success of WaveNet in the speech setting is sufficient to "standardize" the use of CNNs across all sequence prediction tasks.  And our genuine impression here is that these ideas have yet to permeate the mindset of the community for generic sequence prediction.  Numerous resources (e.g., Goodfellow et al.'s deep learning book, with its chapter "Sequence Modeling: Recurrent and Recursive Nets", plus virtually all current papers on recurrent networks), still highlight LSTMs and other similar architectures as the "standard" for sequence modeling.  The precise goal of our work is to highlight the fact that WaveNet-like architectures (though substantially simplified too, as we describe below) can indeed work well across the many other settings we consider.  And we feel that this is an important point to make empirically, even if the results or conclusion may seem "unsurprising" to people who are very familiar with CNN architectures.

The second point, also, is that the architecture we consider is indeed simpler than WaveNet in many respects: e.g. no gated activation but just ReLUs (which, as we highlighted in our response to a previous reviewer, we will include more experimentation on in a forthcoming update), no context stacks, etc; and residual units and dilation structure that more directly mirror the corresponding "standard" architectures in convolutional image networks.  Thus, a practitioner wishing to apply WaveNet-style architectures to some new sequence prediction task may be unclear about which elements of the architecture are really necessary, and we attempt to distill this as much as possible in our current paper.

Overall, therefore, we agree that the significance of our current work is largely making the empirical point that TCN architectures are not just for audio, but really for any sequence modeling problem.  But we do feel that this is an important point to make and thoroughly substantiate, even given the success of WaveNet.


Thanks for your note, though we honestly found it a bit surprising.  The entire point of our paper _is_ to evaluate the improved TCN performance over a large and diverse set of experiments, and on this point it is by far the single _most diverse_ study of CNN vs. RNN performance that we are aware of.  And while many of the particular benchmarks are indeed "small-sized" in and of themselves, they are standard benchmarks for evaluating the performance of recurrent networks (see appendix A for some references to papers that used these benchmark tests); and we include experiments on domains such as Wikitext-103, which is certainly not a small dataset.

Regarding arXiv:1703.04691, see our comments in the response to the discussant who originally brought this up.


Thanks for the note.  We believe this note is addressing the same points as the note above (with a few additional follow-on points), so we refer to our comment above.

Thanks very much for your note.  We absolutely agree with your general comments about the related work. We respond to two different points here, because in our mind there are two different categories in the papers you mention.

First, the Kalchbrenner et al., and Gehring et al., papers both relate to convolutional sequence to sequence models. While we absolutely agree that this work is related to our topic, we made the explicit choice not to consider seq2seq models in this paper.  The rationale for us is that these models differ in substantial ways from "pure" temporal convolutional models.  Since the input to the model is the entire input sentence (captured by non-causal convolutions), and only the autoregressive output network needs to follow causal generation, the task itself is quite different from pure temporal sequence modeling, even if it may be an extension.  Specifically, the two-stage encoder/decoder architecture (first to encode the entire input sentence, then to autoregressively generate the translation) of typical seq2seq models seems so fundamental to these approaches that we felt it was substantially more specialized than the generic temporal modeling problem.

However, we also of course concede that the work is related, especially given the machine translation community's departure from pure recurrent networks to convolutional (or even pure attention-based) models.  Thus we will edit the paper to cite these works and address these points (we'll be posting a revised version within a week or so).

Second, there is the work of Dauphin et al., which more directly relates to a language modeling task.  And while we _do_ cite this work, we believe your point combined with the point in the comment below is more that we don't devote sufficient attention to this previous work.  We agree that the relationship is not clarified enough in the paper and are currently revising to fix this, but let us briefly mention here the connections and how we see this relationship.

First, we should mention that while we did include the 48.9 PPL figure on one GPU, running the TCN model for more epochs (still on one GPU) actually achieves a PPL of 45.2, which isn't far off from Dauphin’s 44.9. (Note that we use a network approximately half the size of Dauphin et al.’s, and little tuning.) We'll naturally update the paper on this point.  Second, the main technical contribution of the paper of Dauphin et al. is the combination of (non-dilated) convolutional networks with a gating mechanism.  We experimented quite extensively with this gating mechanism combined with our generic TCN architecture, but didn’t see significant overall performance improvements due to the gating mechanism.  We can include these results in an appendix.  Indeed, a main characteristic of our work is simply the claim that the generic TCN architecture (which is quite simple in nature, as we highlight) is _sufficient_ to achieve most of the benefits proposed by more complex convolutional architectures, without the need for attention, gating mechanisms, and other architectural elaborations.  We believe that the comparison to the Dauphin et al. work actually supports this conclusion, and we will update the paper accordingly (we will post a follow-up note here once the paper has been updated).


(1) It is already known that convolutional architectures perform well on sequence modeling tasks (for example, Oord et al 2016, Wavenet). This paper does not discuss many related works on convolutional sequence modeling for text that should be addressed specifically in the related work section, for example Kalchbrenner et al 2016, Dauphin et al 2017, and Gehring et al, 2017. 

(2) This paper tests on Wikitext-103 but it does not cite that https://arxiv.org/pdf/1612.08083.pdf already published better results on Wikitext-103 with a very similar convolutional model (44.9 PPL on 1 GPU/37.2 PPL on 4 GPU, compared to the reported 48.9 PPL here, a significant difference). 


This paper does not acknowledge most very prominent recent work on CNNs for text generation, e.g.,

Kalchbrenner et al. "Neural Machine Translation in Linear Time". 2016.
Gehring et al. "Convolutional Sequence to Sequence Moedeling". 2017.

Those papers make precisely the same points and have much stronger empirical results. The authors cite Dauphin et al.  (2016) at the very end of the paper but do not acknowledge that many of the points made are already covered by recent other work.

This work very closely resembles the work that was first done by the authors in https://arxiv.org/abs/1703.04691. The network structure employed seems almost identical. Furthermore the conclusion that CNNs can be an efficient alternative to RNNs was also already reached in the above mentioned paper. Thus it would be advisable to cite this work in your paper. 

Meta-review: meta score: 5

This paper gives a thorough experimental comparison of convolutional vs recurrent networks for a variety of sequence modelling tasks.  The experimentation is thorough, but the main point of the paper,  that convolutional networks are unjustly ignored for sequence modelling, is overstated as there are several areas where convolutional networks are well explored.
Pros:
 clear and well-written
 thorough set of experiments
Cons
 original contribution is not strong
 it is not as radical to consider convolutional networks for sequence modeling as the authors seem to suggest


Decision: workshop-papers