一种考虑了不均衡查询代价的多标签主动学习方法与流程

文档序号:18011620发布日期:2019-06-26 00:10阅读:233来源:国知局
一种考虑了不均衡查询代价的多标签主动学习方法与流程

本发明涉及机器学习技术领域,尤其涉及一种考虑了不均衡查询代价的多标签主动学习方法。



背景技术:

多标签主动学习的查询策略通常遵循三个原则:即不确定性原则,即查询分类不确定度最大的实例;多样性原则,即查询与已标记的实例相差较大的实例;代表性原则,即查询数据集中最具有代表性的实例。

目前多标签主动学习方式主要有如下三种:

1、一维的多标签主动学习

一维的多标签主动学习指的是每次查询一个实例的所有标签。在目前的研究中,有多种选择策略被提出。一是选择所有标签中不确定性最小的实例。二是选择由其所有标签的不确定性的平均值最小的实例。三是选择一个能够最小化预计损失期望的实例。另外,还有一个策略需要训练一个额外的逻辑回归模型来预测一个实例中标签的数量,这个策略还考虑了不同标签之间的关系。

2、二维多标签主动学习

二维多标签主动学习指的是每次查询一个实例-标签对。这种学习范式依然有多种查询策略被提出。一是可以选择最大误差减小期望的一个实例-标签对,这里误差减小期望使用贝叶斯方法来估计;二是可以选择具有最大不确定性的一个实例-标签对;第三种策略采用基于排序误差的子空间学习方法作为辅助模型。

3、其它的多标签主动学习范式

其它的多标签主动学习范式包括多实例多标签主动学习、多视角多标签主动学习等。此外还有一种查询范式:每次查询一个实例的两个标签,并判断哪个标签与该实例相关性更高。对于每次查询,相比于仅查询一个实例-标签对,该查询范式可以获得更多的信息。

但是,以上所提到的三种方法均有其不同的局限性,这些局限性的共同点主要表现为,使用现有的多标签主动学习方法查询任意实例-标签对的代价是相同的,这与实际情况有一定偏差。在实际应用中,标注者的熟悉程度会影响标注速度,因此查询不同的实例-标签对所需的代价往往是不同的。



技术实现要素:

本发明的目的是提供一种考虑了不均衡查询代价的多标签主动学习方法。

本发明的目的是通过以下技术方案实现的:

一种考虑了不均衡查询代价的多标签主动学习方法,其特征在于,包括:

从数据集d中选取已标签数据集dl来训练一个多标签分类模型,其中,数据集d为已标签数据集dl与未标签数据集du的并集,数据集d={(x1,y1),(x2,y2),...,(xn,yn)},n为实例的数量,实例xi表示从文本数据中提取的一个d维的特征向量,每一维是一个实数,i=1,2,...,n;yi=(yi1yi2...yik)t表示实例xi对应的标签,k表示标签的最大数量;

结合多标签分类模型使用初始阶段的策略,从未标签的数据集中选择一个实例-标签对进行查询,并将所选择的标签从相应实例的未知标签集合中删除;同时,如果所选择的实例属于未标签的数据子集则将相应实例移入已标签数据集dl,否则将相应实例从移入其中,

在每k次查询后,均更新多标签分类模型;同时,利用更新后的多标签分类模型使用初始阶段的策略选择实例-标签对进行查询,当选取的实例-标签对达到一定数量时,使用稳定阶段的策略来选取实例-标签对,直至拥有足够数量的实例-标签对。

由上述本发明提供的技术方案可以看出,引入了不均衡查询代价这一概念,提高了多标签主动学习的效果,进而增强了最终的分类模型效果,从而提高分类结果的精确度。传统多标签主动学习认为每次标记消耗的代价相同。由于没有考虑到已打标签越多代价越小的问题,得到的主动学习模型在实践中虽然有效果,但效果还可以更进一步提高。这里的效果使用相同代价下的微-f1值来评估,该评估方法是本领域一致认可的。本发明正是考虑了这一代价,使得在使用相同代价下的微-f1值得到了更进一步的提高。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例提供的一种考虑了不均衡查询代价的多标签主动学习方法的流程图;

图2为本发明实施例提供的代价函数s1(k)的图像示意图;

