Title: TOPICRNN: A RECURRENT NEURAL NETWORK WITH LONG-RANGE SEMANTIC DEPENDENCY

Abstract: In this paper, we propose TopicRNN, a recurrent neural network (RNN)-based language model designed to directly capture the global semantic meaning relating words in a document via latent topics. Because of their sequential nature, RNNs are good at capturing the local structure of a word sequence -both semantic and syntactic -but might face difficulty remembering long-range dependencies. Intuitively, these long-range dependencies are of semantic nature. In contrast, latent topic models are able to capture the global semantic structure of a document but do not account for word ordering. The proposed TopicRNN model integrates the merits of RNNs and latent topic models: it captures local (syntactic) dependencies using an RNN and global (semantic) dependencies using latent topics. Unlike previous work on contextual RNN language modeling, our model is learned endto-end. Empirical results on word prediction show that TopicRNN outperforms existing contextual RNN baselines. In addition, TopicRNN can be used as an unsupervised feature extractor for documents. We do this for sentiment analysis on the IMDB movie review dataset and report an error rate of 6.28%. This is comparable to the state-of-the-art 5.91% resulting from a semi-supervised approach. Finally, TopicRNN also yields sensible topics, making it a useful alternative to document models such as latent Dirichlet allocation.

1. INTRODUCTION:

When reading a document, short or long, humans have a mechanism that somehow allows them to remember the gist of what they have read so far. Consider the following example: "The U.S.presidential race isn't only drawing attention and controversy in the United States -it's being closely watched across the globe. But what does the rest of the world think about a campaign that has already thrown up one surprise after another? CNN asked 10 journalists for their take on the race so far, and what their country might be hoping for in America's next -"

The missing word in the text above is easily predicted by any human to be either President or Commander in Chief or their synonyms. There have been various language models -from simple ngrams to the most recent RNN-based language models -that aim to solve this problem of predicting correctly the subsequent word in an observed sequence of words.

A good language model should capture at least two important properties of natural language. The first one is correct syntax. In order to do prediction that enjoys this property, we often only need to consider a few preceding words. Therefore, correct syntax is more of a local property. Word order matters in this case. The second property is the semantic coherence of the prediction. To achieve this, we often need to consider many preceding words to understand the global semantic meaning of the sentence or document. The ordering of the words usually matters much less in this case.

Because they only consider a fixed-size context window of preceding words, traditional n-gram and neural probabilistic language models (Bengio et al., 2003) have difficulties in capturing global semantic information. To overcome this, RNN-based language models (Mikolov et al., 2010; 2011) use hidden states to "remember" the history of a word sequence. However, none of these approaches explicitly model the two main properties of language mentioned above, correct syntax and semantic coherence. Previous work by Chelba and Jelinek (2000) and Gao et al. (2004) exploit syntactic or semantic parsers to capture long-range dependencies in language.

In this paper, we propose TopicRNN, a RNN-based language model that is designed to directly capture long-range semantic dependencies via latent topics. These topics provide context to the RNN. Contextual RNNs have received a lot of attention (Mikolov and Zweig, 2012; Mikolov et al., 2014; Ji et al., 2015; Lin et al., 2015; Ji et al., 2016; Ghosh et al., 2016) . However, the models closest to ours are the contextual RNN model proposed by Mikolov and Zweig (2012) and its most recent extension to the long-short term memory (LSTM) architecture (Ghosh et al., 2016) . These models use pre-trained topic model features as an additional input to the hidden states and/or the output of the RNN. In contrast, TopicRNN does not require pre-trained topic model features and can be learned in an end-to-end fashion. We introduce an automatic way for handling stop words that topic models usually have difficulty dealing with. Under a comparable model size set up, TopicRNN achieves better perplexity scores than the contextual RNN model of Mikolov and Zweig (2012) on the Penn TreeBank dataset 1 . Moreover, TopicRNN can be used as an unsupervised feature extractor for downstream applications. For example, we derive document features of the IMDB movie review dataset using TopicRNN for sentiment classification. We reported an error rate of 6.28%. This is close to the state-of-the-art 5.91% (Miyato et al., 2016 ) despite that we do not use the labels and adversarial training in the feature extraction stage.

