문서 인텔리전스 사용자 지정 분류 모델

Important

  • 문서 인텔리전스 공개 미리 보기 릴리스에서는 현재 개발 중인 기능에 대한 조기 액세스를 제공합니다.
  • 기능, 방식 및 프로세스는 GA(일반 공급) 전에 사용자 피드백에 따라 변경될 수 있습니다.
  • Document Intelligence 클라이언트 라이브러리의 공개 미리 보기 버전은 기본적으로 REST API 버전 2024-02-29-preview로 설정됩니다.
  • 공개 미리 보기 버전 2024-02-29-preview 는 현재 다음 Azure 지역에서만 사용할 수 있습니다.
  • 미국 동부
  • 미국 서부2
  • 서유럽

이 콘텐츠의 적용 대상은 다음과 같습니다.검사markv4.0(미리 보기) | 이전 버전:파란색 검사markv3.1(GA)

이 콘텐츠 적용 대상:검사markv3.1(GA) | 최신 버전:purple-검사markv4.0(미리 보기)

Important

  • 2024-02-29-preview API, 사용자 지정 분류 모델은 분석 프로세스 중에 기본적으로 문서를 분할하지 않습니다.
  • 이전 릴리스의 동작을 유지하려면 명시적으로 splitMode 속성을 자동으로 설정해야 합니다. splitMode에 대한 기본값은 none입니다.
  • 입력 파일에 여러 문서가 포함된 경우 splitModeauto로 설정하여 분할을 사용하도록 설정해야 합니다.

Azure AI 문서 인텔리전스는 지능형 문서 처리 솔루션을 빌드할 수 있는 클라우드 기반 Azure AI 서비스입니다. 문서 인텔리전스 API는 이미지, PDF 및 기타 문서 파일을 분석하여 다양한 콘텐츠, 레이아웃, 스타일 및 의미 체계 요소를 추출하고 검색합니다.

사용자 지정 분류 모델은 레이아웃 및 언어 기능을 결합하여 애플리케이션 내에서 처리하는 문서를 정확하게 검색하고 식별하는 딥 러닝 모델 형식입니다. 사용자 지정 분류 모델은 입력 파일의 분류를 한 번에 한 페이지씩 수행하여 문서를 식별하며 입력 파일 내에서 여러 문서 또는 단일 문서의 여러 인스턴스를 식별할 수도 있습니다.

모델 기능

참고 항목

  • 2024-02-29-preview API부터 사용자 지정 설명 모델은 증분 학습을 지원합니다. 기존 클래스에 새 샘플을 추가하거나 기존 분류자를 참조하여 새 클래스를 추가할 수 있습니다.

사용자 지정 분류 모델은 단일 또는 여러 파일 문서를 분석하여 학습된 문서 형식이 입력 파일 내에 포함되어 있는지 여부를 식별할 수 있습니다. 현재 지원되는 시나리오는 다음과 같습니다.

  • 하나의 문서를 포함하는 단일 파일. 예를 들어 대출 신청 양식이 있습니다.

  • 여러 문서를 포함하는 단일 파일. 예를 들어 대출 신청 양식, 급여 명세서 및 은행 명세서를 포함하는 대출 신청 패키지가 있습니다.

  • 동일한 문서의 여러 인스턴스를 포함하는 단일 파일. 예를 들어 스캔한 청구서의 컬렉션이 있습니다.

✔️ 사용자 지정 분류자를 학습시키려면 two 이상의 고유 클래스와 클래스당 최소 five 문서 샘플이 필요합니다. 모델 응답에는 식별된 문서의 각 클래스에 대한 페이지 범위가 포함됩니다.

✔️ 허용되는 최대 클래스 수는 500입니다. 클래스당 허용되는 최대 문서 샘플 수는 100입니다.

모델은 입력 문서의 각 페이지를 레이블이 지정된 데이터 세트의 클래스 중 하나로 분류합니다. 애플리케이션에 대한 임계값을 설정하려면 응답의 신뢰도 점수를 사용합니다.

