커스텀 분할기
커스텀 분할기는 각 논리 문서를 식별하여 복합 문서(여러 클래스로 구성된 문서)를 여러 단일 클래스 문서로 분할하는 데 사용하도록 설계되었습니다. 예를 들어 주택담보대출 패키지에는 신청서, 소득 확인, 사진이 부착된 신분증과 같은 여러 클래스가 포함되어 있습니다. 커스텀 분할기 프로세서를 사용하기 위해 자체 문서 및 커스텀 클래스를 사용하여 처음부터 학습합니다.
분할기 설명 및 사용
문서에 특히 적합하고 데이터로 학습 및 평가되는 커스텀 분할기를 만듭니다. 이 프로세서는 사용자가 정의한 클래스 집합에서 문서 클래스를 식별합니다. 그런 다음 이 학습된 프로세서를 프로덕션 문서에 사용할 수 있습니다. 일반적으로 여러 유형의 논리 문서로 구성된 파일에 커스텀 분할기를 사용한 다음, 각 파일의 클래스 ID를 사용하여 적절한 추출 프로세서로 문서를 전달하여 항목을 추출합니다.
ML 모델은 완벽하지 않고 일정한 오류율이 있으며 분할 오류가 일반적으로 심각한 문제가 되므로(잘못된 분할은 두 개의 문서가 잘못되고 추출 오류가 발생함) 권장사항은 분할 예측 후 실제 파일 분할 전에 항상 사람이 검토하는 단계를 거치는 것입니다. 비즈니스 요구사항에 따라 항상 사람이 검토하지 않고 다른 방법을 사용할 수도 있습니다.
- 예측의 신뢰도 점수를 사용하여 사람의 검토를 우회할지 여부를 결정합니다(충분히 높은 경우). 해당 신뢰도 점수 임곗값은 지정된 신뢰도 점수의 오류율에 대한 기록 데이터를 기반으로 결정되어야 합니다. 이는 오류에 대한 비즈니스 프로세스 허용 범위와 사람의 검토를 우회해야 하는 요구사항을 기반으로 하는 비즈니스 결정이어야 합니다.
- 일부 사용 사례에서는 예측된 클래스에 따라 분할 문서를 적절한 추출기로 직접 라우팅할 수 있습니다. 그런 다음 추출이 완료되지 않았거나 신뢰도 점수가 낮으면 분할 문서를 격리하고 원본 복합 문서와 분할 결정을 트리거한 후 검토합니다. 여기에는 다소 복잡한 워크플로 요구사항이 있습니다
Google Cloud 콘솔에서 커스텀 분할기 만들기
이 빠른 시작 가이드에서는 Document AI를 사용하여 조달 문서를 분할하고 분류하는 커스텀 분할기를 만들고 학습하는 방법에 대해 설명합니다. 대부분의 문서가 준비되었으므로 커스텀 분할기를 만드는 데 집중할 수 있습니다.
커스텀 분할기를 만들고 사용하는 일반적인 워크플로는 다음과 같습니다.
- Document AI에서 커스텀 분할기를 만듭니다.
- 비어 있는 Cloud Storage 버킷을 사용하여 데이터 세트를 만듭니다.
- 프로세서 스키마를 정의하고 만듭니다(클래스).
- 문서를 가져옵니다.
- 문서를 학습 및 테스트 세트에 할당합니다.
- Document AI 또는 라벨 지정 태스크를 사용하여 문서에 수동으로 주석을 추가합니다.
- 프로세서를 학습시킵니다.
- 프로세서를 평가합니다.
- 프로세서를 배포합니다.
- 프로세서를 테스트합니다.
- 문서에 프로세서를 사용합니다.
문서가 클래스별로 별도의 폴더에 있는 경우 가져오기 시 클래스를 지정하여 6단계를 건너뛸 수 있습니다.
Google Cloud 콘솔에서 이 태스크에 대한 단계별 안내를 직접 수행하려면 둘러보기를 클릭합니다.
시작하기 전에
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Document AI, Cloud Storage APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Document AI, Cloud Storage APIs.
프로세서 만들기
Google Cloud 콘솔의 Document AI 섹션에서 Workbench 페이지로 이동합니다.
커스텀 문서 추출기의 경우
프로세서 만들기 를 선택합니다.프로세서 만들기 메뉴에서 프로세서 이름(예:
my-custom-document-splitter
)을 입력합니다.가장 가까운 리전을 선택합니다.
만들기를 선택합니다. 프로세서 세부정보 탭이 표시됩니다.
데이터 세트 구성
새 프로세서를 학습시키려면 학습 및 테스트 데이터로 데이터 세트를 만들어야 프로세서가 분할 및 분류할 문서를 식별할 수 있습니다.
이 데이터 세트에는 새 위치가 필요합니다. 이 위치는 빈 Cloud Storage 버킷 또는 폴더일 수도 있고 Google 관리(내부) 위치를 허용할 수 있습니다.
- Google 관리 스토리지를 원하는 경우 해당 옵션을 선택합니다.
- 고객 관리 암호화 키CMEK)를 사용하기 위해 자체 스토리지를 사용하려면 자체 스토리지 위치 지정을 선택하고 이후 절차를 따릅니다.
데이터 세트를 위한 Cloud Storage 버킷 만들기
프로세서의
학습 탭으로 이동합니다.데이터 세트 위치 설정을 선택합니다. 빈 Cloud Storage 버킷 또는 폴더를 선택하거나 만들라는 메시지가 표시됩니다.
찾아보기를 선택하여 폴더 선택을 엽니다.
새 버킷 만들기 아이콘을 클릭하고 표시되는 메시지에 따라 새 버킷을 만듭니다. 버킷을 만들면 해당 버킷에 대한 폴더 선택 페이지가 나타납니다. Cloud Storage 버킷 만들기에 대한 자세한 내용은 Cloud Storage 버킷을 참조하세요.
버킷의 폴더 선택 페이지의 대화상자 하단에 있는 버튼 선택을 선택합니다.
대상 경로에 선택한 버킷 이름이 입력되어 있는지 확인합니다. 데이터 세트 만들기를 선택합니다. 데이터 세트를 만드는 데 몇 분 정도 걸릴 수 있습니다.
프로세서 스키마 정의
문서를 데이터 세트로 가져오기 전이나 가져온 후에 프로세서 스키마를 만들 수 있습니다. 스키마는 문서에 주석을 추가하는 데 사용할 라벨을 제공합니다.
학습 탭에서 왼쪽 하단에 있는
스키마 수정 을 선택합니다. 라벨 관리 페이지가 열립니다.라벨 만들기 를 선택합니다.라벨 이름을 입력합니다. 만들기를 선택합니다. 스키마 생성 및 수정에 관한 자세한 안내는 프로세서 스키마 정의를 참고하세요.
프로세서 스키마에 대한 다음과 같은 각 라벨을 만듭니다.
bank_statement
form_1040
form_w2
form_w9
paystub
라벨이 완료되면
저장 을 선택합니다.
라벨이 지정되지 않은 문서를 데이터 세트로 가져오기
다음 단계는 라벨이 지정되지 않은 문서를 데이터 세트로 가져오고 라벨을 지정하는 것입니다. 가능한 경우 클래스별로 폴더에 정리된 문서를 가져오는 것이 좋습니다.
자체 프로젝트를 진행하는 경우 데이터에 라벨을 지정하는 방법을 결정합니다. 라벨 지정 옵션을 참고하세요.
Document AI 커스텀 프로세서에는 학습 세트와 테스트 세트에 최소 10개의 문서와 각 세트의 각 라벨 인스턴스가 10개 필요합니다. 최상의 성능을 위해서는 각 세트에 문서 50개 이상, 라벨의 인스턴스 50개 이상을 포함하는 것이 좋습니다. 일반적으로 학습 데이터가 많을수록 정확성이 커집니다.
학습 탭에서
문서 가져오기 를 선택합니다.이 예시에서는
소스 경로 에 이 경로를 입력합니다. 여기에는 문서 PDF 하나가 포함됩니다.cloud-samples-data/documentai/Custom/Lending-Splitter/PDF-Unlabeled
문서 라벨 을 없음으로 설정합니다.데이터 세트 분할 드롭다운을 할당되지 않음으로 설정합니다.이 폴더의 문서에는 기본적으로 라벨이 지정되거나 테스트 또는 학습 세트에 할당되지 않습니다.
가져오기를 선택합니다 . Document AI는 문서를 버킷에서 데이터 세트로 읽습니다. 가져오기가 완료된 후에는 가져오기 버킷을 수정하거나 버킷에서 데이터를 읽지 않습니다.
문서를 가져올 때 가져오기 시에 학습 또는 테스트 세트에 문서를 할당하거나 나중에 할당할 수 있습니다.
가져온 문서를 삭제하려면 학습 탭에서 해당 문서를 선택하고 삭제를 선택합니다.
가져올 데이터를 준비하는 방법을 자세히 알아보려면 데이터 준비 가이드를 참고하세요.
선택사항: 가져오기 시 문서 라벨 일괄 지정
가져오기 시 특정 디렉터리에 있는 모든 문서에 라벨을 지정하여 라벨을 지정하여 라벨 지정 시간을 절약할 수 있습니다. 폴더에 클래스별로 구성된 학습 문서가 있으면 문서 라벨 필드를 사용하여 해당 문서의 클래스를 지정하고 각 문서에 수동으로 라벨을 지정할 필요가 없습니다.
Bank_statements 및 인보이스 이미지에서 정의된 레이블(문서 클래스)을 선택할 수 있습니다. 또는 CREATE LABEL
을 사용하여 새 클래스를 정의할 수 있습니다.
- 문서 가져오기를 클릭합니다.
소스 경로에 다음 경로를 입력합니다. 이 버킷에는 라벨이 지정되지 않은 PDF 형식의 문서가 포함되어 있습니다.
cloud-samples-data/documentai/Custom/Patents/PDF-CDC-BatchLabel
데이터 분할 목록에서 자동 분할을 선택합니다. 이렇게 하면 문서가 학습 세트에서는 80%, 테스트 세트에서는 20%로 자동 분할됩니다.
라벨 적용 섹션에서 라벨 선택을 선택합니다.
이 샘플 문서의 경우 '기타'를 선택하세요.
가져오기를 클릭하고 문서를 가져올 때까지 기다립니다. 이 페이지를 나갔다가 다시 돌아와도 됩니다.
문서 라벨 지정
문서에 라벨을 적용하는 프로세스를 주석이라고 합니다.
학습 탭으로 돌아가서
문서 를 선택하여 라벨 관리 콘솔을 엽니다.이 문서에는 식별 및 라벨 지정이 필요한 페이지 그룹이 여러 개 포함되어 있습니다. 먼저 분할 지점을 식별해야 합니다. 이미지 뷰의 1~2 페이지 사이에 마우스를 가져간 다음
+ 기호 를 선택합니다.페이지 번호(2, 3, 4, 5) 앞에 분할 지점을 만듭니다.
완료되면 콘솔이 다음과 같이 표시됩니다.
문서 유형 드롭다운 에서 페이지 그룹마다 적절한 라벨을 선택합니다.페이지 문서 유형 1 paystub
2 form_w9
3 bank_statement
4 form_w2
5 & 6 form_1040
라벨이 지정된 완성된 문서는 다음과 같습니다.
문서에 주석을 달았으면
라벨이 지정된 것으로 표시 를 선택합니다.학습 탭의 왼쪽 패널에 문서 1개에 라벨이 지정되었다고 표시됩니다.
학습 세트에 주석이 달린 문서 할당
이제 이 예시 문서에 라벨을 지정했으므로 이를 학습 세트에 할당할 수 있습니다.
학습 탭에서
모두 선택 체크박스를 선택합니다.세트에 할당 목록에서 학습을 선택합니다.
왼쪽 패널에 문서 1개가 학습 세트에 할당되었다고 표시됩니다.
일괄 라벨 지정으로 데이터 가져오기
그런 다음 유형별로 서로 다른 Cloud Storage 폴더에 정렬된 라벨이 지정되지 않은 PDF 파일을 가져옵니다. 일괄 라벨 지정을 사용하면 경로에 따라 가져오기 시간에 라벨을 할당하여 라벨 지정에 걸리는 시간을 절약할 수 있습니다.
학습 탭에서
문서 가져오기 를 선택합니다.소스 경로 에 다음 경로를 입력합니다. 이 폴더에는 은행 명세서의 PDF 파일이 들어 있습니다.cloud-samples-data/documentai/Custom/Lending-Splitter/PDF-CDS-BatchLabel/bank-statement
문서 라벨 을bank_statement
로 설정합니다.데이터 세트 분할 메뉴에서 자동 분할로 설정합니다. 이렇게 하면 문서가 학습 세트에서는 80%, 테스트 세트에서는 20%로 자동 분할됩니다.다른 폴더 추가 를 선택하여 폴더를 더 추가합니다.다음 경로와 문서 라벨을 사용하여 이전 단계를 반복합니다.
버킷 경로 문서 라벨 cloud-samples-data/documentai/Custom/Lending-Splitter/PDF-CDS-BatchLabel/1040
form_1040
cloud-samples-data/documentai/Custom/Lending-Splitter/PDF-CDS-BatchLabel/w2
form_w2
cloud-samples-data/documentai/Custom/Lending-Splitter/PDF-CDS-BatchLabel/w9
form_w9
cloud-samples-data/documentai/Custom/Lending-Splitter/PDF-CDS-BatchLabel/paystub
paystub
완료되면 콘솔에 다음과 같이 표시됩니다.
가져오기를 선택합니다 . 가져오는 데 몇 분 정도 걸립니다.
가져오기가 완료되면 학습 탭에서 문서를 찾습니다.
사전에 라벨이 지정된 데이터 가져오기
이 가이드에서는 사전에 라벨이 지정된 Document
형식의 데이터가 JSON 파일로 제공됩니다.
Document AI가 문서를 처리하거나, 인간 참여형(Human-In-The-Loop)으로 라벨을 지정하거나, 데이터 세트를 내보낼 때 출력하는 형식과 동일합니다.
학습 탭에서
문서 가져오기 를 선택합니다.소스 경로 에 다음 경로를 입력합니다.cloud-samples-data/documentai/Custom/Lending-Splitter/JSON-Labeled
문서 라벨 을 없음으로 설정합니다.데이터 세트 분할 드롭다운을 자동 분할로 설정합니다.가져오기를 선택합니다 .
가져오기가 완료되면 학습 탭에서 문서를 찾습니다.
프로세서 학습
이제 학습 데이터와 테스트 데이터를 가져왔으므로 프로세서를 학습시킬 수 있습니다. 학습에 몇 시간이 걸릴 수 있으므로 학습을 시작하기 전에 적절한 데이터와 라벨을 프로세서에 설정했는지 확인하세요.
새 버전 학습 을 선택합니다.버전 이름 필드에 이 프로세서 버전의 이름(예:my-cds-version-1
)을 입력합니다.(선택사항) 문서 라벨에 대한 정보를 보려면 라벨 통계 보기를 선택합니다. 이렇게 하면 적용 범위를 결정하는 데 도움이 됩니다. 닫기를 선택하여 학습 설정으로 돌아갑니다.
학습 시작 을 선택합니다. 오른쪽 패널에서 상태를 확인할 수 있습니다.
프로세서 버전 배포
학습이 완료되면
버전 관리 탭으로 이동합니다. 방금 학습한 버전에 대한 세부정보를 볼 수 있습니다.배포할 버전 오른쪽에 있는
3개의 수직 점 을 선택하고 버전 배포를 선택합니다.팝업 창에서
배포 를 선택합니다.배포를 완료하는 데 몇 분 정도 걸립니다.
프로세서 평가 및 테스트
배포가 완료되면
평가 및 테스트 탭으로 이동합니다.이 페이지에서 F1 점수, 전체 문서의 정밀도 및 재현율, 개별 라벨을 포함한 평가 측정항목을 확인할 수 있습니다. 평가 및 통계에 관한 자세한 내용은 프로세서 평가를 참고하세요.
이전 학습 또는 테스트에 포함되지 않은 문서를 다운로드하여 프로세서 버전을 평가하는 데 사용할 수 있습니다. 자체 데이터를 사용하는 경우에는 이러한 목적을 위해 따로 보관된 문서를 사용하게 됩니다.
테스트 문서 업로드 를 선택하고 방금 다운로드한 문서를 선택합니다.커스텀 분할기 분석 페이지가 열립니다. 화면 출력에서 문서가 얼마나 잘 분할 및 분류되었는지 볼 수 있습니다.
완료되면 콘솔에 다음과 같이 표시됩니다.
다른 테스트 세트 또는 프로세서 버전을 대상으로 평가를 다시 실행할 수도 있습니다.
(선택사항) 자동 라벨 지정을 사용하여 데이터 가져오기
학습된 프로세서 버전을 배포한 후 자동 라벨 지정을 사용해 새 문서를 가져올 때 라벨 지정 시간을 절약할 수 있습니다.
학습 탭에서
문서 가져오기 를 선택합니다.소스 경로 에 다음 경로를 입력합니다. 이 폴더에는 여러 문서 유형의 라벨이 지정되지 않은 PDF가 포함되어 있습니다.cloud-samples-data/documentai/Custom/Lending-Splitter/PDF-CDS-AutoLabel
문서 라벨 을 자동 라벨 지정으로 설정합니다.데이터 세트 분할 드롭다운을 자동 분할로 설정합니다.자동 라벨 지정 섹션에서
버전 을 이전에 학습시킨 버전으로 설정합니다.- 예:
2af620b2fd4d1fcf
- 예:
가져오기 를 선택하고 문서를 가져올 때까지 기다립니다.자동 라벨 지정 문서를 라벨 지정됨으로 표시하지 않고 학습 또는 테스트용으로 사용할 수는 없습니다. 자동 라벨 지정 문서를 보려면
자동 라벨 지정 섹션으로 이동하세요.첫 번째 문서를 선택하여 라벨 지정 콘솔로 이동합니다.
라벨이 올바른지 확인하고 그렇지 않으면 조정합니다.
완료되면
라벨이 지정된 것으로 표시 를 선택합니다.자동으로 라벨이 지정된 문서마다 라벨 확인을 반복합니다.
학습 페이지로 돌아가서 새 버전 학습을 선택하여 데이터를 학습에 사용합니다.
프로세서 사용
커스텀 문서 분할기 프로세서를 만들고 학습시켰습니다.
다른 프로세서 버전과 마찬가지로 커스텀 학습 프로세서 버전을 관리할 수 있습니다. 자세한 내용은 프로세서 버전 관리를 참조하세요.
배포된 후에는 커스텀 프로세서에 처리 요청을 전송할 수 있으며 응답은 다른 분할기 프로세서와 동일하게 처리할 수 있습니다.
삭제
이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.
불필요한 Google Cloud 요금이 청구되지 않도록 하려면 Google Cloud 콘솔을 사용하여 필요하지 않은 프로세서와 프로젝트를 삭제합니다.
Document AI 학습용으로 만든 새 프로젝트가 더 이상 필요 없는 경우 프로젝트를 삭제하세요.
기존 Google Cloud 프로젝트를 사용한 경우 계정에 요금이 청구되지 않도록 만든 리소스를 삭제합니다.
Google Cloud 콘솔 탐색 메뉴에서 Document AI를 선택하고 내 프로세서를 선택합니다.
삭제하려는 프로세서와 동일한 행에서
작업 더보기 를 선택합니다.프로세서 삭제를 선택하고 프로세서 이름을 입력한 후 삭제를 다시 선택하여 확인합니다.