The remainder of the paper is organized as follows: Section 2 provides background on RNN-based language models and probabilistic topic models. Section 3 describes the TopicRNN network architecture, its generative process and how to perform inference for it. Section 4 presents per-word perplexity results on the Penn TreeBank dataset and the classification error rate on the IMDB 100K dataset. Finally, we conclude and provide future research directions in Section 5.

2. BACKGROUND:

We present the background necessary for building the TopicRNN model. We first review RNN-based language modeling, followed by a discussion on the construction of latent topic models.

2.1. RECURRENT NEURAL NETWORK-BASED LANGUAGE MODELS:

Language modeling is fundamental to many applications. Examples include speech recognition and machine translation. A language model is a probability distribution over a sequence of words in a predefined vocabulary. More formally, let V be a vocabulary set and y 1 , ..., y T a sequence of T words with each y t ∈ V . A language model measures the likelihood of a sequence through a joint probability distribution, p(y 1 , ..., y T ) = p(y 1 ) T t=2 p(y t |y 1:t-1 ).

Traditional n-gram and feed-forward neural network language models (Bengio et al., 2003) typically make Markov assumptions about the sequential dependencies between words, where the chain rule shown above limits conditioning to a fixed-size context window. state h t (typically via a softmax function):

p(y t |y 1:t-1 ) p(y t |h t ), h t = f (h t-1 , x t ).

The function f (•) can either be a standard RNN cell or a more complex cell such as GRU (Cho et al., 2014) or LSTM (Hochreiter and Schmidhuber, 1997) . The input and target words are related via the relation x t ≡ y t-1 . These RNN-based language models have been quite successful (Mikolov et al., 2011; Chelba et al., 2013; Jozefowicz et al., 2016) .

While in principle RNN-based models can "remember" arbitrarily long histories if provided enough capacity, in practice such large-scale neural networks can easily encounter difficulties during optimization (Bengio et al., 1994; Pascanu et al., 2013; Sutskever, 2013) or overfitting issues (Srivastava et al., 2014) . Finding better ways to model long-range dependencies in language modeling is therefore an open research challenge. As motivated in the introduction, much of the long-range dependency in language comes from semantic coherence, not from syntactic structure which is more of a local phenomenon. Therefore, models that can capture long-range semantic dependencies in language are complementary to RNNs. In the following section, we describe a family of such models called probabilistic topic models.

2.2. PROBABILISTIC TOPIC MODELS:

Probabilistic topic models are a family of models that can be used to capture global semantic coherency (Blei and Lafferty, 2009) . They provide a powerful tool for summarizing, organizing, and navigating document collections. One basic goal of such models is to find groups of words that tend to co-occur together in the same document. These groups of words are called topics and represent a probability distribution that puts most of its mass on this subset of the vocabulary. Documents are then represented as mixtures over these latent topics. Through posterior inference, the learned topics capture the semantic coherence of the words they cluster together (Mimno et al., 2011) .

The simplest topic model is latent Dirichlet allocation (LDA) (Blei et al., 2003) . It assumes K underlying topics β = {β 1 , . . . , β K } , each of which is a distribution over a fixed vocabulary. The generative process of LDA is as follows: First generate the K topics, β k ∼ iid Dirichlet(τ ). Then for each document containing words y 1:T , independently generate document-level variables and data:

1. Draw a document-specific topic proportion vector θ ∼ Dirichlet(α).

2. For the tth word in the document, (a) Draw topic assignment z t ∼ Discrete(θ).

(b) Draw word y t ∼ Discrete(β zt ).

Marginalizing each z t , we obtain the probability of y 1:T via a matrix factorization followed by an integration over the latent variable θ,

EQUATION

In LDA the prior distribution on the topic proportions is a Dirichlet distribution; it can be replaced by many other distributions. For example, the correlated topic model (Blei and Lafferty, 2006 ) uses a log-normal distribution. Most topic models are "bag of words" models in that word order is ignored. This makes it easier for topic models to capture global semantic information. However, this is also one of the reasons why topic models do not perform well on general-purpose language modeling applications such as word prediction. While bi-gram topic models have been proposed (Wallach, 2006) , higher order models quickly become intractable.

