Global Table Extractor (GTE): A Framework for Joint Table Identification and Cell Structure Recognition Using Visual Context

Inc Lomin's avatar
Oct 29, 2021
Global Table Extractor (GTE): A Framework for Joint Table Identification and Cell Structure Recognition Using Visual Context
본 논문에서는 어떠한 object detection model 위에서도 구축 될 수있는 table detection and cell structured recognition 을 위한 vision-guided systematic framework인 GTE (Global Table Extractor)를 제시합니다. 또한 기존 문서에서 테이블과 cell 구조에 자동으로 레이블을 지정하여 대량의 훈련 및 테스트 데이터를 저렴하게 생성하는 방법을 설계합니다. 이를 사용하여 cell 레이블로 PubTabNet을 향상시키고 FinTabNet을 생성합니다. 본 논문에서 제시한 프레임 워크는 테이블 감지 및 cell 구조 인식 모두에서 ICDAR 2013 및 ICDAR 2019 table competition에 대한 이전의 SOTA를 능가합니다.

Introduction

 
notion image
 

Motivation

  • 기존의 rule-based 또는 statistical techniques은 그래픽 선이나 굵은 글꼴과 같은 수작업(post-process)에 크게 의존하기 때문에 일반화하지 못함
  • 이에 반해 Deep learning based approach는 다음과 같은 장점이 있음
    • PDF를 포함하여 이미지로 렌더링 할 수있는 모든 문서에 적용 할 수 있으며 규칙 기반 접근 방식에 필요한 그래픽 줄, 간격 및 글꼴 속성과 같은 프로그래밍 방식의 PDF 인코딩에 의존하지 않음
    • 테이블에 주석이 추가 된 대규모 데이터 세트를 사용할 수있는 경우 모델을 pretrained한 다음, 소량의 in-domain labels을 사용하여 finetuning이 가능함
  • 하지만 기존 연구에서 Table Extraction을 위한 vision-based deep learning models은 거의 제안되지 않았음
    • object detection-based methods에 대한 대부분의 선행 연구는 전체 행과 열을 개별적으로 감지하고 감지 된 행과 열의 교차점을 셀로 나타내는데, 이러한 접근 방식은 잘 정렬되지 않은 행 또는 열이있는 복잡한 테이블의 구조를 정확하게 감지하는 데 한계가 있음
 