图3为本发明实施例提供的代价函数s2(k)的图像示意图;

图4为本发明实施例提供的代价函数s3(k)的图像示意图;

图5为本发明实施例提供的数据集medical下使用不同代价函数时本方案与已有四种方法的实施效果示意图;

图6为本发明实施例提供的数据集emotions下使用不同代价函数时本方案与已有四种方法的实施效果示意图;

图7为本发明实施例提供的数据集enron下使用不同代价函数时本方案与已有四种方法的实施效果示意图;

图8为本发明实施例提供的数据集scene下使用不同代价函数时本方案与已有四种方法的实施效果示意图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

由于现有的多标签主动学习方法针对的均为查询代价不变的情境,而实际问题中的查询代价通常是会改变的。因此,本发明的目标是对现有的问题设定做出改进,通过假设使用者在对一个实例进行查询时,查询速度与被查询的标签数量呈正相关,构建一个更接近实际情况的情境。之后,将找到一个衡量解决方法优劣的标准,并找到一个可被证明有效的、针对我们提出的新问题的解决方法。

本发明实施例提供一种考虑了不均衡查询代价的多标签主动学习方法,用以解决multi-labelactivelearningwithunbalancedquerycosts问题(mlalu),假设某个实例-标签对的代价只和该实例已有的标签数目成正相关。举个例子,比如对于长文本分类问题,打标签者被要求回答一些与某个文本相关的问题,比如:问题1、“你阅读了这篇文章后感到高兴吗?”问题2、“这篇文章和机器学习相关吗?”。在这里,一个问题的答复可以看做是一个标签,回答为“是”则为正例,回答为“否”则为负例;实例是一个d维的特征向量,每一维是一个实数,实例通常从文本数据中提取,所述文本数据可以是一篇文章或者其他形式的文本。随着每个实例打的标签越来越多,打标签者越来越熟悉这个文本,标记代价会越来越小。传统多标签主动学习认为每次标记消耗的代价相同。由于没有考虑到已打标签越多代价越小的问题,得到的主动学习模型在实践中虽然有效果,但效果还可以更进一步提高。这里的效果使用相同代价下的微-f1值来评估,该评估方法是本领域一致认可的。本发明正是考虑了这一代价,使得在使用相同代价下的微-f1值得到了更进一步的提高。

在最初的二维多标签主动学习算法中,先使用数据集dl训练一个初始的模型,再用已设计好的条件来选择一个实例-标签对进行查询,通过不断的迭代来更新模型。其目标是使用尽量少的查询次数来获得更高的微-f1分数。在这一过程中,每次查询的代价是相等的。然而在实际应用中,由于标注一个之前未出现过的标签往往更加耗时,查询代价通常是会变化的。因此,本发明提出了新的假设,即一个实例-标签对的查询代价仅与该实例已被查询的标签数有关,已查询的标签数越多,进行新查询的代价越小。在这一假设的前提下,本发明所使用的新的代价函数可表示为:

cost(xi,yi)=s(card(l(xi)))

其中,是一个非减函数。在实际操作中,我们可通过标注一部分用来训练初始模型的实例-标签对的方法来估计代价函数。

此外,在最初的多标签主动学习问题中,会画出micro-f1分数与被查询的实例-标签对的数量的关系曲线,以此比较不同方法的优劣。在mlalu中,这一方法并不十分合适,本发明可通过micro-f1分数与查询代价的关系曲线来比较各方法的优劣。

如图1所示,为本发明实施例提供一种考虑了不均衡查询代价的多标签主动学习方法,其主要包括如下步骤:

步骤1、从数据集d中选取已标签数据集dl来训练一个多标签分类模型,其中,数据集d为已标签数据集dl与未标签数据集du的并集。

在介绍本步骤实现方式之前,先对各符号的定义进行说明。

数据集d={(x1,y1),(x2,y2),...,(xn,yn)},其中n为实例的数量。实例xi,表示一个d维的特征向量,每一维是一个实数,i=1,2,...,n;yi=(yi1yi2...yik)t,其中k表示标签的最大数量,当实例xi的第k个标签为正时,yik=1,否则yik=-1,其中k=1,2,...,k。u(xi)表示实例xi的未知标签集合,l(xi)表示实例xi的已查询标签集合。用card(·)表示一个集合中元素的个数,则有:k-card(u(xi))=card(l(xi))。

