目录
Semi-Supervised Learning(半监督学习)
论文详情
论文标题:A Brief Introduction to Weakly Supervised Learning
论文作者:Zhi-Hua Zhou
发表时间:2018年1月
发表刊物:National science review
原文链接:brief introduction to weakly supervised learning | National Science Review | Oxford Academic
摘要
监督学习技术通过从大量训练样本中学习来构建预测模型,每个训练样本都有一个标签指示其真实的输出。尽管当前的技术已经取得了很大成功,但值得注意的是,在许多任务中,由于数据标注过程成本高昂,难以获得强监督信息,如完全的真实标签。因此,期望机器学习技术能够处理弱监督。本文回顾了弱监督学习的一些研究进展,重点讨论了三种典型的弱监督类型:不完全监督(只有一部分训练数据被标注);不精确监督(训练数据只给出粗略标签);不准确监督(给定的标签不总是准确的真实标签)。
前言
在实际训练模型的过程中,使用的数据可能会因标注成本高昂,数据匮乏等情况而出现无法正常实现强监督的目标,这个时候就需要弱监督学习技术来解决这个问题。本文作者主要讲了三种弱监督学习类型,它们分别为:不完全监督(incomplete supervision),不精确监督(inexact supervision),不准确监督(inaccurate supervision),而这三种弱监督学习类型又有很多实现方法。
Incomplete Supervision(不完全监督)
Incomplete Supervision主要用于只有少量标注数据的情况。一般这种方法的目的是,让模型学习到一个 X 到 Y 的对应关系,在计算机视觉的背景下,X可以粗略的理解为给出的图片,而Y可以理解为这张图片相关的标签。
有了这个前提,Incomplete Supervision的训练数据集就可以表示为D ={(x1, y1), . . . , (,
),
. . . ,
}, 其中有括号的就是代表有标注的部分(在文中也叫“labeled data”),没有括号的就是没标注的部分(在文中叫“unlabeled data”)。
为了解决这个问题,有两种主流的技术分别是active learning和semi-supervised learning。
Active Learning(主动学习)
Active Learning简短来说就是通过现有的labeled data来挑选最有价值的unlabeled data,然后人为给这些有价值的unlabeled data进行标注,然后将这些新标注的数据作为labeled data重新训练,更新模型,如此往复迭代。
下面是Active Learning的流程图,方便理解
Semi-Supervised Learning(半监督学习)
semi-supervised learning方法与active learning的最大不同就是这个方法不需要人为标注label。
对于这个方法,作者给出了一个直观的例子
假设有一个正负的预测问题,如图所示
test data point位于+和-的中间,所以无法分类,但是如果我们观察其他一些没有被标记的点,也就是右图中的灰点就可以初步判断,这个点更有可能属于+的部分。
这里也有两种假设,分别是cluster assumption和manifold assumption
Cluster Assumption(集群假设)
这种方法假设数据集有多个集群(可以理解为点聚集的高密度区域),不同类别的样本一般都位于某个集群区域中,而且这些集群区域之间是被低密度区域隔开的(可以理解为离散的点)。
Manifold Assumption(流形假设)
流体假设认为,高维数据实际上存在于低维流形上,这意味着虽然数据表面上看起来复杂的分布在高维空间中,但是它们是由一个低维度结构生成的。而且,数据的类别标签在低维流形上是平滑变化的,也就是说在流形上相邻的点可能属于同一类别。
下面是semi-supervised learning的流程图
Inexact Supervision(不精确监督)
Inexact supervision使用的场景是给出的训练数据有标签,但是标签不准确的情况。
Inexact Supervision任务的训练数据集可以表示为D = {(,
), . . . , (
,
)},这里的每一个X都是一个"bag",这里面每一个"bag"里面都有多个实例,
表示的就是实例的标签,如果一个bag是正包,那么代表这个包里面至少有一个实例x是正例,但是不知道这里面哪一个x是正例。如果一个包是负包,那么这个包里面的实例x全部都是负例。
在训练过程中,模型学习的就是如何基于包中的多个实例集合来做预测,这也就是多实例学习
Inaccurate Supervision(不准确监督)
Inaccurate supervision使用的情景是数据包标注不准确的情况。
这里的基本思想就是识别潜在的错误标记实例,然后尝试进行校正。
假如有一个图,这个图中每一个节点表示一个训练实例,链接两个具有不同标签的节点的边叫做切割边(cut edge),如果一个实例跟很多cut edge相连,那么这个实例就可以被认为是可以的,需要被删除或者重新标记。就像下图所示
但是这种方法在高维空间中不是很管用,这是因为在高维空间中数据更加稀疏,这样会导致领域的识别不是很可靠。
总结
上面提到的三种使用的弱监督学习方式只是理想的情况,在实际的训练过程中往往是几种情况同时出现。
总之,无论是哪一种情况都离不开弱监督学习的方法,这种方法也变得越来越重要。