문서 이해와 OCR 활용 : Document Layout Analysis
문서 이해(Document Understanding)는 문서 속에 있는 텍스트뿐만 아니라 문서의 전체적인 구조와 구성 요소까지 파악하는 과정을 말한다. 전통적인 OCR(Optical Character Recognition) 기술은 이미지에서 단순히 텍스트를 인식하는 데 중점을 두었지만, 실생활에서 사용하는 문서들은 복잡한 레이아웃과 다양한 요소로 구성되어 있기 때문에 더욱 정교한 분석이 필요하다. 이를 효과적으로 처리하기 위해 Document Layout Analysis(문서 레이아웃 분석) 기술이 중요해졌다.
1. OCR의 초창기와 한계
초기의 OCR 기술은 흰 바탕에 검정 글씨가 쓰인 단순한 문서에서 글자를 추출하는 데 사용되었다. 이 방식은 비교적 간단한 작업이었으며, 글자 자체를 인식하는 데는 큰 문제가 없었다. 하지만 시간이 지나면서 문서는 더 복잡한 구조를 갖추게 되었고, 글자뿐만 아니라 표, 그래프, 이미지 등 다양한 요소들이 포함되기 시작했다. 이런 복잡한 문서들을 효과적으로 처리하려면 문서 전체의 레이아웃을 이해하는 능력이 필요하다.
2. 주가 보고서 예시를 통한 문서 분석
주가 보고서와 같은 문서를 예로 들어보자. OCR 시스템을 사용해 이 문서를 분석하는 과정은 크게 두 가지 단계로 이루어진다.
- Detection: 문서 내에서 텍스트가 위치한 영역을 감지하고, 해당 영역을 Bounding Box로 감싼다.
- Recognition: 각 Bounding Box 안에 있는 글자를 인식하고 이를 텍스트로 변환한다.
이 과정까지는 큰 문제가 없다. 그러나 텍스트를 문서에서 일렬로 나열하는 Serialize 과정에서 문제가 발생한다. 단순히 좌상단에서 우하단으로 순차적으로 텍스트를 읽어들이면, 문서 내의 구성 요소를 정확하게 반영하지 못하고 표나 그래프 등의 레이아웃이 망가진다. 특히 표가 포함된 문서에서는 표가 깨져서 분석 결과가 엉망이 될 수 있다.
3. Document Layout Analysis(문서 레이아웃 분석)의 필요성
이런 문제를 해결하기 위해서는 Document Layout Analysis(문서 레이아웃 분석)가 필요하다. 이 기술은 문서의 전체적인 구조를 파악하고, 표, 그래프, 이미지, 텍스트 박스 등 다양한 구성 요소를 구분하여 각각을 적절히 처리하는 데 중점을 둔다.
Document Layout Analysis는 문서 내에서 각 구성 요소의 역할을 파악하고 이를 구획하는 작업을 수행한다. 예를 들어, 표가 포함된 문서에서는 표를 하나의 이미지로 인식하는 것이 아니라 각 셀을 구분하여 개별적으로 인식한다. 이렇게 구성 요소를 구분하고 레이아웃을 분석함으로써 표, 그래프 등의 레이아웃이 깨지지 않도록 하며, 텍스트는 텍스트대로, 표는 표대로 정확하게 처리할 수 있다.
이 과정에서 표를 마크다운 문법으로 변환하는 등 텍스트와 표의 구분을 명확하게 하여 사용자가 문서의 내용을 더 쉽게 이해할 수 있도록 한다. 이렇게 레이아웃을 분석하여 문서의 복잡한 구조를 제대로 반영하면, 문서의 전체적인 이해도와 정확도가 크게 향상된다.
OCR + 일반 객체 분석의 영역 클래스 분류
문서 분석에서 OCR(Optical Character Recognition) 기술은 단순한 글자 인식을 넘어, 문서에 포함된 다양한 구성 요소들을 인식하는 단계로 발전해왔다. 이러한 발전은 문서 내 텍스트 외에 표, 제목, 그림 등 여러 객체를 인식하고 분류할 수 있게 되면서 이루어졌다.
이미지를 보면, 기존 OCR 기술에서는 단순히 텍스트만을 인식하여 '단일 클래스 예측'을 했었다. 하지만 이제는 더 발전된 기술을 통해 문서 내 여러 영역에 대해 객체 탐지(Object Detection)를 수행하며, 각 영역을 다르게 분류한다.
다양한 클래스 영역 분류
이미지에서 볼 수 있듯이, 문서의 구성 요소를 다섯 가지 클래스로 구분하고 있다:
- Text (텍스트) - 문서 내 일반 텍스트 영역을 초록색 박스로 표시한다.
- Title (제목) - 문서의 제목은 빨간색 박스로 강조된다.
- Table (표) - 표의 영역은 노란색 박스로 구분하여 인식된다.
- Figure (그림) - 그림은 파란색 박스로 구분된다.
- List (목록) - 목록은 하늘색 박스로 나눠져 있다.
영역별 라벨링 및 처리 방식
이제는 문서 내에서 단순히 텍스트를 인식하는 것을 넘어서, 이러한 다양한 객체 탐지가 가능하다. 이는 문서 내 개별 글자 간의 간격이나 작은 구분을 탐지하는 것이 아니라, 문서의 레이아웃을 기반으로 더 큰 단위의 레이아웃 단위로 분류하고 라벨링하는 방식이다.
각 객체는 그 기능과 역할에 맞게 라벨링되며, 이렇게 분류된 객체들은 문서의 레이아웃을 보존한 채로 데이터로 변환된다. 예를 들어 표나 목록은 그 형식을 유지하면서 추출되며, 사용자는 이 정보를 더욱 정확하게 처리할 수 있다.
Vision Question Answering(VQA)란?
Vision Question Answering(VQA)는 이미지와 텍스트를 동시에 입력으로 받아, 이미지에 기반한 질문에 답변을 제공하는 멀티모달(Multi-modal) 인공지능 모델이다. 이는 비정형 데이터(이미지와 같은 시각적 정보)와 구조화된 텍스트 데이터를 결합하여 더 나은 질문 응답 시스템을 구축하는데 중점을 둔다.
VQA 시스템은 주어진 이미지를 분석한 후, 해당 이미지에 대한 질문을 이해하고 그에 적합한 답변을 생성하는 과정으로 구성된다. 이 기술은 사진 속 사물, 사람, 배경 등 다양한 정보를 종합적으로 처리하여, 사람처럼 이미지에 대해 자연스럽게 질문하고 답변하는 능력을 지닌 AI 모델을 구현하는 것을 목표로 한다.
멀티모달 학습의 장점
VQA는 텍스트뿐만 아니라 이미지와 같은 비정형 데이터도 함께 다루기 때문에 멀티모달 태스크로 분류된다. 이러한 멀티모달 학습의 장점은, 한 가지 형태의 데이터만 사용하는 것보다 다양한 정보(텍스트, 이미지)를 결합함으로써 더 깊고 풍부한 이해를 바탕으로 한 응답을 제공할 수 있다는 점이다.
VQA는 다양한 응용 분야에서 사용할 수 있다. 예를 들어, 의료 이미지 분석, 자율 주행 차량의 이미지 인식, 사진을 통한 자동 질문 생성 등에서 유용하게 활용될 수 있다. 인간의 시각적 이해 능력을 모방한 AI 시스템을 구축하는데 있어 VQA는 중요한 기술적 도전과제로 자리잡고 있다.
끝.
감사힙니다.
'AI Naver boost camp > [Wekk 09] Data Centric' 카테고리의 다른 글
[05] - OCR 의 데이터 포맷 UFO (3) | 2024.10.30 |
---|---|
[02] - OCR Tasks (8) | 2024.10.30 |
[01] Data-Centric AI (10) | 2024.10.28 |
댓글