
금융기관과 기업은 매일 수천 개의 문서를 처리합니다. 대출 신청서, 신분증, 소득 증명서, 계약서, 청구서, 송장 등입니다. 과거에는 이들 문서를 모두 인간이 수동으로 검토했습니다. 문서를 읽고, 필요한 정보를 추출하고, 다른 시스템에 입력합니다. 이는 매우 시간이 많이 걸리고, 오류도 발생하기 쉽습니다. 또한 문서의 유형이 매우 다양합니다. 같은 대출 신청서라도 은행마다 형식이 다르고, 같은 신분증이라도 국가마다 다릅니다. 따라서 자동화 시스템도 이러한 다양성을 수용해야 합니다.
또한 문서의 품질도 다양합니다. 선명한 문서도 있지만 스캔이 제대로 되지 않아 흐릿한 문서도 있고, 필기로 작성된 문서도 있습니다. 따라서 문서 처리 자동화는 단순한 기술이 아니라 복잡한 시스템입니다. OCR(광학문자인식), NLP(자연언어처리), 규칙 기반 처리 등 여러 기술이 통합되어야 합니다. 문서 처리 자동화의 복잡성을 인식하고 체계적으로 설계하면, 조직의 생산성이 획기적으로 향상될 것으로 예상됩니다.
문서 처리 자동화 시스템은 이들 구성요소가 통합된 형태를 가져야 합니다. 각 단계가 체계적으로 설계되고 연계되면, 문서 처리의 전체 프로세스를 효과적으로 자동화할 수 있을 것으로 기대됩니다.

문서 자동화의 첫 단계는 문서 수집입니다. 문서는 여러 채널에서 들어옵니다. 스캔 장비를 통한 물리적 문서, 이메일 첨부, 웹 업로드, 모바일 앱을 통한 사진 촬영 등입니다. 각 채널의 문서는 서로 다른 형식과 품질을 가집니다. 따라서 수집된 문서를 정규화(normalization)해야 합니다. 회전된 문서를 정정하고, 다양한 이미지 포맷(PNG, JPG, PDF)을 통일하고, 해상도를 표준화합니다.
또한 이미지 품질을 개선합니다. 흐릿한 이미지는 선명하게 하고, 어두운 이미지는 밝게 하고, 노이즈(스캔 얼룩, 배경 잡음)를 제거합니다. 이미지 개선 기법으로는 명도 대비 조정, 노이즈 제거 필터, 이미지 초해상화(super-resolution) 등이 있습니다. 또한 문서의 종류를 자동으로 분류합니다. "이 문서는 신분증인가, 아니면 대출 신청서인가"를 자동으로 판단합니다. 이를 통해 다음 단계에서 문서 유형별 맞춤형 처리를 할 수 있습니다. 이미지 전처리의 품질이 후속 단계의 정확도를 크게 좌우할 것으로 예상됩니다.

문서 이미지로부터 정보를 추출하는 단계입니다. 첫째, OCR(광학문자인식)로 이미지의 텍스트를 인식합니다. 최신 OCR 기술은 필기와 인쇄를 모두 인식할 수 있고, 테이블 구조도 이해합니다. 그러나 OCR도 완벽하지 않습니다. 특히 저품질 이미지에서는 오류가 발생합니다. 따라서 OCR 결과를 검증하는 단계가 필요합니다. 둘째, NLP(자연언어처리)로 의미를 파악합니다. OCR로 추출한 텍스트는 단순한 문자열입니다. 이를 의미 있는 정보로 변환하려면 NLP가 필요합니다. "이름", "주소", "전화번호" 같은 엔티티(entity)를 식별하고, 그들의 의미를 파악합니다.
셋째, 규칙 기반 추출입니다. 문서 유형별로 정해진 규칙을 적용합니다. "신분증에서는 첫 번째 줄이 이름, 두 번째 줄이 주민등록번호"라는 규칙입니다. 이 세 가지 기법을 조합하면 대부분의 문서에서 필요한 정보를 추출할 수 있습니다. 그러나 특수한 문서나 예외 상황에서는 추가 처리가 필요할 수 있습니다. 다층적 추출 방법의 조합으로 대부분의 문서에서 정확한 정보 추출이 가능해질 것으로 예상됩니다.

추출된 정보가 정확한지 검증하는 단계입니다. 첫째, 규칙 기반 검증입니다. "주민등록번호는 13자리 숫자여야 한다", "전화번호는 10-11자리 숫자여야 한다" 같은 규칙을 적용합니다. 둘째, 논리적 검증입니다. "생년월일이 미래 날짜면 오류다", "발급일이 만료일보다 이후면 오류다" 같은 논리를 적용합니다. 셋째, 외부 데이터베이스와의 비교입니다. "추출한 주민등록번호가 실제로 존재하는 사람인가"를 확인합니다.
금융기관이면 신용정보기구의 데이터와 비교합니다. 또한 신뢰도(confidence score)를 산정합니다. "이 정보는 95% 신뢰할 수 있다", "이 정보는 60% 신뢰도만 있다"는 식으로 점수를 부여합니다. 신뢰도가 낮은 정보는 인간이 수동으로 검토합니다. 다층적 검증으로 추출 오류가 크게 줄어들 것으로 예상됩니다.

모든 문서를 같은 방식으로 처리할 수 없습니다. 문서 유형에 따라 처리 방식이 달라집니다. 신분증 처리 프로세스는 "1. 신분증 이미지 수집, 2. OCR로 텍스트 추출, 3. NLP로 이름, 주민등록번호, 주소 식별, 4. 신뢰도 평가, 5. 위조 여부 검증"의 순서로 진행됩니다. 대출 신청서 처리는 "1. 신청서 이미지 수집, 2. 테이블 인식, 3. 각 항목별 텍스트 추출, 4. 데이터 표준화, 5. 논리적 검증, 6. 신용 평가 시스템에 데이터 전달"의 순서로 진행됩니다.
각 문서 유형마다 처리 프로세스를 상세히 설계하고 자동화합니다. 또한 예외 상황도 처리합니다. "문서가 손상되었다", "정보가 누락되었다", "이해할 수 없는 언어다" 같은 상황입니다. 이러한 경우 인간에게 에스컬레이션하고, 수동 처리합니다. 문서 유형별 맞춤형 설계로 각 문서 유형의 처리 효율성이 극대화될 것으로 예상됩니다.

문서 처리 자동화 시스템도 지속적인 모니터링과 개선이 필요합니다. 첫째, 처리 정확도를 추적합니다. "OCR 정확도는 몇 %인가", "정보 추출 정확도는 몇 %인가", "검증 오류는 몇 건인가"를 정기적으로 측정합니다. 둘째, 오류 분석입니다. 발생한 오류를 분류합니다. "OCR 오류", "NLP 오류", "논리적 검증 오류"로 분류하고, 각 오류의 원인을 파악합니다.
셋째, 시스템 개선입니다. 오류 분석 결과를 바탕으로 시스템을 개선합니다. "특정 폰트를 잘못 인식한다"면, OCR 모델을 해당 폰트로 재학습시킵니다. "특정 형식의 문서에서 오류가 많다"면, 그 형식에 맞춘 처리 규칙을 추가합니다. 넷째, 사용자 피드백 수집입니다. 인간이 수동으로 검토한 부분에서 피드백을 수집하고, 이를 시스템 개선에 반영합니다. 지속적인 품질 관리로 시스템의 정확도가 지속적으로 향상될 것으로 예상됩니다.
