OCR 모델이 섹션 제목을 본문으로 잘못 분류합니다. CRF가 해결책일까요, 아니면 너무 복잡하게 생각하는 걸까요?
My OCR model mislabels section titles as body text. Is a CRF the right fix, or am I overcomplicating it?
핵심 요약
법률 문서의 계층 구조 추출을 위해 OCR 결과의 레이블 오류를 수정할 최적의 방법을 고민 중입니다.
- OCR 레이블 오류 — 제목이 본문으로 잘못 분류되는 문제 발생
- CRF 도입 고려 — 텍스트와 좌표 정보를 활용한 시퀀스 모델링 검토
- 구조적 복잡성 — 문서마다 다른 번호 체계와 정렬 방식의 어려움
- 대안 탐색 — VLM 모델 활용 또는 휴리스틱과 모델의 결합 제안
다들 안녕,
긴 PDF 문서(법률/규정 텍스트, 번호 매겨진 섹션 엄청 많음)에서 계층 구조를 추출하는 작업을 하고 있는데, 본격적으로 시작하기 전에 내 방식이 괜찮은지 피드백 좀 받고 싶어.
지금까지 한 거: PDF 페이지마다 이미지로 렌더링해서 Baidu's DeepSeek-OCR model을 돌렸어. 모델이 감지된 블록마다 바운딩 박스 [x0, y0, x1, y1], 라벨(title, text, list, table, header, footer 등), 그리고 인식된 텍스트를 뱉어내. OCR 품질은 진짜 좋아서 텍스트는 깔끔하게 잘 나와.
문제점: 라벨을 100% 믿을 수가 없어. 지금 문서에서 모든 제목(title)을 추출하고 싶은데, 가끔 제목 요소가 일반 본문(text)으로 분류되는 경우가 있거든.
구체적인 예시:
섹션 계층 구조가 아래와 같다고 치자:
ANNEX I — GENERAL PRINCIPLES AND PROCEDURES
└── TITLE I — FOREIGN CURRENCY INVESTMENT
└── A. Currency distribution
└── 1. Redistribution of reserves
├── (a) Introduction
│ body text
│ list
│ ...
├── (b) Procedure for a normal redistribution of reserves
│ body text
│ list
│ ...
└── (c) Procedure for an ad hoc redistribution of reserves
body text
list
...
논리적으로는 본문이랑 리스트 빼고는 전부 title로 잡혀야 하거든. 근데 모델 출력값은 이래:
label='title' x0=475 y0=157 x1=548 width=73 text='ANNEX I'
label='text' x0=480 y0=229 x1=542 width=62 text='TITLE I'
label='title' x0=334 y0=181 x1=690 width=356 text='GENERAL PRINCIPLES AND PROCEDURES'
label='title' x0=407 y0=368 x1=616 width=209 text='A. Currency distribution'
label='title' x0=408 y0=392 x1=634 width=226 text='1. Redistribution of reserves'
label='title' x0=163 y0=416 x1=304 width=141 text='(a) Introduction'
label='title' x0=163 y0=544 x1=578 width=415 text='(b) Procedure for a normal redistribution of reserves'
label='title' x0=163 y0=219 x1=586 width=423 text='(c) Procedure for an ad hoc redistribution of reserves'
최상위 섹션 마커인 TITLE I가 text로 라벨링 됐고, 나머지는 title로 제대로 분류됐어.

