众包,一般认为是由美国作家杰夫·豪(Jeff Howe)在2006年6月于《众包:大众力量缘何推动商业未来》(Crowdsourcing:Why the Power of the Crowd is Driving the Future of Business)一书中首次提出并做了详细的阐释。书中关于众包的定义为:“一个公司或机构把过去由员工执行的工作任务,以自由自愿的形式外包给非特定的(而且通常是大型的)大众网络的做法。众包的任务通常是由个人来承担,但如果涉及到需要多人协作完成的任务,也有可能以依靠开源的个体生产的形式出现”。
众包是不准确监督的一种典型场景[1],包括机器学习、数据挖掘等在内的技术,通常需要大量带有标记的数据对算法以及模型进行训练、预测以及验证。数据数量越大,准确率越高,算法及模型的效果就越好。结合众包系统获取标签成本低、单个质量不可靠的特点,通常采取对同一实例由多个不同标记者进行标记,并用真值推理算法将所得的多重标签进行整合。基础的真值推理算法有多数投票(MV),此方法要求保证工人的平均正确率大于50%,则工人数量越多,标签质量越高。其他还有一些以投票法为基础的改进形式[2],但实验表明,仅仅通过真值推理的方式效果差别并不明显[3]。在上述真值推理算法的基础上,结合噪声识别和校正是一种行之有效的方案[4],但需要较高的标记质量(如增加众包人数或者寻求更好的标记者),否则结果偏差较大。
从成本和质量两个角度考虑,我们可以由专家首先标记少部分实例,并适当减少众包工人人数和水平来达到成本和质量的最优解。针对这一场景,本文提出了一个适应性较强的基于特征扩维提高众包质量的框架(FA-method),结合少量的专家标签,运用特征扩维的方法对真值推理算法所得的集成标签集进行处理,通过计算每个实例为噪声的可能程度以及集成标签的噪声数量的上限区分噪声,并进一步提高标签质量和可靠性。实验证明,本方法在不同标记质量下均可以取得较好的效果,在众包标记质量较低或众包工人较少的情况下,依然可以得到较高质量的标签。并且以校正后的数据集训练所得模型的泛化能力有进一步的提高。和现有的结合噪声识别和校正的框架相比也具有优势。
1 相关工作通常,在人工智能领域,采用众包的方法获取标签有两个目的:其一是为了获得大量的带有标签的数据,专注于标签本身的质量,以所得标签与真值相比的准确率为度量;其二是获取更多数据以训练模型,专注于所得模型的质量,以模型的泛化能力为度量。
对于前者,常见思路是通过众包标签集推断真实标签,如上文所述,目前最常用且简单有效的方法为多数投票(MV),即针对每个实例的多重标签集合,取多数为最终标签[5]。该方法的前提是工作人员的准确率需高于50%,在此基础上,随着工作人员数量的增加,其正确率会不断提高。其他方法还有GLAD方法[6]、贝叶斯方法RY[7]、ZenCrowd算法[8]等,一些对不同数据集进行实验证明,这些真值推理方法效果差异并不明显[3, 9]。因此,仅仅通过设计新颖的推理算法来提高标签质量比较困难。
对于后者,一种思路是在上面真值推理方法所得的集成标签基础上进一步识别出疑似噪声样本并在数据集中将其去掉。一项实验证明,简单去除噪声可以提高所训练模型的质量[10],因此一些噪声识别方法可以应用于此。例如,基于阈值的方法[11-12],用一些特殊的标准(例如熵)来对每个实例进行打分。如果分数超过阈值,则该实例将被视为噪声;基于模型预测的过滤算法,通过模型对实例进行分类并识别噪声,有如表决过滤(VF)[13],对数据集进行多次交叉验证,若超过一半不相同则认为该实例为噪声样本。
目前常用的方法,或者标签质量不够理想,或者需要去除部分实例以保证质量。为达到既能保证质量,又能完整保留数据集全部实例的目的,Zhang等首先提出了将噪声识别和校正相结合的方法AVNC[4]。在集成标签的基础上,首先由多次交叉验证识别噪声,计算噪声可能程度和噪声数量范围以识别噪声,然后采用集成学习的方式进行校正。此方法在标记质量较高时有不错的效果,当标记质量较低时,仅仅通过交叉验证识别会产生较大的偏差,从而导致后续校正无法继续。
为解决上述问题,本文在AVNC所采用的噪声识别和校正相结合的基础框架上做了改进,引入了少量专家标记,并采用特征扩维的方法进行噪声识别和校正,保证了当标记质量较低时所得结果质量的稳定。
2 基于特征扩维的众包质量提高方法 2.1 基本框架图1所示为本方法的基本框架。首先,由每个众包工人标记的结果训练一个模型,并对专家集进行预测,所得结果作为专家集新的特征。之后用扩维后的专家集训练模型并对原始数据进行预测,与集成标签相比较,计算每个实例的集成标签是噪声的可能程度以及噪声数量。将集成标签划分为质量可靠的保留集和需要校正的含噪声集,同时形成用于辅助校正的M个辅助集。之后用辅助集对保留集扩维,对含噪声集合进行校正,最终将校正后的数据和保留集合并为最终结果。整个框架的关键在于噪声识别和噪声校正两个部分,将在后文分别介绍。
Download:
|
|
本文所用的特征扩维方法类似于文献[14],是一种两层学习器结合的方法,以噪声识别部分为例:首先由众包数据训练出一组初级学习器,然后输出所得的类概率作为专家数据集的新的特征,专家数据集的标签仍作为新数据集的标签。这些增加的特征实质上可以打开原始输入空间的流形结构,从而可以增强的专家数据集的分类性能。与由专家集直接训练模型相比,其在泛化性能上能够有进一步的提高。
设J个众包人员标记的众包标签集为 C =
for
end for
输出:
定义一个众包系统,以下均针对二分类情况。设众包数据共有I个实例,每个实例均经过众包工人标记了J个标签。对于每个实例i,其特征记为Xi,J个标签集合记为
对于每个标记者,可以简单按式(1)估计出其错误率:
${q_j} = \sum\limits_{i = 1}^I {{I}} \left( {l_i^j \ne {{\hat y}_i}} \right)/I$ | (1) |
对于每个实例i,由基础分类算法(如决策树)进行M轮预测后会得到M个分类标签
${c_i} = \sum\limits_{m = 1}^M {{I}} \left( {l_i^m \ne {{\hat y}_i}} \right)$ | (2) |
式(1)和式(2)中函数
第m轮扩维将实例i预测为正例的概率为c1 m,预测为负例的概率为c−1m。则实例i的标签不确定程度可由式(3)来度量,即:
${e_i} = - \sum\limits_{m = 1}^M {\left[ {c_{ - 1}^{\left( m \right)}\log c_{ - 1}^{\left( m \right)} + c_1^{\left( m \right)}\log c_1^{\left( m \right)}} \right]} $ | (3) |
下面定义一个量αi来表示实例i的集成标签,
${{\rm{\alpha }}_i} = {c_i} + \left( {{e_i}/\sum\limits_{i = 1}^I {{e_i}} } \right)$ | (4) |
αi是一种双层排序,以不相同次数ci作为整数部分,以不确定度做小数部分。不相同次数ci将标签集分为M+1组,ci越大,意味着有更多的模型将这个标签标记为噪声。在每组内又按照不确定程度进行排序,不确定程度越大,意味着越有可能是噪声。按αi大小对所有实例进行排序,显然αi越大,就意味着集成标签
接下来计算噪声可能的数量,以期将集成标签进行划分。由于我们采用的是投票法对众包标签集进行初步整合,为保证识别出的高质量集的质量可靠,本着“宁缺毋滥”的原则,因此我们需要计算出噪声比例的上限。
由式(1)可计算贴标者错误率为q,通过投票法整合J个标记者,超过半数正确则集成结果正确。在这里,各个标记者错误率可视为相互独立,可由Hoeffding不等式推导出集成错误率的上限[15]:
$\begin{array}{l} Q = \displaystyle\sum\limits_{k = 0}^{\left\lfloor {J/2} \right\rfloor } {\left( \begin{array}{l} J\\ k \end{array} \right)} {q^{J - k}}{\left( {1 - q} \right)^k} \leqslant\\ \! \exp \left( { - \dfrac{1}{2}J{{\left( {1 - 2q} \right)}^2}} \right) = {Q_{\max }} \end{array}$ | (5) |
$\begin{array}{l} {\rm noise\_num} = {Q_{\max }} \cdot I =\\ \exp \left( { - \dfrac{1}{2}J{{\left( {1 - 2q} \right)}^2}} \right) \cdot I \end{array}$ | (6) |
按αi大小对所有实例进行降序排序,我们可以将集成标签集分为两部分:前noise_num个标签为待进一步处理的含噪声集,其余为可靠的保留集。
2.4 噪声校正部分目前,关于噪声校正的研究数量较少,且一些实验也证明校正噪声是比较困难的。一种直接的思路是,在分离出含噪声的集合后,用高质量集直接训练模型对噪声集进行校正,但效果不理想。
为了提高分离出的高质量集所训练的模型的泛化能力,我们再次使用扩维的方法:噪声识别过程中,每轮扩维预测后,每个实例i均获得一个标签li,若
该算法主要时间消耗在于对专家集扩维、对保留集扩维两个部分,且与所选择的基础算法
Download:
|
|
由上文所述,众包通常关注于两个结果:1)标签本身质量;2)训练所得模型的质量。因此在这里分别进行实验。基础的学习模型均采用决策树,由python的sklearn库实现,参数均取默认值,取M=5。
3.1 实验数据实验数据来自UCI机器学习库的8个数据集,它们具有不同的数量的实例,不同的类分布,不同数量的特征及其类型,以便验证本方法在不同情况下的适用性。其中4个为较小规模数据集,4个为较大规模数据集。在模拟实验中不对数据集本身做任何特征处理。数据集具体情况如表1。
首先,在较大规模数据集取r=0.05的数据,较小规模数据集取r=0.1的数据作为专家标签集,以他们的真实标签作为专家标记的标签。接下来模拟众包的过程:创建一个模拟标记者,为数据集中的每个实例标记一次。然后,第二个模拟标记者执行相同的任务,直到第J个模拟标记者完成同样的任务。最终,使每个实例都包含J个标签。模拟标记者的标记质量均匀分布,且所有的模拟标记者都有不同的标记质量。所有实例以及它们对应的多个噪声标签集形成一个模拟众包标签数据集。默认J取10,平均质量较高的情况下,取模拟标记者质量范围为[0.6,0.8],平均为0.7;平均质量较低的情况下,取模拟标记者质量范围为[0.5,0.7],平均为0.6,每个实例的集成标签由多数投票产生。
3.2 准确率对比众包的一个目的在于获得大量数据的标签,因此需要考察众包处理后的标签和真实标签的准确率。由于AVNC是首次被提出将噪声识别和校正组合来提升众包质量的方法,且实验证明其可以进一步提高标签集成算法的质量。因此本次实验选择多数投票为基础标签集成算法,在其基础上比较AVNC和FA-method对于众包质量的提高程度。实验方法如下:
1)直接由多数投票形成的集成标签(MV);
2)多轮交叉验证,计算噪声数和不相同次数划分噪声集,采用集成学习方法进行校正(AVNC);
3)由特征扩维识别并校正噪声(FA-method)。
每种方法重复实验10次,每次随机取奇数个模拟标记人员所标记的标签(避免多数投票出现随机值),对比三者所得到的标签和真实值相比的准确率以及标准差。
图3和图4分别是平均标记准确率为0.7和0.6时4种方法的准确率。
Download:
|
|
Download:
|
|
1)和多数投票所得集成标签相比,本方法能够在其基础上较大幅度提高标签的质量;
2)和现有方法相比,除sick和tic-tac-toe数据集外,本方法无论在标记质量较高或较低、标记人数多或少的情况下所得结果均较高;
3)本方法在标记人数3人以下时和其他方法相比有明显优势,3人以上时略优于其他方法,因此可以在适当减少标记人数的情况下保证标记质量;
4)对比图3和图4可见,当标记质量较低时,对比方法质量明显下降,而本方法下降幅度与之相比则下降不很明显;
5) sick和tic-tac-toe数据集效果不佳,其原因在于数据集分布不平衡,随机选取的专家集可能有严重的偏向,从而影响识别和校正的性能。
3.3 训练模型对比众包的另一个目的,是为机器学习的大量数据集进行标注,以提高模型的泛化能力。因此还需要考察的是修正噪声后的数据集和简单去除噪声的数据集相比,生成的模型的识别能力是否有所提高。这里选择VF进行噪声识别。实验方法如下:对每一个数据集,划分70%为训练集,30%为验证集,其中训练集按前文方法进行校正,比较下列3种方法:
1)将众包标签集直接采用投票方法融合,训练模型对验证集预测;
2)采用VF算法,多轮交叉验证,大于一半不相同视为噪声,直接去除掉噪声,剩余数据训练模型对验证集预测;
3)采用FA识别并校正噪声,将校正过的数据重新加入数据集并训练模型对验证集预测。
评价标准为AUC,即ROC曲线下面积。每种方法重复实验10次,每次随机取奇数个模拟标记人员所标记的标签,比较其标准差和平均值。
图5和图6分别是平均标记准确率为0.7和0.6时4种方法的所得标签训练模型的效果对比。
Download:
|
|
Download:
|
|
1)简单去除噪声可以提高所训练模型的质量,这验证了文献[9]的结论;
2)和简单去除噪声数据相比,本方法提供了将噪声实例校正并重新加入数据集的机会,从而能够训练出更好的模型。
3)对比图5和图6,本方法在标记质量下降时,所得众包结果训练模型的AUC降幅不大,证明本方法在标记质量较差时能够保持结果的稳定。
4) sick数据集结果不佳,原因在于其数据分布极不均衡,随机选择的专家集可能会出现严重的偏向,从而影响识别和校正效果。
3.4 不平衡数据集针对sick和tic-tac-toe等不平衡数据集出现的性能不佳的情况,有如下实验:在选择专家集时,尽量保证正负例数量基本一致,其余条件不变,实验结果如下。
首先是准确率对比,图7和图8为两数据集分别在高质量和低质量标记情况下校正的准确率。
Download:
|
|
Download:
|
|
其次是训练模型对比,图9和图10为两数据集分别在高质量和低质量标记情况下所得校正结果训练模型的AUC。
Download:
|
|
Download:
|
|
由上述实验可知,专家集的选取对本方法有一定影响,在处理不平衡数据集时,随机选择的专家集可能会导致样本偏差较大从而影响到最终的结果,人为选择使得专家集正负样本基本一致会改进这种情况。
4 结论1)本框架在工作人员数量较低或标记质量较低时均能取得不错的效果,且和增加标记人数或提高标记质量所得结果差异不大。换句话说,可以在适当降低成本的同时获得更高质量的结果;
2)和现有识别和验证框架比,由于引入专家标签,使得在标记质量较低时也能够取得不错的效果,且标记质量较高时准确率能够进一步提高;
3)提供了将噪声实例校正并重新加入数据集的机会。
本方法只适用于二分类标签,而扩展到多分类的情况时会变得较为复杂,结果偏差会变大。另外,本方法对于分布极不均衡的数据集效果略差,如何应对也需要做进一步的研究。
[1] | ZHOU Zhihua. A brief introduction to weakly supervised learning[J]. National science review, 2018, 5(1): 44-53. DOI:10.1093/nsr/nwx106 (0) |
[2] | HU Huiqi, ZHENG Yudian, BAO Zhifeng, et al. Crowdsourced POI labelling: location-aware result inference and task assignment[C]//Proceedings of 2016 IEEE 32nd International Conference on Data Engineering. Helsinki, Finland, 2016: 61–72. (0) |
[3] | RODRIGUES F, PEREIRA F C, RIBEIRO B. Gaussian process classification and active learning with multiple annotators[C]//Proceedings of the 31st International Conference on International Conference on Machine Learning. Beijing, China, 2014: II–433–II–441. (0) |
[4] | ZHANG Jing, SHENG V S, LI Tao, et al. Improving crowdsourced label quality using noise correction[J]. IEEE transactions on neural networks and learning systems, 2018, 29(5): 1675-1688. DOI:10.1109/TNNLS.2017.2677468 (0) |
[5] | IPEIROTIS P G, PROVOST F, SHENG V S, et al. Repeated labeling using multiple noisy labelers[J]. Data mining and knowledge discovery, 2014, 28(2): 402-441. DOI:10.1007/s10618-013-0306-1 (0) |
[6] | WHITEHILL J, RUVOLO P, WU Tingfan, et al. Whose vote should count more: optimal integration of labels from labelers of unknown expertise[C]//Proceedings of the 22nd International Conference on Neural Information Processing Systems. Vancouver, British Columbia, Canada, 2009: 2035–2043. (0) |
[7] | RAYKAR V C, YU Shisheng, ZHAO L H, et al. Learning from crowds[J]. Journal of machine learning research, 2010, 11: 1297-1322. (0) |
[8] | DEMARTINI G, DIFALLAH D E, CUDRÉ-MAUROUX P. ZenCrowd: leveraging probabilistic reasoning and crowdsourcing techniques for large-scale entity linking[C]//Proceedings of the 21st International Conference on World Wide Web. Lyon, France, 2012: 469–478. (0) |
[9] | MUHAMMADI J, RABIEE H R, HOSSEINI A. A unified statistical framework for crowd labeling[J]. Knowledge and information systems, 2015, 45(2): 271-294. DOI:10.1007/s10115-014-0790-7 (0) |
[10] | FRENAY B, VERLEYSEN M. Classification in the presence of label noise: a survey[J]. IEEE transactions on neural networks and learning systems, 2014, 25(5): 845-869. DOI:10.1109/TNNLS.2013.2292894 (0) |
[11] | GAMBERGER D, LAVRAČ N, DŽEROSKI S. Noise elimination in inductive concept learning: a case study in medical diagnosis[C]//Proceedings of the 7th International Workshop on Algorithmic Learning Theory. Sydney, Australia, 1996: 199–212. (0) |
[12] | SUN Jiangwen, ZHAO Fengying, WANG Chongjun, et al. Identifying and correcting mislabeled training instances[C]//Proceedings of Future Generation Communication and Networking. Jeju, South Korea, 2007: 244–250. (0) |
[13] | BRODLEY C E, FRIEDL M A. Identifying mislabeled training data[J]. Journal of artificial intelligence research, 1999, 11(1): 131-167. (0) |
[14] | ZHOU Ta, ISHIBUCHI H, WANG Shitong. Stacked-structure-based hierarchical Takagi-Sugeno-Kang fuzzy classification through feature augmentation[J]. IEEE transactions on emerging topics in computational intelligence, 2017, 1(6): 421-436. DOI:10.1109/TETCI.2017.2761915 (0) |
[15] | ZHOU Zhihua. Ensemble methods: foundations and algorithms[M]. Boca Raton: Taylor & Francis, 2012. (0) |