文档智能自定义模型

重要

  • 使用文档智能选公共预览版,可以提前使用目前正处于开发状态的功能。
  • 在正式发布 (GA) 之前,根据用户反馈,功能、方法和流程可能会发生更改。
  • 文档智能客户端库的公共预览版默认为 REST API 版本 2023-10-31-preview

此内容适用于:checkmarkv4.0(预览版) | 先前版本:blue-checkmarkv3.1 (GA)blue-checkmarkv3.0 (GA)blue-checkmarkv2.1 (GA)

此内容适用于:checkmarkv3.1 (GA) | 最新版本:purple-checkmarkv4.0(预览版) | 先前版本:blue-checkmarkv3.0blue-checkmarkv2.1

此内容适用于:checkmarkv3.0 (GA) | 最新版本:purple-checkmarkv4.0(预览版)purple-checkmarkv3.1(预览版) | 先前版本:blue-checkmarkv2.1

此内容适用于:checkmarkv2.1 | 最新版本:blue-checkmarkv4.0(预览版)

文档智能使用高级机器学习技术从表单与文档中识别文档,检测和提取信息,并以结构化的 JSON 输出返回提取的数据。 借助文档智能,可以使用文档分析模型、预生成/预训练模型或已训练的独立自定义模型。

自定义模型现在包括自定义分类模型,用于在调用提取模型之前需要标识文档类型的场景。 分类器模型从 API 开始 2023-07-31 (GA) 可用。 分类模型可以与自定义提取模型配对,以分析和提取特定于业务的表单和文档中的字段,用于创建文档处理解决方案。 可以组合独立的自定义提取模型来创建组合模型

自定义文档模型类型

自定义文档模型可以是两种类型之一:自定义模板或自定义表单和自定义神经或自定义文档模型。 这两种模型的标记和训练过程相同,但模型本身存在以下差异:

自定义提取模型

若要创建自定义提取模型,请标记包含要提取的值的文档数据集,并基于标记的数据集训练模型。 只需要有五个相同表单或文档类型的示例即可开始。

自定义模板模型

自定义模板或自定义表单模型依赖于使用一致的视觉模板来提取标记的数据。 文档视觉结构差异会影响模型的准确度。 结构化表单(如问卷或申请)是一致的视觉模板的示例。

训练集由结构化文档组成,其中格式和布局从一个文档实例到下一个文档实例都是静态且不变的。 自定义模板模型支持键值对、选择标记、表、签名字段和区域。 模板建模并且可以用任何支持语言的文档进行训练。 有关详细信息,参阅自定义模板模型

如果文档和提取方案的语言支持自定义神经模型,建议使用自定义神经模型而不是模板模型,以获得更高的准确度。

提示

为确保训练文档呈现一致的视觉模板,请从集内的每个表单中删除用户输入的所有数据。 如果空白表单在外观上相同,则它们会呈现一致的视觉模板。

有关详细信息,请参阅解释和提高自定义模型的准确度与置信度

输入要求

  • 为获得最佳结果,请针对每个文档提供一张清晰的照片或高质量的扫描件。

  • 支持的文件格式:

    型号 PDF 图像:
    JPEG/JPG、PNG、BMP、TIFF、HEIF
    Microsoft Office:
    Word (DOCX)、Excel (XLSX)、PowerPoint (PPTX) 和 HTML
    阅读
    布局 ✔ (2023-10-31-preview)
    常规文档
    预生成
    自定义

    ✱ 其他模型或版本当前不支持 Microsoft Office 文件。

  • 对于 PDF 和 TIFF,最多可处理 2000 页(对于免费层订阅,仅处理前两页)。

  • 用于分析文档的文件大小对于付费 (S0) 层为 500 MB,对于免费 (F0) 层为 4 MB。

  • 图像尺寸必须介于 50 x 50 像素与 10,000 x 10,000 像素之间。

  • 如果 PDF 是密码锁定的文件,则必须先删除锁,然后才能提交它们。

  • 对于 1024 x 768 像素的图像,要提取的文本的最小高度为 12 像素。 此尺寸对应于 150 点/英寸 (DPI) 的大约 8 号字文本。

  • 对于自定义模型训练,自定义模板模型的训练数据最大页数为 500,自定义神经模型的训练数据最大页数为 50,000。

  • 对于自定义提取模型训练,模板模型的训练数据总大小为 50 MB,神经模型的训练数据总大小为为 1G-MB。

  • 对于自定义分类模型训练,训练数据的总大小为 1GB,最大为 10,000 页。

