首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >主动学习驱动的Prodigy新实体训练

主动学习驱动的Prodigy新实体训练

原创
作者头像
用户11764306
发布2026-03-09 07:21:42
发布2026-03-09 07:21:42
780
举报

视频概述

本视频演示了如何使用Prodigy(一款由spaCy开发团队打造的新一代、基于主动学习的标注工具)来训练一个针对新概念的短语识别系统。具体示例是使用来自Reddit的文本数据,训练一个能够检测文本中药物引用的模型。

主要内容章节

示例输出

展示了训练完成的模型在识别文本中药物实体(如“阿德拉”、“百忧解”、“大麻”等)的实际效果。可以看到模型能够成功从句子中找出并标记出这些药物名称。

模型细节

介绍了所训练的命名实体识别(NER)模型的内部构成。该模型基于spaCy的实现,包含以下几个关键组件:

  • 词袋(Bag-of-Words)特征:捕捉词汇存在信息。
  • Bloom Embeddings:一种用于高效表示词语特征的技巧。
  • 卷积神经网络层(CNN):用于从词序列中提取上下文特征,捕捉局部模式。
  • 过渡解析器(Transition-based Parsing):采用增量解析策略来构建和标记实体,这使得模型在速度和效率上表现优异。

训练配方(Recipe)

讲解了如何使用Prodigy的命令行配方(recipe)来启动标注和训练流程。核心命令是 prodigy ner.teach,它启动了一个主动学习循环:

  1. 初始模型:从一个初始的空白模型或预训练模型开始。
  2. 智能建议:Prodigy通过主动学习算法,从无标注数据中挑选出最具信息量的样本供标注。
  3. 在线学习:标注者的每一次标注都会立即反馈给模型,模型在线更新,从而在后续的样本选择中表现得更好。

训练进度可视化

展示了Prodigy提供的实时训练进度条和统计信息。用户可以直观地看到模型在训练集上的损失下降以及关键指标(如精确率、召回率)的变化趋势,这有助于判断模型是否在有效学习。

最终训练与模型保存

在完成一定数量的标注后,使用prodigy ner.batch-train命令在已标注的数据上对模型进行最终训练。训练完成后,可以将模型保存为一个独立的spaCy模型包,以便后续加载和使用。

模型评估

最后,演示了如何在新数据上加载并评估训练好的模型,验证其在未见过的文本上的泛化能力。

关键技术与资源

  • Prodigy: 一个高效的主动学习标注工具。
  • spaCy: 用于高级自然语言处理的Python库。
  • 主动学习: 一种机器学习策略,模型主动选择最有价值的数据让人类标注,从而最大化标注效率。
  • 数据集: 示例中使用了2015年Reddit评论公开数据集。FINISHED

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 视频概述
  • 主要内容章节
    • 示例输出
    • 模型细节
    • 训练配方(Recipe)
    • 训练进度可视化
    • 最终训练与模型保存
    • 模型评估
  • 关键技术与资源
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档