End-to-end Concept Word Detection for Video Captioning, Retrieval, and Question Answering

10/10/2016 ∙ by Youngjae Yu, et al. ∙ Seoul National University 0

We propose a high-level concept word detector that can be integrated with any video-to-language models. It takes a video as input and generates a list of concept words as useful semantic priors for language generation models. The proposed word detector has two important properties. First, it does not require any external knowledge sources for training. Second, the proposed word detector is trainable in an end-to-end manner jointly with any video-to-language models. To maximize the values of detected words, we also develop a semantic attention mechanism that selectively focuses on the detected concept words and fuse them with the word encoding and decoding in the language model. In order to demonstrate that the proposed approach indeed improves the performance of multiple video-to-language tasks, we participate in four tasks of LSMDC 2016. Our approach achieves the best accuracies in three of them, including fill-in-the-blank, multiple-choice test, and movie retrieval. We also attain comparable performance for the other task, movie description.



There are no comments yet.


page 14

page 15

page 17

page 18

page 19

page 20

page 21

page 22

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Figure 1: The intuition of the proposed concept word detector. Given a video clip, a set of tracing LSTMs extract multiple concept words that consistently appear across frame regions. We then employ semantic attention to combine the detected concepts with text encoding/decoding for several video-to-language tasks of LSMDC 2016, such as captioning, retrieval, and question answering.

Video-to-language tasks, including video captioning [6, 11, 21, 31, 36, 39] and video question answering (QA) [27]

, are recent emerging challenges in computer vision research. This set of problems is interesting as one of frontiers in artificial intelligence; beyond that, it can also potentiate multiple practical applications, such as retrieving video content by users’ free-form queries or helping visually impaired people understand the visual content. Recently, a number of large-scale datasets have been introduced as a common ground for researchers to promote the progress of video-to-language research (

e.g. [4, 20, 22, 27]).

The objective of this work is to propose a concept word detector, as shown in Fig.1

, which takes a training set of videos and associated sentences as input, and generates a list of high-level concept words per video as useful semantic priors for a variety of video-to-language tasks, including video captioning, retrieval, and question answering. We design our word detector to have the following two characteristics, to be easily integrated with any video-to-language models. First, it does not require any external knowledge sources for training. Instead, our detector learns the correlation between words in the captions and video regions from the whole training data. To this end, we use a continuous soft attention mechanism that traces consistent visual information across frames and associates them with concept words from captions. Second, the word detector is trainable in an end-to-end manner jointly with any video-to-language models. The loss function for learning the word detector can be plugged as an auxiliary term into the model’s overall cost function; as a result, we can reduce efforts to separately collect training examples and learn both models.

We also develop language model components to to effectively exploit the detected words. Inspired by semantic attention in image captioning research [38], we develop an attention mechanism that selectively focuses on the detected concept words and fuse them with word encoding and decoding in the language model. That is, the detected concept words are combined with input words to better represent the hidden states of encoders, and with output words to generate more accurate word prediction.