将数据集d划分为k+1部分,可以得到:一个含有nl个实例的已标签数据集dl;k个未标签的数据集其k=1,2,...,k,表示为未知标签的数量,每个都含有个实例,即:即,一个数据集中任意实例xi中未知标签的数量均为uk;所有未标签数据子集的并集此时有,d=dludu。

本发明实施例中,使用一种已有的多标签分类模型,该模型也可被用作多标签主动学习的一个辅助模型。这一多标签分类模型的中心思想在于最小化训练集的排序损失的一个凸替代。

实例xi中的第阶标签处,该多标签分类模型的定义为:

其中,f(.)表示标签分类模型,下标k表示的是标签的序号,fk(xi)为实例xi中的第k个标签的分类模型,k=1,...,k,w0是一个m×d阶矩阵,用于将特征向量从特征空间映射到一个共享子空间(sharedsubspace);wk是一个m维向量(m为整数),用于将共享子空间中的特征向量映射到第k个标签上。

对于一个实例xi,引入一个哑标签yi0,yi0哑标签被看做第0个标签,该哑标签在实例xi的正标签与负标签之间取值,其权重向量为w0;

分别记yi+和yi-为实例xi的所有正标签与所有负标签的集合,记i[x]为指示函数,指示函数的定义是当命题x为真时,取值为1,否则为0。

则实例xi与其正标签yij∈yi+的排序误差定义为:

其中,表示排序在正标签yij之前的负标签数量,yil表示实例xi中的负标签,fl(xi)、fj(xi)对应为实例xi中的第l个、第k个标签的分类模型;

则最小化所有实例的排序误差,表示为:

上式所表示的优化问题是非凸的,故引入一个合页损失作为凸替代,则上式变为:

其中,|·|+=max(·,0)。

步骤2、结合多标签分类模型使用初始阶段的策略,从未标签的数据集中选择一个实例-标签对进行查询,并将所选择的标签从相应实例的未知标签集合中删除;同时,如果所选择的实例属于未标签的数据子集则将相应实例移入已标签数据集dl,否则将相应实例从移入

在初始阶段,先选择一个实例,再选择它的一个标签,构成一个实例-标签对。初始阶段的策略有如下两种:1)假设已选择了一个实例x*,在此基础上选择标签的策略;2)选择实例x*的策略;下面针对这两种策略分别进行详细的介绍。

1、假设已选择了一个实例x*,在此基础上选择标签的策略。

此处所提到的实例x*与前文所提到的实例xi概念相同,只是采用不同的表示形式来表示一个被选择的实例,该被选择的实例记为x*

引入了一个自然条件c0,来反映实例x*的一个标签与哑标签之间的距离,从而测量标签的不确定程度,之后将选择距离最短的一个标签,记为标签y*,表达式如下:

其中,fk(x*)、f0(x*)对应为实例x*中的第k个、第0个标签的分类模型;

再将自然条件c0划分为c1和c2两部分,分别只与正标签和负标签有关:

其中,u(x*)表示实例x*的未知标签的集合;

为了利用准则c1和c2引入一个指示变量cri(xi)={1,2},也即,cri(xi)是的下标,当cri(xi)为1时,是c1;当cri(xi)为2时,是c2;初始时,对于实例x*,令cri(xi)=1,之后,用来选择标签,并随之改变的值;如果在使用c1选择时,fk(x*)的预测值无正值,则用c2替代之,反之亦然。

2、选择实例x*的策略。

我们首先提出一个考虑了不确定性与多样性的条件c3,表示为:

其中,表示由已标签数据集dl估计出的标签数量;ξ用来防止分母为零的情况出现,可设置ξ=0.5;表示实例xi的第k个标签的预测值,通过分类模型fk(xi)得到;i[x]为指示函数;

用来计算预测的正标签数量与的差;max(ξ,card(l(xi)))是一个多样化条件,使用这个条件的原因是标签越少的实例所提供的信息量越大。

为了使得选择实例x*的策略更加合理,对c3做出一些改进,得到一个新的预测条件c5,表示为:

其中,card(l(xi)表示实例xi中已查询标签的集合。

改进后的策略更加适合解决我们的问题,原因体现在以下两个方面:

①若使用c3,会得到两个不同实例的两个不同标签,若使用c5,两个不同的标签将来自同一个实例,故使用c5的代价更小,c5更合适。

②联合使用c1与c2选择的两个标签都是期望能改进多标签分类模型的。

步骤3、在每k次查询后,均更新多标签分类模型;同时,利用更新后的多标签分类模型使用初始阶段的策略选择实例-标签对进行查询,当选取的实例-标签对达到一定数量时,使用稳定阶段的策略来选取实例-标签对,直至拥有足够数量的实例-标签对。

在每k次查询后,需要更新多标签分类模型。本发明实施例中,采用随机梯度下降方法(sgd)迭代更新多标签分类模型,每次迭代更新时,先随机选取一个实例xi和一个标签yij’∈yi+∪{yi0};为了选取负标签,构造一个集合如果所选取的标签yij’是一个哑标签,则否则之后,迭代地选取一个负标签直到yil的排序在yij’之前,则r(xi,yij)由这些过程完成前所选取标签的总次数来估计,最后,使用随机梯度下降方法最小化下式:

∈(xi,yij)|1+fl(xi)-fj(xi)|+;

各变量的迭代公式分别为:

其中,w0(t)、w0(t+1)分别为第t、第t+1次迭代时的参数w0,wl是一个m维向量,用于将共享子空间中的特征向量映射到第l个标签上,wl(t)、wl(t+1)分别为第t、第t+1次迭代时的wl;wj是一个m维向量,用于将共享子空间中的特征向量映射到第j个标签上,wj(t)、wj(t+1)分别为第t、第t+1次迭代时的wj;γt为第t次迭代的步长;

对于一个新的实例x,通过比较fk(x)与f0(x)的值来预测第k个标签的值

其中,k=1,...,k。

在初始阶段,使用初始阶段的策略来选取实例-标签对,在查询了一定数量的正实例-标签对后,达到了稳定阶段并开始使用稳定阶段的策略来选取实例-标签对。下面介绍两种策略的切换时机:所需要的正实例-标签对与标签的数量(k)是有正相关关系的,因此,当使用初始阶段的策略选择了ηk个实例-标签对时,使用稳定阶段的策略来选取实例-标签对;其中的η为预设的系数,可根据实际情况进行选取。

在稳定阶段,直接采用c3来选择实例是合理的,但是这一方法倾向于选择已查询标签数较少的实例,这意味着更高的代价。尤其在稳定阶段时,不同实例的已查询标签数差距很小。因此,需要使用一种新的策略,即稳定阶段的策略。

本发明实施例中,稳定阶段的策略包括:

如果集合duk非空,使用c5从duk中一系列的实例xi中选取一个实例xk*及其标签并将其放入一个新的集合x*,再从新的集合x*中选出满足条件的实例及其标签,所选出的实例-标签对记为(x*,y*),此时选择实例-标签对的条件如下:

其中,card(l(xi)表示实例xi中未知标签集合;

即对于一个实例和它的所有标签将从中选择一个实例-标签对使条件c6达到最小。

本发明实施例上述方案,通过选择实例-标签对,再更新模型,再使用更新后的模型继续选择实例-标签对,直至获得足够的实例-标签对,从而实现考虑了不均衡查询代价的多标签主动学习。主动学习的目的是尽可能利用更少的已标记数据训练一个好的分类模型,因此需要一边标记数据,一边更新模型,当模型效果不再变好时(也即得到了足够的实例-标签对),此时停止标记数据。

本发明实施例提供的两种策略考虑了数据的不确定性和多样性。此外,不同实例与哑标签的距离之间的差距比不同实例的标签数的差距小。因此,能较小地受到已查询的标签数的影响,也应当可以降低查询代价。

本发明实施例提供的上述方案及相应的评价方式主要具有如下优点:

1)在问题设定方面,我们对现有的多标签主动学习问题做出了发展,引入了不均衡查询代价这一概念,在问题设定中做出了查询代价随已查询的标签数不断减小的假设,在原问题的基础上提出了“不均衡查询代价的多标签主动学习”这一新问题,使相关问题具有了更强的实际意义。

2)在解决方法方面,我们所提出的方法,相比于已有的2dal、audi、mmc、adaptive四个方法总体上具有优势,很好地解决了我们所提出的考虑了不均衡查询代价的多标签主动学习的问题。即:使用相同代价下的微-f1值的评估方法下,本发明得到了更进一步的提高,该评估方法是本领域一致认可的。