Another issue encountered by topic models is that they do not model stop words well. This is because stop words usually do not carry semantic meaning; their appearance is mainly to make the sentence more readable according to the grammar of the language. They also appear frequently in almost every document and can co-occur with almost any word2 . In practice, these stop words are chosen using tf-idf (Blei and Lafferty, 2009) .

EQUATION

3. THE TOPICRNN MODEL:

We next describe the proposed TopicRNN model. In TopicRNN, latent topic models are used to capture global semantic dependencies so that the RNN can focus its modeling capacity on the local dynamics of the sequences. With this joint modeling, we hope to achieve better overall performance on downstream applications.

The model. TopicRNN is a generative model. For a document containing the words y 1:T , 1. Draw a topic vector3 θ ∼ N (0, I). 

2.. Given word:

p(y t = i|h t , θ, l t , B) ∝ exp v i h t + (1 -l t )b i θ .

The stop word indicator l t controls how the topic vector θ affects the output. If l t = 1 (indicating y t is a stop word), the topic vector θ has no contribution to the output. Otherwise, we add a bias to favor those words that are more likely to appear when mixing with θ, as measured by the dot product between θ and the latent word vector b i for the ith vocabulary word. As we can see, the longrange semantic information captured by θ directly affects the output through an additive procedure. Unlike Mikolov and Zweig (2012) , the contextual information is not passed to the hidden layer of the RNN. The main reason behind our choice of using the topic vector as bias instead of passing it into the hidden states of the RNN is because it enables us to have a clear separation of the contributions of global semantics and those of local dynamics. The global semantics come from the topics which are meaningful when stop words are excluded. However these stop words are needed for the local dynamics of the language model. We hence achieve this separation of global vs local via a binary decision model for the stop words. It is unclear how to achieve this if we pass the topics to the hidden states of the RNN. This is because the hidden states of the RNN will account for all words (including stop words) whereas the topics exclude stop words.