In order to demonstrate that the proposed word detector and attention mechanism indeed improve the performance of multiple video-to-language tasks, we participate in four tasks of LSMDC 2016 (Large Scale Movie Description Challenge[22], which is one of the most active and successful benchmarks that advance the progress of video-to-language research. The challenges include movie description and multiple-choice test as video captioning, fill-in-the-blank as video question answering, and movie retrieval as video retrieval. Following the public evaluation protocol of LSMDC 2016, our approach achieves the best accuracies in the three tasks (fill-in-the-blank, multiple-choice test, and movie retrieval), and comparable performance in the other task (movie description).

1.1 Related Work

Our work can be uniquely positioned in the context of two recent research directions in image/video captioning.

Image/Video Captioning with Word Detection. Image and video captioning has been actively studied in recent vision and language research, including [5, 6, 11, 21, 23, 31, 32], to name a few. Among them, there have been several attempts to detect a set of concept words or attributes from visual input to boost up the captioning performance. In image captioning research, Fang et al[7] exploit a multiple instance learning (MIL) approach to train visual detectors that identify a set of words with bounding boxed regions of the image. Based on the detected words, they retrieve and re-rank the best caption sentence for the image. Wu et al[33] use a CNN to learn a mapping between an image and semantic attributes. They then exploit the mapping as an input to the captioning decoder. They also extend the framework to explicitly leverage external knowledge base such as DBpedia for question answering tasks. Venugopalan et al[30]

generate description with novel words beyond the ones in the training set, by leveraging external sources, including object recognition datasets like ImageNet and external text corpus like Wikipedia. You

et al. [38]

also exploit weak labels and tags on Internet images to train additional parametric visual classifiers for image captioning.

In the video domain, it is more ambiguous to learn the relation between descriptive words and visual patterns. There have been only few work in video captioning. Rohrbach et al. [21] propose a two-step approach for video captioning on the LSMDC dataset. They first extract verbs, objects, and places from movie description, and separately train SVM-based classifiers for each group. They then learn the LSTM decoder that generates text description based on the responses of these visual classifiers.

While almost all previous captioning methods exploit external classifiers for concept or attribute detection, the novelty of our work lies in that we use only captioning training data with no external sources to learn the word detector, and propose an end-to-end design for learning both word detection and caption generation simultaneously. Moreover, compared to video captioning work of [21] where only movie description of LSMDC is addressed, this work is more comprehensive in that we validate the usefulness of our method for all the four tasks of LSMDC.

Attention for Captioning. Attention mechanism has been successfully applied to caption generation. One of the earliest works is [35] that dynamically focuses on different image regions to produce an output word sequence. Later this soft attention has been extended as temporal attention over video frames [37, 39] for video captioning.

Beyond the attention on spatial or temporal structure of visual input, recently You et al. [38] propose an attention on attribute words for image captioning. That is, the method enumerates a set of important object labels in the image, and then dynamically switch attention among these concept labels. Although our approach also exploits the idea of semantic attention, it bears two key differences. First, we extend the semantic attention to video domains for the first time, not only for video captioning but also for retrieval and question answering tasks. Second, the approach of [38] relies on the classifiers that are separately learned from external datasets, whereas our approach is learnable end-to-end with only training data of captioning. It significantly reduces efforts to prepare for additional multi-label classifiers.

1.2 Contributions

We summarize the contributions of this work as follows.

(1) We propose a novel end-to-end learning approach for detecting a list of concept words and attend on them to enhance the performance of multiple video-to-language tasks. The proposed concept word detection and attention model can be plugged into any models of video captioning, retrieval, and question answering. Our technical novelties can be seen from two recent trends of image/video captioning research. First, our work is a first end-to-end trainable model not only for concept word detection but also for language generation. Second, our work is a first semantic attention model for video-to-language tasks.

(2) To validate the applicability of the proposed approach, we participate in all the four tasks of LSMDC 2016. Our models have won three of them, including fill-in-the-blank, multiple-choice test, and movie retrieval. We also attain comparable performance for movie description.

2 Detection of Concept Words from Videos

We first explain the pre-processing steps for representation of words and video frames. Then, we explain how we detect concept words for a given video.

2.1 Preprocessing

Dictionary and Word Embedding. We define a vocabulary dictionary by collecting the words that occur more than three times in the dataset. The dictionary size is , from which our models sequentially select words as output. We train the word2vec skip-gram embedding [18] to obtain the word embedding matrix where is the word embedding dimension and is the dictionary size. We set in our implementation.

Video Representation. We first equidistantly sample one per ten frames from a video, to reduce the frame redundancy while minimizing loss of information. We denote the number of video frames by . We limit the maximum number of frames to be ; if a video is too long, we use a wider interval for uniform sampling.

We employ a convolutional neural network (CNN) to encode video input. Specifically, we extract the feature map of each frame from the res5c layer (

i.e. ) of ResNet [12] pretrained on ImageNet dataset [24], and then apply a max-pooling followed by a convolution to reduce dimension to . Reducing the number of spatial grid regions to helps the concept word detector get trained much faster, while not hurting detection performance significantly. We denote resulting visual features of frames by . Throughout this paper, we use for denoting video frame index.

Figure 2: The architecture of the concept word detection in a top red box (section 2.2), and our video description model in bottom, which uses semantic attention on the detected concept words (section 3.1).

2.2 An Attention Model for Concept Detection

Concept Words and Traces. We propose the concept word detector using LSTM networks with soft attention mechanism. Its structure is shown in the red box of Fig.2. Its goal is, for a given video, to discover a list of concept words that consistently appear across frame regions. The detected concept words are used as additional references for video captioning models (section 3.1), which generates output sentence by selectively attending on those words.

We first define a set of candidate words with a size of from all training captions. Among them, we discover concept words per video. We set and . We first apply the automatic POS tagging of NLTK [3], to extract nouns, verbs and adjectives from all training caption sentences [7]. We then compute the frequencies of those words in a training set, and select the most common words as concept word candidates.

Since we do not have groundtruth bounding boxes for concept words in the videos, we cannot train individual concept detectors in a standard supervised setting. Our idea is to adopt a soft attention mechanism to infer words by tracking regions that are spatially consistent. To this end, we employ a set of tracing LSTMs, each of which takes care of a single spatially-consistent meaning being tracked over time, what we call trace. That is, we keep track of spatial attention over video frames using an LSTM, so that spatial attentions in adjacent frames resemble the spatial consistency of a single concept (e.g. a moving object, or an action in video clips; see Fig.1). We use a total of tracing LSTMs to capture out traces (or concepts), where is the number of spatial regions in the visual feature (i.e. for ). Fusing these concepts together, we finally discover concept words, as will be described next.

Computation of Spatial Attention. For each trace , we maintain spatial attention weights , indicating where to attend on spatial grid locations of , through video frames . The initial attention weight at is initialized with an one-hot matrix, for each of grid locations. We compute the hidden states of the LSTM through by:



. The input to LSTMs is the context vector

, which is obtained by applying spatial attention to the visual feature . Note that the parameters of LSTMs are shared.

The attention weight vector at time step is updated as follows:


where is elementwise product, and

denotes two convolution operations before the softmax layer in Fig.

2. Note that in Eq.(3) is computed from the previous hidden state of the LSTM.

The spatial attention measures how each spatial grid location of visual features is related to the concept being tracked through tracing LSTMs. By repeating these two steps of Eq.(1)–(3) from to , our model can continuously find important and temporally consistent meanings over time, that are closely related to a part of video, rather than focusing on each video frame individually.

Finally, we predict the concept confidence vector :


that is, we first concatenate the hidden states

at the last time step of all tracing LSTMs, apply a linear transform parameterized by

and , and apply the elementwise sigmoid activation .

Training and Inference. For training, we obtain a reference concept confidence vector whose element is 1 if the corresponding word exists in the groundtruth caption; otherwise, 0. We minimize the following sigmoid cross-entropy cost , which is often used for multi-label classification [34] where each class is independent and not mutually exclusive:


Strictly speaking, since we apply an end-to-end learning approach, the cost of Eq.(6) is used as an auxiliary term for the overall cost function, which will be discussed in section 3.

For inference, we compute for a given query video, and find top words from the score (i.e. ). Finally, we represent these concept words by their word embedding .

3 Video-to-Language Models

We design a different base model for each of LSMDC tasks, while they share the concept word detector and the semantic attention mechanism. That is, we aim to validate that the proposed concept word detection is useful to a wide range of video-to-language models. For base models, we take advantage of state-of-the-art techniques, for which we do not argue as our contribution. We refer to our video-to-language models leveraging the concept word detector as CT-SAN (Concept-Tracing Semantic Attention Network).

For better understanding of our models, we outline the four LSMDC tasks as follows: (i) Movie description: generating a single descriptive sentence for a given movie clip, (ii) Fill-in-the-blank: given a video and a sentence with a single blank, finding a suitable word for the blank from the whole vocabulary set, (iii) Multiple-choice test: given a video query and five descriptive sentences, choosing the correct one out of them, and (iv) Movie retrieval: ranking 1,000 movie clips for a given natural language query.

We defer more model details to the supplementary file. Especially, we skip the description of multiple-choice and movie retrieval models in Figure 3(b)–(c), which can be found in the supplementary file.

3.1 A Model for Description

Fig.2 shows the proposed video captioning model. It takes video features and the detected concept words as input, and produces a word sequence as output . The model comprises video encoding and caption decoding LSTMs, and two semantic attention models. The two LSTM networks have two layers in depth, with layer normalization [1] and dropout [26] with a rate of 0.2.

Video Encoder. The video encoding LSTM encodes a video into a sequence of hidden states .


where is obtained by -average-pooling .

Caption Decoder. The caption decoding LSTM is a normal LSTM network as follows:


where the input is an intermediate representation of -th word input with semantic attention applied, as will be described below. We initialize the hidden state at by the last hidden state of the video encoder: .

Semantic Attention. Based on [38], our model in Fig.2 uses the semantic attention in two different parts, which are called as input and output semantic attention, respectively.

The input semantic attention computes an attention weight , which is assigned to each predicted concept word . It helps the caption decoding LSTM focus on different concept words dynamically at each step .

The attention weight and input vector to the LSTM are obtained by


We multiply a previous word by the word embedding matrix to be -dimensional. The parameters to learn include , and .

The output semantic attention guides how to dynamically weight the concept words when generating an output word at each step. We use , the hidden state of decoding LSTM at as an input to the output attention function . We then compute by attending the concept words set with the weight :


where is the hyperbolic tangent, and parameters include and .

Finally, the probability of output word is obtained as


where and . This procedure loops until corresponds to the <EOS> token.

Training. To learn the parameters of the model, we define a loss function as the total negative log-likelihood of all the words, with regularization terms on attention weights , , and [38], as well as the loss for concept discovery (Eq.6):



are hyperparameters and

is a regularization function with setting to as


For the rest of models, we transfer the parameters of the concept word detector trained with the description model, and allow the parameters being fine-tuned.

Figure 3: The model architectures for (a) fill-in-the-blank (section 3.2), (b) multiple-choice, and (c) movie retrieval task. The description of models for (b)–(c) can be found in the supplementary file. Each model takes advantage of the concept word detector in Fig.2, and semantic attention for the sake of its objective.

3.2 A Model for Fill-in-the-Blank

Fig.3(a) illustrates the proposed model for the fill-in-the-blank task. It is based on a bidirectional LSTM network (BLSTM) [25, 13], which is useful in predicting a blank word from an imperfect sentence, since it considers the sequence in both forward and backward directions. Our key idea is to employ the semantic attention mechanism on both input and output of the BLSTM, to strengthen the meaning of input and output words with the detected concept words.

The model takes word representation and concept words as input. Each is obtained by multiplying the one-hot word vector by an embedding matrix . Suppose that the -th text input is a blank for which we use a special token <blank>. We add the word prediction module only on top of the -th step of the BLSTM.

BLSTM. The input video is represented by the video encoding LSTM in Figure 2. The hidden state of the final video frame is used to initialize the hidden states of the BLSTM: , where and are the forward and backward hidden states of the BLSTM, respectively:


We also use the layer normalization [1].

Semantic Attention. The input and output semantic attention of this model is almost identical to those of the captioning model in section 3.1, only except that the word representation is used as input at each time step, instead of previous word vector . Then the attention weighted word vector is fed into the BLSTM.

The output semantic attention is also similar to that of the captioning model in section 3.1, only except that we apply the attention only once at -th step where the <blank> token is taken as input. We feed the output of the BLSTM


where and , into the output attention function , which generates as in Eq.(3.1) of the description model, .

Finally, the output word probability given is obtained via softmax on as


where parameters include and .

Training. During training, we minimize the loss as


where are hyperparameters, and is the same regularization function of Eq.(15). Again, is the cost of the concept word detector in Eq.(6).

4 Experiments

Movie Description B1 B2 B3 B4 M R Cr
EITanque [14] 0.144 (4) 0.042 (5) 0.016 (3) 0.007 (2) 0.056 (7) 0.130 (7) 0.098 (2)
S2VT [31] 0.162 (1) 0.051 (1) 0.017 (1) 0.007 (2) 0.070 (4) 0.149 (4) 0.082 (4)
SNUVL 0.157 (2) 0.049 (2) 0.014 (4) 0.004 (6) 0.071 (2) 0.147 (5) 0.070 (6)
sophieag 0.151 (3) 0.047 (3) 0.013 (5) 0.005 (4) 0.075 (1) 0.152 (2) 0.072 (5)
ayush11011995 0.116 (8) 0.032 (7) 0.011 (7) 0.004 (6) 0.070 (4) 0.138 (6) 0.042 (8)
rakshithShetty 0.119 (7) 0.024 (8) 0.007 (8) 0.003 (8) 0.046 (8) 0.108 (8) 0.044 (7)
Aalto 0.070 (9) 0.017 (9) 0.005 (9) 0.002 (9) 0.033 (9) 0.069 (9) 0.037 (9)
Base-SAN 0.123 (6) 0.038 (6) 0.013 (5) 0.005 (4) 0.066 (6) 0.150 (3) 0.090 (3)
CT-SAN 0.135 (5) 0.044 (4) 0.017 (1) 0.008 (1) 0.071 (2) 0.159 (1) 0.100 (1)
Fill-in-the-Blank Accuracy
Simple-LSTM 30.9
Simple-BLSTM 31.6
Base-SAN (Single) 34.5
Merging-LSTM [17] 34.2
Base-SAN (Ensemble) 36.9
SNUVL (Single) 38.0
SNUVL (Ensemble) 40.7
CT-SAN (Single) 41.9
CT-SAN (Ensemble) 42.7
Table 1: Left: Performance comparison for the movie description task on the LSMDC 2016 public test dataset. For language metrics, we use BLEU (B), METEOR (M), ROUGE (R), and CIDEr (Cr). We also show the ranking in parentheses. Right: Accuracy comparison (in percentage) for the movie fill-in-the-blank task.

We report the experimental results of the proposed models for the four tasks of LSMDC 2016. More experimental results and implementation details can be found in the supplementary file.

4.1 The LSMDC Dataset and Tasks

The LSMDC 2016 comprises four video-to-language tasks on the LSMDC dataset, which contains a parallel corpus of 118,114 sentences and 118,081 video clips sampled from 202 movies. We strictly follow the evaluation protocols of the challenge. We defer more details of the dataset and challenge rules to [22] and the challenge homepage111https://sites.google.com/site/describingmovies/..

Movie Description. This task is related to video captioning; given a short video clip, its goal is to generate a single descriptive sentence. The challenge provides a subset of LSMDC dataset named LSMDC16. It is divided into training, validation, public test, and blind test set, whose sizes are 91,941, 6,542, 10,053, and 9,578, respectively. The official performance metrics include BLEU-1,2,3,4 [19], METEOR [2], ROUGE-L [16] and CIDEr [29].

Multiple-Choice Test

. Given a video query and five candidate captions, from which its goal is to find the best option. The correct answer is the GT caption of the query video, and four other distractors are randomly chosen from the other captions that have different activity-phrase labels from the correct answer. The evaluation metric is the percentage of correctly answered test questions out of 10,053 public-test data.

Movie Retrieval. The objective is, given a short query sentence, to search for its corresponding video out of 1,000 candidate videos, sampled from the LSMDC16 public-test data. The evaluation metrics include Recall@1/5/10, and Median Rank (MedR). The Recall@ means the percentage of the GT video included in the first retrieved videos, and the MedR indicates the median rank of the GT. Each algorithm predicts pairwise rank scores between phrases and videos, from which all the evaluation metrics are calculated.

Movie Fill-in-the-Blank. This task is related to visual question answering; given a video clip and a sentence with a blank in it, its goal is to predict a single correct word to fill in the blank. The test set includes 30,000 examples from 10,000 clips (i.e. about 3 examples per sentence). The evaluation metric is the prediction accuracy, which is the percentage of predicted words that match with GTs.

4.2 Quantitative Results

We compare with the results on the public dataset in the official evaluation server of LSMDC 2016 as of the submission deadline (i.e. November 15th, 2016 UTC 23:59). Except award winners, the LSMDC participants have no obligation to disclose their identities or used technique. Below we use the IDs in the leaderboard to denote participants.

Movie description. Table 1 compares the performance of movie description between different algorithms. Among comparable models, our approach ranks (5, 4, 1, 1)-th in the BLEU language metrics, and (2, 1, 1)-th in the other language metrics. That is, our approach ranks first in four metrics, which means that our approach is comparable to the state-of-the-art methods. In order to quantify the improvement by the proposed concept word detection and semantic attention, we implement a variant (Base-SAN), which is our model of Fig.2 without those two components. As shown in Table 1, the performance gaps between (CT-SAN) and (Base-SAN) are significant.

Tasks Multiple-Choice Movie Retrieval
Methods Accuracy R@1 R@5 R@10 MedR
Aalto 39.7
SA-G+SA-FC7 [28] 55.1 3.0 8.8 13.2 114
LSTM+SA-FC7 [28] 56.3 3.3 10.2 15.6 88
C+LSTM+SA-FC7 [28] 58.1 4.3 12.6 18.9 98
Base-SAN (Single) 60.1 4.3 13.0 18.2 83
Base-SAN (Ensemble) 64.0 4.4 13.9 19.3 74
SNUVL (Single) 63.1 3.8 13.6 18.9 80
EITanque [14] 63.7 4.7 15.9 23.4 64
SNUVL (Ensemble) 65.7 3.6 14.7 23.9 50
CT-SAN (Single) 63.8 4.5 14.1 20.9 67
CT-SAN (Ensemble) 67.0 5.1 16.3 25.2 46
Table 2: Performance comparison for the multiple-choice test (accuracy in percentage) and movie retrieval task: Recall@k (R@k, higher is better) and Median Rank (MedR, lower is better).
Figure 4: Qualitative examples of the four vision-to-language tasks: (a)-(b) movie description, (c)-(d) fill-in-the-blank, (e)-(f) multiple-choice, and (g)-(h) movie retrieval. The left column shows correct examples while the right column shows wrong examples. In (h), we also show our retrieval ranks of the GT clips (the red box), 24th. We present more, clearer, and larger examples in the supplementary file.

Movie Fill-in-the-Blank. Table 1 also shows the results of the fill-in-the-blank task. We test an ensemble of our models, denoted by (CT-SAN) (Ensemble); the answer word is obtained by averaging the output word probabilities of three identical models trained independently. Our approach outperforms all the participants with large margins. We also compare our model with a couple of baselines: (CT-SAN) outperforms the simple single-layer LSTM/BLSTM variants with the scoring layer on top of the blank location, and (Base-SAN), which is the base model of (CT-SAN) without the concept detector and semantic attention.

Movie Multiple-Choice Test. For the multiple-choice test, our approach also ranks first as shown in Table 2. As in the fill-in-the-blank, the multiple-choice task also benefits from the concept detector and semantic attention. Moreover, an ensemble of six models trained independently further improves the accuracy from 63.8% to 67.0%.

Movie Retrieval. Table 2 compares Recall@ (R@k) and Median Rank (MedR) metrics between different methods. We also achieve the best retrieval performance with significant margins from baselines. Our (CT-SAN) (Ensemble) obtains the video-sentence similarity matrix with an ensemble of two different models. First, we train six retrieval models with different parameter initializations. Second, we obtain the similarity matrix using the multiple-choice version of (CT-SAN), because it can also generate a similarity score for a video-sentence pair. Finally, we average the seven similarity matrices into the final similarity matrix.

4.3 Qualitative Results

Fig.4 illustrates qualitative results of our algorithm with correct or wrong examples for each task. In each set, we show sampled frames of a query video, groundtruth (GT), our prediction (Ours), and the detected concept words. We provide more examples in the supplementary file.

Movie Description. Fig.4(a)-(b) illustrates examples of our movie description. The predicted sentences are often related to the content of clips closely, but the words themselves are not always identical to the GTs. For instance, the generated sentence for Fig.4(b) reads the clock shows a minute, which is relevant to the video clip although its GT sentence much focuses on awards on a shelf. Nonetheless, the concept words relevant to the GT sentence are well detected such as office or clock.

Movie Fill-in-the-Blank. Fig.4(c) shows that the detected concept words are well matched with the content of the clip, and possibly help predict the correct answer. Fig.4(d) is a near-miss case where our model also predict a plausible answer (e.g. run instead of hurry).

Movie Multiple-Choice Test. Fig.4(e) shows that our concept detection successfully guides the model to select the correct answer. Fig.4(f) is an example of failure to understand the situation; the fifth candidate is chosen because it is overlapped with much of detected words such as hall, walk, go, although the correct answer is the second.

Movie Retrieval. Interestingly, the concept words of Fig.4(g) capture the abstract relation between swimming, water, and pool. Thus, the first to fifth retrieved clips include water. Fig.4(h) is a near-miss example in which our method fails to catch rare word like twitch and cocks. The first to fourth retrieved clips contain a woman’s head and mouth, yet miss to catch subtle movement of mouth.

5 Conclusion

We proposed an end-to-end trainable approach for detecting a list of concept words that can be used as semantic priors for multiple-video-to-language models. We also developed a semantic attention mechanism that effectively exploits the discovered concept words. We implemented our approach into multiple video-to-language models to participate in four tasks of LSMDC 2016. We demonstrated that our method indeed improved the performance of video captioning, retrieval, and question answering, and finally won three tasks in LSMDC 2016, including  fill-in-the-blank, multiple-choice test, and movie retrieval.

Acknowledgements. This research is partially supported by Convergence Research Center through National Research Foundation of Korea (2015R1A5A7037676). Gunhee Kim is the corresponding author.


  • [1] J. L. Ba, J. R. Kiros, and G. E. Hinton. Layer Normalization. arXiv:1607.06450, 2016.
  • [2] S. Banerjee and A. Lavie. METEOR: An Automatic Metric for MT Evaluation with Improved Correlation with Human Judgments. In ACL, 2005.
  • [3] S. Bird, E. Loper, and E. Klein. Natural Language Processing with Python. O’Reilly Media Inc., 2009.
  • [4] D. L. Chen and W. B. Dolan. Collecting Highly Parallel Data for Paraphrase Evaluation. In ACL, 2011.
  • [5] P. Das, C. Xu, R. F. Doell, and J. J. Corso. A Thousand Frames in Just a Few Words: Lingual Description of Videos through Latent Topics and Sparse Object Stitching. In CVPR, 2013.
  • [6] J. Donahue, L. A. Hendricks, S. Guadarrama, M. Rohrbach, S. Venugopalan, K. Saenko, and T. Darrell. Long-term Recurrent Convolutional Networks for Visual Recognition and Description. In CVPR, 2015.
  • [7] H. Fang, S. Gupta, F. Iandola, R. K. Srivastava, L. Deng, P. Dollar, J. Gao, X. He, M. Mitchell, J. C. Platt, C. Lawrence Zitnick, and G. Zweig. From Captions to Visual Concepts and Back. In CVPR, 2015.
  • [8] A. Fukui, D. Park, A. Rohrbach, T. Darrel, and M. Rohrbach. Multimodal Compact Bilinear Pooling for Visual Question Answering and Visual Grounding. In EMNLP, 2016.
  • [9] X. Glorot and Y. Bengio. Understanding the difficulty of training deep feedforward neural networks. In AISTATS, 2010.
  • [10] I. J. Goodfellow, D. Warde-farley, M. Mirza, A. Courville, and Y. Bengio. Maxout networks. In ICML, 2013.
  • [11] S. Guadarrama, N. Krishnamoorthy, G. Malkarnenkar, S. Venugopalan, R. Mooney, T. Darrell, and K. Saenko. YouTube2Text: Recognizing and Describing Arbitrary Activities Using Semantic Hierarchies and Zero-shot Recognition. In ICCV, 2013.
  • [12] K. He, X. Zhang, S. Ren, and J. Sun. Deep Residual Learning for Image Recognition. In CVPR, 2016.
  • [13] S. Hochreiter and J. Schmidhuber. Long Short-Term Memory. In IEEE, 1997.
  • [14] D. Kaufman, G. Levi, T. Hassner, and L. Wolf. Temporal tessellation for video annotation and summarization. arXiv:1612.06950, 2016.
  • [15] D. Kingma and J. Ba. Adam: A method for stochastic optimization. In ICLR, 2015.
  • [16] C.-Y. Lin. ROUGE: A Package for Automatic Evaluation of Summaries. In WAS, 2004.
  • [17] A. Mazaheri, D. Zhang, and M. Shah. Video fill in the blank with merging lstms. arXiv:1610.04062, 2016.
  • [18] T. Mikolov, I. Sutskever, K. Chen, G. Corrado, and J. Dean. Distributed Representations of Words and Phrases and their Compositionality. In NIPS, 2013.
  • [19] K. Papineni, S. Roukos, T. Ward, and W.-J. Zhu. BLEU: A Method for Automatic Evaluation of Machine Translation. In ACL, 2002.
  • [20] A. Rohrbach, M. Rohrbach, W. Qiu, A. Friedrich, M. Pinkal, and B. Schiele. Coherent Multi-Sentence Video Description with Variable Level of Detail. In GCPR, 2014.
  • [21] A. Rohrbach, M. Rohrbach, and B. Schiele. The Long-Short Story of Movie Description. In GCPR, 2015.
  • [22] A. Rohrbach, A. Torabi, M. Rohrbach, N. Tandon, C. Pal, H. Larochelle, A. Courville, and B. Schiele. Movie Description. IJCV, 2017.
  • [23] M. Rohrbach, W. Qiu, I. Titov, S. Thater, M. Pinkal, and B. Schiele. Translating Video Content to Natural Language Descriptions. In ICCV, 2013.
  • [24] O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh, S. Ma, Z. Huang, A. Karpathy, A. Khosla, M. Bernstein, A. C. Berg, and L. Fei-Fei. ImageNet Large Scale Visual Recognition Challenge. IJCV, 2015.
  • [25] M. Schuster and K. K. Paliwal. Bidirectional Recurrent Neural Networks. In IEEE TSP, 1997.
  • [26] N. Srivastava, G. Hinton, A. Krizhevsky, I. Sutskever, and R. Salakhutdinov. Dropout: A Simple Way to Prevent Neural Networks from Overfitting. JMLR, 2014.
  • [27] M. Tapaswi, Y. Zhu, R. Stiefelhagen, A. Torralba, R. Urtasun, and S. Fidler. MovieQA: Understanding Stories in Movies through Question-Answering. In CVPR, 2016.
  • [28] A. Torabi, N. Tandon, and L. Sigal. Learning Language-Visual Embedding for Movie Understanding with Natural-Language. arXiv:1609.08124, 2016.
  • [29] R. Vedantam, C. L. Zitnick, and D. Parikh. CIDEr: Consensus-based Image Description Evaluation. In CVPR, 2015.
  • [30] S. Venugopalan, L. A. Hendricks, M. Rohrbach, R. Mooney, T. Darrell, and K. Saenko. Captioning Images with Diverse Objects. arXiv:1606.07770, 2016.
  • [31] S. Venugopalan, R. Marcus, D. Jeffrey, M. Raymond, D. Trevor, and S. Kate. Sequence to Sequence - Video to Text. In ICCV, 2015.
  • [32] S. Venugopalan, H. Xu, J. Donahue, M. Rohrbach, R. Mooney, and K. Saenko. Translating Videos to Natural Language Using Deep Recurrent Neural Networks. In HLT-NAACL, 2015.
  • [33] Q. Wu, C. Shen, A. v. d. Hengel, P. Wang, and A. Dick. Image Captioning and Visual Question Answering Based on Attributes and Their Related External Knowledge. arXiv:1603.02814, 2016.
  • [34] Q. Wu, C. Shen, L. Liu, A. Dick, and A. van den Hengel. What value do explicit high level concepts have in vision to language problems? In CVPR, 2016.
  • [35] K. Xu, J. Ba, R. Kiros, A. Courville, R. Salakhutdinov, R. Zemel, and Y. Bengio. Show, Attend and Tell: Neural Image Caption Generation with Visual Attention. In ICML, 2015.
  • [36] R. Xu, C. Xiong, W. Chen, and J. J. Corso. Jointly Modeling Deep Video and Compositional Text to Bridge Vision and Language in a Unified Framework. In AAAI, 2015.
  • [37] L. Yao, A. Torabi, K. Cho, N. Ballas, C. Pal, H. Larochelle, and A. Courville. Describing Videos by Exploiting Temporal Structure. In ICCV, 2015.
  • [38] Q. You, H. Jin, Z. Wang, C. Fang, and J. Luo. Image captioning with semantic attention. In CVPR, 2016.
  • [39] H. Yu, J. Wang, Z. Huang, Y. Yang, and W. Xu. Video Paragraph Captioning Using Hierarchical Recurrent Neural Networks. In CVPR, 2016.

Appendix A Details of Video-to-Language Models

Figure 5: (Repeat of Figure 3 in the main paper) The model architectures for (a) fill-in-the-blank (section 3.2), (b) multi-choice (section A.1), and (c) movie retrieval task (section A.2). Each of the models take advantage of the concept word detector described illustrated in Figure 2, and semantic attention for the sake of its objective.

In this section, we describe the further details of video-to-language models (section 3).

a.1 A Model for Multiple-Choice Test

Figure 5(b) illustrates the proposed model for the multiple-choice test. It takes a video and five choice sentences among which only one is the correct answer. Hence, our model computes the compatibility scores between the query video and five sentences, and selects the one with the highest score.

The multiple-choice model shares much resemblance to the model for fill-in-the-blank in Figure 5(a). First, it is based on the LSTM network, although it is not bi-directional. Second, it inputs the query video into the video encoding LSTM, and use its last hidden state to initialize the following LSTM. Third, it uses the same word representation for each candidate sentence. Finally, it exploits the same input semantic attention of Eq.(9)–(10), although it does not apply the output semantic attention because output is not a word but a score in this task.

We obtain a joint embedding of a pair of a single video and a sentence using the LSTM network:


where is obtained via the input semantic attention of Eq.(9)–(10), from the input sentence representation . We also initialize the hidden state by the final hidden state of video representation. Once the sentence is fed into the LSTM, we obtain a multimodal embedding of a video-sentence pair as the final hidden state of the LSTM.

Alignment Objective. The objective of the multiple-choice model is to assign high scores for the correctly matched video-sentence pairs but low scores for incorrect pairs. Therefore, we predict a similarity score between a movie clip and a sentence as follows:


where , and are parameters. We train the model using a max-margin structured loss objective:


where denotes the answer sentence among the five candidates. This objective encourages a positive video-sentence pair to have a higher score than a misaligned negative pair by a margin . We use in our experiments.

At test, for a query video , we compute five scores of the candidate sentences, and select the one with maximum score as the answer.

a.2 A Model for Retrieval

Figure 5(c) illustrates our model for movie retrieval. The basic idea is to compute a score for a query text and video pair, by learning a joint representation between two modalities (i.e. query text and video) using the CBP (Compact Bilinear Pooling) layer [8].

For the video encoding, we use the final hidden state of the video encoding LSTM as done in other models. We also obtain a query representation via input semantic attention like as in section A.1, through the LSTM network:


Similarly, is obtained via the input semantic attention of Eq.(9)–(10), from the input query sentence representation . Then, we use the final hidden state of query encoding LSTM as query representation.

To measure a similarity score between a movie and a sentence as follows (see Figure 5(c)):


where denotes the CBP (Compact Bilinear Pooling) layer [8], which captures the interactions between different modalities better than simple concatenation. That is, we learn the multimodal space for common features between video encoding LSTM and query encoding LSTM. The joint representation extracted from the MCB layer is multiplied by , and further processed by a consequent maxout layer [10], which yields non-sparse activations while mitigating overfitting. Finally, we obtain the score by multiplying the output by .

We use the same max-margin structured loss objective with the multiple-choice model:


which encourages a positive video-sentence pair to have a higher score than a misaligned pair by a margin (e.g. in our experiments).

At test, for a query sentence , we compute scores for all videos in the test set. From the score matrix, we can rank the videos for the query. As mentioned in section 4.2, an ensemble of multiple score matrices is used in our final model, which yields much better retreival performance.

Movie Description B1 B2 B3 B4 M R Cr FITB (Accuracy)
rand-SAN 0.101 0.022 0.008 0.002 0.049 0.127 0.058 17.0
no-ATT-SAN 0.130 0.039 0.015 0.006 0.064 0.152 0.092 37.4
Decoupled CT-SAN 0.144 0.047 0.017 0.007 0.066 0.152 0.086 35.4
NN-SAN 0.122 0.035 0.012 0.005 0.058 0.142 0.078 12.1
Base-SAN 0.123 0.038 0.013 0.005 0.066 0.150 0.090 34.5
CT-SAN 0.135 0.044 0.017 0.008 0.071 0.159 0.100 41.9
Table 3: Performance comparison of more baselines, for the movie description task and for the fill-in-the-blank.
Tasks Multi-Choice Movie Retrieval
Methods Accuracy R@1 R@5 R@10 MedR
rand-SAN 58.7 2.1 8.1 11.6 104
no-ATT-SAN 61.1 4.0 13.1 18.3 75
Base-SAN 60.1 4.3 13.0 18.2 83
CT-SAN (Single) 63.8 4.5 14.1 20.9 67
CT-SAN (Ensemble) 67.0 5.1 16.3 25.2 46
Table 4: Performance comparison of more baselines on multiple-choice, and movie retrieval task.
Movie Description Fill-in-the-Blank Multi-Choice
B1 B2 B3 B4 M R Cr Accuracy Accuracy
CT-SAN () 0.133 0.043 0.015 0.007 0.066 0.156 0.100 41.5 63.0
CT-SAN () 0.135 0.044 0.017 0.008 0.071 0.159 0.100 41.9 63.8
CT-SAN () 0.136 0.044 0.016 0.008 0.068 0.156 0.106 41.9 63.3
Table 5: Performance comparison of our model (CT-SAN) in three tasks, varying the number of detected concept words .
Movie Description Fill-in-the-Blank
B1 B2 B3 B4 M R Cr Accuracy
only input 0.128 0.041 0.012 0.006 0.066 0.151 0.078 37.7
only output 0.130 0.043 0.014 0.005 0.067 0.148 0.097 39.1
input&output 0.135 0.044 0.017 0.008 0.071 0.159 0.100 41.9
Table 6: Performance comparison for ablation study of our model (CT-SAN) in two tasks. We apply the semantic attention to (i) only input, and (ii) only output.

Appendix B Experimental Details

b.1 Implementation Details

Optimization. We train all of our models using the Adam optimizer [15] to minimize the loss, with an initial learning rate in the range of to

. We adopt the data augmentation of image mirroring. We also use batch shuffling in every training epoch. We use Xavier initialization

[9] for initializing the weight variables. For all models, the LSTM (BLSTM) networks are two-layered in depth, and we apply layer normalization [1] and dropout [26] with a rate of 0.2 to reduce overfitting.

During training of fill-in-the-blank, multiple-choice, and retrieval models, we initialize the parameters in the concept word detector component with a pre-trained model of the movie description task. The new parameters (e.g. and the LSTM parameters for multi-choice test) are initialized randomly, and then the whole model is trained end-to-end using the provided training set.

Movie Description. The split of LSMDC16 dataset is provided by the challenge organizers: (training, validation, test, blind test set) video-sentence pairs respectively. We train our model using the training set of this split, and the Para-Phrase AD sentences additionally provided by the challenge organizers.

Fill-in-the-blank. The LSMDC16 dataset for the fill-in-the-blank is splitted into (training, validation, test set) . We also train our model using the officially provided training set only. To improve prediction accuracy, we use an ensemble of models; the answer word is obtained by averaging the output word probabilities of three copies of models trained with different initializations.

Multiple-choice test. The training/validation/test split of LSMDC16 dataset is same as in the movie description task. Although it is possible to include more negative sentences other than the provided four distractors (we also find that it leads to a better accuracy), we experiment the models trained using the four distractors only. we simply average the score matrix of individual models, to obtain the ensembled score matrix. In our experiments, an ensemble of six copies of model trained independently, denoted by CT-SAN (Ensemble), shows a considerable improvement of accuracy.

Movie Retrieval. Our video encoding LSTM and query encoding LSTM use the same parameter setting with the LSTM networks for movie description. We use the dropout [26] before the maxout layer with the rate of 0.5. The video-sentence similarity matrix is obtained with an ensemble of identical models and multiple-choice model. First, we train six retrieval models and one multiple-choice model with different parameter setting. Second, we obtain the similarity matrix of alignment score from all possible pair between 1,000 natural language sentences and 1,000 movie clip. To build an ensemble model, we average the multiple similarity matrices into the final similarity matrix.

Appendix C More Experimental Results

In this section, we provide additional experimental results to support the validity of the proposed concept word detector and semantic attention models.

c.1 On the Quality of Concept Words

To study the effect of quality of concept words, we present and experiment more baselines: (rand-SAN), (no-ATT-SAN), and (NN-SAN).

Random Concept Words. A baseline (rand-SAN) is a variant of the same structure as (CT-SAN), except that it uses random concept words instead of the ones detected by the concept word detector. We uniformly sample words for concept words, from the candidates.

Without Attention. We also study an effect of spatial attention in the proposed concept word detector (section 2). With a simple baseline model denoted by (no-ATT-SAN), the spatial attention component in the concept word detector is replaced by a single two-layered LSTM. Specifically, we compute the LSTM states (a single LSTM instead of ones) by feeding the average-pooled visual features , and then the concept confidence vector using the last hidden state:


which replaces Eq.(2) and Eq.(5), respectively. This baseline model simply transforms the video representation into concept words, but does not involve any spatial attention.

Nearest Neighbor. We also study a simpler baseline which use a nearest-neighbor method instead of concept word detector. This simple baseline is denoted by (NN-SAN). In this method, we simply take the concept words of the closest training video, in terms of ResNet video features averaged over time.

Quantitative Result. As shown in Table 3 and 4, the performance of (no-ATT-SAN) is better than (Base-SAN) and (NN-SAN), but poorer than the full model (CT-SAN), in all of the four tasks. This implies that the spatial attention helps detect concept words that are useful for video captioning. Especially, (CT-SAN) outperforms (no-ATT-SAN) in the fill-in-the-blank and the multi-choice tasks with a large margin. Nevertheless, using semantic attention turns out to be more helpful than not using it, as one can observe that (no-ATT-SAN) shows a better performance than (Base-SAN).

The performance of (rand-SAN) with semantic attention but with poor concept words, is much inferior to (Base-SAN), which even lacks semantic attention. As such, we find that the quality of concept words is crucial for performance enhancement. Besides, retrieved words from (NN-SAN) are not so helpful in training semantic attention network. (Decoupled CT-SAN) also shows worse performance than (CT-SAN) which is trained with an end-to-end manner. These suggest that joint learning the concept word detector and the task-specific network is effective in achieving a better performance.

c.2 Ablation Study

We conduct an additional ablation experiment on the semantic attention, and present the results of movie description and FITB (Fill-in-the-Blank) tasks in Table 6.

c.3 On the Number of Concept Words

We also conduct another simple experiment on the number of concept words. We compute the performance of (CT-SAN), with changing the number of detected concept words, . As shown in Table 5, we observe only a marginal performance difference. However, as the number of concept words increases, the time required to train the whole model increases, and an overfitting is more prone to occur.

Figure 6: Visualization of spatial attentions in the movie description model. In the first row, we show five sampled keyframes from the input movie. Below, we select three tracing-LSTMs among ones and show their spatial attention maps (see section 2).
Figure 7: Visualization of spatial attentions in the movie description model.
Figure 8: Examples of our method and baselines in movie description. We show the generated description and the detected concept words of (CT-SAN) and (no-ATT-SAN). We also compare other movie description baselines, including S2VT [31] and Temporal Attention [37] (we referenced their public code).
Figure 9: More examples of our method and baselines in movie description.

Appendix D More Examples and Qualitative Results

We visualize some examples of the spatial attention computed in the concept word detector in Figure 67. The spatial attentions roughly captures high-level concepts in the video (e.g. a blue car moving left to right, in Fig.6(a)). Figure 89 show some examples of generated movie description with the concept words detected by several baselines and our approach.

In the following, we present more examples of movie description results in Figure 10. Additional examples of the fill-in-the-blank task follows in Figure 11, and more examples of the multi-choice test are given in Figure 12. Finally, we present examples of the movie retrieval task in Figure 1314. We also show each model’s output and the detected concept words correspondingly.

Figure 10: Examples of movie descriptions. (a)-(d) are positive examples, and (e)-(f) are near-miss or wrong examples.
Figure 11: Examples of fill-in-the-blank task. (a)-(d) are positive examples, and (e)-(f) are near-miss or wrong examples.
Figure 12: Examples of multiple-choice test. The groundtruth answer is in bold, and the output of our model is marked with a red checkbox. (a)-(c) are positive examples, and (d) is a near-miss or wrong example.
Figure 13: Positive examples of movie retrieval. From left to right, we show the 1st-5th retrieved movie clips from natural language sentence. The groundtruth movie clip is shown in the green box.
Figure 14: Negative examples of movie retrieval. The first 4 columns represent the 1st-4th retrieved movie clips, and the last one is the groundtruth movie clip (in the red box). We also show the retrieved rank of the groundtruth.