生成模式

生成自定义模型的操作添加了对“模板”和“神经”自定义模型的支持。 以前版本的 REST API 和 SDK 仅支持现在称为“模板”模式的单一生成模式。

  • 模板模型只接受具有相同基本页面结构(统一的视觉外观)或文档中元素的相同相对位置的文档。

  • 神经模型支持具有相同信息但页面结构不同的文档。 这些文档的示例包括美国 W2 表单,这些表单共享相同的信息,但在各个公司中在外观上可能有所不同。 神经模型目前仅支持英语文本。

下表提供了在 GitHub 上生成模式编程语言 SDK 参考和代码示例的链接:

编程语言 SDK 参考 代码示例
C#/.NET DocumentBuildMode 结构 Sample_BuildCustomModelAsync.cs
Java DocumentBuildMode 类 BuildModel.java
JavaScript DocumentBuildMode 类型 buildModel.js
Python DocumentBuildMode 枚举 sample_build_model.py

比较模型特征

下表比较了自定义模板模型和自定义神经网络模型的功能:

功能 自定义模板(表单) 自定义神经(文档)
文档结构 模板、表单和结构化 结构化、半结构化和非结构化
定型时间 1 - 5 分钟 20 分钟 - 1 小时
数据提取 键值对、表、选择标记、坐标和签名 键值对、选择标记和表
文档变体 每个变体需要一个模型 对所有变体使用单一模型
语言支持 语言支持 英语,预览版的语言支持包括西班牙语、法语、德语、意大利语和荷兰语

自定义分类模型

文档分类是文档智能使用 2023-07-31 (v3.1 GA) API 支持的新方案。 文档分类器 API 支持分类和拆分应用场景。 训练分类模型以识别应用程序支持的不同类型的文档。 分类模型的输入文件可以包含多个文档,并在关联的页面范围内对每个文档进行分类。 有关详细信息,请参阅自定义分类模型。

自定义模型工具

文档智能 v3.1 及更高版本模型支持以下工具、应用程序、库和程序:

功能 资源 模型 ID
自定义模型 文档智能工作室
REST API
C# SDK
Python SDK
custom-model-id

文档智能 v2.1 支持以下工具、应用程序和库:

注意

自定义模板仅适用于文档模型 3.1 版和 3.0 版 API。

功能 资源
自定义模型 文档智能标记工具
REST API
客户端库 SDK
文档智能 Docker 容器

构建自定义模型

使用自定义模型从特定的或独一无二的文档中提取数据。 需要以下资源:

  • Azure 订阅。 可以创建一个试用订阅

  • Azure 门户中的文档智能实例。 可以使用免费定价层 (F0) 来试用该服务。 在部署资源后,选择“转到资源”以获取密钥和终结点。

    Screenshot that shows the keys and endpoint location in the Azure portal.

示例标记工具

提示

  • 若要获得增强的体验和高级模型质量,请尝试文档智能 v3.0 工作室
  • v3.0 工作室支持任何使用 v2.1 标记数据进行训练的模型。
  • 若要详细了解如何从 v2.1 迁移到 v3.0,可参阅 API 迁移指南。
  • 请参阅 REST APIC#JavaJavaScriptPython SDK 快速入门,了解如何开始使用 v3.0 版本。
  • 文档智能示例标记工具是一种开源工具,可用于测试文档智能的最新功能和光学字符识别 (OCR) 功能。

  • 请尝试示例标签工具快速入门,开始生成和使用自定义模型。

文档智能工作室

注意