We show the unrolled graphical representation of TopicRNN in Figure 1(a) . We denote all model parameters as Θ = {Γ, V, B, W, W c } (see Appendix A.1 for more details). Parameter W c is for the inference network, which we will introduce below. The observations are the word sequences y 1:T and stop word indicators l 1:T . 4 The log marginal likelihood of the sequence y 1:T is log p(y 1:T , l 1:

EQUATION

Model inference. Direct optimization of Equation 2is intractable so we use variational inference for approximating this marginal (Jordan et al., 1999) . Let q(θ) be the variational distribution on the marginalized variable θ. We construct the variational objective function, also called the evidence lower bound (ELBO), as follows:

L(y 1:T , l 1:T |q(θ), Θ) E q(θ) T t=1 log p(y t |h t , l t , θ) + log p(l t |h t ) + log p(θ) -log q(θ)

≤ log p(y 1:T , l 1:T |h t , Θ). Following the proposed variational autoencoder technique, we choose the form of q(θ) to be an inference network using a feed-forward neural network (Kingma and Welling, 2013; Miao et al., 2015) . Let X c ∈ N |Vc| + be the term-frequency representation of y 1:T excluding stop words (with V c the vocabulary size without the stop words). The variational autoencoder inference network q(θ|X c , W c ) with parameter W c is a feed-forward neural network with ReLU activation units that projects X c into a K-dimensional latent space. Specifically, we have

q(θ|X c , W c ) = N (θ; µ(X c ), diag(σ 2 (X c ))), µ(X c ) = W 1 g(X c ) + a 1 , log σ(X c ) = W 2 g(X c ) + a 2 ,

where g(•) denotes the feed-forward neural network. The weight matrices W 1 , W 2 and biases a 1 , a 2 are shared across documents. Each document has its own µ(X c ) and σ(X c ) resulting in a unique distribution q(θ|X c ) for each document. The output of the inference network is a distribution on θ, which we regard as the summarization of the semantic information, similar to the topic proportions in latent topic models. We show the role of the inference network in Figure 1(b) . During training, the parameters of the inference network and the model are jointly learned and updated via truncated backpropagation through time using the Adam algorithm (Kingma and Ba, 2014) . We use stochastic samples from q(θ|X c ) and the reparameterization trick towards this end (Kingma and Welling, 2013; Rezende et al., 2014) .

Generating sequential text and computing perplexity. Suppose we are given a word sequence y 1:t-1 , from which we have an initial estimation of q(θ|X c ). To generate the next word y t , we compute the probability distribution of y t given y 1:t-1 in an online fashion. We choose θ to be a point estimate θ, the mean of its current distribution q(θ|X c ). Marginalizing over the stop word indicator l t which is unknown prior to observing y t , the approximate distribution of y t is

p(y t |y 1:t-1 ) ≈ lt p(y t |h t , θ, l t )p(l t |h t ).

The predicted word y t is a sample from this predictive distribution. We update q(θ|X c ) by including y t to X c if y t is not a stop word. However, updating q(θ|X c ) after each word prediction is expensive, so we use a sliding window as was done in Mikolov and Zweig (2012) . To compute the perplexity, we use the approximate predictive distribution above.

Model Complexity. TopicRNN has a complexity of O(H:

× H + H × (C + K) + W c )

, where H is the size of the hidden layer of the RNN, C is the vocabulary size, K is the dimension of the topic vector, and W c is the number of parameters of the inference network. The contextual RNN of Mikolov and Zweig (2012) accounts for O(H ×H +H ×(C +K)), not including the pre-training process, which might require more parameters than the additional W c in our complexity.

4. EXPERIMENTS:

We assess the performance of our proposed TopicRNN model on word prediction and sentiment analysis5 . For word prediction we use the Penn TreeBank dataset, a standard benchmark for assessing new language models (Marcus et al., 1993) . For sentiment analysis we use the IMDB 100k dataset (Maas et al., 2011) , also a common benchmark dataset for this application6 . We use RNN, LSTM, and GRU cells in our experiments leading to TopicRNN, TopicLSTM, and TopicGRU. Inferred distributions using TopicGRU on three different documents. The content of these documents is added on the appendix. This shows that some of the topics are being picked up depending on the input document.

4.1. WORD PREDICTION:

We first tested TopicRNN on the word prediction task using the Penn Treebank (PTB) portion of the Wall Street Journal. We use the standard split, where sections 0-20 (930K tokens) are used for training, sections 21-22 (74K tokens) for validation, and sections 23-24 (82K tokens) for testing (Mikolov et al., 2010) . We use a vocabulary of size 10K that includes the special token unk for rare words and eos that indicates the end of a sentence. TopicRNN takes documents as inputs. We split the PTB data into blocks of 10 sentences to constitute documents as done by (Mikolov and Zweig, 2012) . The inference network takes as input the bag-of-words representation of the input document. For that reason, the vocabulary size of the inference network is reduced to 9551 after excluding 449 pre-defined stop words.

In order to compare with previous work on contextual RNNs we trained TopicRNN using different network sizes. We performed word prediction using a recurrent neural network with 10 neurons, Table 2 : TopicRNN and its counterparts exhibit lower perplexity scores across different network sizes than reported in Mikolov and Zweig (2012) . Table 2a shows per-word perplexity scores for 10 neurons. Table 2b and Table 2c correspond to per-word perplexity scores for 100 and 300 neurons respectively. These results prove TopicRNN has more generalization capabilities: for example we only need a TopicGRU with 100 neurons to achieve a better perplexity than stacking 2 LSTMs with 200 neurons each: 112.4 vs 115.9) 100 neurons and 300 neurons. For these experiments, we used a multilayer perceptron with 2 hidden layers and 200 hidden units per layer for the inference network. The number of topics was tuned depending on the size of the RNN. For 10 neurons we used 18 topics. For 100 and 300 neurons we found 50 topics to be optimal. We used the validation set to tune the hyperparameters of the model. We used a maximum of 15 epochs for the experiments and performed early stopping using the validation set. For comparison purposes we did not apply dropout and used 1 layer for the RNN and its counterparts in all the word prediction experiments as reported in Table 2 . One epoch for 10 neurons takes 2.5 minutes. For 100 neurons, one epoch is completed in less than 4 minutes. Finally, for 300 neurons one epoch takes less than 6 minutes. These experiments were ran on Microsoft Azure NC12 that has 12 cores, 2 Tesla K80 GPUs, and 112 GB memory. First, we show five randomly drawn topics in Table 1 . These results correspond to a network with 100 neurons. We also illustrate some inferred topic distributions for several documents from TopicGRU in Figure 2 . Similar to standard topic models, these distributions are also relatively peaky.

