Image captioning, defined broadly as automatic generation of text describing images, has seen much recent attention. Deep learning, and in particular recurrent neural networks (RNNs), have led to a significant improvement in state of the art. However, the metrics currently used to evaluate image captioning are mostly borrowed from machine translation. This misses the naturally multi-modal distribution of appropriate captions for many scenes.
Referring expressions are a special case of image captions. Such expressions describe an object or region in the image, with the goal of identifying it uniquely to a listener. Thus, in contrast to generic captioning, referring expression generation has a well defined evaluation metric: it should describe an object/region so that human can easily comprehend the description and find the location of the object being described.
In this paper, we consider two related tasks. One is the comprehension task (called natural language object retrieval in ), namely localizing an object in an image given a referring expression. The other is the generation task: generating a discriminative referring expression for an object in an image. Most prior works address both tasks by building a sequence generation model. Such a model can be used discriminatively for the comprehension task, by inferring the region which maximizes the expression posterior.
We depart from this paradigm, and draw inspiration from the generator-discriminator structure in Generative Adversarial Networks[3, 4]. In GANs, the generator module tries to generate a signal (e.g., natural image), and the discriminator module tries to tell real images apart from the generated ones. For our task, the generator produces referring expressions. We would like these expressions to be both intelligible/fluent and unambiguous to human. Fluency can be encouraged by using the standard cross entropy loss with respect to human-generated expressions). On the other hand, we adopt a comprehension model as the “discriminator” which tells if the expression can be correctly dereferenced. Note that we can also regard the comprehension model as a “critic” of the “action” made by the generator where the “action” is each generated word.
Instead of an adversarial relationship between the two modules in GANs, our architecture is explicitly collaborative – the comprehension module “tells” the generator how to improve the expressions it produces. Our methods are much simpler than GANs as it avoids the alternating optimization strategy – the comprehension model is separately trained on ground truth data and then fixed. To achieve this, we adapt the comprehension model so it becomes differentiable with respect to the expression input. Thus we turn it into a proxy for human understanding that can provide training signal for the generator.
Thus, our main contribution is the first (to our knowledge) attempt to integrate automatic referring expression generation with a discriminative comprehension model in a collaborative framework.
Specifically there are two ways that we utilize the comprehension model. The generate-and-rerank method uses comprehension on the fly, similarly to , where they tried to produce unambiguous captions for clip-art images. The generation model generates some candidate expressions and passes them through the comprehension model. The final output expression is the one with highest generation-comprehension score which we will describe later.
The training by proxy method is closer in spirit to GANs. The generation and comprehension model are connected and the generation model is optimized to lower discriminative comprehension loss (in addition to the cross-entropy loss). We investigate several training strategies for this method and a trick to make proxy model trainable by standard back-propagation. Compared to generate-and-rerank method, the training by proxy method doesn’t require additional region proposals during test time.
2 Related work
is to encode an image using a convolutional neural network (CNN), and then feed this as input to an RNN, which is able to generate a arbitrary-length sequence of words.
While captioning typically aims to describe an entire image, some work takes regions into consideration, by incorporating them in an attention mechanism [9, 10], alignment of words/phrases within sentences to regions , or by defining “dense” captioning on a per-region basis . The latter includes a dataset of captions collected without requirement to be unambiguous, so they cannot be regarded as referring expression.
Text-based image retrieval has been considered as a task relying on image captioning[6, 7, 8, 9]. However, it can also be regarded as a multi-modal embedding task. In previous works [12, 13, 14] such embeddings have been trained separately for visual and textual input, with the objective to minimize matching loss, e.g., hinge loss on cosine distance, or to enforce partial order on captions and images .  tried to retrieve from fine-grained images given a text, where they explored different network structures for text embedding.
a caption generation model is appropriated for a generation task, by evaluating the probability of a sentence given an imageas the matching score. Concurrently,  at the same time proposed a joint model, in which comprehension and generation aspects are trained using max-margin Maximum Mutual Information (MMI) training. Both papers used whole image, region and location/size features. Based on the model in , both  and  try to model context regions in their frameworks.
Our method is trying to combine simple models and replace the max margin loss, which is orthogonal to modeling context, with a surrogate closer to the eventual goal – human comprehension. This requires a comprehension model, which, given a referring expression, infers the appropriate region in the image.
Among comprehension models proposed in literature,  uses multi-modal embedding and sets up the comprehension task as a multi-class classification. Later,  achieves a slight improvement by replacing the concatenation layer with a compact bilinear pooling layer. The comprehension model used in this paper belongs to this multi-modal embedding category.
The “speaker-listener” model in  attempts to produce discriminative captions that can tell images apart. The speaker is trained to generate captions, and a listener to prefer the correct image over a wrong one, given the caption. At test time, the listener reranks the captions sampled from the speaker. Our generate-and-rerank method is based on translating this idea to referring expression generation.
3 Generation and comprehension models
We start by defining the two modules used in the collaborative architecture we propose. Each of these can be trained as a standalone machine for the task it solves, given a data set with ground truth regions/referring expressions.
3.1 Expression generation model
To address this task, we build a model . With this , we have
To train , we need a set of image, region and expression tuples, . We can then train this model by maximizing the likelihood
Specifically, the generation model is an encoder-decoder network. First we need to encode the visual information from and . As in [1, 18, 20], we use such representation: target object representation , global context feature and location/size feature . In our experiments, is the activation on the cropped region of the last fully connected layer fc7 of VGG-16 ; is the fc7 activation on the whole image ;
is a 5D vector encoding the opposite corners of the bounding box of, as well as the bounding box size relative to the image size. The final visual feature of the region is an affine transformation of the concatenation of three features:
To generate a sequence we use a uni-directional LSTM decoder. Inputs of LSTM at each time step include the visual features and the previous word embedding. The output of the LSTM at a time step is the distribution of predicted next word. Then the whole model is trained to minimize cross entropy loss, which is equivalent to maximize the likelihood.
where , is the t-th word of ground truth expression , and is the length of .
In practice, instead of precisely inferring the , people use beam search, greedy search or sampling to get the output.
Figure 3 shows the structure of our generation model.
The comprehension task is to select a region (bounding box) from a set of regions given a query expression and the image .
We also define the comprehension model as a posterior distribution
. The estimated region given a comprehension model is:.
In general, our comprehension model is very similar to . To build the model, we first define a similarity function . We use the same visual feature encoder structure as in generation model. For the query expression, we use a one-layer bi-directional LSTM  to encode it. We take the averaging over the hidden vectors of each timestep so that we can get a fixed-length representation for an arbitrary length of query.
where is the word embedding matrix initialized from pretrained word2vec and is a one-hot representation of the query expression, i.e. .
We consider two formulations of the comprehension task as classification. The per-region logistic loss
where is ground truth region, corresponds to a per-region classification: is this region the right match for the expression or not. The softmax loss
where , frames the task as a multi-class classification: which region in the set should be matched to the expression.
The model is trained to minimize the comprehension loss. , where is either or .
Figure 3 shows the structure of our generation model under multi-class classification formulation.
4 Comprehension-guided generation
Once we have trained the comprehension model, we can start using it as a proxy for human comprehension, to guide expression generator. Below we describe two such approaches: one is applied at training time, and the other at test time.
4.1 Training by proxy
Consider a referring expression generated by for a given training example of an image/region pair . The generation loss will inform the generator how to modify its model to maximize the probability of the ground truth expression . The comprehension model can provide an alternative, complementary signal: how to modify to maximize the discriminativity of the generated expression, so that selects the correct region among the proposal set . Intuitively, this signal should push down on probability of a word if it’s unhelpful for comprehension, and pull that probability up if it is helpful.
Ideally, we hope to minimize the comprehension loss of the output of the generation model , where is the 1-hot encoding of , with rows (vocabulary size) and columns (sequence length).
We hope to update the generation model according to the gradient of loss with respect to the model parameter
. By chain rule,
applied reinforcement learning methods. However, here we use an approximate method borrowing from the idea of soft attention mechanism[9, 31].
We define a matrix which has the same size as . The i-th column of is – instead of the one-hot vector of the generated word – the distribution of the i-th word produced by , i.e.
has several good properties. First, has the same size as , so that the we can still compute the query feature by replacing the by , i.e. . Secondly, the sum of each column in is 1, just like . Thirdly, is differentiable with respect to generator’s parameters.
Now, the gradient of is calculated by:
We will use this approximate gradient in the following three methods.
4.1.1 Compound loss
Here we introduce how we integrate the comprehension model to guide the training of the generation model.
The cross-entropy loss (5) encourages fluency of the generated expression, but disregards its discriminativity. We address this by using the comprehension model as a source of an additional loss signal. Technically, we define a compound loss
Both and take as input ’s distribution over the -th word , where the preceding words are from the ground truth expression.
4.1.2 Modified Scheduled sampling training
Our final goal is to generate comprehensible expression during test time. However, in compound loss, the loss is calculated given the ground truth input while during test time each token is generated by the model, thus yielding a discrepancy between how the model is used during training and at test time. Inspired by similar motivation,  proposed scheduled sampling which allows the model to be trained with a mixture of ground truth data and predicted data. Here, we propose this modified schedule sampling training to train our model.
During training, at each iteration
, before forwarding through the LSTMs, we draw a random variable
from a Bernoulli distribution with probability. If , we feed the ground truth expression to LSTM frames, and minimize cross entropy loss. If , we sample the whole sequence step by step according to the posterior, and the input of comprehension model is , where are the sampled words. We update the model by minimizing the comprehension loss. Therefore, serves as a dispatch mechanism, randomly alternating between the sources of data for the LSTMs and the components of the compound loss.
We start the modified scheduled sampling training from a pretrained generation model trained on cross entropy loss using the ground truth sequences. As the training progresses, we linearly decay until a preset minimum value . The minimum probability prevents the model from degeneration. If we don’t set the minimum, when goes to 0, the model will lose all the ground truth information, and will be purely guided by the comprehension model. This would lead the generation model to discover those pathological optimas that exist in neural classification models. In this case, the generated expressions would do “well” on comprehension model, but no longer be intelligible to human. See Algorithm 1 for the pseudo-code.
4.1.3 Stochastic mixed sampling
Since modified scheduled sampling training samples a whole sentence at a time, it would be hard to get useful signal if there is an error at the beginning of the inference. We hope to find a method that can slowly deviate from the original model and explore.
Here we borrow the idea from mixed incremental cross-entropy reinforce(MIXER). Again, we start the model from a pretrained generator. Then we introduce model predictions during training with an annealing schedule so as to gradually teach the model to produce stable sequences. For each iteration , We feed the input for the first steps, and sample the rest words, where , and is the maximum length of expressions. We define , where is a base step size which gradually decreases during training, and
is a random variable which follows geometric distribution:. This is the difference between our method and MIXER. We call this method: Stochastic mixed incremental cross-entropy comprehension(SMIXEC).
By introducing this term , we can control how much supervision we want to get from ground truth by tuning the value . This is also for preventing the model from producing pathological optimas. Note that, when is 0, will always be large enough so that it’s just cross entropy loss training. When is 1, will always equal to 0, which is equivalent to MIXER annealing schedule. See Algorithm 2 for the pseudo-code.
Here we propose a different strategy to generate better expressions. Instead of using comprehension model for training a generation model, we compose the comprehension model during test time. The pipeline is similar to .
Unlike in Sec. 3.1, we not only need image and region as input, but also a region set . Suppose we have a generation model and a comprehension model which are trained pretrained. The steps are as follows:
Generate candidate expressions according to .
Select with .
Here, we don’t use beam search because we want the candidate set to be more diverse. And we define the score function as a weighted combination of the log perplexity and comprehension loss (we assume to use softmax loss here).
where is the k-th token of , is the length of .
This can be viewed as a weighted joint log probability that an expression to be both nature and unambiguous. The log perplexity term ensures the fluency, and the comprehension loss ensures the chosen expression to be discriminative.
|Test A||Test B||Test A||Test B||Val|
We base our experiments on the following data sets.
RefClef(ReferIt) contains 20,000 images from IAPR TC-12 dataset, together with segmented image regions from SAIAPR-12 dataset. The dataset is split into 10,000 for training and validation and 10,000 for test. There are 59,976 (image, bounding box, description) tuples in the trainval set and 60,105 in the test set.
RefCOCO+ has 141,564 expressions for 49,856 objects in 19,992 images from COCO. RefCOCO+ dataset players are disallowed from using location words, so this dataset focuses more on purely appearance based description.
RefCOCOg(Google RefExp) consists of 85,474 referring expressions for 54,822 objects in 26,711 images from COCO; it contains longer and more flowery expressions than RefCOCO and RefCOCO+.
We first evaluate our comprehension model on human-made expressions, to assess its ability to provide useful signal.
There are two comprehension experiment settings as in [2, 18, 20]. First, the input region set contains only ground truth bounding boxes for objects, and a hit is defined by the model choosing the correct region the expression refers to. In the second setting, contains proposal regions generated by FastRCNN detector, or by other proposal generation methods. Here a hit occurs when the model chooses a proposal with intersection over union(IoU) with the ground truth of 0.5 or higher. We used precomputed proposals from [18, 2, 1] for all four datasets.
In RefCOCO and RefCOCO+, we have two test sets: testA contains people and testB contains all other objects. For RefCOCOg, we evaluate on the validation set. For RefClef, we evaluate on the test set.
We train the model using Adam optimizer . The word embedding size is 300, and the hidden size of bi-LSTM is 512. The length of visual feature is 1024. For RefCOCO, RefCOCO+ and RefCOCOg, we train the model using softmax loss, with ground truth regions as training data. For RefClef dataset, we use the logistic loss. The training regions are composed of ground truth regions and all the proposals from Edge Box . The binary classification is to tell if the proposal is a hit or not.
|Test A||Test B|
|Acc||BLEU 1||BLEU 2||ROUGE||METEOR||Acc||BLEU 1||BLEU 2||ROUGE||METEOR|
|Test A||Test B|
|Acc||BLEU 1||BLEU 2||ROUGE||METEOR||Acc||BLEU 1||BLEU 2||ROUGE||METEOR|
Table 1 shows our results on RefCOCO, RefCOCO+ and RefCOCOg compared to recent algorithms. Among these, MMI represents Maximum Mutual Information which uses max-margin loss to help the generation model better comprehend. With the same visual feature encoder, our model can get a better result compared to MMI in . Our model is also competitive with recent, more complex state-of-the-art models [18, 20]. Table 2 shows our results on RefClef where we only test in the second setting to compare to existing results; our model, which is a modest modification of , obtains state of the art accuracy in this experiment.
We evaluate our expression generation methods, along with baselines, on RefCOCO and RefCOCO+. Table 3 shows our evaluation of different methods based on automatic caption generation metrics. We also add an ‘Acc’ column, which is the “comprehension accuracy” of the generated expressions according to our comprehension model: how well our comprehension model can comprehend the generated expressions.
The two baseline models are max likelihood(MLE) and maximum mutual information(MMI) from . Our methods include compound loss(CL), modified scheduled sampling(MSS), stochastic mixed incremental cross-entropy comprehension(SMIXEC) and also generate-and-rerank(Rerank). And the MLE+sample is designed for better analyzing rerank model.
For the two baseline models and our three strategies for training by proxy method, we use greedy search to generate an expression. The MLE+sample and Rerank methods generate an expression by choosing a best one from 100 sampled expressions.
Our generate-and-rerank (Rerank in Table 3) model gets consistently better results on automatic comprehension accuracy and on fluency-based metrics like BLEU. To see if the improvement is from sampling or reranking, we also sampled 100 expressions on MLE model and choose the one with the lowest perplexity (MLE+sample in Table 3). The generate-and-rerank method still has better results, showing benefit from comprehension-guided reranking.
We can see that our training by proxy method can get higher accuracy under the comprehension model. This confirms the effectiveness of our collaborative training by proxy method, despite the differentiable approximation (16).
Among the three training schedules of training by proxy, there is no clear winner. In RefCOCO, our SMIXEC method outperforms basic MMI method with higher comprehension accuracy and higher caption generation metrics. The compound loss and modified scheduled sampling seem to suffer from optimizing over the accuracy. However, in RefCOCO+, our three models seem to perform very differently. The compound loss works better on TestB; the SMIXEC works best on TestA and the MSS method works reasonably well on both. We currently don’t have a concrete explanation why this is happening.
From , we know the human evaluations on the expressions are not perfectly correlated with language-based caption metrics. Thus, we performed human evaluations on the expression generation for 100 images randomly chosen from each split of RefCOCO and RefCOCO+. Subjects clicked onto the object which they thought was the most probable match for a generated expression. Each image/expression example was presented to two subjects, with a hit recorded only when both subjects clicked inside the correct region.
|Test A||Test B||TestA||TestB|
The results from human evaluations with MMI, SMIXEC and our generate-and-rerank method are in Table 4. On RefCOCO, both of our comprehension-guided methods appear to generate better (more informative) referring expressions. On RefCOCO+, the result are similar to those on RefCOCO on TestA, but our training by proxy methods performs less well on TestB.
Fig 4 shows some example generation results on test images.
In this paper, we propose to use learned comprehension models to guide generating better referring expressions. Comprehension guidance can be incorporated at training time, with a training by proxy method, where the discriminative comprehension loss (region retrieval based on generated referring expressions) is included in training the expression generator. Alternatively comprehension guidance can be used at test time, with a generate-and-rerank method which uses model comprehension score to select among multiple proposed expressions. Empirical evaluation shows both to be promising, with the generate-and-rerank method obtaining particularly good results across data sets.
Among directions for future work we are interested to explore alternative training regimes, in particular an adaptation of the GAN protocol to referring expression generation. We will try to incorporate context objects (other regions in the image) into representation for a reference region. Finally, while at the moment the generation and comprehension models are completely separate, it is interesting to consider weight sharing.
We thank Licheng Yu for providing the baseline code. We also thank those who participated in evaluations. Finally, we gratefully acknowledge the support of NVIDIA Corporation with the donation of GPUs used for this research.
-  Ronghang Hu, Huazhe Xu, Marcus Rohrbach, Jiashi Feng, Kate Saenko, and Trevor Darrell. Natural Language Object Retrieval. arXiv preprint, pages 4555–4564, 2015.
-  Junhua Mao, Jonathan Huang, Alexander Toshev, Oana Camburu, Alan Yuille, and Kevin Murphy. Generation and Comprehension of Unambiguous Object Descriptions. Cvpr, pages 11–20, 2016.
-  Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. Generative adversarial nets. In Advances in Neural Information Processing Systems, pages 2672–2680, 2014.
-  Alec Radford, Luke Metz, and Soumith Chintala. Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks. arXiv, pages 1–15, 2015.
-  Jacob Andreas and Dan Klein. Reasoning About Pragmatics with Neural Listeners and Speakers. 1604.00562V1, 2016.
-  Oriol Vinyals, Alexander Toshev, Samy Bengio, and Dumitru Erhan. Show and tell: A neural image caption generator. In , pages 3156–3164, 2015.
-  Andrej Karpathy and Li Fei-Fei. Deep visual-semantic alignments for generating image descriptions. Computer Vision and Pattern Recognition (CVPR), 2015 IEEE Conference on, pages 3128–3137, 2015.
-  Lin Ma, Zhengdong Lu, Lifeng Shang, and Hang Li. Multimodal convolutional neural networks for matching image and sentence. Proceedings of the IEEE International Conference on Computer Vision, 11-18-Dece:2623–2631, 2016.
-  Kelvin Xu, Jimmy Lei Ba, Ryan Kiros, Kyunghyun Cho, Aaron Courville, Ruslan Salakhutdinov, Richard S. Zemel, and Yoshua Bengio. Show, Attend and Tell: Neural Image Caption Generation with Visual Attention. Icml-2015, 2015.
-  Chenxi Liu, Junhua Mao, Fei Sha, and Alan Yuille. Attention Correctness in Neural Image Captioning. pages 1–11, 2016.
Justin Johnson, Andrej Karpathy, and Li Fei-Fei.
DenseCap: Fully Convolutional Localization Networks for Dense Captioning.arXiv preprint, 2015.
-  Andrea Frome, Greg S Corrado, Jon Shlens, Samy Bengio, Jeff Dean, Tomas Mikolov, et al. Devise: A deep visual-semantic embedding model. In Advances in neural information processing systems, 2013.
-  Liwei Wang, Yin Li, and Svetlana Lazebnik. Learning Deep Structure-Preserving Image-Text Embeddings. Cvpr, (Figure 1):5005–5013, 2016.
Jason Weston, Samy Bengio, and Nicolas Usunier.
Wsabie: Scaling up to large vocabulary image annotation.
Proceedings of the International Joint Conference on Artificial Intelligence, IJCAI, 2011.
-  Ivan Vendrov, Ryan Kiros, Sanja Fidler, and Raquel Urtasun. Order-Embeddings of Images and Language. arXiv preprint, (2005):1–13, 2015.
-  Scott Reed, Zeynep Akata, Honglak Lee, and Bernt Schiele. Learning Deep Representations of Fine-Grained Visual Descriptions. Cvpr, pages 49–58, 2016.
-  Sahar Kazemzadeh, Vicente Ordonez, Mark Matten, and Tamara L Berg. ReferItGame: Referring to Objects in Photographs of Natural Scenes. Emnlp, pages 787–798, 2014.
-  Licheng Yu, Patrick Poirson, Shan Yang, Alexander C Berg, and Tamara L Berg. Modeling Context in Referring Expressions. In Eccv, 2016.
-  Junhua Mao, Jonathan Huang, Alexander Toshev, Oana Camburu, Alan Yuille, and Kevin Murphy. Generation and Comprehension of Unambiguous Object Descriptions. Cvpr, pages 11–20, 2016.
-  Varun K Nagaraja, Vlad I Morariu, and Larry S Davis. Modeling Context Between Objects for Referring Expression Understanding. Eccv, 2016.
-  Lantao Yu, Weinan Zhang, Jun Wang, and Yong Yu. SeqGAN: Sequence Generative Adversarial Nets with Policy Gradient. 2016.
-  Anna Rohrbach, Marcus Rohrbach, Ronghang Hu, Trevor Darrell, and Bernt Schiele. Grounding of Textual Phrases in Images by Reconstruction. 1511.03745V1, 1:1–10, 2015.
-  Akira Fukui, Dong Huk Park, Daylen Yang, Anna Rohrbach, Trevor Darrell, and Marcus Rohrbach. Multimodal Compact Bilinear Pooling for Visual Question Answering and Visual Grounding. Arxiv, 2016.
-  Karen Simonyan and Andrew Zisserman. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556, 2014.
-  Sepp Hochreiter and Jürgen Schmidhuber. Long short-term memory. Neural computation, 9(8):1735–1780, 1997.
-  Alex Graves, Abdel-rahman Mohamed, and Geoffrey Hinton. Speech recognition with deep recurrent neural networks. In 2013 IEEE international conference on acoustics, speech and signal processing, pages 6645–6649. IEEE, 2013.
-  Tomas Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean. Efficient estimation of word representations in vector space. arXiv preprint arXiv:1301.3781, 2013.
-  Bhuwan Dhingra, Hanxiao Liu, William W. Cohen, and Ruslan Salakhutdinov. Gated-Attention Readers for Text Comprehension. ArXiV, 2016.
-  Marc’Aurelio Ranzato, Sumit Chopra, Michael Auli, and Wojciech Zaremba. Sequence Level Training with Recurrent Neural Networks. Iclr, pages 1–15, 2016.
-  Dzmitry Bahdanau, Philemon Brakel, Kelvin Xu, Anirudh Goyal, Ryan Lowe, Joelle Pineau, Aaron Courville, and Yoshua Bengio. An Actor-Critic Algorithm for Sequence Prediction. arXiv:1607.07086v1 [cs.LG], 2016.
-  Dzmitry Bahdana, Dzmitry Bahdanau, Kyunghyun Cho, and Yoshua Bengio. Neural Machine Translation By Jointly Learning To Align and Translate. Iclr 2015, pages 1–15, 2014.
-  Samy Bengio, Oriol Vinyals, Navdeep Jaitly, and Noam Shazeer. Scheduled sampling for sequence prediction with recurrent neural networks. In Advances in Neural Information Processing Systems, pages 1171–1179, 2015.
-  Ian J Goodfellow, Jonathon Shlens, and Christian Szegedy. Explaining and harnessing adversarial examples. arXiv preprint arXiv:1412.6572, 2014.
-  M Grübinger, P Clough, H Müller, and T Deselaers. The IAPR TC-12 Benchmark: A New Evaluation Resource for Visual Information Systems. LREC Workshop OntoImage Language Resources for Content-Based Image Retrieval, pages 13–23, 2006.
-  Hugo Jair Escalante, Carlos A. Hernández, Jesus A. Gonzalez, A. López-López, Manuel Montes, Eduardo F. Morales, L. Enrique Sucar, Luis Villaseñor, and Michael Grubinger. The segmented and annotated IAPR TC-12 benchmark. Computer Vision and Image Understanding, 114(4):419–428, 2010.
-  Tsung-Yi Lin, Michael Maire, Serge Belongie, James Hays, Pietro Perona, Deva Ramanan, Piotr Dollár, and C Lawrence Zitnick. Microsoft coco: Common objects in context. In European Conference on Computer Vision, pages 740–755. Springer, 2014.
-  Ross Girshick. Fast r-cnn. In Proceedings of the IEEE International Conference on Computer Vision, pages 1440–1448, 2015.
-  Piotr Dollar Larry Zitnick. Edge boxes: Locating object proposals from edges. In ECCV. European Conference on Computer Vision, September 2014.
-  Diederik Kingma and Jimmy Ba. Adam: A method for stochastic optimization. arXiv preprint arXiv:1412.6980, 2014.