증분 학습

사용자 지정 모델을 사용하면 학습 데이터 세트에 대한 액세스를 기본 기존 클래스에 대한 새 샘플로 분류자를 업데이트하거나 새 클래스를 추가해야 합니다. 이제 분류자 모델은 기존 분류자를 참조하고 기존 클래스에 대한 새 샘플을 추가하거나 샘플이 포함된 새 클래스를 추가할 수 있는 증분 학습을 지원합니다. 증분 교육을 사용하면 변화하는 비즈니스 요구에 맞게 데이터 보존이 어려운 시나리오와 분류자를 업데이트해야 하는 시나리오를 사용할 수 있습니다. 증분 학습은 API 버전 2024-02-29-preview 이상을 사용하여 학습된 모델에서 지원됩니다.

Important

증분 학습은 동일한 API 버전으로 학습된 모델에서만 지원됩니다. 모델을 확장하려는 경우 원래 모델이 학습된 API 버전을 사용하여 모델을 확장합니다. 증분 학습은 API 버전 2024-02-29-preview 이상에서만 지원됩니다.

증분 학습을 수행하려면 원래 모델 ID를 .로 baseClassifierId제공해야 합니다. 증분 학습을 사용하는 방법에 대한 자세한 내용은 증분 학습을 참조하세요.

Office 문서 유형 지원

이제 PDF, 이미지, Word, PowerPoint 및 Excel을 비롯한 다양한 형식으로 문서 형식을 인식하도록 분류자를 학습시킬 수 있습니다. 학습 데이터 세트를 어셈블할 때 지원되는 형식의 문서를 추가할 수 있습니다. 분류자는 특정 형식에 명시적으로 레이블을 지정할 필요가 없습니다. 모범 사례로, 모델의 전반적인 정확도를 향상시키기 위해 학습 데이터 세트에 각 형식의 샘플이 하나 이상 있는지 확인합니다.

사용자 지정 분류 및 구성된 모델 비교

사용자 지정 분류 모델은 일부 시나리오에서 구성된 모델을 대체할 수 있지만 주의해야 할 몇 가지 차이점이 있습니다.

기능 사용자 지정 분류자 프로세스 구성된 모델 프로세스
추출 모델 처리를 위해 학습된 형식 중 하나에 속하는 알 수 없는 형식의 단일 문서를 분석합니다. ● 여러 번의 호출이 필요합니다.
● 문서 클래스를 기반으로 분류 모델을 호출합니다. 이 단계에서는 추출 모델 분석을 호출하기 전에 신뢰도 기반 검사를 허용합니다.
● 추출 모델을 호출합니다.
● 입력 문서 형식에 해당하는 모델을 포함하는 구성된 모델에 대한 단일 호출이 필요합니다.
추출 모델 처리를 위해 학습된 여러 형식에 속하는 알 수 없는 형식의 단일 문서를 분석합니다. ● 여러 번의 호출이 필요합니다.
● 추출을 위해 지정된 형식과 일치하지 않는 문서를 무시하는 분류자를 호출합니다.
● 추출 모델을 호출합니다.
● 구성된 모델에 대한 단일 호출이 필요합니다. 서비스는 가장 높은 일치 항목이 있는 구성된 모델 내에서 사용자 지정 모델을 선택합니다.
● 작성된 모델은 문서를 무시할 수 없습니다.
추출 모델 처리를 위해 학습된 형식 중 하나에 속하는 알려진 형식 또는 알 수 없는 형식의 여러 문서가 포함된 파일을 분석합니다. ● 여러 번의 호출이 필요합니다.
● 입력 파일에서 식별된 각 문서에 대해 추출 모델을 호출합니다.
● 추출 모델을 호출합니다.
● 구성된 모델에 대한 단일 호출이 필요합니다.
● 작성 모델은 문서의 첫 번째 인스턴스에서 구성 요소 모델을 한 번 호출합니다.
●재기본 문서는 무시됩니다.