Next, we compare the performance of TopicRNN to our baseline contextual RNN using perplexity.

Perplexity can be thought of as a measure of surprise for a language model. It is defined as the exponential of the average negative log likelihood. Table 2 summarizes the results for different network sizes. We learn three things from these tables. First, the perplexity is reduced the larger the network size. Second, RNNs with context features perform better than RNNs without context features. Third, we see that TopicRNN gives lower perplexity than the previous baseline result reported by Mikolov and Zweig (2012) . Note that to compute these perplexity scores for word prediction we use a sliding window to compute θ as we move along the sequences. The topic vector θ that is used from the current batch of words is estimated from the previous batch of words. This enables fair comparison to previously reported results (Mikolov and Zweig, 2012). 7 Another aspect of the TopicRNN model we studied is its capacity to generate coherent text. To do this, we randomly drew a document from the test set and used this document as seed input to the inference network to compute θ. Our expectation is that the topics contained in this seed document are reflected in the generated text. Table 3 shows generated text from models learned on the PTB and IMDB datasets. See Appendix A.3 for more examples.

Table 3 : Generated text using the TopicRNN model on the PTB (top) and IMDB (bottom).

they believe that they had senior damages to guarantee and frustration of unk stations eos the rush to minimum effect in composite trading the compound base inflated rate before the common charter 's report eos wells fargo inc. unk of state control funds without openly scheduling the university 's exchange rate has been downgraded it 's unk said eos the united cancer & began critical increasing rate of N N at N N to N N are less for the country to trade rate for more than three months $ N workers were mixed eos lee is head to be watched unk month she eos but the acting surprisingly nothing is very good eos i cant believe that he can unk to a role eos may appear of for the stupid killer really to help with unk unk unk if you wan na go to it fell to the plot clearly eos it gets clear of this movie 70 are so bad mexico direction regarding those films eos then go as unk 's walk and after unk to see him try to unk before that unk with this film (Maas et al., 2011) 12.20% BoW (b∆ tć) (Maas et al., 2011) 11.77% LDA (Maas et al., 2011) 32.58% Full + BoW (Maas et al., 2011) 11.67% Full + Unlabelled + BoW (Maas et al., 2011) 11.11% WRRBM (Dahl et al., 2012) 12.58% WRRBM + BoW (bnc) (Dahl et al., 2012) 10.77% MNB-uni (Wang & Manning, 2012) 16.45% MNB-bi (Wang & Manning, 2012) 13.41% SVM-uni (Wang & Manning, 2012) 13.05% SVM-bi (Wang & Manning, 2012) 10.84% NBSVM-uni (Wang & Manning, 2012) 11.71% seq2-bown-CNN (Johnson & Zhang, 2014) 14.70% NBSVM-bi (Wang & Manning, 2012) 8.78% Paragraph Vector (Le & Mikolov, 2014) 7.42% SA-LSTM with joint training (Dai & Le, 2015) 14.70% LSTM with tuning and dropout (Dai & Le, 2015) 13.50% LSTM initialized with word2vec embeddings (Dai & Le, 2015) 10.00% SA-LSTM with linear gain (Dai & Le, 2015) 9.17% LM-TM (Dai & Le, 2015) 7.64% SA-LSTM (Dai & Le, 2015) 7.24% Virtual Adversarial (Miyato et al. 2016) 5.91% TopicRNN 6.28%

4.2. SENTIMENT ANALYSIS:

