table detection in invoice documents by graph neural networks · introduction table detection...

31
Table Detection in Invoice Documents by Graph Neural Networks Pau Riba, Anjan Dutta, Lutz Goldmann, Alicia Forn´ es, Oriol Ramos, Josep Llad´os Computer Vision Center, omni:us ICDAR, Sydney, Australia, 23rd September, 2019

Upload: others

Post on 01-Jun-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Table Detection in Invoice Documents byGraph Neural Networks

Pau Riba, Anjan Dutta, Lutz Goldmann, Alicia Fornes,Oriol Ramos, Josep Llados

Computer Vision Center, omni:us

ICDAR, Sydney, Australia, 23rd September, 2019

Page 2: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Outline

Introduction

Table Detection FrameworkGraph RepresentationNetwork Architecture

Experimental ValidationDatasets and StatisticsNode/Edge ClassificationTable Detection

Conclusions and Future Work

2 Table Detection by GNN

Riba et al.

Page 3: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction

3 Table Detection by GNN

Riba et al.

Page 4: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

IntroductionBusiness Documents

I Information extraction: Finance, insurance, manufacturing...

I Manual extraction: Tedious and time consuming.

I Automatic extraction: Reduced time and improved quality.

4 Table Detection by GNN

Riba et al.

Page 5: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

IntroductionSemi-Structured Documents

I Structured Documents: Existing methods, high accuracy.

I Unstructured Documents: Human assistance and validation.I Semi-structured Documents:

I Without a fixed spatial layout.I Sharing a common set of components.

5 Table Detection by GNN

Riba et al.

Page 6: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

IntroductionInvoice Documents

I Semi-structured documents with flexible layouts

I Spatial arrangement roughly perceived as a tabular layout

I Tables are commonly used to condense information

6 Table Detection by GNN

Riba et al.

Page 7: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

IntroductionConstraint

Industrial collaboration - Anonymized data

7 Table Detection by GNN

Riba et al.

Page 8: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

IntroductionObjective

I Graph based representation: Exploit repetitive patterns

I Classification: GNN classification for nodes and edges

I Table detection: Group nodes into table regions

8 Table Detection by GNN

Riba et al.

Page 9: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

IntroductionObjective

I Graph based representation: Exploit repetitive patterns

I Classification: GNN classification for nodes and edges

I Table detection: Group nodes into table regions

9 Table Detection by GNN

Riba et al.

Page 10: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

IntroductionObjective

I Graph based representation: Exploit repetitive patterns

I Classification: GNN classification for nodes and edges

I Table detection: Group nodes into table regions

10 Table Detection by GNN

Riba et al.

Page 11: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Table Detection Framework

11 Table Detection by GNN

Riba et al.

Page 12: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Graph Representation

I Commercial OCR (by the industrial partner)

I Textual attributes (numeric, alphabet or symbol)I Visibility graph:

I Nodes: Document regionsI Edges: Visibility relations (vertical and horizontal)

12 Table Detection by GNN

Riba et al.

Page 13: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Graph Representation

I Commercial OCR (by the industrial partner)

I Textual attributes (numeric, alphabet or symbol)I Visibility graph:

I Nodes: Document regionsI Edges: Visibility relations (vertical and horizontal)

13 Table Detection by GNN

Riba et al.

Page 14: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Graph Neural NetworkGNN layer

I Notation introduced in [2]

I A - Graph intrinsic linearoperators

I ρ - Activation function(ReLU)

I θ - Learnable parameters

x (k+1) = GC (x (k)) = ρ

∑B∈A(k)

Bx (k)θ(k)B

[2] V. Garcia et. al., Few-shot learning with graph neural networks, in ICLR, 2018.

14 Table Detection by GNN

Riba et al.

Page 15: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Graph Neural NetworkGraph Adjacency Layer

I Importance of the neighbourhood connection

I MLP - MultiLayer Perceptron

I σ - Activation function (Sigmoid)

I Absolute difference provides the symmetry property

φk(B)i ,j=

