0
点赞
收藏
分享

微信扫一扫

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!


基于BML平台快速标注文本数据集

  • ​​一、数据集介绍​​
  • ​​二、文本智能标注原理​​
  • ​​1.基于预训练模型生成「教师模型」​​
  • ​​2.将「教师模型」的能力教给「学生模型」​​
  • ​​三、启动智能标注获得智能标注数据​​
  • ​​1.准备工作​​
  • ​​2.创建文本智能标注任务​​
  • ​​3.完成标注并查看标注数据​​
  • ​​4.优化智能标注​​
  • ​​5.再次启动智能标注​​
  • ​​四、总结与升华​​

昨晚看到​​GT_老张​​发的一篇博客——​​BML全功能AI开发平台完成昆虫目标检测模型的全流程笔记​​,拜读全文之后,我发现老张用的BML(Baidu Machine Learning)平台是最近新出的平台,看起来功能很强大(实际上确实也很强大),当然要体验一下啦!

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_人工智能

一、数据集介绍

我的数据集源自Kaggle,名称叫做​​Emotions dataset for NLP​​,是一个文本情绪分析的数据集,其数据格式是这样的:

data;label

就像下面这样,一共有20000条数据数据,其中有16000条训练数据、2000条测试数据和2000条验证数据:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_文本_02


为了使用BML平台的智能标注功能,我把训练集的标签删除了,保留验证集的标签用于数据标注。

需要注意的是:

  1. 数据集中已标注数据量超过600条
  2. 每个标注标签的数据量超过50条
  3. 未标注数据的数据量超过600条

二、文本智能标注原理

训练模型过程中,通常需要经历数据集准备(标注)、任务网络配置开发、模型的训练和部署等重要过程。很多时候,模型训练在数据准备阶段会遇到数据量不足的问题,使模型开发过程迟迟不能启动。

BML平台推出的文本智能标注功能,目标是通过少量的已标注数据样本,来获得大规模的智能标注数据,通过减少人工逐一校验的工作,使用智能标注数据来训练小型网络模型,以获得效果和性能更优的模型预测服务。

使用文本智能标注数据来训练模型的原理,有点像当前较为流行的模型蒸馏。

1.基于预训练模型生成「教师模型」

BML平台提供的文本智能标注,是使用了当前中文模型效果最好的预训练模型ERNIE2.0。

完成对少量人工标注数据学习后,可以对未标注数据进行预测,从而获得智能标注数据。

优化智能标注的过程中,系统会根据算法挑选出优先标注样本。用户对优先校验样本进行人工校验后,系统又会使用此部分样本重新训练模型,从而获得更精准的智能标注数据。

在使用上,一般重复这个过程1到2遍即可把全部数据给标注好。

2.将「教师模型」的能力教给「学生模型」

ERNIE完成对人工标注数据学习后,生成的模型称之为「教师模型」,通过预测的大规模无监督语料,把「教师模型」的泛化能力通过模型训练教给「学生模型」。如下图所示:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_文本_03


所以,可以使用智能标注数据,在训练任务配置中,不使用ERNIE预训练模型。通过选择小型的网络,即可训练出效果逼近「教师模型」ERNIE Large的模型。

三、启动智能标注获得智能标注数据

1.准备工作

智能标注任务,是对一个数据集中的未标注数据进行智能标注。点击左侧“数据总览”,在出来的界面中点击“创建数据集”,并上传一定量的已标注数据和未标注数据。

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_NLP_04


找到刚刚创建好的数据集,点击“导入”:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_大数据_05


我首先导入了16000条未标注的数据:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_大数据_06


去重后,只有15969条数据,接着导入2000条已标注数据:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_NLP_07


最终导入了1998条已标注数据,此时已标注与未标注数据的比例是1:10

2.创建文本智能标注任务

点击“标注”进入如下界面:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_NLP_08


点击“开启智能标注”,此时平台将会根据已标注数据训练一个教师模型,然后用教师模型标注未标注数据。

此时可以在“智能标注”找到刚刚提交的标注任务:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_机器学习_09

  • 预学习阶段耗时约30-60分钟不等,根据数据集中已标注数据的量而定。
  • 智能标注阶段的耗时跟提交的未标注数据量正相关,即数据量越大,耗时将越长

我自己的数据集在做智能标注时花了大概半个小时的时间,这段时间可以去忙别的,喝口茶。(感觉就像是雇了一个机器员工,让它帮你标注数据,还不用给钱!)

注意:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_文本_10


如果已标注数据少于600条,或每个标注标签的数据量未超过50条,抑或是未标注数据的数据量未超过600条,则会出现错误提示

3.完成标注并查看标注数据

标注完成后,点击“查看结果”,即可看到智能标注的概况:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_NLP_11


点击“立即查看”,跳转到如下界面,:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_人工智能_12


此时数据集被分为「无标注信息」、「有标注信息(人工)」和「有标注信息(智能)」三个标签。

完成智能标注的数据,将放置在「有标注信息(智能)」中, 可以对智能标注数据进行人工校验,完成校验的数据,将被转移到「有标注信息(人工)」,代表此样本确认无误。

也可以在「有标注信息(智能)」中,查看本次智能标注的准确率,以及智能标注数据的总样本数。

4.优化智能标注

如果对智能标注的准确率不满意,可以点击「优化智能标注效果」,来对全部的智能标注数据进行优化。

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_机器学习_13


点击“开始校验”即可进入标注界面:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_人工智能_14

标注了超过100条数据以后,可以点击“启动效果提升

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_人工智能_15


此时系统将会根据刚刚新标注的数据继续训练「教师模型」:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_大数据_16

5.再次启动智能标注

此时,可以继续在此数据集下,增加「未标注」数据,并对新增的「未标注」数据进行智能标注。

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_NLP_17


点击“再次启动”即可再次开启智能标注。此时,智能标注的数据将比「优化智能标注」前质量更高。最后,完成标注后可以查看数据集的各个标签以及每个标签的数据:

【BML全功能AI开发平台初体验】一小时轻松搞定文本数据集标注!_NLP_18


整个流程做下来只花了大概1个小时的时间,这个速度还是非常快的!把之前要人工连续干24小时的工作直接压缩到了1个小时,真的非常高效!

四、总结与升华

总的来说,智能标注这个功能我是非常喜欢的,毕竟可以把更多的时间用在模型开发而不是数据标注上(我不是很喜欢做重复的工作,数据标注真的费时又费力,标注一天,人都要傻了)。

使用BML平台的智能标注功能,只需要少量的标注数据,即可给大量的未标注数据做标注,准确且省时,我觉得这才是真正的人工智能!


举报

相关推荐

0 条评论