We performed sentiment analysis using TopicRNN as a feature extractor on the IMDB 100K dataset. This data consists of 100,000 movie reviews from the Internet Movie Database (IMDB) website. The data is split into 75% for training and 25% for testing. Among the 75K training reviews, 50K are unlabelled and 25K are labelled as carrying either a positive or a negative sentiment. All 25K test reviews are labelled. We trained TopicRNN on 65K random training reviews and used the remaining 10K reviews for validation. To learn a classifier, we passed the 25K labelled training reviews through the learned TopicRNN model. We then concatenated the output of the inference network and the last state of the RNN for each of these 25K reviews to compute the feature vectors. We then used these feature vectors to train a neural network with one hidden layer, 50 hidden units, and a sigmoid activation function to predict sentiment, exactly as done in Le and Mikolov (2014) .

To train the TopicRNN model, we used a vocabulary of size 5,000 and mapped all other words to the unk token. We took out 439 stop words to create the input of the inference network. We used 500 units and 2 layers for the inference network, and used 2 layers and 300 units per-layer for the We used K-Means to cluster the feature vectors. We then used PCA to reduce the dimension to two for visualization purposes. red is a negative review and green is a positive review.

RNN. We chose a step size of 5 and defined 200 topics. We did not use any regularization such as dropout. We trained the model for 13 epochs and used the validation set to tune the hyperparameters of the model and track perplexity for early stopping. This experiment took close to 78 hours on a MacBook pro quad-core with 16GHz of RAM. See Appendix A.4 for the visualization of some of the topics learned from this data.

Table 4 summarizes sentiment classification results from TopicRNN and other methods. Our error rate is 6.28%.8 This is close to the state-of-the-art 5.91% (Miyato et al., 2016 ) despite that we do not use the labels and adversarial training in the feature extraction stage. Our approach is most similar to Le and Mikolov (2014) , where the features were extracted in a unsupervised way and then a one-layer neural net was trained for classification.

Figure 3 shows the ability of TopicRNN to cluster documents using the feature vectors as created during the sentiment analysis task. Reviews with positive sentiment are coloured in green while reviews carrying negative sentiment are shown in red. This shows that TopicRNN can be used as an unsupervised feature extractor for downstream applications. Table 3 shows generated text from models learned on the PTB and IMDB datasets. See Appendix A.3 for more examples. The overall generated text from IMDB encodes a negative sentiment.

5. DISCUSSION AND FUTURE WORK:

In this paper we introduced TopicRNN, a RNN-based language model that combines RNNs and latent topics to capture local (syntactic) and global (semantic) dependencies between words. The global dependencies as captured by the latent topics serve as contextual bias to an RNN-based language model. This contextual information is learned jointly with the RNN parameters by maximizing the evidence lower bound of variational inference. TopicRNN yields competitive per-word perplexity on the Penn Treebank dataset compared to previous contextual RNN models. We have reported a competitive classification error rate for sentiment analysis on the IMDB 100K dataset.

We have also illustrated the capacity of TopicRNN to generate sensible topics and text.

In future work, we will study the performance of TopicRNN when stop words are dynamically discovered during training. We will also extend TopicRNN to other applications where capturing context is important such as in dialog modeling. If successful, this will allow us to have a model that performs well across different natural language processing applications.

A APPENDIX:

A.1 DIMENSION OF THE PARAMETERS OF THE MODEL:

We use the following notation: C is the vocabulary size (including stop words), H is the number of hidden units of the RNN, K is the number of topics, and E is the dimension of the inference network hidden layer. Table 5 gives the dimension of each of the parameters of the TopicRNN model (ignoring the biases). We illustrate below some generated text resulting from training TopicRNN on the PTB dataset.

Here we used 50 neurons and 100 topics:

Text1: but the refcorp bond fund might have been unk and unk of the point rate eos house in national unk wall restraint in the property pension fund sold willing to zenith was guaranteed by $ N million at short-term rates maturities around unk products eos deposit posted yields slightly Text2: it had happened by the treasury 's clinical fund month were under national disappear institutions but secretary nicholas instruments succeed eos and investors age far compound average new york stock exchange bonds typically sold $ N shares in the N but paying yields further an average rate of long-term funds

