- 概述
- Document Understanding 流程
- 快速入门教程
- 框架组件
- ML 包
- 管道
- Data Manager
- OCR 服务
- 部署在 Automation Suite 中的 Document Understanding
- 在 AI Center 独立版中部署的 Document Understanding
- 许可
- 参考
- UiPath.Abbyy.Activities
- UiPath.AbbyyEmbedded.Activities
- UiPath.DocumentUnderstanding.ML.Activities
- UiPath.DocumentUnderstanding.OCR.LocalServer.Activities
- UiPath.Intelligent OCR.Activities
- UiPath.OCR.Activities
- UiPath.OCR.Contracts
- UiPath.DocumentProcessing.Contracts
- UiPath.OmniPage.Activities
- UiPath.PDF.Activities
自动微调循环(公开预览)
在训练/再训练 ML 模型时,首先要牢记的是,通过将所有数据累积到单个大型且理想情况下精心策划的数据集中,可以获得最佳结果。在数据集 A 上进行训练,然后在数据集 B 上重新训练生成的模型,这样产生的结果将远不如在组合的数据集 A+B 上训练的结果。
第二点要牢记的是,并非所有数据都相同。与在具有不同焦点的工具(如“验证站点”)中标记的数据相比,在专用工具(如 Document Manager)中标记的数据通常质量更高,并且所生成的模型也更好。从业务流程的角度来看,来自“验证站点”的数据可能是高质量的,但从模型训练的角度来看,则不是如此,因为 ML 模型需要非常特定形式的数据,这几乎总是与业务流程所需的形式不同。例如,在一张 10 页的发票上,发票编号可能会出现在每一页上,但在“验证站点”中,只需在第一页上指出该编号,而在 Document Manager 中,您要在每一页上为其加上标签。在这种情况下,“验证站点”数据中会缺失 90% 的正确标签。因此,如上所述,“验证站点”数据实用性有限。
要有效训练 ML 模型,您需要一个全面、优质、有代表性的数据集。因此,一种累积方法是向输入数据集添加更多数据,从而每次都使用更大的数据集训练 ML 模型。实现此目的的一种方法是使用自动微调循环。
为了更好地理解此功能,让我们来看看自动微调在 ML 模型生命周期中的适用位置。
在任何机器学习模型的生命周期中,都有两个主要阶段:
- 构建阶段
- “维护”阶段
在此第一阶段,您将使用 Document Manager 准备训练数据集和评估数据集,以便获得可能的最佳性能。
同时,您需要围绕 ML 模型构建 RPA 自动化和业务逻辑,这对于获取预期的投资回报来说,至少与模型本身同样重要。
自动微调循环包含以下组件:
-
1. Robot 工作流:机器学习提取程序训练器活动
-
2. Document Manager:计划导出功能
-
3. AI Center:计划的自动重训练管道
-
4.(可选)自动更新 ML 技能
要实现此功能,必须先满足两个要求:
-
您需要在 AI Center 中创建一个 Document Manager 会话,并配置一定数量的字段,更确切地说,是为了标记高质量的训练和评估数据集。您可以手动定义字段,也可以导入架构。如果未配置字段,则“计划(预览版)”选项卡不会启用,并且屏幕上会显示以下消息:
- 您需要训练 ML 模型的几个版本,进行测试,修复可能发生的任何问题,并将其部署到 RPA + AI 自动化。
在训练提取程序作用域中,将“机器学习提取程序训练器”活动添加到您的工作流中,正确配置作用域,并确保“框架别名”包含与“数据提取作用域”中的机器学习提取程序相同的别名。
然后,选择对应项目,以及包含您的培训和评估数据集并与 Document Manager 会话相关的数据集。连接到 Orchestrator 后,下拉菜单将预先填充。
您可以在 AI Center 的“数据标签”视图中的“数据标签”会话名称旁边看到“数据集名称”:
对于选定的数据集,“机器学习提取程序训练器”活动将创建一个微调文件夹,并在其中将导出的文档写入 3 个文件夹中:documents、metadata 和 predictions 文件夹。
此文件夹中的数据将自动导入到 Document Manager 中,并与先前存在的数据合并,并导出为正确的格式,以供训练或完整管道使用。
在 Document Manager 会话中,单击“导出”按钮 ,前往“计划(预览版)”选项卡,然后启用“计划”滑块。然后选择开始时间和重复周期。准备就绪后,单击“计划”按钮。
“向后兼容导出”复选框使您能够应用旧版导出行为,即将每个页面导出为单独的文档。如果使用默认方式导出的已训练模型未达到预期效果,请尝试以下方法。取消选中此项以原始多页形式导出文档。
最小重复周期为 1 天,最大重复周期为 60 天。
鉴于 AI Center 训练管道主要配置为每周运行,因此建议重复周期设为 7 天。
当您设置导出计划时,“微调”文件夹中的导入数据将导出到“导出”文件夹中“自动导出 time_stamp”下。
更具体地说,“计划导出”将步骤 1 中创建的微调文件夹中存在的数据导入,然后将完整的数据集(包括先前存在的数据和新导入的“验证站点”数据)导出到导出文件夹中。因此,随着每个计划的导出,导出的数据集都会变得越来越大。
如果这是第一次计划导出,则更新或创建文件“latest.txt”。在这里,您可以看到 Document Manager 进行的最新导出的名称。但是,架构导出不会更新“latest.txt”。此文件由 AI Center 中的自动再训练管道用于确定哪个文件是最新的导出文件,以便始终对最新数据进行训练,因此您不应删除或修改它,否则自动重新训练管道将失败。
在 AI Center 中安排训练或完整管道时,需要考虑几个方面。
首先,强烈建议您创建评估数据集,并且只计划完整管道。完整管道同时运行“训练”和“评估”,“评估”管道使用“评估”数据集生成分数。此分数对于决定新版本是否优于旧版本至关重要,并且可以部署以供 Robot 使用。
其次,对于完整管道,您需要指定两个数据集:输入数据集和评估数据集。
在自动微调循环功能的上下文中,评估数据集没有变化。您仍然需要像往常一样选择一个数据集,其中包含两个文件夹:images 和 latest,以及两个文件:schema.json 和 split.csv。
但是,输入数据集不再是数据集,您需要选择连接到数据标签会话的 AI Center 数据集中的导出文件夹。这样,训练将在数据标签会话的最新导出文件夹上运行,而评估在您指定的同一个评估数据集上运行。
第三,您需要将“自动重训练”环境变量设置为“True”。
最后,您需要选择“周期性”活动并设置日期和时间,以便有足够的时间从 Document Manager 中完成导出。例如,如果 Document Manager 导出在周六的凌晨 1 点运行,那么管道可能在周六的凌晨 2 或 3 点运行。如果在管道运行时导出未完成,则使用先前的导出,并且可能会对上周训练的相同数据进行再训练。