一种基于主动学习的数据自动标注方法与流程

文档序号:11520291阅读:439来源:国知局
一种基于主动学习的数据自动标注方法与流程

本发明涉及主动学习领域,尤其涉及一种基于主动学习的数据自动标注方法。



背景技术:

随着大数据时代的到来,互联网上出现了一种新型职业—数据标注员。数据标注员的工作是使用自动化的工具从互联网上抓取、收集数据,包括文本、图片、语音等等,然后对抓取的数据进行整理与标注。具体的工作流程:首先,标注人员经过培训,确定需要标注的样本数据以及标注规则;然后,根据事先安排好的规则对样本数据进行打标;最后,对标注完以后的结果进行合并。但是,这种打标过程存在以下问题:1、整个标注过程非常复杂,数据量特别多的时候,需要人工劳动力会特别大;2、在数据标注过程中,由于标注人员的精力有限或者标注人员的主观性等因素,导致无法保证标注数据的百分百准确性,即无法判断标注的质量。因此,大量数据的标注过程是一个非常耗时且难以保证准确率的任务。

在真实的应用中,实验数据容易获得,数据规模也是非常大的,由于数据需要处理成有标签样本,因而,需要大量的人员耗时耗力来处理。在大数据发展的今天,通过已标记样本来标记未标记的样本数据是非常常见的一种方法。由于人工标记样本是有限的,而且不能保证所有的人工标记的数据样本都是正确的。而且,在实际问题中,某些样本数据,如基因分析所用的基因组成数据,标记代价很高,所以通常来说,未标记样本数量会远远超过已标记样本的数据。因此,怎样减少人工标注数据的数量,并尽量保证人工标注数据的准确性的此类主动学习方法,成为了近年来的研究热点之一。

因此,本文针对在大数据背景下,基于传统主动学习方法,提出一种基于主动学习的数据自动标注系统,解决人工标注数据的可靠性问题,对于机器学习算法不能正确标注的数据样本进行人工标注,之后,对人工标注的结果利用一种自检机制,对人工标注结果进行反馈,以确保数据标注的正确性。



技术实现要素:

本发明旨在解决以上现有技术的问题。提出了一种缩减工作量且提高人工标注数据准确性的基于主动学习的数据自动标注方法。本发明的技术方案如下:

一种基于主动学习的数据自动标注方法,其包括以下步骤:101、对已标记数据和未标记数据进行处理:首先分别对已标记样本数据和未标记样本数据做聚类处理,保存聚类后所得的k个聚簇中心点(c1,c2,c3,...,ck)和每个聚簇内点到聚类中心的距离d,以及每个聚簇的聚类半径(r1,r2,...,rk);

102、利用多个不同的基分类器对未标记数据进行分类:根据步骤101中经过聚类处理的部分已标记数据训练m个不同的分类器(m1,m2,...,mm),并根据另外一部分数据使用线性回归模型对m个不同基分类器的分类结果做模型融合,得到每个基分类器的权重(i1,i2,...,im),使用这m个分类器结合各自权重对未标记数据进行分类

103、将步骤102训练的m个基分类器对未标记样本进行自动标记,选出分歧较大的数据:用已标记文本数据集训练的m个不同的分类器(m1,m2,...,mm),并用线性回归模型对这m个分类器进行模型融合,确定每个分类器的权重(i1,i2,...,im),基于每一个未知样本的m个基分类器对该样本的分类结果(m1,m2,...,mm)以及分类置信度和每个基分类器的权重求出该样本的最终预测类别,预测类别并根据最终预测类别p和m个基分类器分类结果(m1,m2,...,mm)进行对比求分歧操作,统计分歧的和。将分歧定义为样本融合后的最终分类类别和基分类器分类类别是否相同,相同则分歧为0,不相同为1,最后,计算并选取出分歧和大于k/2的未标记数据,并做标记处理;

104、对分歧熵低的数据进行人工标记;

105、对人工标记结果进行自检,如果自检结果与人工标记的存在差异,则重新将该样本放入队列提醒进行重新人工标记。

进一步的,所述步骤101对已标记数据聚类处理为:

采用聚类算法对已标记数据进行聚类,保存聚类后所得的x个聚簇中心点坐标,每个聚簇的平均半径d,以及当前每个聚簇的真实类别(y1,y2,y3,...,yx)。

进一步的,所述步骤101对未标记数据聚类处理为:

采用聚类算法对未标记数据进行聚类,保存聚类后所得的y个聚簇中心点(c1,c2,c3,...,cy)和每个聚簇内点到聚类中心的距离d,以及每个聚簇的聚类半径(r1,r2,...,ry),在自检过程中方便查找可疑样本x周围的n个最近样本,查找过程:

1)计算x与k个聚簇中心点的距离l,并减去相应聚簇的半径r,得到