文档智能工作室与 v3.1 和 v3.0 API 一起提供。

  1. 在文档智能工作室主页上,选择“自定义提取模型”。

  2. 在“我的项目”下,选择“创建项目”。

  3. 填写“项目详细信息”字段。

  4. 通过添加存储帐户和 Blob 容器,连接训练数据源,从而配置服务资源。

  5. 查看并创建项目。

  6. 添加示例文档来标记、生成和测试自定义模型。

    试用 Document Intelligence Studio

如需了解如何创建第一个自定义提取模型的详细分步操作,请参阅如何创建自定义提取模型

自定义模型提取摘要

下表比较了支持的数据提取区域:

建模 表单域 选定标记 结构化字段(表) 签名 区域标记
自定义模板
自定义神经 n/a *

表符号:✔ - 支持;**n/a – 目前不可用;* - 行为方式不同。 使用模板模型时,会在训练时生成合成数据。 使用神经网络模型时,会选择区域中识别的退出文本。

自定义模型开发选项

下表描述了可以配合相关工具和 SDK 使用的功能。 作为最佳做法,请确保使用此处列出的兼容工具。

文档类型 REST API SDK 标记和测试模型
自定义模板 v 4.0、v3.1、v3.0 文档智能 3.1 文档智能 SDK 文档智能工作室
自定义表单 v2.1 文档智能 2.1 GA API 文档智能 SDK 示例标记工具

注意

由于 OCR 引擎的改进,使用 3.0 API 训练的自定义模板模型相比使用 2.1 API 会得到一定的改进。 用于通过 2.1 API 训练自定义模板模型的数据集仍可用于通过 3.0 API 训练新模型。

  • 为获得最佳结果,请针对每个文档提供一张清晰的照片或高质量的扫描件。

  • 支持的文件格式有 JPEG/JPG、PNG、BMP、TIFF 和 PDF(文本嵌入或扫描式)。 最好是使用文本嵌入式 PDF,这可以避免在提取和定位字符时出错。

  • 对于 PDF 和 TIFF 文件,最多可以处理 2,000 页。 若使用免费订阅层,则只处理前两页。

  • 文件大小必须小于 500 MB(对于付费 (S0) 层)和 4 MB(对于免费 (F0) 层)。

  • 图像尺寸必须介于 50 x 50 像素与 10000 x 10000 像素之间。

  • PDF 尺寸不超过 17 x 17 英寸,相当于法律专用纸或 A3 纸张尺寸或更小。

  • 训练数据的总大小不得超过 500 页。

  • 如果 PDF 是密码锁定的文件,则必须先删除锁,然后才能提交它们。

    提示

    定型数据:

    • 如果可以,请使用基于文本的 PDF 文档而不是基于图像的文档。 扫描的 PDF 作为图像处理。
    • 请只为每份文档提供一个表单实例。
    • 对于填充表单,请使用填充了所有字段的示例。
    • 在每个字段中使用具有不同值的表格。
    • 如果表单图像质量较低,请使用更大的数据集。 例如,使用 10 到 15 个图像。

支持的语言和区域设置

有关受支持语言的完整列表,请参阅我们的“语言支持 - 自定义模型”页。

尝试签名检测

  • 自定义模型 v4.0、v 3.1 和 v3.0 API 支持适用于自定义表单的签名检测。 训练自定义模型时,可以将某些字段指定为签名。 使用自定义模型分析文档时,它会指示是否检测到签名。
  • 文档智能 v3.1 迁移指南:本指南介绍了如何在应用程序和工作流中使用 v3.0 版本。
  • REST API:此 API 显示了有关 v3.0 和新功能的详细信息。
  1. 构建训练数据集。

  2. 转到文档智能工作室。 在“自定义模型”下,选择“自定义表单”。

    Screenshot that shows selecting the Document Intelligence Studio Custom form page.

  3. 执行工作流以创建新项目:

    1. 按照自定义模型输入要求。

    2. 跟踪文档。 对于签名字段,请使用区域标记以提高准确性。

      Screenshot that shows the Label signature field.

标记训练集后,可以训练自定义模型并使用它来分析文档。 签名字段可指定是否检测到签名。

后续步骤