We illustrate below some generated text resulting from training TopicRNN on the IMDB dataset. The settings are the same as for the sentiment analysis experiment: the film 's greatest unk unk and it will likely very nice movies to go to unk why various david proves eos the story were always well scary friend high can be a very strange unk unk is in love with it lacks even perfect for unk for some of the worst movies come on a unk gave a rock unk eos whatever let 's possible eos that kyle can 't different reasons about the unk and was not what you 're not a fan of unk unk us rock which unk still in unk 's music unk one as A.4 TOPICS FROM IMDB:

Below we show some topics resulting from the sentiment analysis on the IMDB dataset. The total number of topics is 200. Note here all the topics turn around movies which is expected since all reviews are about movies. 

:

RNN-based language models(Mikolov et al., 2011) sidestep this Markov assumption by defining the conditional probability of each word y t given all the previous words y 1:t-1 through a hidden1 Ghosh et al. (2016) did not publish results on the PTB and we did not find the code online.

Wallach et al. (2009) described using asymmetric priors to alleviate this issue. Although it is not clear how to use this idea in TopicRNN, we plan to investigate such priors in future work.

Instead of using the Dirichlet distribution, we choose the Gaussian distribution. This allows for more flexibility in the sequence prediction problem and also has advantages during inference.

Stop words can be determined using one of the several lists available online. For example, http://www. lextek.com/manuals/onix/stopwords2.html

Our code will be made publicly available for reproducibility.

These datasets are publicly available at http://www.fit.vutbr.cz/~imikolov/rnnlm/ simple-examples.tgz and http://ai.stanford.edu/~amaas/data/sentiment/.

We adjusted the scores in Table2from what was previously reported after correcting a bug in the computation of the ELBO.

The experiments were solely based on TopicRNN. Experiments using TopicGRU/TopicLSTM are being carried out and will be added as an extended version of this paper.

Figures and Tables:

Figure 1: (a) The unrolled TopicRNN architecture: x 1 , ..., x 6 are words in the document, h t is the state of the RNN at time step t, x i ≡ y i-1 , l 1 , ..., l 6 are stop word indicators, and θ is the latent representation of the input document and is unshaded by convention. (b) The TopicRNN model architecture in its compact form: l is a binary vector that indicates whether each word in the input document is a stop word or not. Here red indicates stop words and blue indicates content words.

Figure2: Inferred distributions using TopicGRU on three different documents. The content of these documents is added on the appendix. This shows that some of the topics are being picked up depending on the input document.

Figure3: Clusters of a sample of 10000 movie reviews from the IMDB 100K dataset using Top-icRNN as feature extractor. We used K-Means to cluster the feature vectors. We then used PCA to reduce the dimension to two for visualization purposes. red is a negative review and green is a positive review.

Five Topics from the TopicRNN Model with 100 Neurons and 50 Topics on the PTB Data. (The word s&p below shows as sp in the data.)

Table content: <table><tr><td/><td/><td/><td>Law</td><td/><td>Company</td><td>Parties</td><td>Trading</td><td>Cars</td></tr><tr><td/><td/><td/><td>law</td><td/><td>spending</td><td>democratic</td><td>stock</td><td>gm</td></tr><tr><td/><td/><td/><td colspan="2">lawyers</td><td>sales</td><td>republicans</td><td>s&amp;p</td><td>auto</td></tr><tr><td/><td/><td/><td>judge</td><td/><td>advertising</td><td>gop</td><td>price</td><td>ford</td></tr><tr><td/><td/><td/><td>rights</td><td/><td>employees</td><td>republican</td><td>investor</td><td>jaguar</td></tr><tr><td/><td/><td/><td colspan="2">attorney</td><td>state</td><td>senate</td><td>standard</td><td>car</td></tr><tr><td/><td/><td/><td>court</td><td/><td>taxes</td><td>oakland</td><td>chairman</td><td>cars</td></tr><tr><td/><td/><td/><td colspan="2">general</td><td>fiscal</td><td>highway</td><td>investors</td><td>headquarters</td></tr><tr><td/><td/><td/><td colspan="4">common appropriation democrats retirement</td><td>british</td></tr><tr><td/><td/><td/><td>mr</td><td/><td>budget</td><td>bill</td><td>holders</td><td>executives</td></tr><tr><td/><td/><td/><td colspan="2">insurance</td><td>ad</td><td>district</td><td>merrill</td><td>model</td></tr><tr><td colspan="5">0.16 Inferred Topic Distribution from TopicGRU</td><td/></tr><tr><td>0.14</td><td/><td/><td/><td/><td/></tr><tr><td>0.12</td><td/><td/><td/><td/><td/></tr><tr><td>0.10</td><td/><td/><td/><td/><td/></tr><tr><td>0.08</td><td/><td/><td/><td/><td/></tr><tr><td>0.06</td><td/><td/><td/><td/><td/></tr><tr><td>0.04</td><td/><td/><td/><td/><td/></tr><tr><td>0.02</td><td/><td/><td/><td/><td/></tr><tr><td>0 0.00</td><td>10</td><td>20</td><td>30</td><td>40</td><td>50</td></tr></table>