Abstraction

  • 본 논문에서 제안한 GTE (Global Table Extractor)는 비전 기반 모델을 테이블 식별 및 cell structure recognition 문제에 적용하고 다음과 같이 기존 작업의 한계를 해결하여 SOTA를 달성합니다.
  • GTE는 natural constraint of tables을 학습하도록 모델을 명시적으로 적용하여 object detectors를 개선합니다. 테이블은 테이블 내부에 일정량의 cell을 포함해야하며 셀은 테이블 외부에 존재할 수 없습니다. 즉, 모델은 테이블에만 집중할뿐만 아니라 내부 cell에도 주의를 기울여야합니다.
  • 전체 행과 열을 개별적으로 감지하는 대신 각 cell을 직접 감지하는 방법을 제안합니다. 이는 cell이 객체 단위로 시각적으로 더 구별되기 때문이며 이 접근 방식은 자연스럽게 전체 테이블에 걸쳐 있지 않은 행과 열이있는 테이블을 지원합니다.
  • 현재 object detection models은 객체 주변의 local 영역에 초점을 맞추고 있으며, 이는 cell 모양을 결정하는 테이블의 글로벌 스타일을 무시합니다. 전체 테이블의 정보를 활용하기 위해 먼저 global context인 테이블 스타일을 구별하는 계층적 네트워크 시스템을 제안합니다. 그런 다음 테이블 이미지는 다양한 스타일에 특화된 다양한 object detectors에 제공됩니다. cell bounding box가 감지 된 후, cell 구조를 생성하는 cell 클러스터 기반 알고리즘을 제시합니다. 요약하면, 본 논문의 기여는 다음과 같습니다.
      1. ICDAR 2013 및 2019 테이블 경쟁 벤치 마크에서 이전 시스템을 능가하는 테이블 감지 및 cell 구조 인식 GTE를위한 체계적인 프레임 워크를 제시합니다. (a) cell detection 네트워크를 활용하여 table detection 네트워크의 train을 guide합니다. (b) table을 분류하고, cell를 detection하고,이를 공간 클러스터링을 통해 구조로 변환하여 cell structure recognition을위한 계층적 네트워크와 새로운 클러스터 기반 알고리즘을 제시합니다.
      1. table 인식을위한 groundtruth 레이블을 자동으로 생성하는 방법을 설계하고 이를 사용하여 PubTabNet을 향상시키고 테이블 관련 작업에 대한 세분화 된 cell 구조 주석이있는 실제 데이터 소스의 대규모 데이터 세트인 FinTabNet(https://developer.ibm.com/technologies/artificial-intelligence/data/fintabnet/)을 생성합니다.
 

Proposed Method

 
  • 그림 2에서 볼 수 있듯이 전체 GTE 프레임 워크는 일련의 vision-based neural networks으로 구성됩니다.
  • 각 주요 object detection 네트워크는 다른 네트워크의 출력 컨텍스트를 사용합니다. 해당 프레임 워크는 모든 종류의 object detector에 적용 할 수 있습니다.
  • 테이블 경계 네트워크 (GTE-Table)는 테이블이 적어도 일부 cell을 포함해야한다는 사실을 활용하여 cell detection 네트워크를 사용합니다.
  • cell structure recognition 네트워크(GTE-Cell)는 테이블 경계 네트워크 (GTE-Table)의 table boundary와 table-level style information (Attributes Net)를 사용합니다.
 
notion image
 

GTE-Table

 
notion image
 
훈련 단계에서는 regression 및 classification 손실 외에 piecewise constraint loss을 추가합니다. 셀 위치를 고려할 때 비현실적인 테이블의 탐지 확률에 페널티를줍니다. 이 새로운 셀 제약 기반 손실 함수는 모든 detection 네트워크에 추가 될 수 있습니다. 여기서는 이 섹션의 용어를 공식화합니다. 그림 3에서 다음과 같이 정의합니다. cell bounding box 집합을 생성하기 위해 guided cell network를 사용했습니다. 셀은 테이블의 위치를 모르고 원본 전체 페이지 문서 페이지에서만 훈련 된 GTE-Cell 네트워크의 단순한 non-hierarchical 버전에 의해 detection됩니다.
 
notion image
 
  • bobox와 bibox 사이의 셀이 포함하는 영역이 bobox 영역에서 bibox 영역을 뺀 영역의 최대 α 배인 경우 C는 True
  • bibox와 bobox 사이의 영역에 셀이 있으면 D는 True
 
penalty indicator은 다음과 같이 정의됩니다.
 
notion image
 
즉, penalty indicator는 다음 조건을 하나라도 만족할 경우 True가 됩니다.
 
notion image
 
constraint loss(CL)는 다음과 같습니다.
notion image
  • P(.)는 table detection probability function
  • 을 실험에서 적용
  • 테이블 네트워크에 대한 입력 이미지 채널 중 하나는 train을 더 돕기 위해 셀 예측에서 생성 된 mask로 대체
 
inference stage에서 널리 사용되는 non-max suppression 대신 사용하게 되는 ranking of proposed bounding boxes는 탐지 확률뿐 아니라 테이블 내부 및 외부의 셀 존재도 고려합니다.
 
또한 각 bbox마다 안쪽의 cell을 빼고 남은 바깥쪽의 cell을 계산하여 Constraint Coefficient(CCoef)를 정의합니다.
 
δ% 만큼 중첩된 2개의 bbox bi, bj가 |P(bi) − P(bj )| < 인 경우, 더 큰 CCoef를 갖는 bbox를 버립니다.
각 hyper-parameters의 경우 일반적인 문서에있는 표의 특성에 따라 간단한 방식으로 선택되었습니다. 구체적인 내용은 논문의 Supplemental material에 언급되어 있습니다.
ex) 위의 값 5는 문자 높이의 절반 (10 픽셀)을 반영하고 20은 텍스트 두 줄에 해당합니다.
 

