[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 ...
 
随机推荐
- Magic Quadrant for Security Information and Event Management
			
https://www.gartner.com/doc/reprints?id=1-4LC8PAW&ct=171130&st=sb Summary Security and risk ...
 - 人手一份核武器 - Hacking Team 泄露(开源)资料导览手册
			
https://zhuanlan.zhihu.com/p/20102713 author:蒸米 0x00 序 事先声明本人并不是全栈安全工程师,仅仅是移动安全小菜一枚,所以对泄漏资料的分析难免会有疏忽 ...
 - Django Channels简明实践
			
1.安装,如果你已经安装django1.9+,那就不要用官方文档的安装指令了,把-U去掉,直接用: sudo pip install channels 2.自定义的普通Channel的名称只能包含a- ...
 - .net core2.0通过entityframework访问Sqlserver数据库
			
.net core经历2.0版本之后,已经非常稳定,完全可以进行企业级开发并跨平台部署到几乎任何服务器.个人测试效率是.net core是.net framework效率的3倍.其他语言没有测试,等测 ...
 - IsNullOrEmpty与IsNullOrWhiteSpace性能比较
			
IsNullOrEmpty与IsNullOrWhiteSpace性能谁比较高呢? 在string都是空字符串的情况下: IsNullOrWhiteSpace要比IsNullOrEmpty快大约 1~5 ...
 - Ocelot中文文档-流量控制
			
感谢@catcherwong 的文章激励我最终写出了这个文档 Ocelot支持上游的请求限制,以便您的下游服务不会过载. 此功能是由GitHub上的@geffzhang添加! 非常感谢. 好了,为了让 ...
 - Java Spring Boot 上传文件和预览文件地址解析
			
@RequestMapping(value ="/upload",method = RequestMethod.POST) @Permission(isAjax=false) pu ...
 - SpringBoot框架Scheduled注入参数说明
			
注解 @Scheduled(cron = "0/5 * * * * ?") @Scheduled(fixedDelay = 1000 * 7,initialDelay=1000*1 ...
 - 小白突破百度翻译反爬机制,33行Python代码实现汉译英小工具!
			
表弟17岁就没读书了,在我家呆了差不多一年吧. 呆的前几个月,每天上网打游戏,我又不好怎么在言语上管教他,就琢磨着看他要不要跟我学习Python编程.他开始问我Python编程什么?我打开了我给学生上 ...
 - Android Zxing 转换竖屏扫描且提高识别率
			
最近的一个Android需要用到扫码功能,用的是Zxing开源库.Zxing的集成就不说了,但是Zxing默认的是横屏扫码,在实际生产中并不适用,需要改为竖屏扫描. 转竖屏步骤: 1>. And ...