l=(l1,l2,...,ly)。

2)取l中值最小的3个簇,设(q1,q2,q3)容器中存放需要的样本,对3个簇做如下操作:

i、对3个簇中的样本点按照距离簇中心点的距离从大到小排列;

ii、依次计算样本点与可疑样本x的距离,如果距离<ln则替换qn掉中的最小值,否则舍去,直到样本点用完或qn已满;

iii、取(q1,q2,q3)中最小的n个值即为所查找的n个最近邻位置。

进一步的,所述聚类算法可以根据数据样本采用包括层次聚类、k-means在内的聚类方法。

进一步的,所述步骤102中不同的基分类器为包括决策树、神经网络、支持向量机、朴素贝叶斯和随机森林在内的分类器。

进一步的,所述步骤103选出分歧较大的数据:用已标记文本数据集训练m个不同的分类器(m1,m2,...,mm),并用线性回归模型对这m个分类器进行模型融合,确定每个分类器的权重(i1,i2,...,im),基于每一个未知样本的m个基分类器对该样本的分类结果(m1,m2,...,mm)以及分类置信度和每个基分类器的权重求出该样本的最终预测类别,预测类别并根据最终预测类别p和m个基分类器分类结果(m1,m2,...,mm)进行对比求分歧操作,统计分歧和。

进一步的,所述步骤105自检过程包括以下步骤:

i、某人工标注样本g找到最近邻n个样本x={x1,x2,…,xn},如果g的近邻样本都已标注,则继续;如果近邻样本存在未标记数据,则跳过并重新选取人工标记数据;

ii计算每一个人工标记数据与101聚类好的已标记数据的簇类中心的距离和簇类半径的差值结果前m个最小值集合w={rr1,rr2,…,rrm}保存这些簇的真实类别(y1,y2,y3,...,ym);根据公式(1)计算根据已标记样本确定的样本类别影响因子;

其中e表示标签值(y1,y2,y3,...,ym)中yi=1的个数,t表示标签值(y1,y2,y3,...,ym)中yi=0的个数;

iii根据在未标记数据选取的近邻样本数据{x1,x2,…,xk},统计其已标记的标签值{p1,p2,…,pk}其中pi∈(1,0),并算取每一个样本数据离人工标记数据的距离{d1,d2,…,dk},根据公式(3)

和(4)分别计算未标记数据样本对该样本权重类别的影响因子;

其中f表示标签值{p1,p2,…,pk}中pi=1的个数,g表示标签值{p1,p2,…,pk}中pi=0的个数;

iv根据ii,iii步骤,根据公式(5)算取自检模块分析出的该样本类别y,如果i=0,n=g,如果i=1,n=f;

如果自检结果y与人

工标记的存在差异,则重新将该样本放入队列提醒进行重新人工标记。

本发明的优点及有益效果如下:

本发明101对未标记样本进行聚类操作并保存相关聚类信息,方便查找某个未知样本周围最近的n个样本,缩短了寻找最近邻样本的时间开销。

102103基于主动学习的思想,在数据标注过程中采用机器学习算法标注和人工标注互补的思路,通过预测类别和基分类器预测类别进行比较,通过分歧和找出分歧大的样本进行人工标注,大大缩减人工标注的成本和开销。同时基于主动学习的思想不断将已确定标签样本不断加入已标记样本集合中并不断重新训练基分类器,强化机器学习算法在人工标注过程中的增量学习过程,增加下阶段机器学习算法对未知样本类别自动预测和标注结果的可靠性。

105该方法考虑到人工标注可靠性问题:对人工标注的结果利用一种自检机制,对人工标注结果进行反馈,以确保数据标注的正确性,允许人工标记数据中的偶然错误。同时在自检过程结合已标记样本的分布情况和未标记样本的分布情况,兼顾了整个样本的分布情况进行标注结果的自检,增强自检的有效性和合理性。

附图说明

图1是本发明提供优选实施例提供一种基于主动学习的数据标注方法流程图;

图2表示人工标注结果自检系统举例说明

图3为本发明实施例一提供一种人工标注的自检方法流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。

本发明解决上述技术问题的技术方案是:

实施例一

参考图1,图1为本实施例提供的一种基于主动学习的文本数据标注系统,具体包括:

101对已标记的文本数据集flag和未标记的文本数据集imflag进行处理:对已标记的文本数据flag进行聚类处理,并标注每个类簇的中心点的值;

所述对已标记的文本数据集flag进行聚类处理是指对于已标记的文本数据集flag样本,根据每一个文本数据样本的标签值进行聚类,相近且类别相同的样本划分成一类,本实验聚类的类簇个数为k,类簇集合表示为{f1,f2,…,fk},并求出每一个类簇的簇中心点的值{a1,a2,…,ak}。