언어 지원

분류 모델은 현재 영어 문서만 지원합니다.

이제 다양한 언어의 문서에 대해 분류 모델을 학습시킬 수 있습니다. 전체 목록은 지원되는 언어를 참조하세요.

입력 요구 사항

지원 파일 형식:

모델 PDF 이미지:
jpeg/jpg, png, bmp, tiff, heif
Microsoft Office:
Word(docx), Excel(xlxs), PowerPoint(pptx)
읽기
레이아웃 ✔ (2024-02-29-preview, 2023-10-31-preview 이상)
일반 문서
사전 제작
사용자 지정 추출
사용자 지정 분류
  • 최상의 결과를 위해 문서 형식당 다섯 개의 명확한 사진 또는 고품질 스캔을 제공하세요.

  • PDF 및 TIFF의 경우 최대 2,000페이지를 처리할 수 있습니다(무료 계층 구독에서는 처음 두 페이지만 처리됨).

  • 문서 분석을 위한 파일 크기는 유료(S0) 계층의 경우 500MB, 무료(F0) 계층의 경우 4MB입니다.

  • 이미지 크기는 50 x 50픽셀에서 10,000 x 10,000픽셀 사이여야 합니다.

  • PDF가 암호로 잠긴 경우에는 제출하기 전에 잠금을 해제해야 합니다.

  • 추출할 텍스트의 최소 높이는 1024 x 768 픽셀 이미지의 경우 12픽셀입니다. 이 차원은 인치당 150개 점(DPI)의 약 8-point 텍스트에 해당합니다.

  • 사용자 지정 모델 학습의 경우 학습 데이터의 최대 페이지 수는 사용자 지정 템플릿 모델의 경우 500개, 사용자 지정 인공신경망 모델의 경우 50,000개입니다.

  • 사용자 지정 추출 모델 학습의 경우 학습 데이터의 총 크기는 템플릿 모델의 경우 50MB, 신경망 모델의 경우 1G-MB입니다.

  • 사용자 지정 분류 모델 학습의 경우 학습 데이터의 총 크기는 1GB이며 최대 10,000페이지입니다.

문서 분할

파일에 문서가 두 개 이상 있는 경우 분류자는 입력 파일에 포함된 다양한 문서 형식을 식별할 수 있습니다. 분류자 응답에는 파일에 포함된 식별된 각 문서 형식의 페이지 범위가 포함됩니다. 이 응답에는 동일한 문서 형식의 여러 인스턴스가 포함될 수 있습니다.

이제 분석 작업에는 분할 동작을 세부적으로 제어할 수 있는 splitMode 속성이 포함됩니다.

  • 전체 입력 파일을 분류를 위한 단일 문서로 처리하려면 splitMode를 none으로 설정합니다. 이렇게 하면 서비스는 전체 입력 파일에 대해 하나의 클래스만 반환합니다.
  • 입력 파일의 각 페이지를 분류하려면 splitMode를 perPage로 설정합니다. 서비스는 각 페이지를 개별 문서로 분류하려고 시도합니다.
  • splitMode를 auto로 설정하면 서비스는 문서 및 연결된 페이지 범위를 식별합니다.

모범 사례

사용자 지정 분류 모델을 학습하려면 클래스당 최소 5개의 샘플이 필요합니다. 클래스가 비슷한 경우 추가 학습 샘플을 추가하면 모델 정확도가 향상됩니다.

분류자는 각 문서를 클래스 중 하나에 할당하려 시도합니다. 학습 데이터 세트의 일부인 클래스에 없는 문서 형식을 모델이 볼 것으로 예상하는 경우 분류 점수의 임계값을 설정하거나 문서 형식의 몇 가지 대표적인 샘플을 "other" 클래스에 추가해야 합니다. 클래스를 "other" 추가하면 불필요한 문서가 분류자 품질에 영향을 주지 않습니다.

