A Graphical Approach to Document Layout Analysis
GLAM(Graph-based Layout Analysis Model)은 PDF 문서의 레이아웃 분석을 위한 경량 그래프 신경망 모델로, 텍스트 박스를 노드로 구성하여 노드와 엣지 분류를 통해 레이아웃을 추론합니다. DocLayNet과 PubLayNet 데이터셋에서 기존 CV 모델보다 효율적인 성능을 보여주며, 작은 모델 사이즈와 빠른 추론 속도가 강점입니다.
Dec 08, 2023
요약
- DLA(Document Layout Analysis) : 문서 내에서 독립적인 의미 있는 내용들을 감지하고 이러한 항목들을 적절한 범주(text, title, table, figure 등)로 분류하는 작업
- PDF로 구성된 문서에 적용하는 기존 DLA task의 경우 문서를 이미지로만 인식하여 처리했지만, 본 논문에서는 PDF parser 등으로 얻을 수 있는 여러 metadata(text, font, color 등)를 활용하여 PDF 문서를 graph 형태로 표현하고, DLA task를 graph classification 및 segmentation으로 구성하여 처리하는 방식을 소개
- GLAM(Graph-based Layout Analysis Model)
- 400만개의 parameter를 갖는 GLAM이 DocLayNet dataset의 11개의 class 중에서 5개의 class의 성능이 기존 1억 4천만개의 parameter를 갖는 CV 모델의 성능을 능가함
Introduction
- 제안하는 방식
- PDF parser를 통해 각 텍스트들의 bbox, font, color 등의 metadata를 가져옴
- CV model들을 이용하여 visual적으로 나누어진 여러 항목들(paragraph, figure, table 등)을 분류
- 기존 DLA 모델의 경우, 실제 GT와 얼마나 bbox가 일치하는지에 대한 mAP만을 metric으로 사용하여 각 검출 항목들이 실제로 어떤 의미적인 관계들을 가지는지에 대한 측정은 하지 않음
- 해결 방법으로 layout을 graph의 형태로 표현하여 궁극적으로는 node classification 문제와 graph segmentation problem 문제로 취급하여 해결하는 동시에 기존 모델들의 측정 방식인 mAP 또한 향상시키고 경량화 및 속도의 이점 또한 챙기도록 함
Related Work
- Document Layout Analysis
- information retrieval
- table extraction
- key-value extraction
- Object Detection-Based Methods in VRDU
- VRDU : Visually Rich Document Understanding
- OCR + LayoutLM, Multimodal, Donut
- Graph Neural Networks in Document Understanding
- table understanding
Methodology
- Graph Generation
- PDF parser를 이용해 모든 text box를 추출
- bbox 위치, text 길이, 숫자 문자의 비율, font 유형, font 크기 및 기타 79가지 항목들을 포함
- 각 text box를 node로하여 그래프를 구성
- 각 node들을 연결하는 edge를 구성
- 양방향 edge : 각 node와 가장 이웃한 edge를 찾아 연결
- 추가적인 edge : 문서를 읽을 때 읽는 순서를 고려하여 추가적으로 node를 연결 (tblr 등)
- 각 edge에는 방향 및 거리 정보를 포함하는 고유한 벡터 표현이 포함되어 있음
- Graph-based Layout Analysis Model
- GLAM = Graph Network + Computer Vision Feature Extraction
- Graph Network
- Graph Network = GCN + 2-head(for node classification & edge classification)
- Node feature → GCN → Segment class(title, figure, text, etc…) → Node embedding
- Segment class + Edge feature → Edge embedding
- Loss
- node classification 및 edge classification의 cross entropy의 합
- α=4
- Inferring
- 각 node(text box)를 classification
- 각 node의 edge들이 positive인지 negative인지 classification 후 negative edge는 제거
- 각 node들과 남아있는 edge로 segment를 구성하여 clustering 및 classification을 통해 layout을 구성
- Computer Vision Feature Extraction
- PDF parser로 생성된 metadata는 시각적인 정보를 가지지 못하는 한계가 존재
- 배경색, 선, 점 등의 시각적인 정보를 포함하기 위하여 해당 정보를 각 node들에 추가하여 시각적인 특성을 확장
- 각 bbox에 해당하는 feature + 각 metadata에 해당하는 feature + global context를 파악하기 위한 feature를 추출하기 위해 attention 기반의 간단한 encoder를 적용하여 graph의 node와 연결
- 해당 feature extraction process는 추가적인 node를 생성하지 않음, 즉 각 node가 시각적인 정보를 참고하는 정도로만 하게 하여 시각적인 정보의 우선순위가 node들의 metadata 특성의 우선순위보다 높지 않도록 제한
Experiments
- Datasets
- PubLayNet
- 358,353 biomedical research articles in PDF format
- text, title, list, figure, and table
- train : 335K docs, val : 11K docs, test : 11K docs
- DocLayNet
- financial reports, manuals, scientific articles, laws & regulations, patents, and government tenders
- caption, footnote, formula, list-item, page footer, page header, picture, section header, table, text, and title
- train : 69,375 docs, val : 6,489 docs, test : 4,999 docs
- SOTA : YOLOv5x6
- Data Pre-processing
- text box 추출 → bbox 위치, text 내용, 글꼴 등
- text box로 node를 구성한 뒤에 edge로 연결
- dataset의 annotation에 따라 각 node들에 class를 지정하고 같은 class끼리 연결되어 있는 edge는 positive, 다른 class끼리 연결되어 있는 edge는 negative로 지정
- figure, table 등의 visual적인 요소들은 학습에서 제외 (Why???)
- Results
- PDF parser에서는 image 정보는 가져오지 못하기 때문에 이미지에 대한 성능은 많이 떨어지는 것을 확인할 수 있음
- PubLayNet
- GLAM에서 예측한 bbox와 GT의 bbox의 boundary 위치가 약간 다름
- GLAM은 text box를 기반으로 clustering을 통해 bbox를 구하기 때문에 padding이 거의 존재하지 않음
- metric에서의 성능 손실을 감수하면서도 SOTA 성능의 약 88% 달성
- 종합적으로 title이나 header와 같은 작은 text box 기반의 class에서 강점이 있음 → detection 기반의 model은 작은 text box를 검출하는데 어려움이 있음
DocLayNet
PubLayNet
- CV Feature Ablation
- GLAM network에서 CV feature를 제외한 GNN으로만 성능을 평가
- 전반적으로 성능 저하가 발생
- DocLayNet의 경우 시각적으로 복잡한 데이터들(글머리 기호, 선, 색상 배경 등)이 많이 포함되어있어 기본적인 text box만으로 성능을 평가했을 때 성능 저하가 더 많이 발생
- PubLayNet의 경우는 GT와의 bbox 차이로 인한 성능 제한 정도만 발견되는데 이는 dataset을 구성하는 문서들이 연구 논문 즉, 시각적으로 단조로운 문서이기 때문에 CV feature를 제거해도 크게 성능 저하가 발생하지 않음 → GLAM의 GNN이 논문과 같이 시각적으로 단조로운 문서에 대해서는 성능을 잘 발휘할 수 있을 것으로 예상
- Model Size and Efficiency
- model size와 inference time에 관해서 매우 효율적인 지표를 보여줌
- (근데 YOLO랑 앙상블하면 어떻게 되는거지?)
Limitations
- 문서 parsing 성능에 매우 의존적임
- 우리 task에 비추어 보았을 때 OCR의 detection 성능에 영향을 많이 받음
- 문서의 text에 대한 실제 의미를 고려하지 않음
- OCR의 recognition 과정을 추가하여 또 다른 방향으로 방법을 고려할 수 있을 듯
- figure, picture 등의 이미지 정보를 고려하지 않음
- YOLO 등의 model과 앙상블 등을 통해 개선하는 것으로 제시(했지만 그러면 model size 및 inference time에 대한 이점은 어떻게 할 것인가에 대한 내용이 없음)
Conclusion
- PDF 문서에 대한 layout을 분석할 수 있는 GNN 기반의 network GLAM
- 각 text box들을 node로한 graph를 생성하여 node와 edge에 대한 classification 및 clustering을 통해 layout을 추론
- 기존에 비해 작은 model size와 빠른 inference time의 이점을 가짐
- YOLO와 같은 detection model과 앙상블하면 더 나은 성능을 보여줄 수 있다고 기대함
Share article