3)在评价方式方面,我们对评价不同算法优劣的方法做出了改进,不再画出micro-f1分数与被查询的实例-标签对的数量的关系曲线,而是通过micro-f1分数与查询代价的关系曲线来比较各方法的优劣,相比前者,后一种方法更适合评价解决mlalu的各算法。

本发明上述方案可以在很多不同的查询代价不均衡的情境下使用,在实验中,测试了采用以下三个代价函数时这一方法的表现。需要注意的是,本发明在问题设定中提到了,是一个非减函数。本发明使用的代价函数有:

这一代价函数对应的实际情况为,查询代价随着已查询的标签数的增加而快速降低,当已查询的标签数达到k0(预设值)时,查询代价不再改变。

这一代价函数对应的实际情况为,在开始阶段,查询代价随着已查询的标签数的增加而快速降低,当已查询的标签数达到一定数量时,查询代价开始缓慢降低。

其中,c是可供用户选择的参数;

这一代价函数s3(k)与代价函数s1(k)对应的实际情况类似,区别在于当k<k0时,s3(k)是线性的,而s1(k)是非线性的。

通过这些代价函数可以来评估相关方案的优劣的,即相同代价下比较不同算法的微-f1值。

为了说明本发明上述方案的效果,还与已有的2dal、audi、mmc、adaptive四个方法进行了对比测试。

其中:

①2dal:最早的二维主动学习方法,通过选择实例-标签对来最小化贝叶斯误差减小的区间。

②audi:最新的二维主动学习方法,通过不确定性与多样性来选择实例-标签对。

③mmc:一种一维主动学习方法,使用者在一个用来预测实例标签数的逻辑回归模型的帮助下,通过选取实例来最大化误差减小的期望。

④adaptive:一种一维主动学习方法,使用者联合使用不确定性原则和多样性原则来选取实例。

前文介绍了适用于mlalu问题设定的代价函数:

其中,k为已查询的标签数量。

上述三个代价函数的图像依次如图2~4所示。

测试所选用的四个数据集来自mulan项目网站,它们的各项指标如表1所示。

表1数据集的各项指标

计算micro-f1分数的公式为:

代价函数和数据集之间一共有十二种组合方式,如图5~图8所示分别反映了本方案与已有四种方法的实施效果,其中横轴均为查询代价,纵轴均为micro-f1分数,图5~图8依次对应于数据集medical、emotions、enron、scene,每一幅图的(a)~(c)分别对应于代价函数s1(k)~s3(k)。

表2~表5反映了每种组合条件下,在查询代价达到总代价不同百分比时,不同方法的micro-f1分数情况。在每组实验中,依据置信度为90%的配对t检验对表现最好的数据进行了加粗。表中的数据形式为“平均值±标准差”。

表2数据集medical下本方案与已有四种方法在各个代价函数下micro-f1分数的对比

表3数据集emotions下本方案与已有四种方法在各个代价函数下micro-f1分数的对比

表4数据集enron下本方案与已有四种方法在各个代价函数下micro-f1分数的对比

表5数据集scene下本方案与已有四种方法在各个代价函数下micro-f1分数的对比

最后,通过表6反映出了本方案在同一置信度的配对t检验下与其它方法相比的输赢情况。表中的数据形式为“(本方案)胜利次数/平局次数/失败次数”

表6不同背景下各方案的输赢情况

由以上的测试可以看出,本方案在超过一半的实验中优于参与比较的其它四种方法,在几乎所有的实验中都有与其它方法相同或更好的效果。此外,在标签数较大的数据集中(medical和enron),本方案非常容易在五个方法中表现最好,在另外两个数据集中,我们的方法更容易与原有的方法效果持平,但无论标签数的多少,本方案的效果至少可以与已有方案持平。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

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