LXMERT: Learning Cross-Modality Encoder Representations from Transformers

LXMERT: Learning Cross-Modality Encoder Representations from Transformers


Vision-and-language reasoning requires an understanding of visual concepts, language semantics, and, most importantly, the alignment and relationships between these two modalities. We thus propose the LXMERT (Learning Cross-Modality Encoder Representations from Transformers) framework to learn these vision-and-language connections. In LXMERT, we build a large-scale Transformer model that consists of three encoders: an object relationship encoder, a language encoder, and a cross-modality encoder. Next, to endow our model with the capability of connecting vision and language semantics, we pre-train the model with large amounts of image-and-sentence pairs, via five diverse representative pre-training tasks: masked language modeling, masked object prediction (feature regression and label classification), cross-modality matching, and image question answering. These tasks help in learning both intra-modality and cross-modality relationships. After fine-tuning from our pre-trained parameters, our model achieves the state-of-the-art results on two visual question answering datasets (i.e., VQA and GQA). We also show the generalizability of our pre-trained cross-modality model by adapting it to a challenging visual-reasoning task, , and improve the previous best result by absolute ( to ). Lastly, we demonstrate detailed ablation studies to prove that both our novel model components and pre-training strategies significantly contribute to our strong results.1


1 Introduction

Vision-and-language reasoning requires the understanding of visual contents, language semantics, and cross-modal alignments and relationships. There has been substantial past works in separately developing backbone models with better representations for the single modalities of vision and of language. For visual-content understanding, people have developed several backbone models Simonyan and Zisserman (2014); Szegedy et al. (2015); He et al. (2016) and shown their effectiveness on large vision datasets Deng et al. (2009); Lin et al. (2014); Krishna et al. (2017). Pioneering works Girshick et al. (2014); Xu et al. (2015) also show the generalizability of these pre-trained (especially on ImageNet) backbone models by fine-tuning them on different tasks. In terms of language understanding, last year, we witnessed strong progress towards building a universal backbone model with large-scale contextualized language model pre-training Peters et al. (2018); Radford et al. (2018); Devlin et al. (2019), which has improved performances on various tasks Rajpurkar et al. (2016); Wang et al. (2018) to significant levels. Despite these influential single-modality works, large-scale pretraining and fine-tuning studies for the modality-pair of vision and language are still under-developed.

Therefore, we present one of the first works in building a pre-trained vision-and-language cross-modality framework and show its strong performance on several datasets. We name this framework “LXMERT: Learning Cross-Modality Encoder Representations from Transformers” (pronounced: ‘leksmert’). This framework is modeled after recent BERT-style innovations while further adapted to useful cross-modality scenarios. Our new cross-modality model focuses on learning vision-and-language interactions, especially for representations of a single image and its descriptive sentence. It consists of three Transformer Vaswani et al. (2017) encoders: an object relationship encoder, a language encoder, and a cross-modality encoder. In order to better learn the cross-modal alignments between vision and language, we next pre-train our model with five diverse representative tasks: (1) masked cross-modality language modeling, (2) masked object prediction via RoI-feature regression, (3) masked object prediction via detected-label classification, (4) cross-modality matching, and (5) image question answering. Different from single-modality pre-training (e.g., masked LM in BERT), this multi-modality pre-training allows our model to infer masked features either from the visible elements in the same modality, or from aligned components in the other modality. In this way, it helps build both intra-modality and cross-modality relationships.

