标签归档:Active learning

ViewAL: Active Learning With Viewpoint Entropy for Semantic Segmentation

Method overview: in each round of active selec- tion, we first train a semantic segmentation network on the existing labeled data. Second, we use the trained network to compute a view entropy and a view divergence score for each unlabeled superpixel. We then select a batch of su- perpixels based on these scores, and finally request their re- spective labels from the oracle. This is repeated until the labeling budget is exhausted or all training data is labeled.

We propose ViewAL , a novel active learning strategy for semantic segmentation that exploits viewpoint consis- tency in multi-view datasets. Our core idea is that incon- sistencies in model predictions across viewpoints provide a very reliable measure of uncertainty and encourage the model to perform well irrespective of the viewpoint under which objects are observed. To incorporate this uncertainty measure, we introduce a new viewpoint entropy formula- tion, which is the basis of our active learning strategy. In addition, we propose uncertainty computations on a super- pixel level, which exploits inherently localized signal in the segmentation task, directly lowering the annotation costs. This combination of viewpoint entropy and the use of su- perpixels allows to efficiently select samples that are highly informative for improving the network. We demonstrate that our proposed active learning strategy not only yields the best-performing models for the same amount of required labeled data, but also significantly reduces labeling effort. Our method achieves 95% ofmaximum achievable network performance using only 7%, 17%, and 24% labeled data on SceneNet-RGBD, ScanNet, and Matterport3D, respec- tively. On these datasets, the best state-of-the-art method achieves the same performance with 14%, 27% and 33% la- beled data. Finally, we demonstrate that labeling using su- perpixels yields the same quality ofground-truth compared to labeling whole images, but requires 25% less time.

我们提出了一种新的语义分割主动学习策略viewAL,它利用了多视图数据集中的视点一致性。我们的核心思想是,不同视角的模型预测的不一致性提供了一个非常可靠的不确定性度量,并鼓励模型能够很好地执行,而不考虑观察对象的视角。为了引入这种不确定性度量,我们引入了一个新的观点熵公式,这是我们主动学习策略的基础。此外,我们提出了在超像素水平上的不确定性计算,在分割任务中利用固有的局部化信号,直接降低注释成本。视点熵和像素的使用相结合,可以有效地选择信息量高的样本来改善网络。我们证明,我们所提出的主动学习策略不仅能为相同数量的所需标记数据生成性能最好的模型,而且显著地减少了标记工作。我们的方法仅使用SceneNet RGBD、ScanNet和Matterport3D上的7%、17%和24%的标记数据,就可以实现95%的最大网络性能。在这些数据集上,最先进的方法可以获得相同的性能,分别为14%、27%和33%。最后,我们证明了使用su-perpixels标记与标记整个图像产生的地面真实质量相同,但所需的时间减少了25%

Variational Adversarial Active Learning

Our model learns the distribution of labeled data in a latent space using a VAE optimized using both reconstruction and adversarial losses. A binary classifier predicts unlabeled examples and sends them to an oracle for annotations. The VAE is trained to fool the adversarial network to believe that all the examples are from the labeled data while the adversarial classifier is trained to differentiate labeled from unlabeled samples.

代码地址:https://github.com/sinhasam/vaal

Active learning aims to develop label-efficient algorithms by sampling the most representative queries to be labeled by an oracle. We describe a pool-based semi- supervised active learning algorithm that implicitly learns this sampling mechanism in an adversarial manner. Our method learns a latent space using a variational autoen- coder (VAE) and an adversarial network trained to discriminate between unlabeled and labeled data. The mini-max game between the VAE and the adversarial network is played such that while the VAE tries to trick the adversarial network into predicting that all data points are from the la- beled pool, the adversarial network learns how to discrim- inate between dissimilarities in the latent space. We exten- sively evaluate our method on various image classification and semantic segmentation benchmark datasets and estab- lish a new state of the art on CIFAR10/100, Caltech-256, ImageNet, Cityscapes, and BDD100K. Our results demon- strate that our adversarial approach learns an effective low dimensional latent space in large-scale settings and pro- vides for a computationally efficient sampling method.

