监督学习技术通过学习大量训练数据来构建预测模型,其中每个训练样本都有其对应的真值输出。尽管现有的技术已经取得了巨大的成功,但值得注意的是,由于数据标注过程的高成本,很多任务很难获得如全部真值标签这样的强监督信息。因此,能够使用弱监督的机器学习技术是可取的。本文综述了弱监督学习的一些研究进展,主要关注三种弱监督类型:不完全监督,即只有一部分样本有标签;不确切监督,即训练样本只有粗粒度的标签;以及不准确监督,即给定的标签不一定总是真值。
关键词:机器学习,弱监督学习,监督学习
1 概述
机器学习在多种任务中取得了巨大成功,尤其是在分类和回归等监督学习任务中。预测模型是从一个包含大量训练样本的训练数据集中学习,其中每个样本都对应一个事件或对象。一个训练样本由两部分组成:一个描述事件/对象的特征向量(或实例),以及一个表示真值输出的标签。在分类任务中,标签代表训练样本所属的类别;在回归任务中,标签是样本所对应的实数值。大部分成功的技术,例如深度学习【1】,都需要含有真值标签的大规模训练数据集;然而在很多任务中,由于数据标注过程的高昂代价,很难获得强监督信息。因此,研究者十分希望机器学习技术能够在弱监督前提下工作。
弱监督通常分为三种类型。第一种是不完全监督,即只有训练数据集的一个(通常很小的)子集有标签,其它数据则没有标签。在很多任务中都存在这种情况。例如,在图像分类中,真值标签是人工标注的;从互联网上获得大量的图片很容易,然而由于人工标注的费用,只能标注其中一个小子集的图像。第二种是不确切监督,即只有粗粒度的标签。又以图像分类任务为例。我们希望图片中的每个物体都被标注;然而我们只有图片级的标签而没有物体级的标签。第三种是不准确监督,即给定的标签并不总是真值。出现这种情况的原因有,标注者粗心或疲倦,或者一些图像本身就难以分类。
弱监督学习是一个总括性的术语,它涵盖了试图通过较弱的监督来构建预测模型的各种研究。在本文中,我们将会讨论这一领域的一些进展,重点放在不完全、不确切和不准确的监督条件下进行的学习。我们会分别讨论这三种情形,但是值得指出的是,在实际操作中,它们常常同时出现。为了简便起见,在本文中我们考虑有两个可交换的类别Y、N的二分类问题。形式化表达为,在强监督条件下,监督学习任务就是从训练数据集D = {(x_1, y_1), …, (x_m, y_m)}中学习 f: X -> Y , 其中X是特征空间,Y = {Y, N}, x_i 属于X, y_i 属于Y。
我们假设 (x_i, y_i) 是根据未知的独立同分布D生成的。换言之,是 i.i.d. 样本。
图1示例了我们将在本文中讨论的三种弱监督学习。
图1:三种弱监督学习的示意图。长方形表示特征向量;红色或蓝色表示标签;“?”表示标注可能是不准确的。中间的子图表示了几种弱监督的混合情形。
2 不完全监督
不完全监督是指训练数据中只有一小部分数据有标签,而大部分数据没有标签,且这一小部分有标签的数据不足以训练一个好的模型。形式化表达为,模型的任务是学习:f: X -> Y,训练数据为:D = {(x_1, y_1), …, (x_l, y_l), x_{l+1}, …, x_m}, 即有l个数据有标签(如y_i所示),u = m-l 个数据没有标签,其他条件与强监督学习(如摘要最后的定义)相同。为便于讨论,我们将l个已经标注的数据记为「标注数据」,u个没有标签的数据称为「未标注数据」。
有两种主要的技术能够实现此目的,即主动学习(active learning)【2】和半监督学习(semi-supervised learning)【3-5】。
主动学习假设有一个「神谕」(oracle),比如人类专家,可以向它查询所选未标注数据的真值标签。相比之下,半监督学习试图在没有人为干预的前提下,自动利用已标注数据、以及未标注数据来提升学习性能。有一种特殊的半监督学习,称为直推式学习(transductive learning),它与(纯)半监督学习之间的差别在于,对测试数据(训练模型要预测的数据)的假设不同。直推式学习持有“封闭世界”的假设,即测试数据是事先给定的,且目标就是优化模型在测试数据上的性能;换句话说,未标注数据就是测试数据。纯半监督学习持有“开放世界”的假设,即测试数据是未知的,且未标注数据不一定是测试数据。图2直观的表示了主动学习、(纯)半监督学习、直推学习之间的区别。