Classification error rate on IMDB 100k dataset. TopicRNN provides the state of the art error rate on this dataset.

Table content: <table><tr><td>Model</td></tr></table>

Dimensions of the parameters of the model.

Table content: <table><tr><td>U</td><td>Γ</td><td>W</td><td>V</td><td>B</td><td colspan="2">θ W 1 W 2</td></tr><tr><td colspan="6">dimension C x H H H x H H x C K x C K</td><td>E</td><td>E</td></tr></table>

Some Topics from the TopicRNN Model on the IMDB Data.

Table content: <table><tr><td>pitt</td><td>tarantino</td><td>producing</td><td>ken</td><td>hudson</td><td>campbell</td><td>campbell</td></tr><tr><td>cameron</td><td>dramas</td><td>popcorn</td><td>opera</td><td>dragged</td><td>africa</td><td>spots</td></tr><tr><td>vicious</td><td>cards</td><td>practice</td><td>carrey</td><td colspan="2">robinson circumstances</td><td>dollar</td></tr><tr><td>francisco</td><td>unbearable</td><td>ninja</td><td>kong</td><td>flight</td><td>burton</td><td>cage</td></tr><tr><td>los</td><td>catches</td><td>cruise</td><td>hills</td><td>awake</td><td>kubrick</td><td>freeman</td></tr><tr><td colspan="2">revolution nonsensical</td><td>intimate</td><td>useless</td><td>rolled</td><td>friday</td><td>murphy</td></tr><tr><td>refuses</td><td>cringe</td><td>costs</td><td>lie</td><td>easier</td><td>expression</td><td>2002</td></tr><tr><td>cheese</td><td>lynch</td><td colspan="3">alongside repeated kurosawa</td><td>struck</td><td>scorcese</td></tr></table>

Peer review (iclr2017):
This paper introduces a model that blends ideas from generative topic models with those from recurrent neural network language models. The authors evaluate the proposed approach on a document level classification benchmark as well as a language modeling benchmark and it seems to work well. There is also some analysis as to topics learned by the model and its ability to generate text. Overall the paper is clearly written and with the code promised by the authors others should be able to re-implement the approach. I have 2 potentially major questions I would ask the authors to address: 1 - LDA topic models make an exchangability (bag of words) assumption. The discussion of the generative story for TopicRNN should explicitly discuss whether this assumption is also made. On the surface it appears it is since y_t is sampled using only the document topic vector and h_t but we know that in practice h_t comes from a recurrent model that observes y_t-1. Not clear how this clean exposition of the generative model relates to what is actually done. In the Generating sequential text section it’s clear the topic model can’t generate words without using y_1 - t-1 but this seems inconsistent with the generative model specification. This needs to be shown in the paper and made clear to have a complete paper. 2 - The topic model only allows for linear interactions of the topic vector theta. It seems like this might be required to keep the generative model tractable but seems like a very poor assumption. We would expect the topic representation to have rich interactions with a language model to create nonlinear adjustments to word probabilities for a document. Please add discussion as to why this modeling choice exists and if possible how future work could modify that assumption (or explain why it’s not such a bad assumption as one might imagine) Figure 2 colors very difficult to distinguish.