利用云视讯API和BigQuery为顶点人工智能文本数据集自动注解

72 阅读4分钟

机器学习从业者面临的主要挑战之一是有无注解的训练数据集,或者缺乏这种数据集。在许多情况下,从业者可能会接触到现有的、经过人工提取的数据集,他们可以利用这些数据集来加速模型的训练。

在这篇文章中,我们展示了如何使用谷歌云AI/ML产品来训练专利申请PDF的文本实体提取模型。我们使用BigQuery、Vision API和Jupyter Notebook来自动注释一个用于模型训练的现有数据集。虽然我们不会深入了解每个步骤的细节,但你可以在这个Jupyter笔记本中查看完整的版本,它作为Vertex AI Samples GitHub仓库的一部分发布。

样本数据集

本例中使用的数据集是来自BigQuery公共数据集具有提取结构化数据的专利PDF样本。它包含存储在谷歌云存储中的美国和欧盟专利子集的第一页的PDF链接。该数据集还包含多个专利实体的标签,包括申请号、专利发明人和出版日期。这为我们下一步的工作提供了理想的数据集。

使用云视觉API对PDF文件进行预处理

今天,顶点AI AutoML实体提取只支持训练数据集的文本数据。我们使用PDF文件的第一步是将其转换为文本格式。Cloud Vision API提供了一个文本检测功能,使用光学字符识别(OCR)来检测和提取PDF和TIFF文件中的文本。它提供了一个批量操作模式,允许我们一次处理多个文件。

准备训练数据集

顶点AI提供了多种方法来上传我们的训练数据集。在我们的案例中,最方便的选择是使用导入文件将注释作为导入过程的一部分。导入文件遵循一个特定的格式,指定我们要训练的每个标签的内容和注释列表。

为了生成注释,我们要查询存储在BigQuery中的现有数据,并找到每个文件中提取的实体的位置。如果一个实体在文本中有多个出现,那么所有的出现都将包括在注释中。然后,我们将以JSON Lines格式将注释导出到谷歌云存储中的一个文件,并在模型训练中使用该文件。我们还可以在Google Cloud Console中审查注释的数据集,以确保注释的准确性。

训练模型

一旦导入文件准备好了,我们就可以在顶点AI中创建一个新的文本数据集,并使用该数据集来训练一个新的实体提取模型。几个小时后,一个模型就可以进行部署和测试了。

评估模型

一旦模型训练完成,你可以在Google Cloud Console中查看模型的评估结果。点击这里了解更多关于如何评估顶点AI AutoML模型。

Model evaluation results

把它放在一起

下图显示了用于构建完整解决方案的各种组件,以及它们之间的相互作用。

Solution diagram

注:此图是使用免费的谷歌云架构图工具创建的,它可以轻松地记录你的谷歌云架构。请查看它,并开始在你自己的项目中使用它!

总结

在这篇文章中,我们已经学会了如何通过使用BigQuery和Vision API来注释地面真实数据来训练顶点人工智能文本实体提取模型。 通过使用这种方法,你可以更容易地复制这个解决方案,并利用现有的数据集来加速你的AI/ML之旅。

接下来的步骤

你可以通过使用这个Jupyter笔记本来尝试这个解决方案。你可以在你的机器上,在ColabVertex AI Workbench中运行这个笔记本。你还可以查看顶点人工智能样本GitHub仓库,了解更多关于使用谷歌云顶点人工智能开发和管理机器学习工作流的例子。

如果你想回顾一下谷歌云为ML从业者提供的更多最新工具集,你可以观看第二届谷歌云应用ML峰会的录音。了解最新的产品公告、专家的见解和客户的故事,可以帮助你在创新的步伐中增长你的技能。

我们祝愿你有一个快乐的机器学习之旅!

特别感谢Karl Weinmeister、Andrew Ferlitsch和Daniel Wang帮助审查本帖内容,并感谢Terrie Pugh的编辑支持。你是最棒的!