Document Parsing이란 무엇인가: 문서의 뼈대를 데이터로 옮기는 구조화 완전 정리
Document Parsing이란, 문서를 이루는 제목과 본문, 표, 목록, 그림 같은 구성 요소를 하나씩 판별하고 그것들이 이루는 위계와 읽는 순서까지 복원해 기계가 그대로 다룰 수 있는 구조 데이터로 바꾸는 작업입니다.
Document Parsing이 필요한 이유
문서를 텍스트로 만들면 뼈대가 사라집니다.
생성형 AI를 도입한 조직에서 문서 자산을 모델에 연결할 때 가장 흔히 하는 일은 파일에서 텍스트를 뽑아 넣는 것입니다. 빠르고 간단합니다. 문제는 그 순간 문서가 평평해진다는 데 있습니다.
제목이었던 문장과 본문이 구분되지 않고, 표는 셀 값의 나열로 흩어지며, 각주가 본문 한가운데로 끼어듭니다. 반납 절차를 설명하는 지침에서 국비와 도비, 잔액과 이자로 갈라진 다층 표를 문장으로 펼치면 어떤 계정이 어느 조건에 해당하는지 알 수 없게 됩니다. 사람이 문서를 이해할 때 쓰는 단서의 상당 부분은 글자가 아니라 배치와 위계에 있는데, 텍스트만 뽑으면 그것이 전부 버려집니다.
Document Parsing은 이 뼈대를 함께 옮기는 작업입니다. 검색과 생성의 품질이 모델이 아니라 이 단계에서 갈리는 이유이기도 합니다.
Document Parsing의 정확한 정의: OCR과 무엇이 다른가
OCR과 Document Parsing, 세 가지 축의 차이
첫째, 대상이 다릅니다. OCR은 이미지 위의 문자를 대상으로 삼습니다. Document Parsing은 페이지를 이루는 구성 요소 전체를 대상으로 삼습니다. 실제 구현에서 판별하는 요소를 나열하면 제목과 절 제목, 본문, 표, 그림, 도표, 수식, 목록 항목, 캡션, 머리말, 꼬리말, 각주, 흐름도까지 이릅니다.
둘째, 목표가 다릅니다. OCR의 목표는 적힌 글자를 정확히 옮기는 것입니다. Document Parsing의 목표는 문서와 같은 모양의 데이터를 만들어 내는 것입니다. 그래서 결과물도 다릅니다. 앞의 방식은 문자열을 내놓고, 뒤의 방식은 위계가 살아 있는 마크업이나 구조화 데이터를 내놓습니다.
셋째, 성과지표가 다릅니다. OCR은 문자 단위 정확도로 측정합니다. Document Parsing은 구성 요소를 빠짐없이 찾아냈는지, 각 요소의 위치가 맞는지, 표의 구조가 원본과 일치하는지를 나누어 측정합니다. 한 공공 문서 평가에서는 평가 요소 302개를 전부 검출해 검출 정확도 100%를 기록했고 위치 정확도도 100%였지만, 표 구조 유사도는 79.18%에 머물렀습니다. 요소를 찾는 일과 그 내부를 복원하는 일이 서로 다른 난이도임을 보여 주는 수치입니다.
두 기술은 대체 관계가 아닙니다. 문자 인식이 부정확하면 구조를 아무리 잘 복원해도 내용이 틀립니다. 인식 위에 구조화를 올리는 순서가 맞습니다.
업무에 투입할 수 있는 Document Parsing의 6가지 조건
실제 운영에 들어가는 Document Parsing의 6가지 조건
첫째, 요소를 빠짐없이 찾아야 합니다. 하나라도 놓치면 그 부분은 이후 검색과 활용에서 존재하지 않는 내용이 됩니다. 검출 정확도는 표 복원 정확도와 나누어 확인하시기 바랍니다.
둘째, 읽는 순서를 정확히 정해야 합니다. 다단으로 편집된 문서나 표 안에 표가 들어간 구조에서는 사람도 순서를 헷갈립니다. 순서가 어긋나면 문장이 뒤섞여 의미가 달라집니다.
셋째, 표를 구조 그대로 옮겨야 합니다. 병합된 셀과 다층 헤더가 살아 있어야 값이 어느 항목에 속하는지 확인할 수 있습니다. 이 조건은 별도의 지표로 측정해야 합니다.
넷째, 출력 형식을 여러 개 제공해야 합니다. 검색과 생성에는 마크업 형태가 편하고, 업무 시스템 입력에는 구조화 데이터가 맞으며, 화면 표시에는 또 다른 형식이 필요합니다. 한 번 분석해 여러 산출물을 만들어 두면 이후 활용 방식이 바뀌어도 원본을 다시 처리하지 않아도 됩니다.
다섯째, 다양한 형식을 원본 그대로 받아야 합니다. 실제 문서 자산에는 PDF와 이미지만 있지 않습니다. 한글 워드프로세서 문서와 오피스 문서, 스프레드시트, 텍스트 파일이 함께 쌓여 있습니다. 변환 과정에서 구조가 손실되면 회복할 방법이 없습니다.
여섯째, 각 요소의 위치를 함께 돌려주어야 합니다. 구조화된 결과가 원본 어디에서 나왔는지 확인할 수 없으면 검수도 근거 제시도 불가능해집니다.
Document Parsing의 실제 적용 방법
산출물을 먼저 정합니다
설계의 첫 결정은 무엇을 만들어 낼지입니다. 검색에 쓸 것인지, 업무 시스템에 넣을 것인지, 화면에 보여 줄 것인지에 따라 필요한 형식이 달라지기 때문입니다.
실무에서 자주 쓰는 조합은 세 가지를 함께 생성해 두는 방식입니다. 위계가 표현되는 마크업 형태 하나, 프로그램이 다루기 좋은 구조화 데이터 하나, 표를 정확히 표현할 수 있는 형태 하나입니다. 한 광역 지방자치단체의 구축 사례에서도 텍스트와 표, 그림을 나눈 뒤 여러 형식과 조각, 키워드를 함께 만들어 지식 저장소에 적재하는 방식으로 설계되었습니다.
요소 판별과 내용 인식을 나눕니다
파이프라인을 두 단계로 나누면 개선이 훨씬 수월합니다. 먼저 페이지에서 요소의 종류와 경계, 읽는 순서를 판별하고, 그다음 각 요소의 내용을 인식합니다.
이렇게 나누면 문제가 생겼을 때 원인을 좁힐 수 있습니다. 표가 통째로 빠졌다면 요소 판별의 문제이고, 표는 잡혔는데 값이 어긋난다면 내용 인식의 문제입니다. 하나로 묶인 처리에서는 이 구분이 되지 않아 개선 방향을 잡기 어렵습니다.
성능을 항목별로 나누어 봅니다
Document Parsing의 성능을 하나의 숫자로 요약하면 실제 상태가 가려집니다. 요소 검출과 위치 정확도, 텍스트 인식, 표 구조 복원, 그림 검출을 각각 확인하시기 바랍니다.
실제 평가 사례를 보면 이 값들이 서로 다르게 움직입니다. 한 공공 문서군에서는 요소 검출과 위치 정확도, 그림 검출이 모두 100%였고 텍스트 인식이 98.8%였지만 표 구조 복원은 79.18%였습니다. 다른 공공 문서군에서는 요소 검출 100%, 본문 텍스트 99.2%에 표 구조 복원 86%가 나왔고, 신고 서식을 대상으로 한 검증에서는 표 구조 복원이 99% 이상으로 확인되었습니다. 문서 성격에 따라 어느 항목이 발목을 잡는지가 달라진다는 뜻입니다.
국내 환경에서의 Document Parsing
국내 공공과 금융의 문서 자산은 한글 워드프로세서 형식으로 쌓여 있는 비중이 큽니다. 이 형식을 원본 그대로 처리할 수 있는지가 첫 관문이고, 다른 형식으로 변환하는 과정에서 표의 병합 정보가 손실되면 뒤에서 회복할 수 없습니다.
문서의 구성도 조건이 됩니다. 공문과 매뉴얼, 법령, 보고서가 한 저장소에 섞여 있고 각각 위계 구조가 다릅니다. 관공서 서식에는 다층 표와 원문자 항목번호, 작성 방법 안내 문장이 표 안에 함께 들어갑니다. 표의 한 칸이 데이터가 아니라 안내인 경우를 구분하지 못하면 구조화 결과가 오염됩니다.
여기에 더해 망분리 환경에서는 문서 변환부터 구조화까지 전 과정이 내부망에서 수행되어야 합니다. 외부 변환 서비스를 호출하는 구성은 이 지점에서 검토 대상에서 빠집니다.
자주 묻는 질문
권하지 않습니다. 텍스트만 추출하면 제목과 본문의 구분, 표의 구조, 각주와 본문의 관계가 사라집니다. 검색 품질이 낮은 원인이 대개 여기에 있습니다.
위계가 표현되는 마크업 형태와 프로그램이 다루기 좋은 구조화 데이터, 표를 정확히 표현하는 형태를 함께 생성할 수 있습니다. 용도에 따라 나누어 받으시는 편이 좋습니다.
제목과 절 제목, 본문, 표, 그림, 도표, 수식, 목록 항목, 캡션, 머리말, 꼬리말, 각주, 흐름도까지 구분합니다. 문서 성격에 따라 필요한 요소만 골라 쓰실 수 있습니다.
하나의 숫자가 아니라 항목별로 확인하시기 바랍니다. 요소 검출과 위치 정확도, 텍스트 인식, 표 구조 복원이 문서 성격에 따라 서로 다르게 움직입니다.
가능합니다. 다만 다른 형식으로 변환하는 과정에서 표 구조가 손실되기 쉬우므로, 원본 형식을 그대로 처리할 수 있는지 확인하시기 바랍니다.
구조화 결과가 있으면 이후 작업이 훨씬 수월해집니다. 다만 조각으로 나누고 메타데이터를 붙이는 단계가 따로 필요하므로, 전처리 설계를 함께 보시는 편이 좋습니다.
가능합니다. 문서 변환부터 구조화까지 전 과정을 내부망에서 수행하는 구성이 가능합니다.