From Captions to Visual Concepts and Back

11/18/2014 ∙ by Hao Fang, et al. ∙ 0

This paper presents a novel approach for automatically generating image descriptions: visual detectors, language models, and multimodal similarity models learnt directly from a dataset of image captions. We use multiple instance learning to train visual detectors for words that commonly occur in captions, including many different parts of speech such as nouns, verbs, and adjectives. The word detector outputs serve as conditional inputs to a maximum-entropy language model. The language model learns from a set of over 400,000 image descriptions to capture the statistics of word usage. We capture global semantics by re-ranking caption candidates using sentence-level features and a deep multimodal similarity model. Our system is state-of-the-art on the official Microsoft COCO benchmark, producing a BLEU-4 score of 29.1 human judges compare the system captions to ones written by other people on our held-out test set, the system captions have equal or better quality 34 time.

READ FULL TEXT VIEW PDF

Authors

page 1

page 3

page 6

page 7

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

When does a machine “understand” an image? One definition is when it can generate a novel caption that summarizes the salient content within an image. This content may include objects that are present, their attributes, or their relations with each other. Determining the salient content requires not only knowing the contents of an image, but also deducing which aspects of the scene may be interesting or novel through commonsense knowledge [zitnickCVPR13, ChenICCV2013neil, levan].

Figure 1: An illustrative example of our pipeline.

This paper describes a novel approach for generating image captions from samples. We train our caption generator from a dataset of images and corresponding image descriptions. Previous approaches to generating image captions relied on object, attribute, and relation detectors learned from separate hand-labeled training data [yang2011corpus, kulkarni2011baby].

The direct use of captions in training has three distinct advantages. First, captions only contain information that is inherently salient. For example, a dog detector trained from images with captions containing the word dog will be biased towards detecting dogs that are salient and not those that are in the background. Image descriptions also contain variety of word types, including nouns, verbs, and adjectives. As a result, we can learn detectors for a wide variety of concepts. While some concepts, such as riding or beautiful, may be difficult to learn in the abstract, these terms may be highly correlated to specific visual patterns (such as a person on a horse or mountains at sunset).

Second, training a language model (LM) on image captions captures commonsense knowledge about a scene. A language model can learn that a person is more likely to sit on a chair than to stand on it. This information disambiguates noisy visual detections.

Third, by learning a joint multimodal representation on images and their captions, we are able to measure the global similarity between images and text, and select the most suitable description for the image.

An overview of our approach is shown in Figure 1

. First, we use weakly-supervised learning to create detectors for a set of words commonly found in image captions. Learning directly from image captions is difficult, because the system does not have access to supervisory signals, such as object bounding boxes, that are found in other data sets

[PASCAL, imagenet_cvpr09]. Many words, e.g., crowded or inside

, do not even have well-defined bounding boxes. To overcome this difficulty, we use three ideas. First, the system reasons with image sub-regions rather than with the full image. Next, we featurize each of these regions using rich convolutional neural network (CNN) features, fine-tuned on our training data

[krizhevskyNIPS12, simonyan14very]. Finally, we map the features of each region to words likely to be contained in the caption. We train this map using multiple instance learning (MIL) [maron98, zhangNIPS05] which learns discriminative visual signature for each word.

Generating novel image descriptions from a bag of likely words requires an effective LM. In this paper, we view caption generation as an optimization problem. In this view, the core task is to take the set of word detection scores, and find the highest likelihood sentence that covers each word exactly once. We train a maximum entropy (ME) LM from a set of training image descriptions [Berger1996, ratnaparkhi2002trainable]. This training captures commonsense knowledge about the world through language statistics [NELL]. An explicit search over word sequences is effective at finding high-likelihood sentences.

The final stage of the system (Figure 1) re-ranks a set of high-likelihood sentences by a linear weighting of sentence features. These weights are learned using Minimum Error Rate Training (MERT) [Och2003]