GTE-Cell

  • real world의 테이블은 구성 요소의 규칙과 의미를 결정하는 전역 스타일을 따르는 경우가 많습니다. 예를 들어, 모든 행과 열에 수직 및 수평 괘선이 표시되어 셀 경계를 쉽게 정의 할 수있는 일부 테이블이 있습니다. 그러나 괘선이 없거나 간헐적인 중단만있는 다른 스타일이 있습니다. 이러한 경우 대부분의 object detection 네트워크와 같이 local 환경 만 보는 모델은 괘선이 새 셀의 시작을 나타내는 지 여부를 확인할 수 없습니다.
  • 경험적으로, 훈련에서 다른 스타일의 테이블을 혼합하면 더 많은 훈련 데이터를 사용하더라도 일부 데이터에서 모델 성능이 저하된다는 것을 발견했습니다. 프레임 워크에서 먼저 테이블에 vertical graphical ruling lines의 존재를 분류하기 위한 속성 네트워크를 학습합니다.
  • 이 네트워크의 출력은 두 개의 cell detection 네트워크 중 어떤 것이 사용되는지를 결정하며, 이는 서로 다른 augmentation schemes로 훈련되었습니다. "no lines" scheme는 기존의 모든 그래픽 선을 지우고 "full boundaries"는 셀 사이의 중앙 지점에있는 모든 행과 열에 대해 수직 및 수평 경계를 추가합니다. 그래픽 라인이있는 테이블에 특화된 네트워크는 원본 데이터와 "full boundaries" 데이터에 대해 훈련되는 반면 다른 네트워크는 원본 및 모든 augmentation에 대해 훈련됩니다.
 
bounding box output을 논리 구조로 변환하려면 먼저 PDF에서 추출한 텍스트 줄에 cell boxes를 정렬합니다. 그런 다음 각각 수직 및 수평 방향으로 샘플링하여 행과 열의 수를 결정합니다. 행 수를 결정하기 위해 세로 방향으로 샘플링하기 전에 기존 셀과 겹치지 않는선에서 셀의 왼쪽 및 오른쪽 가장자리를 확장하여 누락 된 셀이있는 행을 계산합니다.
사용 가능한 그래픽 라인이있는 경우 감지 된 행 또는 열의 수가 고유 내부 라인 수에 1을 더한 값 이상인지 확인합니다. 그런 다음 셀 상자의 가장자리가 다른 셀과 가장 잘 정렬되는 테이블의 수직 및 수평 정렬을 추론합니다. 행 및 열 위치를 정의하기 위해 셀 경계 상자 좌표에 K-means clustering을 사용합니다. 그런 다음 상자 위치를 기반으로 각 셀에 행과 열 위치를 할당하고 필요한 경우 셀을 병합합니다. 마지막으로 셀 내용이 일반적으로 대문자로 시작한다는 사실을 활용합니다. 따라서 소문자로 시작하는 cell는 over-splitting 일 수 있습니다. 이 셀을 위의 셀과 병합합니다.
또한 몇 가지 post-processing 단계를 수행합니다. 여기에는 detected cell과 겹치지 않는 남은 텍스트 상자에 위치를 할당하는 것이 포함되며 특정 경우 근처에 간격이있을 때 cell을 분할합니다. 테이블에있는 각 셀의 최종 논리 구조를 생성하기 전에 텍스트 상자가 인접한 빈 행 또는 열과 교차 할 때 셀의 행 및 열 범위를 늘립니다. 이는 여러 행 또는 열에 걸쳐있는 계층 적 셀일 가능성이 높습니다. 클러스터링 기반 알고리즘은 각 셀을 순차적으로 선택하는 greedy 또는 exhaustive search method보다 효율적입니다. 또한 많은 단계가 cell 검출 오류에 대해 견고하도록 설계되었습니다.
 
notion image

Experiment

 
notion image
notion image
 
notion image
 
notion image
 

Conclusions

 
  • Global Table Extractor라는 Naming과 달리, 실제 내용은 본인들이 분석한 Sample에 한정된 Post-process 및 hyper-parameter에서의 의존도가 큰 것으로 보임
 
 
Share article