主动学习的目的是通过对最有代表性的查询进行抽样,从而开发出标记效率高的算法。我们描述了一个pool-based半监督主动学习算法,它以一种对抗的方式隐式地学习这种采样机制。我们的方法使用一个可变的自编码器和一个训练用于区分标记了的和未标记的数据的对抗网络,来学习一种潜在空间。VAE和对抗网络的min-max博弈是这样进行的:VAE试图欺骗对抗网络预测所有数据点都来自标记的池子,对抗网络学习如何在潜在空间中区分不同不同。我们在图像分类和语义分割数据集上进行评估。

Learning Loss for Active Learning

Active Learning Paper] Learning Loss for Active Learning, CVPR 2019 -  Programmer Sought

The performance of deep neural networks improves with more annotated data. The problem is that the budget for annotation is limited. One solution to this is active learning, where a model asks human to annotate data that it perceived as uncertain. A variety of recent methods have been proposed to apply active learning to deep networks but most of them are either designed specific for their target tasks or computationally inefficient for large networks. In this paper, we propose a novel active learning method that is simple but task-agnostic, and works efficiently with the deep networks. We attach a small parametric module, named “loss prediction module,” to a target network, and learn it to predict target losses of unlabeled inputs. Then, this module can suggest data that the target model is likely to produce a wrong prediction. This method is task-agnostic as networks are learned from a single loss regardless of target tasks. We rigorously validate our method through image classification, object detection, and human pose estimation, with the recent network architectures. The results demonstrate that our method consistently outperforms the previous methods over the tasks.

深度神经网络的性能随着更多带注释的数据而提高。问题是注释的预算有限。解决此问题的一种方法是主动学习,在主动学习中,模型要求人类注释自己认为不确定的数据。已经提出了各种最新方法来将主动学习应用于深度网络,但是大多数方法要么针对其目标任务而设计,要么对大型网络而言计算效率低下。在本文中,我们提出了一种新颖的主动学习方法,该方法简单但与任务无关,并且可以与深度网络有效地协同工作。我们将一个名为“损失预测模块”的小型参数模块附加到目标网络,并学习它来预测未标记输入的目标损耗。然后,该模块可以建议数据,表明目标模型可能会产生错误的预测。该方法与任务无关,因为无论目标任务如何,都可以从一次丢失中学习网络。我们通过最新的网络体系结构,通过图像分类,目标检测和人体姿态估计来严格验证我们的方法。结果表明,在任务上,我们的方法始终优于以前的方法。

论文地址:https://openaccess.thecvf.com/content_CVPR_2019/papers/Yoo_Learning_Loss_for_Active_Learning_CVPR_2019_paper.pdf

项目地址:https://github.com/Mephisto405/Learning-Loss-for-Active-Learning

这篇文章提出根据损失来选取前K个最有价值的数据(即损失最大的K个数据),将这K个数据由专家标注,放入有标签的训练集中,依次迭代多次直到模型达到预期的效果。本文最主要的思想是在目标网络上添加损失预测模块,它能预测模型的损失值。

由于损失预测模块与任务无关只与模型的损失有关。因此,这种方法可以应用到其他不同的任务中(比如训练时是分割任务得到的损失预测模型可应用于分类任务)当然这个过程必须保持模型不变。

GAP是指全局平均池化,训练过程就是联合优化目标模型与损失预测模型的损失函数。这里比较重要的一点就是损失预测模型的损失函数的设计,最直接的想法就是考虑损失预测模型的预测值与实际损失值之间的均方误差。这种做法显然是不合理的,因为迭代过程中的损失值是一个变化的过程,这就会导致损失预测模型的训练过程中对应的数据的标签不一致!导致预测效果很差。因此作者就提出数据对的思想来确定损失预测模型的损失函数。