. In addition to several common sentence features, we introduce a new feature based on a Deep Multimodal Similarity Model (DMSM). The DMSM learns two neural networks that map images and text fragments to a common vector representation in which the similarity between sentences and images can be easily measured. As we demonstrate, the use of the DMSM significantly improves the selection of quality sentences.

To evaluate the quality of our automatic captions, we use three easily computable metrics and better/worse/equal comparisons by human subjects on Amazon’s Mechanical Turk (AMT). The evaluation was performed on the challenging Microsoft COCO dataset [linECCV14, capeval2015] containing complex images with multiple objects. Each of the 82,783 training images has 5 human annotated captions. For measuring the quality of our sentences we use the popular BLEU [papineni2002bleu], METEOR [banerjee2005meteor] and perplexity (PPLX) metrics. Surprisingly, we find our generated captions outperform humans based on the BLEU metric; and this effect holds when evaluated on unseen test data from the COCO dataset evaluation server, reaching 29.1% BLEU-4 vs. 21.7% for humans. Human evaluation on our held-out test set has our captions judged to be of the same quality or better than humans 34% of the time. We also compare to previous work on the PASCAL sentence dataset [Rashtchian2010], and show marked improvements over previous work. Our results demonstrate the utility of training both visual detectors and LMs directly on image captions, as well as using a global multimodal semantic model for re-ranking the caption candidates.

2 Related Work

There are two well-studied approaches to automatic image captioning: retrieval of existing human-written captions, and generation of novel captions. Recent retrieval-based approaches have used neural networks to map images and text into a common vector representation [socher2013grounded]. Other retrieval based methods use similarity metrics that take pre-defined image features [hodosh2013framing, ordonez2011im2text]. Farhadi et al. [farhadi2010every] represent both images and text as linguistically-motivated semantic triples, and compute similarity in that space. A similar fine-grained analysis of sentences and images has been done for retrieval in the context of neural networks [karpathy2014deep].

Retrieval-based methods always return well-formed human-written captions, but these captions may not be able to describe new combinations of objects or novel scenes. This limitation has motivated a large body of work on generative approaches, where the image is first analyzed and objects are detected, and then a novel caption is generated. Previous work utilizes syntactic and semantic constraints in the generation process [mitchell2012midge, yao2010i2t, li2011composing, kuznetsova2012collective, kulkarni2011baby, yang2011corpus], and we compare against prior state of the art in this line of work. We focus on the Midge system [mitchell2012midge]

, which combines syntactic structures using maximum likelihood estimation to generate novel sentences; and compare qualitatively against the Baby Talk system

[kulkarni2011baby], which generates descriptions by filling sentence template slots with words selected from a conditional random field that predicts the most likely image labeling. Both of these previous systems use the same set of test sentences, making direct comparison possible.

Figure 2: Multiple Instance Learning detections for cat, red, flying and two (left to right, top to bottom). View in color.

Recently, researchers explored purely statistical approaches to guiding language models using images. Kiros et al. [kiros2013multimodal] use a log-bilinear model with bias features derived from the image to model text conditioned on the image. Also related are several contemporaneous papers [mao2014explain, Vinyals2014b, Chen2014, Karpathy2014b, Donahue2014a, Xu2015, Lebret2015]. Among these, a common theme [mao2014explain, Vinyals2014b, Chen2014, Karpathy2014b]

has been to utilize a recurrent neural network for generating images captions by conditioning its output on image features extracted by a convolutional neural network. More recently, Donahue et al.

[Donahue2014a] also applied a similar model to video description. Lebret et al. [Lebret2015] have investigated the use of a phrase-based model for generating captions, while Xu et al. [Xu2015] have proposed a model based on visual attention.

