[Active Learning] Multi-Criteria-based Active Learning
目录
Active Learning (AL) 的 query criteria 大致可以分为 3 类:informativeness,representativeness 和 diversity。
下面我将分别介绍这三种 criteria,并介绍论文 [1] 中是如何结合三种 criteria 的。(这里并不对 NER 部分做介绍。)
1 Informativeness
这种 criterion 用的应该是最多的,其中包括最简单最常用的 uncertainty sampling。
论文 [1] 也是将 sample 和 decision boundary 之间的距离来衡量该 sample 的 information。Closer to decision boundary, more informative.
仅用 informativeness 的 strategy 有可能会选到 outlier,故而需要考虑 representativeness。

2 Representativeness
Representativeness 的衡量需要比较两个 samples 的 similarity,论文 [1] 中采取余弦相似度来衡量 similarity。
一个 sample 的 representativeness 可以用它的 density 来量化,即等于该 sample 与其它所有 unlabeled set 中样本 similarity 的均值。即:
\[
Density(\boldsymbol x_i) = \frac{\sum_{j \not = i} Sim(\boldsymbol x_i, \boldsymbol x_j)}{N-1}
\]
其中,\(N\) 表示 unlabeled set 的大小。
如果某一个 sample \(\boldsymbol x^*\) 的 density 最大,那么 \(\boldsymbol x^*\) 也就是 unlabeled set 的 centroid。
当然,representativeness 的衡量不止论文 [1] 提到的这种方式,如论文 [3] 使用样本与部分邻居的 similarity 来表示 density,而不是整个 unlabeled set。
3 Diversity
Diversity 这个 criterion 是对 batch-mode active learning 才有的,当我们需要一次选择多个 samples 时,如果不考虑 diversity,很可能会重复选择同一区域的点,造成浪费。
论文 [1] 提出了两种利用 diversity 的方法:Global 和 Local。
3.1 Global consideration
这种方式将 unlabeled set 用 K-means 划分成 K 个区域,在每一轮选择中,一个 batch 内的点需要从 K 个不同的区域中分别选择。
在实际利用时,可能不会对整个 unlabeled set 进行 K-means 划分,有可能只是对 unlabeled set 的一个子集进行划分,提高效率。
3.2 Local consideration
这种方式就不太考虑 unlabeled set,关注的重点在要选择的 batch 上。
在每一轮的 query 中,我们如果想要将一个 selected sample \(\boldsymbol x_{new}\)加入到 current batch,需要该 selected sample 和已经在 current batch 中的样本有足够大的区别,即 \(Similarity(\boldsymbol x_{new}, \boldsymbol x_{old}) > \beta\),其中 \(\beta\) 可以取整个 unlabeled set 样本之间 similarity 的均值。
在 local method 的情况下,一个个 selected samples 将经过筛选顺序加入到 batch 中。selected sample 是如何被 select 出的?可以 random,也可以用 informativeness 和 representativeness 的方式。
4 Combinations of three criteria
single-criterion 的 query strategy 在很多时候不如 multi-criteria 的 strategy。论文 [1][3] 中都有类似结论。
以下将介绍论文 [1] 提出的关于如何结合 informativeness、representativeness 和 diversity 三种 criteria 的两种方式。
4.1 Strategy 1
流程:
- 使用 Informativeness 这一 single criterion 选出 top M 个 most informative 的 samples,将其组成一个集合 interSet;
- 对 interSet 集合进行 K-means 聚类,聚成 K 个 clusters,并选择出每个 cluster 的 centroid 作为 selected sample 加入到 batch 中。(batch 的 size 也为 K。)
K-means 的 centroids 既代表了 interSet,又有 diversity。该 strategy 使用了 diversity 的 global method。
4.2 Strategy 2
流程:
- 按照 \(\lambda \operatorname{Info}\left(\boldsymbol x_{i}\right)+(1-\lambda) \text {Density}\left(\boldsymbol x_{i}\right)\) 结合 informativeness 和 representativeness 这两个 criteria,然后按照得分的高低选择出 selected samples;
- 一个 selected sample 想要加入到 batch 中,必须要满足新加入的点与已经在 batch 中的点的 similarity 大于某个阈值 \(\beta\),即使用 diversity 的 local method 对 selected samples 再进行一次 diversity 筛选。
\(\lambda\) 是一个超参数,需要人工设定,用来控制 informativeness 和 representativeness 的权重。论文 [3] 对 \(\lambda\) 的取值做了更加详细的研究,可以动态设定 \(\lambda\) 的值。
4.3 Strategy 1 vs. Strategy 2
在论文 [1] 的实验中,strategy 2 的效果要好于 strategy 1。
References
[1] Shen, D., Zhang, J., Su, J., Zhou, G., & Tan, C.-L. (2004). Multi-criteria-based active learning for named entity recognition. (ACL) https://doi.org/10.3115/1218955.1219030
[2] Burr Settles. (2009). Active Learning Literature Survey. Computer Sciences Technical Report 1648, University of Wisconsin-Madison.
[3] Ebert, S., Fritz, M., & Schiele, B. (2012). RALF: A reinforced active learning formulation for object class recognition. (CVPR) https://doi.org/10.1109/CVPR.2012.6248108
[Active Learning] Multi-Criteria-based Active Learning的更多相关文章
- 论文笔记之:Active Object Localization with Deep Reinforcement Learning
Active Object Localization with Deep Reinforcement Learning ICCV 2015 最近Deep Reinforcement Learning算 ...
- (转)Paper list of Meta Learning/ Learning to Learn/ One Shot Learning/ Lifelong Learning
Meta Learning/ Learning to Learn/ One Shot Learning/ Lifelong Learning 2018-08-03 19:16:56 本文转自:http ...
- [转]Introduction to Learning to Trade with Reinforcement Learning
Introduction to Learning to Trade with Reinforcement Learning http://www.wildml.com/2018/02/introduc ...
- Introduction to Learning to Trade with Reinforcement Learning
http://www.wildml.com/2015/12/implementing-a-cnn-for-text-classification-in-tensorflow/ The academic ...
- (转) Deep Learning in a Nutshell: Reinforcement Learning
Deep Learning in a Nutshell: Reinforcement Learning Share: Posted on September 8, 2016by Tim Dettm ...
- 机器学习(Machine Learning)与深度学习(Deep Learning)资料汇总
<Brief History of Machine Learning> 介绍:这是一篇介绍机器学习历史的文章,介绍很全面,从感知机.神经网络.决策树.SVM.Adaboost到随机森林.D ...
- 【重磅干货整理】机器学习(Machine Learning)与深度学习(Deep Learning)资料汇总
[重磅干货整理]机器学习(Machine Learning)与深度学习(Deep Learning)资料汇总 .
- 机器学习(Machine Learning)&深度学习(Deep Learning)资料
机器学习(Machine Learning)&深度学习(Deep Learning)资料 機器學習.深度學習方面不錯的資料,轉載. 原作:https://github.com/ty4z2008 ...
- java.lang.IllegalStateException: Active Spring transaction synchronization or active JTA transaction with specified [javax.transaction.TransactionManager] required
错误信息: java.lang.IllegalStateException: Active Spring transaction synchronization or active JTA trans ...
- 论文解读(S^3-CL)《Structural and Semantic Contrastive Learning for Self-supervised Node Representation Learning》
论文信息 论文标题:Structural and Semantic Contrastive Learning for Self-supervised Node Representation Learn ...
随机推荐
- dijkstra算法:寻找到全图各点的最短路径
dijkstra算法介绍:即迪杰斯特拉算法,是从一个顶点到其余各顶点的最短路径算法,解决的是有向图中最短路径问题.迪杰斯特拉算法主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止,是一种广度优先 ...
- 我们常说的 CAS 自旋锁是什么
CAS(Compare and swap),即比较并交换,也是实现我们平时所说的自旋锁或乐观锁的核心操作. 它的实现很简单,就是用一个预期的值和内存值进行比较,如果两个值相等,就用预期的值替换内存值, ...
- php面向对象中的魔术方法
原创,转载请注明出处 在 PHP 中以两个下划线开头的方法,__construct(), __destruct (), __call(), __callStatic(),__get(), __set( ...
- 使用ssh keys实现免验证登陆远程服务
使用ssh keys实现免验证登陆远程服务========================Created 星期四 10 五月 2018 引言------------------程序员或者服务器运维人员 ...
- 【转】Python的下划线
原文: 1. Python中的下划线(译文) 2. [转]关于python中带下划线的变量和函数的意义 总结: 1. 单下划线开头.保护变量,不可被其他包导入使用,除非在__all__声明可以显示引用 ...
- bootstrap-table 列宽问题解决
<th style="width:120px" data-field="Cel1"><div class="th-inner &qu ...
- 【转】Fundebug上线微信小游戏错误监控!支持自动截屏!
摘要: Fundebug竭诚为你的小游戏保驾护航. 想必大家都玩过"跳一跳"吧?刷排行榜的感觉是不是很好啊!还有"知乎答题王"呢,在智力上碾压老铁简直太棒了! ...
- R画网络图
R 画网络图 目的:用R做生信分析,画基因样本的网络图,从中观察样本的致病性情况. 一.所用到的包 library(tidyr) library(ggplot2) library(reshape2) ...
- struts2中的拦截器
一 AOP思想: 面向切面编程的思想 AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.AOP ...
- SSM-Spring-14:Spring中默认自动代理DefaultAdvisorAutoProxyCreator
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 默认自动代理DefaultAdvisorAutoProxyCreator 本处没有什么要讲的,放原代码 ISo ...