{0 if Bi ,j = 0

σ(

MLPθ

(∣∣∣x (k)i − x

(k)j

∣∣∣)) otherwise

15 Table Detection by GNN

Riba et al.

Page 16: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

GNN ArchitecturePipeline

16 Table Detection by GNN

Riba et al.

Page 17: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

GNN ArchitectureGraph Residual Block

I Idea of ResNet [1]

I GNN layers with a skipconnection

I Edge weights are learned atthe beginning of the block

[1] K. He et. al., Deep residual learning for image recognition, in CVPR, 2016.

17 Table Detection by GNN

Riba et al.

Page 18: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

GNN ArchitectureObjective functions

I Node classifier: Linear classifier with Softmax operationI Edge classifier: Binary Cross entropy

I 0 - Edge connects two different regionsI 1 - Edge connects elements in the same region

18 Table Detection by GNN

Riba et al.

Page 19: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Table Detection

I Discard 0’ed edgesI Subgraphs with nodes classified as Table are consideredI The confidence score of these subgraphs are thresholded for

the final decision

19 Table Detection by GNN

Riba et al.

Page 20: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Experimental Validation

20 Table Detection by GNN

Riba et al.

Page 21: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Datasets

CON-ANONYM

I 960 documents

I 8 region annotation

I Common car invoices

I Not publicly available

RVL-CDIP

I Overall 25,000 images

I 5 region annotation

I Selected 518 invoice class

I Publicly available 1

1https://zenodo.org/record/3257319

[3] A. W. Harley et. al., Evaluation of deep convolutional nets for document image

classification and retrieval, in ICDAR, 2015.

21 Table Detection by GNN

Riba et al.

Page 22: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Datasets

CON-ANONYM RVL-CDIP

Total # documents (tr, va, te) 950 (665, 95, 195) 518 (362, 52, 104)Total # pages 1252 518Total # tables 1202 485Total # classes 8 6Avg. # nodes/page 245.50 124.03Avg. # edges/page 1354.81 619.55

22 Table Detection by GNN

Riba et al.

Page 23: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Node/Edge Classification

TaskCON-ANONYM RVL-CDIP

All Table Edge All Table Edge

Pow 2 82.8 96.4 − 57.8 80.9 −+ Edge 84.2 97.0 93.4 58.2 79.1 84.1

Pow 5 82.7 96.2 − 56.5 82.3 −+ Edge 84.5 97.2 93.4 62.3 83.9 84.0

23 Table Detection by GNN

Riba et al.

Page 24: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Table Detection

I Intersection over Union

TaskCON-ANONYM RVL-CDIP

F1-Score Precision Recall F1-Score Precision Recall

Pow 2 69.4 65.8 73.4 28.6 23.9 35.4+ Edge 70.8 65.2 77.6 30.8 26.7 36.5

Pow 5 68.4 65.3 71.8 22.6 20.0 26.0+ Edge 73.7 78.4 69.5 30.8 25.2 39.6

24 Table Detection by GNN

Riba et al.

Page 25: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Table Detection

I Proper detection

I Preprocessing problemsI Tabular layout

25 Table Detection by GNN

Riba et al.

Page 26: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Table Detection

I Proper detection

I Preprocessing problemsI Tabular layout

26 Table Detection by GNN

Riba et al.

Page 27: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Table Detection

I Proper detectionI Preprocessing problems

I Tabular layout

27 Table Detection by GNN

Riba et al.

Page 28: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Table Detection

I Proper detectionI Preprocessing problemsI Tabular layout

28 Table Detection by GNN

Riba et al.

Page 29: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Conclusions and Future Work

29 Table Detection by GNN

Riba et al.

Page 30: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Introduction Table Detection Framework Experimental Validation Conclusion

Conclusions and Future Work

I First Table Detection based on structural information.

I A Graph models the underlying structure of the document.

I Publicly available RVL-CDIP invoice dataset.

I Deal with anonymized data.

I Generalize to unconstrained tabular layout.

30 Table Detection by GNN

Riba et al.

Page 31: Table Detection in Invoice Documents by Graph Neural Networks · Introduction Table Detection Framework Experimental ValidationConclusion Introduction Objective I Graph based representation:

Thank you for your attention!

Pau RibaComputer Vision Center

[email protected]://www.cvc.uab.cat/people/priba/