所述对未标记数据集imflag采用基于聚类的线性扫描查找,特殊的查找方式以减少计算距离的次数的非常现实的问题为目的

102利用多个不同的分类器对未标记文本数据集imflag进行分类。用已标记文本数据集flag样本分别训练m个不同的分类器,并用线性回归模型对这m个分类器进行模型融合,确定每个分类器的权重(i1,i2,...,im),之后使用这m个分类器结合各自权重对未标记数据进行分类统计每一个未标记的文本样本的分类结果和分类分歧。

所述多个不同的分类器对未标记数据进行分类是指采用m个分类器,本实验中选取的是决策树、神经网络、支持向量机(svm)和朴素贝叶斯。

103选出分歧高的文本数据:根据102获得每一个分类器对未标记数据集imflag的分类结果,然后把每一个未标记数据的分类结果进行融合,选取分歧大于阈值的数据并做标记处理。

所述将分歧定义为样本融合后的最终分类类别p和m个基分类器分类类别是否相同,相同分歧为0,不相同为1,

104对分歧熵低的数据进行人工标记:对标记数据进行人工标记。

所述对标记数据进行人工标记是指对103选出的信息熵低于阈值t1的样本数据进行人工的标注,人为的判断此样本数据的标签值。在大数据的背景下,这样可以减少人为标注的工作量。

对于已标记数据集flag分别建立决策树、神经网络、支持向量机(svm)、朴素贝叶斯和随机森林分类模型,然后对每一个未标记文本数据进行分类,之后输出分类结果和置信度,根据每个分类器输出的置信度求平均。

比如未标记文本数据在5个分类器中输出的结果为{y1=1,y2=1,y3=1,y4=0,y5=0},其对应的置信度分别为{c1=0.7,c2=0.6,c3=0.8,c4=0.1,c5=0.2},经过线性回归模型后,确定的每个分类器的权重为{r1=0.2,r2=0.1,r3=0.1,r4=0.5,r5=0.1},则该样本的最终置信度c=0.2*0.7+0.1*0.6+0.1*0.8+0.5*0.1+0.1*0.2=0.35,为=0,此样本的分歧为1+1+1+0+0=3,且大于阈值t1(t1=5/2),因此把此未标记数据标记,后续进行人工标记,人为的判断该未标记文本数据的标签值。反之,如果算出的分歧较低,且小于阈值t1,则样本类别为最终置信度决定的类别p。

105对人工标记进行自检:设置一种自检机制对人工标记的数据进行判断,以防止人工标记出现较大的误差。如图2所示的一种人工标注的自检系统:

自检过程如下:

i某人工标注样本g基于权利要求1查找到的最近邻n个样本x={x1,x2,…,xn},如果g的近邻样本都已标注,则继续;如果近邻样本存在未标记数据,则跳过并重新选取人工标记数据。

ii计算每一个人工标记数据与101聚类好的已标记数据的簇类中心的距离和簇类半径的差值结果前m个最小值集合w={rr1,rr2,…,rrm}保存这些簇的真实类别(y1,y2,y3,...,ym);根据公式(1)计算根据已标记样本确定的样本类别影响因子。

其中e表示标签值(y1,y2,y3,...,ym)中yi=1的个数,t表示标签值(y1,y2,y3,...,ym)中yi=0的个数。

iii根据在未标记数据选取的近邻样本数据{x1,x2,…,xk},统计其已标记的标签值{p1,p2,…,pk}其中pi∈(1,0),并算取每一个样本数据离人工标记数据的距离{d1,d2,…,dk},根据公式(3)

和(4)分别计算未标记数据样本对该样本权重类别的影响因子。

其中f表示标签值{p1,p2,…,pk}中pi=1的个数,g表示标签值{p1,p2,…,pk}中pi=0的个数。

iv根据ii,iii步骤,根据公式(5)算取自检模块分析出的该样本类别y,(其中如果i=0,n=g,如果i=1,n=f)。

如果自检结果y与人工标记的存在差异,则重新将该样本放入队列提醒进行重新人工标记。

假设对人工标记的文本样本数据di进行自检,如图2所示的一种人工标注的自检系统:

假设左图为已标注数据聚类结果中,距离待自检样本最近的m=3个聚簇,待自检样本距a簇最短距离为平均值为3,距离b簇平均最短距离为1。

右图为未标记样本聚类结果中查找到的k=5个最近邻样本,样本周围5个样本的类别已经被标注为3个a,2个b。且平均距离a类为3,距离b类样本平均距离为4。

根据公式计算后,

ω′a=1/4

ω′b=3/4

ωa=4/7

ωb=3/7

a的类别概率为1/4*4/7*3=12/28

b的类别概率为3/4*3/7*2=18/28

自检系统认为该样本为b类,如果人工标注为a类则需要重新加入队列重新标注,否则则不需要。

以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1