BROS: A P RE - TRAINED L ANGUAGE M ODEL FOR U NDERSTANDING T EXTS IN D OCUMENT
Anonymous authors
Paper under double-blind review
A BSTRACT
Understanding document from their visual snapshots is an emerging and challenging problem that requires both advanced computer vision and NLP methods.
Although the recent advance in OCR enables the accurate extraction of text segments, it is still challenging to extract key information from documents due to the diversity of layouts.
To compensate for the difﬁculties, this paper introduces a pre-trained language model, BERT Relying On Spatiality (BROS) , that represents and understands the semantics of spatially distributed texts.
Different from previous pre-training methods on 1D text, BROS is pre-trained on large-scale semistructured documents with a novel area-masking strategy while efﬁciently including the spatial layout information of input documents.
Also, to generate structured outputs in various document understanding tasks, BROS utilizes a powerful graphbased decoder that can capture the relation between text segments.
BROS achieves state-of-the-art results on four benchmark tasks: FUNSD, SROIE*, CORD, and
SciTSR.
Our experimental settings and implementation codes will be publicly available .
I NTRODUCTION
Document intelligence (DI) 1 , which understands industrial documents from their visual appearance, is a critical application of AI in business.
One of the important challenges of DI is a key information extraction task (KIE) (Huang et al., 2019;
Jaume et al., 2019; Park et al., 2019) that extracts structured information from documents such as ﬁnancial reports, invoices, business emails, insurance quotes, and many others.
KIE requires a multi-disciplinary perspective spanning from computer vision for extracting text from document images to natural language processing for parsing key information from the identiﬁed texts.
Optical character recognition (OCR) is a key component to extract all texts in document images.
As
OCR provides a set of text blocks consisting of a text and its location, key information in documents can be represented as a single or a sequence of the text blocks (Schuster et al., 2013; Qian et al., 2019;
Hwang et al., 2019; 2020).
Although OCR alleviates the burden of processing images, understanding semantic relations between text blocks on diverse layouts remains a challenging problem.
To solve this problem, existing works use a pre-trained language model to utilize its effective representation of text.
Hwang et al.
(2019) ﬁne-tunes BERT by regarding KIE tasks as sequence tagging problems.
Denk & Reisswig (2019) uses BERT to incorporate textual information into image pixels during their image segmentation tasks.
However, since BERT is designed for text sequences, they artiﬁcially convert text blocks distributed in two dimensions into a single text sequence losing spatial layout information.
Recently, Xu et al.
(2020) proposes LayoutLM pre-trained on large-scale documents by utilizing spatial information of text blocks.
They show the effectiveness of the pretraining approach by achieving high performance on several downstream tasks.
Despite this success,
LayoutLM has three limitations.
First, LayoutLM embeds x- and y-axis individually using trainable parameters like the position embedding of BERT, ignoring the gap between positions in a sequence and 2D space.
Second, its pre-training method is essentially identical to BERT that does not explicitly consider spatial relations between text blocks.
Finally, in its downstream tasks, LayoutLM only conducts sequential tagging tasks (e.g. BIO tagging) that require serialization of text blocks.
These limitations indicate that LayoutLM fails not only to fully utilize spatial information but also to address KIE problems in practical scenarios when a serialization of text blocks is difﬁcult.
This paper introduces an advanced language model, BROS, pre-trained on large-scale documents and provides a new guideline using the model to solve KIE tasks.
Speciﬁcally, to address the three limitations mentioned above, BROS combines three proposed methods: (1) a 2D positional encoding method that can represent the continuous property of 2D space, (2) a novel area-masking pre-training strategy that performs masked language modeling on 2D, and (3) a combination with a graph-based decoder for solving KIE tasks.
We evaluated BROS on four public KIE datasets: FUNSD (form-like documents), SROIE* (receipts), CORD (receipts), and SciTSR (table structures) and observed that
BROS achieved the best results on all tasks.
In addition, to reﬂect real KIE problems with no order of text blocks, we removed order information of the four benchmark datasets.
When comparing models on these modiﬁed datasets, BROS still shows the best performance.
Further ablation studies provide how each component contributes to the ﬁnal performances of BROS.
R ELATED W ORK 2. P RE - TRAINED L ANGUAGE M ODELS
BERT (Devlin et al., 2019) is a pre-trained language model using Transformer (Vaswani et al., 2017) that shows superior performance on various NLP tasks.
The main strategy to train BERT is a masked language model (MLM) that masks and estimates randomly selected tokens to learn the semantics of language from large-scale corpora.
Many variants of BERT have been introduced to learn transferable knowledge by modifying the pre-training strategy.
XLNet (Yang et al., 2019) permutes tokens during the pre-training phase to reduce a discrepancy from the ﬁne-tuning phase and utilizes relative position encoding to handle long texts.
StructBERT (Wang et al., 2020) shufﬂes tokens in text spans and adds sentence prediction tasks for recovering the order of words or sentences.
SpanBERT (Joshi et al., 2020) masks span of tokens to extract better representation for span selection tasks such as question answering and co-reference resolution.
ELECTRA (Clark et al., 2020) is trained to distinguish real and fake input tokens generated by another network for sample-efﬁcient pre-training.
Inspired by these previous works, BROS utilizes a new pre-training strategy that can capture complex spatial dependencies between text blocks distributed on two dimensions.
Note that LayoutLM is the ﬁrst pre-trained language model on spatial text blocks
but they still use the original MLM of
BERT.
2. K EY I NFORMATION E XTRACTION FROM D OCUMENTS
Most of the existing approaches utilize a serializer to identify the text order of key information.
POT (Hwang et al., 2019) applies BERT on serialized text blocks and extracts key contexts via a
BIO tagging approach.
CharGrid (Katti et al., 2018) and BERTGrid (Denk & Reisswig, 2019) map text blocks upon a grid space, identify the region of key information, and extract key contexts in the pre-determined order.
Liu et al.
(2019), Yu et al.
(2020), and Qian et al.
(2019) utilize graph convolutional networks to model dependencies between text blocks but their decoder that performs BIO tagging relies on a serialization.
LayoutLM
(Xu et al., 2020) is pre-trained on large-scale documents with spatial information of text blocks, but it also conducts BIO tagging for their downstream tasks.
However, using a serializer and relying on the identiﬁed sequence has two limitations.
One is that the original meaning can be lost by improper serialization and the other is that there may even be no correct serialization order.
A natural way to model key contexts from text blocks is a graph-based formulation that identiﬁes all relationships between text blocks.
SPADE (Hwang et al., 2020) proposes a graph-based decoder to extract key contexts from identiﬁed connectivity between text blocks without any serialization.
Speciﬁcally, they utilize BERT without its sequential position embeddings and train the model while ﬁne-tuning BERT.
However, their performance is limited by the amount of data as all relations have to be learned from the beginning at the ﬁne-tuning stage.
To fully utilize the graph-based decoder,
BROS is pre-trained on a large number of documents and is combined with the SPADE decoder to determine key contexts from text blocks.
BERT R ELYING ON S PATIALITY (BROS)
Since BROS is an extension of BERT, the main structure of BROS follows BERT, but there are three novel differences: (1) a spatial encoding metric that reﬂects the continuous property of 2D space, (2) a pre-training objective designed for text blocks on 2D space, and (3) a guideline for designing downstream models based on a graph-based formulation.
3. E NCODING S PATIAL I NFORMATION INTO BERT 3.1. R EPRESENTATION OF A T EXT B LOCK L OCATION
The way to represent spatial information of text blocks is important to reveal spatial dependencies between text blocks.
We utilize sinusoidal functions to encode continuous values of x- and y-axis, and merge them through a linear transformation to represent a point upon 2D space.
For formal description, let denote p =
( x, y ) as a point on 2D space and f sinu : R → R D s as a sinusoidal function.
D s is the dimensions of sinusoid embedding.
BROS encodes a 2D point by applying the sinusoidal function to x- and y-axis and concatenating them as ¯ p =
[ f sinu ( x ) ⊕ f sinu ( y )] .
The ⊕ symbol indicates concatenation.
Since location of a text block, bb i , forms as four vertices, p tl i , p tr i , p br i and p
bl i , of its bounding box, all points are converted into vectors as ¯ p tl i ,
¯ p tr i , ¯ p br i , and ¯ p bl i .
Finally, to represent a spatial embedding, bb i , of a text block, BROS combines four identiﬁed vectors through a linear transformation,
[Equation]
(1) where W tl , W tr , W br , W bl ∈ R H × 2 D s are linear transition metrics and H is a hidden size of BERT.
Since the sinusoidal function has a periodic property, it is more natural to represent continuous 2D point rather than using point-speciﬁc parameters like BERT.
In addition, by learning the linear transition parameters, BROS provides an effective representation of a bounding box.
3.1. E NCODING S PATIAL R EPRESENTATION
A way to encode the position embeddings to the model decides how to utilize the position information.
In BERT, position embedding is tied with the token through a point-wise summation.
However, 2D spatial information is richer than 1D sequence due to the continuous property and the high dimensionality.
Moreover, a text block can exist over all locations in the document without any changes in its semantic meaning.
For example, locations of page numbers differ over multiple document snapshots even though they are captured for a single document.
Therefore, spatial information should be encoded more carefully than simply summing on the token embeddings.
Instead of using the traditional position encoding method, BROS encodes spatial information directly when identifying relationships between text blocks.
Speciﬁcally, BROS calculates an attention logit combining semantic and spatial comparison.
The former is the same as the original attention mechanism in Transformer (Vaswani et al., 2017), but the latter is a new method identifying the importance of the target location when the source context and location are given.
Our proposed attention logit is formulated as follows,
[Equation]
where t i and t j are context representations for i th and j th tokens and W q , W k , W sq | q , W sk | q ,
W sq , W sk are linear transition matrices.
The (cid:12) symbol indicates Hadamard product.
The ﬁrst term indicates an attention logit from contextual representations and the third term is from spatial representation.
The second term is designed to model the spatial dependency given the source semantic representation, t i .
The second and third terms are independently calculated at each layer because spatial dependencies might differ over layers.
[Table]
Pre-training diverse layouts from unlabeled documents is a key factor for document understanding tasks.
To learn effective spatial representation including relationships between text blocks, we propose a novel pre-training objective for learning a language with spatial layouts.
Inspired by
[Figure]
SpanBERT (Joshi et al., 2020), we expand spans of a 1D sequence to consecutive text blocks in 2D space.
Speciﬁcally, we select a few regions in 2D space, mask tokens in the selected regions, and estimate the tokens.
The rule of masking an area follows below stages: (1) randomly selects a text block, (2) adjusts the region of text block by multiplying a number sampled from an exponential distribution with a hyper-parameter, λ , (3) masks all tokens in text blocks of which center position is in the adjusted area.
The rationale behind using exponential distribution is to convert the geometric distribution used in SpanBERT for a discrete domain into distribution for a continuous domain.
In detail, we truncated exponential distribution with 1 to prevent an inﬁnity multiplier covering all space of the document.
This area-masking is repeatedly conducted until 15% of tokens are masked.
Figure 1 compares token- and area-masking on text blocks.
3. S PATIAL D EPENDENCY P ARSERS FOR D OWNSTREAM T ASKS
Key information in a document (e.g. store address in a receipt) is represented as sub-sequences of text blocks.
Although BIO tagging is a general approach to extract sub-sequences in a text sequence, it cannot represent key texts in a document without the optimal order of text blocks.
Therefore, BIO tagging cannot be applied in a practical scenario because it is impossible to access the optimal order.
To deal with the issue, BROS utilizes a decoder of SPADE (Hwang et al., 2020) that can infer a sequence of text blocks from a graph-based formulation without any order information.
BROS supports two downstream tasks.
One is an entity extraction (EE) task and the other is an entity linking (EL) task.
The EE identiﬁes a sequence of text blocks for key information (e.g. extract address texts in a receipt) and the EL determines relations between target texts when target text blocks are known (e.g. identify key and value text pairs).
[Figure]
For EE tasks, BROS divides the problem into two sub-tasks, starting token classiﬁcation (Figure 2, a) and next token classiﬁcation (Figure 2, b).
Let ˜ t i ∈
R H as the i th token representation from the last Transformer layer of BROS.
The starting token classiﬁcation conducts a token-level tagging determining whether a token is a starting token of target information as follows,
[Equation]
where W stc ∈ R ( C +1)
× H is a linear transition matrix and C indicates the number of target classes.
Here, the output dimension has one more dimension than C to classify the tokens which are not starting tokens.
The next token classiﬁcation is conducted by utilizing pair-wise token representations as follows,
[Equation]
where W ntc-s , W ntc-t ∈
R H
ntc × H are linear transition matrices, H ntc is a hidden feature dimension for the next token classiﬁcation decoder and N is the maximum number of tokens.
Here, t ntc ∈ R H ntc is a model parameter to classify tokens which are not included in target classes.
By solving two subtasks, BROS can identify a sequence of text blocks by ﬁnding ﬁrst tokens and connecting next tokens for each class.
For EL tasks, BROS conducts a binary classiﬁcation for all possible pairs of tokens (Figure 2, c) as follows,
[Equation]
where W rel-s , W rel-t ∈ R
[Equation]
rel × H are linear transition matrices and H rel is a hidden feature dimension.
The difference from the next token classiﬁcation is that a single token can hold multiple relations with other tokens to represent hierarchical structures of document layouts.
For more detail about this graph-based formulation, please refer to Hwang et al.
K EY I NFORMATION E XTRACTION T ASKS
Here, we describe three EE tasks and three EL tasks from four benchmark datasets for KIE.
• Form Understanding in Noisy Scanned Documents (FUNSD) (Jaume et al., 2019) is a set of documents with various forms.
The dataset consists of 149 training and 50 testing examples.
FUNSD has both EE and EL tasks.
In the EE task, there are three semantic entities: Header, Question, and Answer.
In the EL task, the semantic hierarchies are represented as relations between text blocks like header-question and question-answer pairs.
• SROIE* is a variant of Task 3 of “Scanned Receipts OCR and Information Extraction” (SROIE)that consists of a set of store receipts.
In the original SROIE task, semantic contents (Company, Date, Address, and Total price) are generated without explicit connection to the text blocks.
To convert SROIE into a EE task, we developed SROIE* by matching ground truth contents with text blocks.
We also split the original training set into 526 training and 100 testing examples because the ground truths are not given in the original test set.
SROIE* will be publicly available.
• Consolidated Receipt Dataset (CORD)
(Park et al., 2019) is a set of store receipts withtraining, 100 validation, and 100 testing examples.
CORD consists of both EE and EL tasks.
In the EE task, there are 30 semantic entities including menu name, menu price, and so on.
In the EL task, the semantic entities are linked according to their layout structure.
For example, menu name entities are linked to menu id, menu count, and menu price.
• Complicated Table Structure Recognition (SciTSR) (Chi et al., 2019) is a EL task that connects cells in a table to recognize the table structure.
There are two types of relations: vertical and horizontal connection between cells.
The dataset consists of 12,000 training images and 3, test images.
Although, these four datasets provide test beds for the EE and EL tasks, they represent the subset of real problems as the optimal order of text blocks is given.
In real service, user can submit documents with a complex layout where the serialization of input texts are non-trivial.
FUNSD provides the optimal orders of text blocks related to target classes in both training and testing examples.
In
SROIE*, CORD, and SciTSR, the text blocks are serialized in reading orders.
To reveal the serialization problem in the EE and EL tasks, we randomly permuted text blocks of the datasets to remove their order information.
We denote the permuted datasets as p-FUNSD, pSROIE*, p-CORD, and p-SciTSR and compare all models on them.
For fair comparisons, we will open the permuted datasets.
[Table]
E XPERIMENTS 5. E XPERIMENT S ETTINGS
For pre-training, IIT-CDIP Test Collection 1.0 3 (Lewis et al., 2006), which consists of approximatley 11M document images, is used but 400K RVL-CDIP dataset 4 (Harley et al., 2015) is excluded following LayoutLM.
In-house OCR engine was applied to obtain text blocks from unlabeled document images.
The main Transformer structure of BROS is the same as BERT.
By following BERT BASE , the hidden size, the number of self-attention heads, the feed-forward size, and the number of Transformer layers are 768, 12, 3072, and 12, respectively.
Our pre-training setting is similar to LayoutLM for a fair comparison.
BROS is trained by using AdamW optimizer (Loshchilov & Hutter, 2019) with a learning rate of 5e-5 with linear decay.
First 10% of the total epochs are used for a warm-up.
We initialized weights of BROS with those of BERT BASE and trained BROS on IIT-CDIP for 2 epochs with 80 of batch size, following LayoutLM.
The pre-training takes 64 hours with 8 NVIDIA Tesla
V100s with Distributed Data Parallel (DDP).
During ﬁne-tuning, the learning rate is set to 5e-5.
The batch size is set to 16 for all tasks.
The number of training epochs or steps is as follows: 100 epochs for FUNSD, 1K steps for SROIE* and
CORD, and 7.5 epochs for SciTSR.
The hidden feature dimensions, H ntc and H rel , of the SPADE decoder are set to 128 for FUNSD, 64 for SROIE*, and 256 for CORD and SciTSR.
Although the authors of LayoutLM published their codes on GitHub 5 , the data and script ﬁle used for pre-training are not included.
For a fair comparison, we made our own implementation, which we refer to LayoutLM † , on the same pre-training data and script ﬁle used for BROS pre-training.
We veriﬁed LayoutLM † by comparing its performances on FUNSD from the reported scores in (Xu et al., 2020).
See Appendix A for more information.
5. E XPERIMENTAL R ESULTS WITH O PTIMAL O RDER I NFORMATION
Table 1 shows the results on four KIE datasets with given optimal order information of text blocks.
For EL tasks, we applied SPADE decoders to all pre-trained models such as BERT, LayoutLM, and
BROS.
In all tasks, we observed that BERT shows lower scores than LayoutLM and BROS presumably due to the loss of spatial information.
BROS achieved the highest scores showing effectiveness of our approach.
Speciﬁcally, in FUNSD, BROS shows the state-of-the-art performances with a large margins of 2.32pp in the EE task and 24.15pp in the EL task.
Moreover, it should be noted that BROS achieves higher f1 score than 79.27 of LayoutLM using visual features.
In SROIE* and CORD, BROS also shows the best performances over all the EE and EL tasks.
In SciTSR,
LayoutLM and BROS show the importance of pre-training by exceeding other baselines with large margins which are trained by using either only spatial information of cells (Tabby and DeepDeSRT) or without pre-training spatial texts (GraphTSR).
By achieving the best, these results prove that
BROS captures better representations of text blocks for KIE downstream tasks.
5. E XPERIMENTAL R ESULTS WITHOUT O PTIMAL O RDER I NFORMATION
It is an another challenging problem to arrange text blocks in the order that humans understand it (Li et al., 2020).
Since the experiments in Section 5.2 assumes the optimal order of text blocks, they cannot reﬂect real KIE problems.
To reveal the challenge, we removed the order information in all datasets by permuting the order of text blocks as mentioned in Section 4 and investigated how BERT,
LayoutLM, and BROS work without the order information.
We utilized a SPADE decoder for all models because BIO tagging on these permuted dataset cannot extract a sequence of text blocks in a correct order.
Entity Extraction
[Table]
Table 2 shows the results.
Due to the lose of correct orders, BERT shows poor performances over all tasks.
By utilizing spatial information of text blocks, LayoutLM † shows better performance but it suffers from huge performance degradation compared to the score with the
On the other hand, BROS shows comparable results compared the cases with the optimal order and better performances
BERT and LayoutLM
To systematically investigate how the order information affects the performance of the models, we construct variants of FUNSD by re-ordering text blocks with two sorting methods based on the topleft points.
The text blocks of xy-FUNSD are sorted according to x-axis with ascending order of y-axis and those of yx-FUNSD are sorted according to y-axis with ascending order of x-axis.
Table 3 shows performance on p-FUNSD, xy-FUNSD, yx-FUNSD, and the original FUNSD.
All models utilize a SPADE decoder for a fair comparison.
Interestingly, the performance of LayoutLM † is degraded in the order of FUNSD, yx-FUNSD, xy-FUNSD, and p-FUNSD as like the order of the
[Table]
reasonable serialization for text on 2D space.
On the other hand, the performance of BROS is relatively consistent.
These results show that BROS is applicable to real KIE problems without additional serialization method.
5. A BLATION S TUDIES MLM
[Table]
Random tokens (LayoutLM’s)
[Table]
tables (LayoutLM’s)
[Table]
Random areas
[Table]
Tied with token embedding
[Table]
LayoutLM’s)
[Table]
Untied
[Table] token embedding [Table] Table 4 provides ablative experiments by changing MLM of pre-training strategy, 2D position embedding and encoding methods, and a decoder for downstream tasks.
The 2D embedding method represents how to treat spatial information of text blocks and the 2D encoding method indicates how to merge the 2D embeddings into BERT.
The results show that all modiﬁcations improve performance when comparing the methods of LayoutLM.
Speciﬁcally, 2D position embedding and its encoding methods show huge performance gaps by 6.45pp and 31.98pp, respectively.
These results represent a co-modality of our 2D continuous position embedding approach and its untied encoding method.
LayoutLM and BROS are initialized with weights of BERT to utilize powerful knowledge of BERT that learns from large-scale corpora.
However, BERT includes its 1D positional embeddings (1DPE) that might be harmful by making a sequence of text blocks even though there is no order information.
To investigate the effectiveness of the 1D-PE, we conduct an ablative study.
BROS without the 1D-PE shows the same F1 scores on both FUNSD and p-FUNSD (70.07), but BROS with the 1D-PE shows performance degradation when the dataset loses the optimal order information (81. on FUNSD → 75.14 on p-FUNSD).
Nevertheless, BROS with the 1D-PE shows better performances on both datasets.
This might be because the 1D-PE preserves the token order in a single text block.
Based on this result, we decided to incorporate the 1D-PE in our model.
C ONCLUSION
We present BROS that encodes 2D continuous position of text blocks as well as learns natural language from text blocks with an area-driven training strategy.
To extract key contexts from text blocks without the order information, BROS adapts a graph-based decoder, SPADE.
In our extensive experiments on four KIE tasks, BROS consistently shows the best performances as well as the robustness on the order of text blocks compared to the existing approaches.
A R EPRODUCING THE L AYOUT LM
# Pre-training Data #
[Table]
2M
[Table]
As mentioned in the paper, to compare BROS from LayoutLM in diverse experimental settings, we implement LayoutLM in our experimental pipeline.
Table 5 compares our implementations from the reported scores in Xu et al.
As can be seen, multiple experiments are conducted according to the number of pre-training data.
Our implementation, referred to LayoutLM † , shows comparable performances over all settings.
B V ISUALIZATION OF S ERIALIZED OCR B LOCKS
With the developments in the ﬁeld of machine learning, the performance of commercial OCR has improved over the years.
However, it is still hard to entrust the ordering of commercial OCR block outputs.
Figure 3 shows the gap between the comprehensive reading order and outputs of commercial OCR.
Speciﬁcally, the ﬁgure contrasts how the words in the OCR results should be serialized (Figure 3a) but most commercially available OCR technologies are unable to reconcile the structural formatting of the text – leading to them ordering the words horizontally (Figure 3b).
This cursory example illustrates that as advanced as commercial OCR solutions have become, there are still ways to improve and our proposed method is one way in which this can be done.