Unlike these approaches, in this work we detect words by applying a CNN to image regions [girshickCVPR14] and integrating the information with MIL [zhangNIPS05]. We minimize a priori assumptions about how sentences should be structured by training directly from captions. Finally, in contrast to [kiros2013multimodal, mao2014explain], we formulate the problem of generation as an optimization problem and search for the most likely sentence [ratnaparkhi2002trainable].

3 Word Detection

The first step in our caption generation pipeline detects a set of words that are likely to be part of the image’s description. These words may belong to any part of speech, including nouns, verbs, and adjectives. We determine our vocabulary using the 1000 most common words in the training captions, which cover over of the word occurrences in the training data (available on project webpage 111http://research.microsoft.com/image_captioning).

3.1 Training Word Detectors

Given a vocabulary of words, our next goal is to detect the words from images. We cannot use standard supervised learning techniques for learning detectors, since we do not know the image bounding boxes corresponding to the words. In fact, many words relate to concepts for which bounding boxes may not be easily defined, such as open or beautiful

. One possible approach is to use image classifiers that take as input the entire image. As we show in Section

6, this leads to worse performance since many words or concepts only apply to image sub-regions. Instead, we learn our detectors using the weakly-supervised approach of Multiple Instance Learning (MIL) [maron98, zhangNIPS05].

For each word , MIL takes as input sets of “positive” and “negative” bags of bounding boxes, where each bag corresponds to one image . A bag is said to be positive if word is in image ’s description, and negative otherwise. Intuitively, MIL performs training by iteratively selecting instances within the positive bags, followed by retraining the detector using the updated positive labels.

We use a noisy-OR version of MIL [zhangNIPS05]

, where the probability of bag

containing word is calculated from the probabilities of individual instances in the bag:

(1)

where is the probability that a given image region in image corresponds to word . We compute using a multi-layered architecture [krizhevskyNIPS12, simonyan14very]222We denote the CNN from [krizhevskyNIPS12] as AlexNet and the 16-layer CNN from [simonyan14very]

as VGG for subsequent discussion. We use the code base and models available from the Caffe Model Zoo

https://github.com/BVLC/caffe/wiki/Model-Zoo [jia2014caffe]., by computing a logistic function on top of the fc7 layer (this can be expressed as a fully connected fc8 layer followed by a sigmoid layer):

(2)

where is the fc7 representation for image region in image , and , are the weights and bias associated with word .

We express the fully connected layers (fc6, fc7, fc8) of these networks as convolutions to obtain a fully convolutional network. When this fully convolutional network is run over the image, we obtain a coarse spatial response map. Each location in this response map corresponds to the response obtained by applying the original CNN to overlapping shifted regions of the input image (thereby effectively scanning different locations in the image for possible objects). We up-sample the image to make the longer side to be pixels which gives us a response map at fc8 for both [krizhevskyNIPS12, simonyan14very] and corresponds to sliding a

bounding box in the up-sampled image with a stride of 32. The noisy-OR version of MIL is then implemented on top of this response map to generate a single probability

for each word for each image. We use a cross entropy loss and optimize the CNN end-to-end for this task with stochastic gradient descent. We use one image in each batch and train for 3 epochs. For initialization, we use the network pre-trained on ImageNet

[imagenet_cvpr09].

3.2 Generating Word Scores for a Test Image

Given a novel test image , we up-sample and forward propagate the image through the CNN to obtain as described above. We do this for all words in the vocabulary . Note that all the word detectors have been trained independently and hence their outputs need to be calibrated. To calibrate the output of different detectors, we use the image level likelihood to compute precision on a held-out subset of the training data [hariharanCVPR2014b]. We threshold this precision value at a global threshold , and output all words with a precision of or higher along with the image level probability , and raw score .

Figure 2 shows some sample MIL detections. For each image, we visualize the spatial response map . Note that the method has not used any bounding box annotations for training, but is still able to reliably localize objects and also associate image regions with more abstract concepts.

4 Language Generation

Feature Type Definition Description
Attribute 0/1 Predicted word is in the attribute set, i.e. has been visually detected and not yet used.
N-gram+ 0/1 and N-gram ending in predicted word is and the predicted word is in the attribute set.
N-gram- 0/1 and N-gram ending in predicted word is and the predicted word is not in the attribute set.
End 0/1 and The predicted word is and all attributes have been mentioned.
Score score() when The log-probability of the predicted word when it is in the attribute set.
Table 1: Features used in the maximum entropy language model.

We cast the generation process as a search for the likeliest sentence conditioned on the set of visually detected words. The language model is at the heart of this process because it defines the probability distribution over word sequences. Note that despite being a statistical model, the LM can encode very meaningful information, for instance that

running is more likely to follow horse than talking. This information can help identify false word detections and encodes a form of commonsense knowledge.

4.1 Statistical Model

To generate candidate captions for an image, we use a maximum entropy (ME) LM conditioned on the set of visually detected words. The ME LM estimates the probability of a word conditioned on the preceding words , as well as the set of words with high likelihood detections that have yet to be mentioned in the sentence. The motivation of conditioning on the unused words is to encourage all the words to be used, while avoiding repetitions. The top 15 most frequent closed-class words333The top 15 frequent closed-class words are a, on, of, the, in, with, and, is, to, an, at, are, next, that and it. are removed from the set since they are detected in nearly every image (and are trivially generated by the LM). It should be noted that the detected words are usually somewhat noisy. Thus, when the end of sentence token is being predicted, the set of remaining words may still contain some words with a high confidence of detection.

Following the definition of an ME LM [Berger1996], the word probability conditioned on preceding words and remaining objects can be written as:

(3)

where denotes the start-of-sentence token, , and and respectively denote the -th max-entropy feature and its weight. The basic discrete ME features we use are summarized in Table 1. These features form our “baseline” system. It has proven effective to extend this with a “score” feature, which evaluates to the log-likelihood of a word according to the corresponding visual detector. We have also experimented with distant bigram features [lau1993trigger] and continuous space log-bilinear features [Mnih2007, Mnih2012], but while these improved PPLX significantly, they did not improve BLEU, METEOR or human preference, and space restrictions preclude further discussion.

To train the ME LM, the objective function is the log-likelihood of the captions conditioned on the corresponding set of detected objects, i.e.:

(4)

where the superscript denotes the index of sentences in the training data, and

denotes the length of the sentence. The noise contrastive estimation (NCE) technique is used to accelerate the training by avoiding the calculation of the exact denominator in (

3) [Mnih2012]. In the generation process, we use the unnormalized NCE likelihood estimates, which are far more efficient than the exact likelihoods, and produce very similar outputs. However, all PPLX numbers we report are computed with exhaustive normalization. The ME features are implemented in a hash table as in [mikolov2011strategies]. In our experiments, we use N-gram features up to 4-gram and 15 contrastive samples in NCE training.

4.2 Generation Process

During generation, we perform a left-to-right beam search similar to the one used in [Ratnaparkhi2000]. This maintains a stack of length partial hypotheses. At each step in the search, every path on the stack is extended with a set of likely words, and the resulting length paths are stored. The top length paths are retained and the others pruned away.

We define the possible extensions to be the end of sentence token , the 100 most frequent words, the set of attribute words that remain to be mentioned, and all the words in the training data that have been observed to follow the last word in the hypothesis. Pruning is based on the likelihood of the partial path. When is generated, the full path to is removed from the stack and set aside as a completed sentence. The process continues until a maximum sentence length is reached.

After obtaining the set of completed sentences , we form an -best list as follows. Given a target number of image attributes to be mentioned, the sequences in covering at least objects are added to the -best list, sorted in descending order by the log-likelihood. If there are less than sequences covering at least objects found in , we reduce by 1 until sequences are found.

5 Sentence Re-Ranking

Our LM produces an -best set of sentences. Our final stage uses MERT [Och2003] to re-rank the sentences. MERT uses a linear combination of features computed over an entire sentence, shown in Table 2. The MERT model is trained on the -best lists for the validation set using the BLEU metric, and applied to the -best lists for the test set. Finally, the best sequence after the re-ranking is selected as the caption of the image. Along with standard MERT features, we introduce a new multimodal semantic similarity model, discussed below.

1. The log-likelihood of the sequence.
2. The length of the sequence.
3. The log-probability per word of the sequence.
4. The logarithm of the sequence’s rank in the log-likelihood.
5. 11 binary features indicating whether the number
of mentioned objects is (.
6. The DMSM score between the sequence and the image.
Table 2: Features used by MERT.

5.1 Deep Multimodal Similarity Model

To model global similarity between images and text, we develop a Deep Multimodal Similarity Model (DMSM). The DMSM learns two neural networks that map images and text fragments to a common vector representation. We measure similarity between images and text by measuring cosine similarity between their corresponding vectors. This cosine similarity score is used by MERT to re-rank the sentences. The DMSM is closely related to the unimodal Deep Structured Semantic Model (DSSM)

[huang2013, Shen2014], but extends it to the multimodal setting. The DSSM was initially proposed to model the semantic relevance between textual search queries and documents, and is extended in this work to replace the query vector in the original DSSM by the image vector computed from the deep convolutional network.

The DMSM consists of a pair of neural networks, one for mapping each input modality to a common semantic space, which are trained jointly. In training, the data consists of a set of image/caption pairs. The loss function minimized during training represents the negative log posterior probability of the caption given the corresponding image.

Image model: We map images to semantic vectors using the same CNN (AlexNet / VGG) as used for detecting words in Section 3. We first finetune the networks on the COCO dataset for the full image classification task of predicting the words occurring in the image caption. We then extract out the fc7 representation from the finetuned network and stack three additional fully connected layers with tanh non-linearities on top of this representation to obtain a final representation of the same size as the last layer of the text model. We learn the parameters in these additional fully connected layers during DMSM training.

Text model: The text part of the DMSM maps text fragments to semantic vectors, in the same manner as in the original DSSM. In general, the text fragments can be a full caption. Following [huang2013] we convert each word in the caption to a letter-trigram count vector, which uses the count distribution of context-dependent letters to represent a word. This representation has the advantage of reducing the size of the input layer while generalizing well to infrequent, unseen and incorrectly spelled words. Then following [Shen2014], this representation is forward propagated through a deep convolutional neural network to produce the semantic vector at the last layer.

Objective and training: We define the relevance as the cosine similarity between an image or query () and a text fragment or document () based on their representations and obtained using the image and text models: . For a given image-text pair, we can compute the posterior probability of the text being relevant to the image via:

(5)

Here is a smoothing factor determined using the validation set, which is 10 in our experiments. denotes the set of all candidate documents (captions) which should be compared to the query (image). We found that restricting to one matching document and a fixed number of randomly selected non-matching documents worked reasonably well, although using noise-contrastive estimation could further improve results. Thus, for each image we select one relevant text fragment and non-relevant fragments to compute the posterior probability. is set to 50 in our experiments. During training, we adjust the model parameters to minimize the negative log posterior probability that the relevant captions are matched to the images:

(6)

6 Experimental Results

Average Precision Precision at Human Recall
NN VB JJ DT PRP IN Others All NN VB JJ DT PRP IN Others All
Count 616 176 119 10 11 38 30 1000
Chance 2.0 2.3 2.5 23.6 4.7 11.9 7.7 2.9
Classification (AlexNet) 32.4 16.7 20.7 31.6 16.8 21.4 15.6 27.1 39.0 27.7 37.0 37.3 26.2 31.5 25.0 35.9
Classification (VGG) 37.0 19.4 22.5 32.9 19.4 22.5 16.9 30.8 45.3 31.0 37.1 40.2 29.6 33.9 25.5 40.6
MIL (AlexNet) 36.9 18.0 22.9 31.7 16.8 21.4 15.2 30.4 46.0 29.4 40.1 37.9 25.9 31.5 21.6 40.8
MIL (VGG) 41.4 20.7 24.9 32.4 19.1 22.8 16.3 34.0 51.6 33.3 44.3 39.2 29.4 34.3 23.9 45.7
Human Agreement 63.8 35.0 35.9 43.1 32.5 34.3 31.6 52.8
Table 3: Average precision (AP) and Precision at Human Recall (PHR) [capeval2015] for words with different parts of speech (NN: Nouns, VB: Verbs, JJ: Adjectives, DT: Determiners, PRP: Pronouns, IN: Prepositions). Results are shown using a chance classifier, full image classification, and Noisy OR multiple instance learning with AlexNet [krizhevskyNIPS12] and VGG [simonyan14very] CNNs.


Figure 3: Qualitative results for several randomly chosen images on the Microsoft COCO dataset, with our generated caption (black) and a human caption (blue) for each image. In the bottom two rows we show localizations for the words used in the sentences. More examples can be found on the project website.

We next describe the datasets used for testing, followed by an evaluation of our approach for word detection and experimental results on sentence generation.

6.1 Datasets

Most of our results are reported on the Microsoft COCO dataset [linECCV14, capeval2015]. The dataset contains 82,783 training images and 40,504 validation images. The images create a challenging testbed for image captioning since most images contain multiple objects and significant contextual information. The COCO dataset provides 5 human-annotated captions per image. The test annotations are not available, so we split the validation set into validation and test sets444We split the COCO train/val set ito 82,729 train/20243 val/20244 test. Unless otherwise noted, test results are reported on the 20444 images from the validation set..

For experimental comparison with prior papers, we also report results on the PASCAL sentence dataset [Rashtchian2010], which contains 1000 images from the 2008 VOC Challenge [PASCAL], with 5 human captions each.

6.2 Word Detection

To gain insight into our weakly-supervised approach for word detection using MIL, we measure its accuracy on the word classification task: If a word is used in at least one ground truth caption, it is included as a positive instance. Note that this is a challenging task, since conceptually similar words are classified separately; for example, the words cat/cats/kitten, or run/ran/running all correspond to different classes. Attempts at adding further supervision, e.g., in the form of lemmas, did not result in significant gains.

Average Precision (AP) and Precision at Human Recall (PHR) [capeval2015] results for different parts of speech are shown in Table 3. We report two baselines. The first (Chance) is the result of randomly classifying each word. The second (Classification) is the result of a whole image classifier which uses features from AlexNet or VGG CNN [krizhevskyNIPS12, simonyan14very]

. These features were fine-tuned for this word classification task using a logistic regression loss.

As shown in Table 3, the MIL NOR approach improves over both baselines for all parts of speech, demonstrating that better localization can help predict words. In fact, we observe the largest improvement for nouns and adjectives, which often correspond to concrete objects in an image sub-region. Results for both classification and MIL NOR are lower for parts of speech that may be less visually informative and difficult to detect, such as adjectives (e.g., few, which has an AP of 2.5), pronouns (e.g., himself, with an AP of 5.7), and prepositions (e.g., before, with an AP of 1.0). In comparison words with high AP scores are typically either visually informative (red: AP 66.4, her: AP 45.6) or associated with specific objects (polar: AP 94.6, stuffed: AP 74.2). Qualitative results demonstrating word localization are shown in Figures 2 and 3.

Figure 4: Qualitative results for images on the PASCAL sentence dataset. Captions using our approach (black), Midge [mitchell2012midge] (blue) and Baby Talk [kulkarni2011baby] (red) are shown.

6.3 Caption Generation

System pplx bleu meteor human human human
1. Unconditioned 24.1 1.2% 6.8%
2. Shuffled Human 1.7% 7.3%
3. Baseline 20.9 16.9% 18.9% 9.9% (1.5%) 2.4% (0.8%) 12.3% (1.6%)
4. Baseline+Score 20.2 20.1% 20.5% 16.9% (2.0%) 3.9% (1.0%) 20.8% (2.2%)
5. Baseline+Score+DMSM 20.2 21.1% 20.7% 18.7% (2.1%) 4.6% (1.1%) 23.3% (2.3%)
6. Baseline+Score+DMSM+ft 19.2 23.3% 22.2%
7. VGG+Score+ft 18.1 23.6% 22.8%
8. VGG+Score+DMSM+ft 18.1 25.7% 23.6% 26.2% (2.1%) 7.8% (1.3%) 34.0% (2.5%)
Human-written captions 19.3% 24.1%
Table 4: Caption generation performance for seven variants of our system on the Microsoft COCO dataset. We report performance on our held out test set (half of the validation set). We report Perplexity (PPLX), BLEU and METEOR, using 4 randomly selected caption references. Results from human studies of subjective performance are also shown, with error bars in parentheses. Our final System “VGG+Score+DMSM+ft” is “same or better” than human 34% of the time.

We next describe our caption generation results, beginning with a short discussion of evaluation metrics.

Metrics: The sentence generation process is measured using both automatic metrics and human studies. We use three different automatic metrics: PPLX, BLEU [papineni2002bleu], and METEOR [banerjee2005meteor]. PPLX (perplexity) measures the uncertainty of the language model, corresponding to how many bits on average would be needed to encode each word given the language model. A lower PPLX indicates a better score. BLEU [papineni2002bleu] is widely used in machine translation and measures the fraction of N-grams (up to 4-gram) that are in common between a hypothesis and a reference or set of references; here we compare against 4 randomly selected references. METEOR [banerjee2005meteor]

measures unigram precision and recall, extending exact word matches to include similar words based on WordNet synonyms and stemmed tokens. We additionally report performance on the metrics made available from the MSCOCO captioning challenge,

555http://mscoco.org/dataset/#cap2015 which includes scores for BLEU-1 through BLEU-4, METEOR, CIDEr [VedantamCORR14], and ROUGE-L [LinACL04].

All of these automatic metrics are known to only roughly correlate with human judgment [elliot2014]. We therefore include human evaluation to further explore the quality of our models. Each task presents a human (Mechanical Turk worker) with an image and two captions: one is automatically generated, and the other is a human caption. The human is asked to select which caption better describes the image, or to choose a “same” option when they are of equal quality. In each experiment, 250 humans were asked to compare 20 caption pairs each, and 5 humans judged each caption pair. We used Crowdflower, which automatically filters out spammers. The ordering of the captions was randomized to avoid bias, and we included four check-cases where the answer was known and obvious; workers who missed any of these were excluded. The final judgment is the majority vote of the judgment of the 5 humans. In ties, one-half of a count is distributed to the two best answers. We also compute errors bars on the human results by taking 1000 bootstrap resamples of the majority vote outcome (with ties), then reporting the difference between the mean and the 5th or 95th percentile (whichever is farther from the mean).

Generation results: Table 4 summarizes our results on the Microsoft COCO dataset. We provide several baselines for experimental comparison, including two baselines that measure the complexity of the dataset: Unconditioned, which generates sentences by sampling an -gram LM without knowledge of the visual word detectors; and Shuffled Human, which randomly picks another human generated caption from another image. Both the BLEU and METEOR scores are very low for these approaches, demonstrating the variation and complexity of the Microsoft COCO dataset.

We provide results on seven variants of our end-to-end approach: Baseline is based on visual features from AlexNet and uses the ME LM with all the discrete features as described in Table 1. Baseline+Score adds the feature for the word detector score into the ME LM. Both of these versions use the same set of sentence features (excluding the DMSM score) described in Section 5 when re-ranking the captions using MERT. Baseline+Score+DMSM uses the same ME LM as Baseline+Score, but adds the DMSM score as a feature for re-ranking. Baseline+Score+DMSM+ft adds finetuning. VGG+Score+ft and VGG+Score+DMSM+ft are analogous to Baseline+Score and Baseline+Score+DMSM but use finetuned VGG features. Note: the AlexNet baselines without finetuning are from an early version of our system which used object proposals from [zitnickECCV14] instead of dense scanning.

As shown in Table 4, the PPLX of the ME LM with and without the word detector score feature is roughly the same. But, BLEU and METEOR improve with addition of the word detector scores in the ME LM. Performance improves further with addition of the DMSM scores in re-ranking. Surprisingly, the BLEU scores are actually above those produced by human generated captions (25.69% vs. 19.32%). Improvements in performance using the DMSM scores with the VGG model are statistically significant as measured by 4-gram overlap and METEOR per-image (Wilcoxon signed-rank test, p .001).

We also evaluated an approach (not shown) with whole-image classification rather than MIL. We found this approach to under-perform relative to MIL in the same setting (for example, using the VGG+Score+DMSM+ft setting, PPLX=18.9, BLEU=21.9%, METEOR=21.4%). This suggests that integrating information about words associated to image regions with MIL leads to improved performance over image classification alone.

The VGG+Score+DMSM approach produces captions that are judged to be of the same or better quality than human-written descriptions 34% of the time, which is a significant improvement over the Baseline results. Qualitative results are shown in Figure 3, and many more are available on the project website.

cider bleu-4 bleu-1 rouge-l meteor
[5] .912 (.854) .291 (.217) .695 (.663) .519 (.484) .247 (.252)
[40] .925 (.910) .567 (.471) .880 (.880) .662 (.626) .331 (.335)
Table 5: Official COCO evaluation server results on test set (40,775 images). First row show results using 5 reference captions, second row, 40 references. Human results reported in parentheses.

COCO evaluation server results: We further generated the captions for the images in the actual COCO test set consisting of 40,775 images (human captions for these images are not available publicly), and evaluated them on the COCO evaluation server. These results are summarized in Table 5. Our system gives a BLEU-4 score of 29.1%, and equals or surpasses human performance on 12 of the 14 metrics reported – the only system to do so. These results are also state-of-the-art on all 14 reported metrics among the four other results available publicly at the time of writing this paper. In particular, our system is the only one exceeding human CIDEr scores, which has been specifically proposed for evaluating image captioning systems [VedantamCORR14].

To enable direct comparison with previous work on automatic captioning, we also test on the PASCAL sentence dataset [Rashtchian2010], using the 847 images tested for both the Midge [mitchell2012midge] and Baby Talk [kulkarni2011baby] systems. We show significantly improved results over the Midge [mitchell2012midge] system, as measured by both BLEU and METEOR (2.0% vs. 17.6% BLEU and 9.2% vs. 19.2% METEOR).666Baby Talk generates long, multi-sentence captions, making comparison by BLEU/METEOR difficult; we thus exclude evaluation here. To give a basic sense of the progress quickly being made in this field, Figure 4 shows output from the system on the same images.777Images were selected visually, without viewing system captions.

7 Conclusion

This paper presents a new system for generating novel captions from images. The system trains on images and corresponding captions, and learns to extract nouns, verbs, and adjectives from regions in the image. These detected words then guide a language model to generate text that reads well and includes the detected words. Finally, we use a global deep multimodal similarity model introduced in this paper to re-rank candidate captions

At the time of writing, our system is state-of-the-art on all 14 official metrics of the COCO image captioning task, and equal to or exceeding human performance on 12 out of the 14 official metrics. Our generated captions have been judged by humans (Mechanical Turk workers) to be equal to or better than human-written captions 34% of the time.

References