公式1为整个模型的损失函数\lambda为尺度常量,前面的是目标模型的损失函数(比如分类的交叉熵损失函数等),后面部分就是损失预测模型的损失函数。本文中用B表示最小的训练batch_size,它是一个偶数那么就能够组成B/2的数据对。那么就用公式2来度量

这个函数我们分析一下考虑第一种情况li>lj” src=”https://private.codecogs.com/gif.latex?li%3Elj”>且模型预测的结果也满足<img alt=\hat{lj}” src=”https://private.codecogs.com/gif.latex?%5Chat%7Bli%7D%3E%5Chat%7Blj%7D”>那么损失值加上一个ξ后小于0,那么loss取0说明模型的预测关系是对的,不进行权重更新。如果li>lj” src=”https://private.codecogs.com/gif.latex?li%3Elj”>但模型的预测的结果<img alt=.则损失函数值大于0进行权重更新。这个损失函数则说明损失预测模型的实际目的是得到对应数据的损失值的大小关系而不是确定的损失值。那么整个损失函数定义为公式3

A Survey of Deep Active Learning

Active learning (AL) attempts to maximize a model’s performance gain while annotating the fewest samples possible. Deep learning (DL) is greedy for data and requires a large amount of data supply to optimize a massive number of parameters if the model is to learn how to extract high-quality features. In recent years, due to the rapid development of internet technology, we have entered an era of information abundance
characterized by massive amounts of available data. As a result, DL has attracted significant attention from researchers and has been rapidly developed. Compared with DL, however, researchers have relatively low interest in AL. This is mainly because before the rise of DL, traditional machine learning requires relatively few labeled samples, meaning that early AL is rarely accorded the value it deserves. Although DL has made breakthroughs in various fields, most of this success is due to the large number of publicly available annotated datasets. However, the acquisition of a large number of high-quality annotated datasets consumes a lot of manpower, making it unfeasible in fields that require high levels of expertise (such as speech recognition, information extraction, medical images, etc.) Therefore, AL is gradually coming to receive the attention it is due. It is therefore natural to investigate whether AL can be used to reduce the cost of sample annotations, while retaining the powerful learning capabilities of DL. As a result of such investigations, deep active learning (DAL) has emerged. Although research on this topic is quite abundant, there has not yet been a comprehensive survey of DAL-related works; accordingly, this article aims to fill this gap. We provide a formal classification method for the existing work, along with a comprehensive and systematic overview. In addition, we also analyze and summarize the development of DAL from an application perspective. Finally, we discuss the confusion and problems associated with DAL and provide some possible development directions.

主动学习(AL)尝试通过标记最少的样本来最大程度地提高模型的性能。深度学习(DL)对于数据贪婪,需要大量数据来优化大量参数,以便模型学习如何提取高质量特征。近年来,由于Internet技术的飞速发展,我们正处于信息洪流时代,我们拥有大量数据。通过这种方式,DL引起了研究人员的强烈兴趣,并且得到了迅速的发展。与DL相比,研究人员对AL的兴趣相对较低。这主要是因为在DL兴起之前,传统的机器学习需要相对较少的标记样本。因此,早期AL难以反映其应得的价值。尽管DL在各个领域都取得了突破,这种成功的大部分归因于大量现有注释数据集的公开性。但是,获取大量高质量的带注释的数据集会消耗大量的人力,这在某些需要很高专业知识的领域中是不允许的,尤其是在语音识别,信息提取,医学图像等领域。因此, AL已逐渐受到应有的重视。一个自然的想法是,在保留DL强大的学习功能的同时,是否可以使用AL来减少样本注释的成本。因此,出现了深度主动学习(DAL)。尽管相关研究已经相当丰富,但它缺乏对DAL的全面调查。本文旨在填补这一空白,我们为现有工作提供了正式的分类方法,并提供了全面而系统的概述。此外,我们还从应用的角度分析和总结了DAL的发展。最后,我们讨论了DAL中的困惑和问题,并给出了DAL的一些可能的发展方向。

整篇文章的翻译:https://zhuanlan.zhihu.com/p/218011458