Empirically, we first evaluate LXMERT on two popular visual question-answering datasets, VQA Antol et al. (2015) and GQA Hudson and Manning (2019). Our model outperforms previous works in all question categories (e.g., Binary, Number, Open) and achieves state-of-the-art results in terms of overall accuracy. Further, to show the generalizability of our pre-trained model, we fine-tune LXMERT on a challenging visual reasoning task, Natural Language for Visual Reasoning for Real (Suhr et al. (2019), where we do not use the natural images in their dataset for our pre-training, but fine-tune and evaluate on these challenging, real-world images. In this setup, we achieve a large improvement of absolute in accuracy ( to , i.e., 48% relative error reduction) and absolute in consistency ( to , i.e., 34% relative error reduction). Lastly, we conduct several analysis and ablation studies to prove the effectiveness of our model components and diverse pre-training tasks by removing them or comparing them with their alternative options. Especially, we use several ways to take the existing BERT model and its variants, and show their ineffectiveness in vision-and-language tasks, which overall proves the need of our new cross-modality pre-training framework.

Figure 1: The LXMERT model for learning vision-and-language cross-modality representations. ‘Self’ and ‘Cross’ are abbreviations for self-attention sub-layers and cross-attention sub-layers, respectively. ‘FF’ denotes a feed-forward sub-layer.

2 Model Architecture

We build our cross-modality model with self-attention and cross-attention layers following the recent progress in designing natural language processing models (e.g., transformers Vaswani et al. (2017)). As shown in Fig. 1, our model takes two inputs: an image and its related sentence (e.g., a caption or a question). Each image is represented as a sequence of objects, and each sentence is represented as a sequence of words. Via careful design and combination of these self-attention and cross-attention layers, our model is able to generate language representations, image representations, and cross-modality representations from the inputs. Next, we describe the components of this model in detail.

2.1 Input Embeddings

The input embedding layers in LXMERT convert the inputs (i.e., an image and a sentence) into two sequences of features: word-level sentence embeddings and object-level image embeddings. These embedding features will be further processed by the latter encoding layers.

Word-Level Sentence Embeddings A sentence is first split into words with length of by the same WordPiece tokenizer Wu et al. (2016) in \newcitedevlin2018bert. Next, as shown in Fig. 1, the word and its index (’s absolute position in the sentence) are projected to vectors by embedding sub-layers, and then added to the index-aware word embeddings:

Object-Level Image Embeddings Instead of using the feature map output by a convolutional neural network, we follow \newciteanderson2018bottom in taking the features of detected objects as the embeddings of images. Specifically, the object detector detects objects from the image (denoted by bounding boxes on the image in Fig. 1). Each object is represented by its position feature (i.e., bounding box coordinates) and its -dimensional region-of-interest (RoI) feature . Instead of directly using the RoI feature without considering its position in \newciteanderson2018bottom, we learn a position-aware embedding by adding outputs of 2 fully-connected layers:


In addition to providing spatial information in visual reasoning, the inclusion of positional information is necessary for our masked object prediction pre-training task (described in Sec. 3.1.2). Since the image embedding layer and the following attention layers are agnostic to the absolute indices of their inputs, the order of the object is not specified. Lastly, in Equation 1, the layer normalization is applied to the projected features before summation so as to balance the energy of the two different types of features.

2.2 Encoders

We build our encoders, i.e., the language encoder, the object-relationship encoder, and the cross-modality encoder, mostly on the basis of two kinds of attention layers: self-attention layers and cross-attention layers. We first review the definition and notations of attention layers and then discuss how they form our encoders.

Background: Attention Layers Attention layers Bahdanau et al. (2014); Xu et al. (2015) aim to retrieve information from a set of context vectors related to a query vector . An attention layer first calculates the matching score between the query vector and each context vector . Scores are then normalized by softmax:

The output of an attention layer is the weighted sum of the context vectors w.r.t. the softmax-normalized score: . An attention layer is called self-attention when the query vector is in the set of context vectors . Specifically, we use the multi-head attention following Transformer Vaswani et al. (2017).

Single-Modality Encoders After the embedding layers, we first apply two transformer encoders Vaswani et al. (2017), i.e., a language encoder and an object-relationship encoder, and each of them only focuses on a single modality (i.e., language or vision). Different from BERT Devlin et al. (2019), which applies the transformer encoder only to language inputs, we apply it to vision inputs as well (and to cross-modality inputs as described later below). Each layer (left dashed blocks in Fig. 1) in a single-modality encoder contains a self-attention (‘Self’) sub-layer and a feed-forward (‘FF’) sub-layer, where the feed-forward sub-layer is further composed of two fully-connected sub-layers. We take and layers in the language encoder and the object-relationship encoder, respectively. We add a residual connection and layer normalization (annotated by the ‘+’ sign in Fig. 1) after each sub-layer as in \newcitevaswani2017attention.

Figure 2: Pre-training in LXMERT. The object RoI features and word tokens are masked. Our five pre-training tasks learn the feature representations based on these masked inputs. Special tokens are in brackets and classification labels are in braces.

Cross-Modality Encoder Each cross-modality layer (the right dashed block in Fig. 1) in the cross-modality encoder consists of two self-attention sub-layers, one bi-directional cross-attention sub-layer, and two feed-forward sub-layers. We stack (i.e., using the output of -th layer as the input of -th layer) these cross-modality layers in our encoder implementation. Inside the -th layer, the bi-directional cross-attention sub-layer (‘Cross’) is first applied, which contains two uni-directional cross-attention sub-layers: one from language to vision and one from vision to language. The query and context vectors are the outputs of the -th layer (i.e., language features and vision features ):

The cross-attention sub-layer is used to exchange the information and align the entities between the two modalities in order to learn joint cross-modality representations. For further building internal connections, the self-attention sub-layers (‘Self’) are then applied to the output of the cross-attention sub-layer:

Lastly, the -th layer output and are produced by feed-forward sub-layers (‘FF’) on top of and . We also add a residual connection and layer normalization after each sub-layer, similar to the single-modality encoders.

2.3 Output Representations

As shown in the right-most part of Fig. 1, our LXMERT cross-modality model has three outputs for language, vision, and cross-modality, respectively. The language and vision outputs are the feature sequences generated by the cross-modality encoder. For the cross-modality output, following the practice in \newcitedevlin2018bert, we append a special token [CLS] (denoted as the top yellow block in the bottom branch of Fig. 1) before the sentence words, and the corresponding feature vector of this special token in language feature sequences is used as the cross-modality output.

Image Split Images Sentences (or Questions)
MS COCO - VG 72K 361K - 387K - - 0.75M
MS COCO VG 51K 256K 2.54M 271K 515K 724K 4.30M
VG - MS COCO 57K - 2.85M - 556K 718K 4.13M
All 180K 617K 5.39M 658K 1.07M 1.44M 9.18M
Table 1: Amount of data for pre-training. Each image has multiple sentences/questions. ‘Cap’ is caption. ‘VG’ is Visual Genome. Since MS COCO and VG share K images, we list it separately to ensure disjoint image splits.

3 Pre-Training Strategies

In order to learn a better initialization which understands connections between vision and language, we pre-train our model with different modality pre-training tasks on a large aggregated dataset.

3.1 Pre-Training Tasks

Language Task: Masked Cross-Modality LM

On the language side, we take the masked cross-modality language model (LM) task. As shown in the bottom branch of Fig. 2, the task setup is almost same to BERT Devlin et al. (2019): words are randomly masked with a probability of and the model is asked to predict these masked words. In addition to BERT where masked words are predicted from the non-masked words in the language modality, LXMERT, with its cross-modality model architecture, could predict masked words from the vision modality as well, so as to resolve ambiguity. For example, as shown in Fig. 2, it is hard to determine the masked word ‘carrot’ from its language context but the word choice is clear if the visual information is considered. Hence, it helps building connections from the vision modality to the language modality, and we refer to this task as masked cross-modality LM to emphasize this difference. We also show that loading BERT parameters into LXMERT will do harm to the pre-training procedure in Sec. 5.1 since BERT can perform relatively well in the language modality without learning these cross-modality connections.

Vision Task: Masked Object Prediction

As shown in the top branch of Fig. 2, we pre-train the vision side by randomly masking objects (i.e., masking RoI features with zeros) with a probability of and asking the model to predict proprieties of these masked objects. Similar to the language task (i.e., masked cross-modality LM), the model can infer the masked objects either from visible objects or from the language modality. Inferring the objects from the vision side helps learn the object relationships, and inferring from the language side helps learn the cross-modality alignments. Therefore, we perform two sub-tasks: RoI-Feature Regression regresses the object RoI feature with L2 loss, and Detected-Label Classification learns the labels of masked objects with cross-entropy loss. In the ‘Detected-Label Classification’ sub-task, although most of our pre-training images have object-level annotations, the ground truth labels of the annotated objects are inconsistent in different datasets (e.g., different number of label classes). For these reasons, we take detected labels output by Faster R-CNN Ren et al. (2015). Although detected labels are noisy, experimental results show that these labels contribute to pre-training in Sec. 5.3.

Cross-Modality Tasks

As shown in the middle-rightmost part of Fig. 2, to learn a strong cross-modality representation, we pre-train the LXMERT model with 2 tasks that explicitly need both language and vision modalities.

Cross-Modality Matching For each sentence, with a probability of , we replace it with a mis-matched2 sentence. Then, we train a classifier to predict whether an image and a sentence match each other. This task is similar to ‘Next Sentence Prediction’ in BERT Devlin et al. (2019).

Image Question Answering (QA) In order to enlarge the pre-training dataset (see details in Sec. 3.2), around sentences in the pre-training data are questions about the images. We ask the model to predict the answer to these image-related questions when the image and the question are matched (i.e., not randomly replaced in the cross-modality matching task). We show that pre-training with this image QA leads to a better cross-modality representation in Sec. 5.2.

3.2 Pre-Training Data

As shown in Table. 1, we aggregate pre-training data from five vision-and-language datasets whose images come from MS COCO Lin et al. (2014) or Visual Genome Krishna et al. (2017). Besides the two original captioning datasets, we also aggregate three large image question answering (image QA) datasets: VQA v2.0 Antol et al. (2015), GQA balanced version Hudson and Manning (2019), and VG-QA Zhu et al. (2016). We only collect train and dev splits in each dataset to avoid seeing any test data in pre-training. We conduct minimal pre-processing on the five datasets to create aligned image-and-sentence pairs. For each image question answering dataset, we take questions as sentences from the image-and-sentence data pairs and take answers as labels in the image QA pre-training task (described in Sec. 3.1.3). This provides us with a large aligned vision-and-language dataset of M image-and-sentence pairs on K distinct images. In terms of tokens, the pre-training data contain around M words and M image objects.

Method VQA GQA
Binary Number Other Accu Binary Open Accu Cons Accu
Human - - - - 91.2 87.4 89.3 - 96.3
Image Only - - - - 36.1 1.74 17.8 7.40 51.9
Language Only 66.8 31.8 27.6 44.3 61.9 22.7 41.1 4.20 51.1
State-of-the-Art 85.8 53.7 60.7 70.4 76.0 40.4 57.1 12.0 53.5
LXMERT 88.2 54.2 63.1 72.5 77.8 45.0 60.3 42.1 76.2
Table 2: Test-set results. VQA/GQA results are reported on the ‘test-standard’ splits and results are reported on the unreleased test set (‘Test-U’). The highest method results are in bold. Our LXMERT framework outperforms previous (comparable) state-of-the-art methods on all three datasets w.r.t. all metrics.

3.3 Pre-Training Procedure

We pre-train our LXMERT model on the large aggregated dataset (discussed in Sec. 3.2) via the pre-training tasks (Sec. 3.1). The details about the data splits are in the Appendix. The input sentences are split by the WordPiece tokenizer Wu et al. (2016) provided in BERT Devlin et al. (2019). The objects are detected by Faster R-CNN Ren et al. (2015) which is pre-trained on Visual Genome (provided by \newciteanderson2018bottom). We do not fine-tune the Faster R-CNN detector and freeze it as a feature extractor. Different from detecting variable numbers of objects in \newciteanderson2018bottom, we consistently keep objects for each image to maximize the pre-training compute utilization by avoiding padding. For the model architecture, we set the numbers of layers , , and to , , and respectively.3 More layers are used in the language encoder to balance the visual features extracted from -layer Faster R-CNN. The hidden size is the same as . We pre-train all parameters in encoders and embedding layers from scratch (i.e., model parameters are randomly initialized or set to zero). We also show results of loading pre-trained BERT parameters in Sec. 5.1. LXMERT is pre-trained with multiple pre-training tasks and hence multiple losses are involved. We add these losses with equal weights. For the image QA pre-training tasks, we create a joint answer table with answer candidates which roughly cover questions in all three image QA datasets.

We take Adam Kingma and Ba (2014) as the optimizer with a linear-decayed learning-rate schedule Devlin et al. (2019) and a peak learning rate at . We train the model for epochs (i.e., roughly K4 optimization steps) with a batch size of . We only pre-train with image QA task (see Sec. 3.1.3) for the last epochs, because this task converges faster and empirically needs a smaller learning rate. The whole pre-training process takes days on Titan Xp.

Fine-tuning Fine-tuning is fast and robust. We only perform necessary modification to our model with respect to different tasks (details in Sec. 4.2). We use a learning rate of or , a batch size of , and fine-tune the model from our pre-trained parameters for epochs.

4 Experimental Setup and Results

In this section, we first introduce the datasets that are used to evaluate our LXMERT framework and empirically compare our single-model results with previous best results.

4.1 Evaluated Datasets

We use three datasets for evaluating our LXMERT framework: VQA v2.0 dataset Goyal et al. (2017), GQA Hudson and Manning (2019), and . See details in Appendix.

4.2 Implementation Details

On VQA and GQA, we fine-tune our model from the pre-trained snapshot without data augmentation (analysis in Sec. 5.2). When training GQA, we only take raw questions and raw images as inputs and do not use other supervisions (e.g., functional programs and scene graphs). Since each datum in has two natural images and one language statement , we use LXMERT to encode the two image-statement pairs and , then train a classifier based on the concatenation of the two cross-modality outputs. More details in Appendix.

4.3 Empirical Comparison Results

We compare our single-model results with previous best published results on VQA/GQA test-standard sets and public test set. Besides previous state-of-the-art (SotA) methods, we also show the human performance and image-only/language-only results when available.

Vqa The SotA result is BAN+Counter in \newcitekim2018bilinear, which achieves the best accuracy among other recent works: MFH Yu et al. (2018), Pythia Jiang et al. (2018), and Cycle-Consistency Shah et al. (2019). LXMERT improves the SotA overall accuracy (‘Accu’ in Table 2) by and has improvement on the ‘Binary’/‘Other’ question sub-categories. Although LXMERT does not explicitly take a counting module as in BAN+Counter, our result on the counting-related questions (‘Number’) is still equal or better.5

Gqa The GQA Hudson and Manning (2019) SotA result is taken from BAN Kim et al. (2018) on the public leaderbaord. Our accuracy gain over the SotA GQA method is higher than VQA, possibly because GQA requires more visual reasoning. Thus our framework, with novel encoders and cross-modality pre-training, is suitable and achieves a improvement on open-domain questions (‘Open’ in Table 2).6

 Suhr et al. (2019) is a challenging visual reasoning dataset where some existing approaches Hu et al. (2017); Perez et al. (2018) fail, and the SotA method is ‘MaxEnt’ in \newcitesuhr2018corpus. The failure of existing methods (and our model w/o pre-training in Sec. 5.1) indicates that the connection between vision and language may not be end-to-end learned in a complex vision-and-language task without large-scale pre-training. However, with our novel pre-training strategies in building the cross-modality connections, we significantly improve the accuracy (‘Accu’ of 76.2% on unreleased test set ‘Test-U’, in Table 2) by . Another evaluation metric consistency measures the proportion of unique sentences for which all related image pairs7 are correctly predicted. Our LXMERT model improves consistency (‘Cons’) to 42.1% (i.e., by times).8

Method VQA GQA
LSTM + BUTD 63.1 50.0 52.6
BERT + BUTD 62.8 52.1 51.9
BERT + 1 CrossAtt 64.6 55.5 52.4
BERT + 2 CrossAtt 65.8 56.1 50.9
BERT + 3 CrossAtt 66.4 56.6 50.9
BERT + 4 CrossAtt 66.4 56.0 50.9
BERT + 5 CrossAtt 66.5 56.3 50.9
Train + BERT 65.5 56.2 50.9
Train + scratch 65.1 50.0 50.9
Pre-train + BERT 68.8 58.3 70.1
Pre-train + scratch 69.9 60.0 74.5
Table 3: Dev-set accuracy of using BERT.

5 Analysis

In this section, we analyze our LXMERT framework by comparing it with some alternative choices or by excluding certain model components/pre-training strategies.

5.1 BERT versus LXMERT

BERT Devlin et al. (2019) is a pre-trained language encoder which improves several language tasks. As shown in Table 3, we discuss several ways to incorporate a pre-trained model for vision-language tasks and empirically compare it with our LXMERT approach. Although our full model achieves accuracy of on , all results without LXMERT pre-training is around absolute lower.

Bert+butd Bottom-Up and Top-Down (BUTD) attention Anderson et al. (2018) method encodes questions with GRU Chung et al. (2015), then attends to object RoI features to predict the answer. We apply BERT to BUTD by replacing its GRU language encoder with BERT. As shown in the first block of Table. 3, results of BERT encoder is comparable to LSTM encoder.

BERT+CrossAtt Since BUTD only takes the raw RoI features without considering the object positions and object relationships, we enhance BERT+BUTD with our novel position-aware object embedding (in Sec. 2.1) and cross-modality layers (in Sec. 2.2). As shown in the second block of Table 3, the result of cross-modality layer is better than BUTD, while stacking more cross-modality layers further improves it. However, without our cross-modality pre-training (BERT is language-only pre-trained), results become stationary after adding cross-attention layers and have a gap to our full LXMERT framework (the last bold row in Table 3).

Bert+lxmert We also try loading BERT parameters9 into LXMERT, and use it in model training (i.e., without LXMERT pre-training) or in pre-training. We show results in the last block of Table. 3. Compared to the ‘from scratch’ (i.e., model parameters are randomly initialized) approach, BERT improves the fine-tuning results but it shows weaker results than our full model. Empirically, pre-training LXMERT initialized with BERT parameters has lower (i.e., better) pre-training loss for the first pre-training epochs but was then caught up by our ‘from scratch’ approach. A possible reason is that BERT is already pre-trained with single-modality masked language model, and thus could do well based only on the language modality without considering the connection to the vision modality (as discussed in Sec. 3.1.1).

Method VQA GQA
1. P20 + DA 68.0 58.1 -
2. P20 + FT 68.9 58.2 72.4
3. P10+QA10 + DA 69.1 59.2 -
4. P10+QA10 + FT 69.9 60.0 74.5
Table 4: Dev-set accuracy showing the importance of the image-QA pre-training task. P10 means pre-training without the image-QA loss for epochs while QA10 means pre-training with the image-QA loss. DA and FT mean fine-tuning with and without Data Augmentation, resp.

5.2 Effect of the Image QA Pre-training Task

We show the importance of image QA pre-training task (introduced in Sec. 3.1.3) by excluding it or comparing it with its alternative: data augmentation.

Pre-training w/ or w/o Image QA To fairly compare with our original pre-training procedure (10 epochs w/o QA + 10 epochs w/ QA, details in Sec. 3.3) , we pre-train LXMERT model without image QA task for epochs. As shown in Table 4 rows 2 and 4, pre-training with QA loss improves the result on all three datasets. The improvement on shows the stronger representations learned with image-QA pre-training, since all data (images and statements) in are not used in pre-training.

Pre-training versus Data Augmentation Data augmentation (DA) is a technique which is used in several VQA implementations Anderson et al. (2018); Kim et al. (2018); Jiang et al. (2018). It increases the amount of training data by adding questions from other image QA datasets. Our LXMERT framework instead uses multiple QA datasets in pre-training and is fine-tuned only on one specific dataset. Since the overall amounts of data used in pre-training and DA are similar, we thus can fairly compare these two strategies, and results show that our QA pre-training approach outperforms DA. We first exclude the QA task in our pre-training and show the results of DA fine-tuning. As shown in Table. 4 row 1, DA fine-tuning decreases the results compared to non-DA fine-tuning in row 2. Next, we use DA after QA-pre-training (row 3) and DA also drops the results.

5.3 Effect of Vision Pre-training tasks

We analyze the effect of different vision pre-training tasks in Table 5. Without any vision tasks in pre-training (i.e., only using the language and cross-modality pre-training tasks), the results (row of Table 5) are similar to BERT+3 CrossAtt in Table 3. The two visual pre-training tasks (i.e., RoI-feature regression and detected-label classification) could get reasonable results (row and row ) on their own, and jointly pre-training with these two tasks achieves the highest results (row ).

Method VQA GQA
1. No Vision Tasks 66.3 57.1 50.9
2. Feat 69.2 59.5 72.9
3. Label 69.5 59.3 73.5
4. Feat + Label 69.9 60.0 74.5
Table 5: Dev-set accuracy of different vision pre-training tasks. ‘Feat’ is RoI-feature regression; ‘Label’ is detected-label classification.

6 Related Work

Model Architecture: Our model is closely related to three ideas: bi-directional attention, Transformer, and BUTD. \newcitelu2016hierarchical applies bi-directional attention to the vision-and-language tasks while its concurrent work BiDAF Seo et al. (2017) adds modeling layers in solving reading comprehension. Transformer Vaswani et al. (2017) is first used in machine translation, we utilize it as our single-modality encoders and design our cross-modality encoder based on it. BUTD Anderson et al. (2018) embeds images with the object RoI features, we extend it with object positional embeddings and object relationship encoders.

Pre-training: After ELMo Peters et al. (2018), GPT Radford et al. (2018), and BERT Devlin et al. (2019) show improvements in language understanding tasks with large-scale pre-trained language model, progress has been made towards the cross-modality pre-training. XLM Lample and Conneau (2019) learns the joint cross-lingual representations by leveraging the monolingual data and parallel data. VideoBert Sun et al. (2019) takes masked LM on the concatenation of language words and visual tokens, where the visual tokens are converted from video frames by vector quantization. However, these methods are still based on a single transformer encoder and BERT-stype token-based pre-training, thus we develop a new model architecture and novel pre-training tasks to satisfy the need of cross-modality tasks.

Recent works since our EMNLP submission: This version of our paper (and all current results) was submitted to EMNLP10 and was used to participate in the VQA and GQA challenges in May 2019. Since our EMNLP submission, a few other useful preprints have recently been released (in August) on similar cross-modality pre-training directions: ViLBERT Lu et al. (2019) and VisualBERT Li et al. (2019). Our LXMERT methods differs from them in multiple ways: we use a more detailed, multi-component design for the cross-modality model (i.e., with an object-relationship encoder and cross-modality layers) and we employ additional, useful pre-training tasks (i.e., RoI-feature regression and image question answering). These differences result in the current best performance (on overlapping reported tasks): a margin of 1.5% accuracy on VQA 2.0 and a margin of 9% accuracy on (and 15% in consistency). LXMERT is also the only method which ranks in the top-3 on both the VQA and GQA challenges among more than 90 teams. We provide a detailed analysis to show how these additional pre-training tasks contribute to the fine-tuning performance in Sec. 5.2 and Sec. 5.3.

7 Conclusion

We presented a cross-modality framework, LXMERT, for learning the connections between vision and language. We build the model based on Transfermer encoders and our novel cross-modality encoder. This model is then pre-trained with diverse pre-training tasks on a large-scale dataset of image-and-sentence pairs. Empirically, we show state-of-the-art results on two image QA datasets (i.e., VQA and GQA) and show the model generalizability with a improvement on the challenging visual reasoning dataset of . We also show the effectiveness of several model components and training methods via detailed analysis and ablation studies.


We thank the reviewers for their helpful comments. This work was supported by ARO-YIP Award #W911NF-18-1-0336, and awards from Google, Facebook, Salesforce, and Adobe. The views, opinions, and/or findings contained in this article are those of the authors and should not be interpreted as representing the official views or policies, either expressed or implied, of the funding agency.


Appendix A Evaluated Datasets Description

We use three datasets for evaluating our LXMERT framework.

Vqa The goal of visual question answering (VQA) Antol et al. (2015) is to answer a natural language question related to an image. We take VQA v2.0 dataset Goyal et al. (2017) which reduces the answer bias compared to VQA v1.0. The dataset contains an average of questions per image and the total amount of questions is M.

Gqa The task of GQA Hudson and Manning (2019) is same as VQA (i.e., answer single-image related questions), but GQA requires more reasoning skills (e.g., spatial understanding and multi-step inference). M questions in the dataset are generated from ground truth image scene graph to explicitly control the question quality.

Since the previous two datasets are used in pre-training for increasing the amount of pre-training data to a certain scale, we evaluate our LXMERT framework on another challenging visual reasoning dataset where all the sentences and images are not covered in pre-training. Each datum in contains two related natural images and one natural language statement. The task is to predict whether the statement correctly describes these two images or not. has K, K, K data in training, development, and test sets, respectively.

Appendix B Details of Fine-tuning

Each datum in consists of a two-image pair (, ), one statement , and a ground truth label indicating whether the statement correctly describe the two images. The task is to predict the label given the images and the statement.

To use our LXMERT model on , we concatenate the cross-modality representations of the two images and then build the classifier with GeLU activationHendrycks and Gimpel (2016). Suppose that is the single-vector cross-modality representation, the predicted probability is:

where is sigmoid function. The model is optimized by maximizing the log-likelihood, which is equivalent to minimize the binary cross entropy loss:

Appendix C Training, Validation, and Testing Splits

We carefully split each dataset to ensure that all testing images are not involved in any pre-training or fine-tuning steps. Our data splits for each dataset and reproducible code are available at https://github.com/airsplay/lxmert.

LXMERT Pre-Traininig Since MS COCO has a relative large validation set, we sample a set of k images from the MS COCO validation set as the mini-validation (minival) set. The rest of the images in training and validation sets (i.e., COCO training images, COCO validation images besides minival, and all the other images in Visual Genome) are used in pre-training. Although the captions and questions of the MS COCO test sets are available, we exclude all of them to make sure that testing images are not seen in pre-training.

Fine-tuning For training and validating VQA v2.0, we take the same split convention as in our LXMERT pre-training. The data related to images in LXMERT mini-validation set is used to validate model performance and the rest of the data in train+val are used in fine-tuning. We test our model on the VQA v2.0 ‘test-dev’ and ‘test-standard’ splits. For GQA fine-tuning, we follow the suggestions in official GQA guidelines11 to take testdev as our validation set and fine-tune our model on the joint train + validation sets. We test our GQA model on GQA ‘test-standard’ split. The images in are not from either MS COCO or Visual Genome, we thus keep using the original split: fine-tune on train split, validate the model choice on val split, and test on the public (‘Test-P’) and unreleased (‘Test-U’) test splits.

Appendix D Training Details of ‘BERT versus LXMERT’

When training with BERT only, we train each experiments for epochs with a batch size / since it was not pre-trained on these cross-modality datasets. The learning rate is set to instead of .


  1. Published at EMNLP 2019. Code and pre-trained models publicly available at: https://github.com/airsplay/lxmert
  2. We take a sentence from another image as the mismatched sentence. Although the sentence and the image still have chance to match each other, this probability is very low.
  3. If we count a single modality layer as one half cross-modality layer, the equivalent number of cross-modality layers is , which is same as the number of layers in .
  4. For comparison, ResNet on ImageNet classification takes K steps and BERT takes K steps.
  5. Our result on VQA v2.0 ‘test-dev’ is 72.4%.
  6. Our result on GQA ‘test-dev’ is 60.0%.
  7. Each statement in is related to multiple image pairs in order to balance the dataset answer distribution.
  8. These are the unreleased test set (‘Test-U’) results. On the public test set (‘Test-P’), LXMERT achieves 74.5% Accu and 39.7% Cons.
  9. Since our language encoder is same as , except the number of layers (i.e., LXMERT has layers and BERT has layers), we load the top BERT-layer parameters into the LXMERT language encoder.
  10. EMNLP deadline was on May 21, 2019, and the standard ACL/EMNLP arxiv ban rule was in place till the notification date of August 12, 2019.
  11. https://cs.stanford.edu/people/dorarad/gqa/evaluate.html


  1. Bottom-up and top-down attention for image captioning and visual question answering. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 6077–6086. Cited by: §5.1, §5.2, §6.
  2. Vqa: visual question answering. In Proceedings of the IEEE international conference on computer vision, pp. 2425–2433. Cited by: Appendix A, §1, §3.2.
  3. Neural machine translation by jointly learning to align and translate. arXiv preprint arXiv:1409.0473. Cited by: §2.2.
  4. Gated feedback recurrent neural networks. In International Conference on Machine Learning, pp. 2067–2075. Cited by: §5.1.
  5. ImageNet: a large-scale hierarchical image database. In 2009 IEEE Conference on Computer Vision and Pattern Recognition, pp. 248–255. Cited by: §1.
  6. Bert: pre-training of deep bidirectional transformers for language understanding. In Proceedings of NAACL-HLT, Cited by: §1, §2.2, §3.1.1, §3.1.3, §3.3, §3.3, §5.1, §6.
  7. Rich feature hierarchies for accurate object detection and semantic segmentation. In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 580–587. Cited by: §1.
  8. Making the v in vqa matter: elevating the role of image understanding in visual question answering. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 6904–6913. Cited by: Appendix A, §4.1.
  9. Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 770–778. Cited by: §1.
  10. Bridging nonlinearities and stochastic regularizers with gaussian error linear units. https://openreview.net/forum?id=Bk0MRI5lg. Cited by: Appendix B.
  11. Learning to reason: end-to-end module networks for visual question answering. In Proceedings of the IEEE International Conference on Computer Vision, pp. 804–813. Cited by: §4.3.
  12. GQA: a new dataset for compositional question answering over real-world images. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Cited by: Appendix A, §1, §3.2, §4.1, §4.3.
  13. Pythia v0. 1: the winning entry to the vqa challenge 2018. arXiv preprint arXiv:1807.09956. Cited by: §4.3, §5.2.
  14. Bilinear attention networks. In Advances in Neural Information Processing Systems, pp. 1564–1574. Cited by: §4.3, §5.2.
  15. Adam: a method for stochastic optimization. In International Conference on Learning Representations, Cited by: §3.3.
  16. Visual genome: connecting language and vision using crowdsourced dense image annotations. International Journal of Computer Vision 123 (1), pp. 32–73. Cited by: §1, §3.2.
  17. Cross-lingual language model pretraining. arXiv preprint arXiv:1901.07291. Cited by: §6.
  18. VisualBERT: a simple and performant baseline for vision and language. arXiv preprint arXiv:1908.03557. Cited by: §6.
  19. Microsoft coco: common objects in context. In European conference on computer vision, pp. 740–755. Cited by: §1, §3.2.
  20. ViLBERT: pretraining task-agnostic visiolinguistic representations for vision-and-language tasks. arXiv preprint arXiv:1908.02265. Cited by: §6.
  21. Film: visual reasoning with a general conditioning layer. In Thirty-Second AAAI Conference on Artificial Intelligence, Cited by: §4.3.
  22. Deep contextualized word representations. In Proceedings of NAACL-HLT, pp. 2227–2237. Cited by: §1, §6.
  23. Improving language understanding by generative pre-training. URL https://s3-us-west-2. amazonaws. com/openai-assets/researchcovers/languageunsupervised/language understanding paper. pdf. Cited by: §1, §6.
  24. SQuAD: 100,000+ questions for machine comprehension of text. In Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing, pp. 2383–2392. Cited by: §1.
  25. Faster r-cnn: towards real-time object detection with region proposal networks. In Advances in neural information processing systems, pp. 91–99. Cited by: §3.1.2, §3.3.
  26. Bidirectional attention flow for machine comprehension. In International Conference on Learning Representations, Cited by: §6.
  27. Cycle-consistency for robust visual question answering. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Cited by: §4.3.
  28. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556. Cited by: §1.
  29. A corpus for reasoning about natural language grounded in photographs. In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, Cited by: §1, §4.3.
  30. Videobert: a joint model for video and language representation learning. arXiv preprint arXiv:1904.01766. Cited by: §6.
  31. Going deeper with convolutions. In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 1–9. Cited by: §1.
  32. Attention is all you need. In Advances in neural information processing systems, pp. 5998–6008. Cited by: §1, §2.2, §2.2, §2, §6.
  33. GLUE: a multi-task benchmark and analysis platform for natural language understanding. EMNLP 2018, pp. 353. Cited by: §1.
  34. Google’s neural machine translation system: bridging the gap between human and machine translation. arXiv preprint arXiv:1609.08144. Cited by: §2.1, §3.3.
  35. Show, attend and tell: neural image caption generation with visual attention. In International conference on machine learning, pp. 2048–2057. Cited by: §1, §2.2.
  36. Beyond bilinear: generalized multimodal factorized high-order pooling for visual question answering. IEEE Transactions on Neural Networks and Learning Systems 29 (12), pp. 5947–5959. Cited by: §4.3.
  37. Visual7w: grounded question answering in images. In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 4995–5004. Cited by: §3.2.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description