跳转到主要内容
用于半结构化文档的 Deep Learning 活动旨在构建具备生产级质量的认知技能,以利用神经网络从半结构化文档中提取字段。
注意: 此活动无法提取复杂结构(例如嵌套表格,即表格中包含的重复结构)以及类型不是 Text 的字段。要提取此类结构,请使用 Extraction Rules 活动。

使用场景

在以下情况下,将此活动添加到您的文档处理流程中:
  • 您的技能将用于处理某一文档类型的多个变体。
  • 您计划处理的文档变体尚未用于训练您的技能。例如,您可能拥有一个包含 Fast Learning 活动的文档技能,该技能已经过训练,可以从来自几家不同银行、字段结构各异的贷款协议中提取字段。如果您决定使用这个现有技能来处理来自某家该技能尚未见过的新银行的贷款协议,则提取质量可能会不尽如人意。为提高提取质量,您可以将 Fast Learning 活动替换为 Deep Learning 活动。

工作原理

深度学习将卷积神经网络(CNN)、循环神经网络(RNN)以及自然语言处理(NLP)词元结合在一起。通过这种结合,深度学习能够理解图像模式、文档结构、字段内容及其周围的标签。它需要大量文档进行训练,但可以泛化到尚未见过的新文档版式,从而提供真正无需模板的提取方法,而这也是在训练阶段无法获得完整版式集合时,处理此类文档的唯一方法。

训练要求

为了获得最佳效果,必须尽可能多地对文档进行正确标注。用于训练的样本文档数量会显著影响字段提取的质量。推荐的样本文档数量如下:
  • 对于高变异性的文档:至少需要 200–300 份样本文档(每种变体 2–3 份样本文档)。
  • 对于低变异性的文档:至少需要 10 份样本文档(每种变体 2–3 份样本文档)。
最低要求是 10 份,但建议准备超过 500 份已标注文档,并确保训练集包含计划处理的所有文档变体的大致相同数量(理想情况下,每种变体至少有几份样本)。不必覆盖所有可能的变体,但技术需要看到足够多的多样化文档,以便归纳出模式,并泛化到尚未遇到的变体。比如,对于发票,如果训练集中包含 500 到 1,000 个不同的供应商,并且每个供应商都有两到三份样本文档,那么该技术通常就能够很好地泛化到新的供应商。虽然深度学习具有一定的泛化能力,但在训练集中包含最常见的文档变体仍然是有益的,例如提供发票数量最多的供应商。

训练特性

与 Fast Learning 活动不同,后者基于较少数量的文档进行训练,适用于更标准化的文档集;Deep Learning 活动的训练耗时更长,并且需要更多系统资源(目前为 16 核 CPU 和 64 GB 内存)。 训练神经网络是一个迭代过程。每次迭代称为一个 epoch。在每个 epoch 开始时,文档集会被划分为训练子集和验证子集。在一个 epoch 期间,训练子集中的所有文档都会通过训练算法进行处理。随后,使用验证子集评估神经网络的性能,并更新每个字段以及整个文档集的评估指标。 更多信息,请参见设置 Deep Learning 活动