利用零样本标注

在现代机器学习应用中,高质量的标记数据的重要性不言而喻。从提高模型性能到确保公平性,标记数据的力量是巨大的。不幸的是,创建这样的数据集所需的时间和精力同样重要。但是,如果我们能将这项任务所花费的时间从几天减少到几个小时,同时保持甚至提高标记质量,那该多好啊?乌托邦的梦想?不再是。
机器学习中新兴的范式——零样本学习、少样本学习和模型辅助标注——提供了一种转变性的方法来处理这一关键过程。这些技术利用先进算法的力量,减少了对大量标记数据集的需求,实现了更快、更高效、更有效的数据注释。
在本教程中,我们将介绍一种使用大型语言模型(LLM)的上下文学习能力来自动标记非结构化和半结构化文档的方法。
从SDS中提取信息
与传统的监督模型不同,传统模型需要大量的标记数据来训练解决特定任务,而LLM可以通过利用其庞大的知识库从少量示例中概括和推断信息。这种新兴的能力,即上下文学习,使LLM成为许多任务的多用途选择,包括文本生成和命名实体识别等数据提取。
在本教程中,我们将使用GPT 3.5(也称为ChatGPT)的零样本和少样本标注能力,对来自不同公司的安全数据表(SDS)进行标注。SDS提供有关特定物质或混合物的全面信息,旨在帮助工作场所有效管理化学品。这些文件在提供详细的危险信息、涵盖环境风险以及提供有关安全预防措施的宝贵指导方面起着重要作用。SDS作为一种不可或缺的知识来源,使员工能够对工作场所中化学品的安全处理和利用做出明智决策。SDS通常以各种布局的PDF形式出现,但通常包含相同的信息。在本教程中,我们有兴趣训练一个AI模型,自动识别以下实体:
- 产品编号
- CAS编号
- 用途
- 分类
- GHS标签
- 公式
- 分子量
- 同义词
- 应急电话号码
- 急救措施
- 组成成分
- 品牌
提取这些相关信息并将其存储在可搜索的数据库中,对许多公司来说具有很大的价值,因为它可以快速搜索和检索危险成分。以下是一个SDS的示例:

零样本标注
与文本生成不同,信息提取对LLM来说是一项更具挑战性的任务。LLM经过训练可用于文本完成任务,当要求提取相关信息时,LLM往往会产生额外的评论或文本。
为了正确解析LLM的结果,我们需要从LLM获得一致的输出,例如JSON格式。这需要进行一些提示工程才能做到。此外,一旦结果被解析,我们需要将其映射到输入文本中的原始标记。
幸运的是,所有这些步骤都已经完成并通过UBIAI注释工具进行了抽象。在幕后,UBIAI进行提示,将数据分块以使其低于上下文长度限制,并将其发送到OpenAI的GPT3.5 Turbo API进行推理。一旦输出被发送回来,数据就会被解析、处理并应用于您的文档进行自动标注。
要开始,请简单地上传您的文档,无论是原生PDF、图像还是简单的Docx,然后转到注释页面,在注释界面中选择少样本标签页:

了解更多详情,请点击这里查看文档: https://ubiai.gitbook.io/ubiai-documentation/zero-shot-and-few-shot-labeling
UBIAI 可以让您配置模型学习的示例数量,以便自动标记下一个文档。该应用程序将自动从已标记的数据集中选择最具信息量的文档,并将它们连接在提示中。这种方法称为 Few-shot 标记,其中的“Few”范围从0到n。要进行配置,只需单击配置按钮并输入示例数量,如下所示。

在本教程中,我们将为 LLM 提供零个示例,并要求它仅基于实体本身的描述标记数据。令人惊讶的是,LLM 能够非常好地理解我们的文档,并且大部分标记都是正确的!
下面是在没有任何示例的情况下对 SDS PDF 进行零-shot 标记的结果,非常令人印象深刻!

结论
利用大型语言模型(LLMs)自动从 PDF 中提取实体已经成为现实,这要归功于LLMs在上下文学习方面的能力,如零-shot学习和Few-shot学习。这些技术利用LLMs的潜在知识来减少对大量标记数据集的依赖,实现更快、更高效、更有效的数据注释。
本教程介绍了一种自动标记半结构化文档的方法,特别关注安全数据表(SDS),但也适用于非结构化文本。通过利用LLMs的上下文学习能力,特别是GPT 3.5(chatGPT),本教程展示了在SDS中自动识别重要实体的能力,如产品编号、CAS编号、用途、分类、GHS标签等。
如果将提取的信息存储在可搜索的数据库中,对企业来说将提供重要价值,因为可以快速搜索和检索危险成分。本教程突出了零-shot标记的潜力,即LLM可以在没有任何显式示例的情况下理解并提取SDS中的信息。这展示了LLMs的多功能和泛化能力,超越了纯文本生成任务。
如果您有兴趣利用LLMs的零-shot能力创建自己的训练数据集,请在这里安排一个演示。
在 Twitter 上关注我们 @UBIAI5!