使用 AutoNLP 和 Prodigy 进行主动学习 - huggingface

22-01-01 banq

机器学习中的主动学习是一个过程,在该过程中您可以迭代地添加标记数据、重新训练模型并将其提供给最终用户。这是一个永无止境的过程,需要人工交互来标记/创建数据。在本文中,我们将讨论如何使用AutoNLPProdigy构建主动学习管道。
 

AutoNLP和Prodigy

AutoNLP是 Hugging Face 创建的框架,可帮助您在自己的数据集上构建自己的最先进的深度学习模型,几乎无需编码。AutoNLP 建立在 Hugging Face 的转换器数据集推理 API和许多其他工具的巨大肩膀上。
使用 AutoNLP,您可以在您自己的自定义数据集上训练 SOTA 变换器模型,对其进行微调(自动)并将其提供给最终用户。使用 AutoNLP 训练的所有模型都是最先进的并且可以投入生产。
在撰写本文时,AutoNLP 支持诸如二元分类、回归、多类分类、标记分类(例如命名实体识别或词性)、问答、摘要等任务。您可以在此处找到所有受支持任务的列表。AutoNLP 支持英语、法语、德语、西班牙语、印地语、荷兰语、瑞典语等语言。还支持带有自定义标记器的自定义模型(以防 AutoNLP 不支持您的语言)。
 

Prodigy是由 Explosion(spaCy的制造商)开发的注释工具。它是一种基于 Web 的工具,可让您实时注释数据。Prodigy 支持命名实体识别 (NER) 和文本分类等 NLP 任务,但不限于 NLP!它支持计算机视觉任务,甚至可以创建您自己的任务!您可以尝试 Prodigy 演示:这里
请注意,Prodigy 是一种商业工具。您可以在此处了解更多信息。
我们选择 Prodigy 是因为它是最流行的数据标记工具之一,并且可以无限定制。它也很容易设置和使用。
 
。。。

结论
模型之所以是最先进的,是因为训练它们的数据。
更多的相关数据将产生更好的模型,从而产生更好的结果。通过这个实验,我们成功地创建了一个模型,它不仅可以对新闻文章中的实体进行分类,还可以对它们进行分类。使用 Prodigy 和 AutoNLP 之类的工具,我们投入了时间和精力来标记数据集(即使通过 Prodigy 提供的界面变得更简单)。AutoNLP 为我们节省了大量时间和精力:我们不必弄清楚要使用哪些模型、如何训练它们、如何评估它们、如何调整参数、使用哪个优化器和调度器、预处理、后处理等。我们只需要标记数据集,让 AutoNLP 做其他一切。
我们相信使用 AutoNLP 和 Prodigy 等工具可以非常轻松地创建数据和最先进的模型。而且由于整个过程几乎不需要编码,即使是没有编码背景的人也可以创建通常不向公众开放的数据集,使用 AutoNLP 训练他们自己的模型并与社区中的其他人分享模型(或者只是使用他们用于自己的研究/业务)。
详情点击标题