모델 학습

사용자 지정 분류 모델은 v4.0:2024-02-29-previewv3.1:2023-07-31(GA) API에서 지원됩니다. 문서 인텔리전스 스튜디오는 사용자 지정 분류자를 대화형으로 학습시키는 코드 없는 사용자 인터페이스를 제공합니다. 시작하려면 방법 가이드를 따르세요.

REST API를 사용할 때 폴더별로 문서를 구성하는 경우 요청의 azureBlobSource 속성을 사용하여 분류 모델을 학습시킬 수 있습니다.


https://{endpoint}/documentintelligence/documentClassifiers:build?api-version=2024-02-29-preview

{
  "classifierId": "demo2.1",
  "description": "",
  "docTypes": {
    "car-maint": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "sample1/car-maint/"
            }
    },
    "cc-auth": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "sample1/cc-auth/"
            }
    },
    "deed-of-trust": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "sample1/deed-of-trust/"
            }
    }
  }
}

https://{endpoint}/formrecognizer/documentClassifiers:build?api-version=2023-07-31

{
  "classifierId": "demo2.1",
  "description": "",
  "docTypes": {
    "car-maint": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "{path to dataset root}/car-maint/"
            }
    },
    "cc-auth": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "{path to dataset root}/cc-auth/"
            }
    },
    "deed-of-trust": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "{path to dataset root}/deed-of-trust/"
            }
    }
  }
}

또는 파일의 플랫 목록이 있거나 각 폴더 내에서 몇 개의 선택 파일만 사용하여 모델을 학습시킬 계획인 경우 azureBlobFileListSource 속성을 사용하여 모델을 학습시킬 수 있습니다. 이 단계에서는 JSON 줄 형식의 file list가 필요합니다. 각 클래스에 대해 학습을 위해 제출할 파일 목록이 있는 새 파일을 추가합니다.

{
  "classifierId": "demo2",
  "description": "",
  "docTypes": {
    "car-maint": {
      "azureBlobFileListSource": {
        "containerUrl": "SAS URL to container",
        "fileList": "{path to dataset root}/car-maint.jsonl"
      }
    },
    "cc-auth": {
      "azureBlobFileListSource": {
        "containerUrl": "SAS URL to container",
        "fileList": "{path to dataset root}/cc-auth.jsonl"
      }
    },
    "deed-of-trust": {
      "azureBlobFileListSource": {
        "containerUrl": "SAS URL to container",
        "fileList": "{path to dataset root}/deed-of-trust.jsonl"
      }
    }
  }
}

예를 들어 파일 목록 car-maint.jsonl에는 다음 파일이 포함됩니다.

{"file":"classifier/car-maint/Commercial Motor Vehicle - Adatum.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Fincher.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Lamna.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Liberty.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Trey.pdf"}

모델 응답

문서 분류 모델을 사용하여 입력 파일을 분석합니다.

https://{endpoint}/documentintelligence/documentClassifiers/{classifier}:analyze?api-version=2024-02-29-preview
https://{service-endpoint}/formrecognizer/documentClassifiers/{classifier}:analyze?api-version=2023-07-31

응답에는 응답의 문서 섹션에 연결된 페이지 범위가 있는 식별된 문서가 포함됩니다.

{
  ...

    "documents": [
      {
        "docType": "formA",
        "boundingRegions": [
          { "pageNumber": 1, "polygon": [...] },
          { "pageNumber": 2, "polygon": [...] }
        ],
        "confidence": 0.97,
        "spans": []
      },
      {
        "docType": "formB",
        "boundingRegions": [
          { "pageNumber": 3, "polygon": [...] }
        ],
        "confidence": 0.97,
        "spans": []
      }, ...
    ]
  }

다음 단계

사용자 지정 분류 모델을 만드는 방법을 알아봅니다.