怎么办?进行Active Learning主动学习

Active Learning是最近又流行起来了的概念,是一种半监督学习方法。

一种典型的例子是:在没有太多数据的情况下,算法通过不断给出在决策边界上的样本,让打标者进行打标,使得算法明确分类边界,该算法结合On-Line的使用和灰度测试等方法,可以在有大量无标签数据和大量用户资源的时候,从无到有地创建良好的分类器。

如何进行主动学习

周志华的《机器学习》里介绍主动学习的时候提到,利用SVM进行主动学习的时候,应该先用少量有标签的样本训练一个基本的SVM分类器,然后给出无标签样本的时候,只考量到分类面的几何距离小于支持向量的点,因为只有这些点有可能变成新的支持向量从而进一步明确分类面,对于其他远离分界面的样本,可以把他们直接置为对应的标签。

周老师给出的例子略显粗糙,一种改进是:对于有松弛变量的分类器,可以把靠近支持向量的n个点都进行打标,这样有一些点会涉及松弛变量的也可以被覆盖。

进一步优化算法

很多情况下,上面的方法意味着还是需要大量的打标,那么解决这个问题的方法,就是更高效地打标,在原本范围内进行更高效的打标,即使是分类面内也不全部都打。
 
考虑SVM的分类面实际上上是一组参数,把数据转移到参数空间,一个分类面就是一个点,而一个样本就构成对参数空间的一个限制,一个分界面
即考虑两个空间:
特征空间F:样本以特征为坐标轴产生的空间,每一个点对应一个特征样本,对应参数空间中中的一个超平面(对参数空间的一种限制,也即是一种划分方式)
参数空间W:以SVM的各个参数作为轴产生的空间,每一个点对应一套参数,对应特征空间中的一个超平面(一个划分方式)
 
因此在参数空间中的特征限制下的空间称为可行域,未标记的数据会在这个可行域中留下分割,Active Learning就是这这个区域里寻找最有意义的分割并提出标注请求。
因此,因此分界面的可行域如图中中间的四边形,可以想象,SVM尝试找到一个到红色和绿色(支持向量)的半径最大的圆,这就是SVM的中心点
那么,把当出现了一个把可行域分割的样本的时候,在样本空间,这个样本肯定比两个支持向量更靠近分界面的:
问题是,对于一个样本,到底应该选择A区还是B区呢?自然地,可以选择一个能画出半径最大的圆的区域。
当有好几个线经过可行域的时候,一种方法是只给最靠近原来的圆心的点进行打标,这样就可以最有效地分割可行域:
 
但是实际上,这样不一定能选到最好的圆心(分界面),上面这个图中大家每一次更新圆心都考虑最近的线看看,会陷入局部最优
所以实际上应该寻求这些割裂的白色区域里最大的那个,怎么选呢,这里有一种径向距离法:
径向距离法就是:
在支持向量所夹的区域里面,对每一个样本,在其能够成最临近的(中间什么都没有)的那一个样本组合之间测量距离,取这样的组合里最大距离的样本,作为能获得最大内空间的径向划分,对这对样本进行标注
 
 

如何实现径向距离法

推荐在经典的LibSVM上修改实现,LibSVM的代码很好懂
 

Active Learning的更多相关文章

  1. [Machine Learning] Active Learning

    1. 写在前面 在机器学习(Machine learning)领域,监督学习(Supervised learning).非监督学习(Unsupervised learning)以及半监督学习(Semi ...

  2. 浅谈 Active Learning

    1. Active Query Driven by Uncertainty and Diversity for Incremental Multi-Label Learning The key tas ...

  3. 论文阅读之 A Convex Optimization Framework for Active Learning

    A Convex Optimization Framework for Active Learning Active learning is the problem of progressively ...

  4. [Active Learning] 01 A Brief Introduction to Active Learning 主动学习简介

    目录 什么是主动学习? 主动学习 vs. 被动学习 为什么需要主动学习? 主动学习与监督学习.弱监督学习.半监督学习.无监督学习之间的关系 主动学习的种类 主动学习的一个例子 主动学习工具包 ALiP ...

  5. [Active Learning] Multi-Criteria-based Active Learning

    目录 1 Informativeness 2 Representativeness 3 Diversity 3.1 Global consideration 3.2 Local considerati ...

  6. 主动学习——active learning

    阅读目录 1. 写在前面 2. 什么是active learning? 3. active learning的基本思想 4. active learning与半监督学习的不同 5. 参考文献   1. ...

  7. Recorder︱深度学习小数据集表现、优化(Active Learning)、标注集网络获取

    一.深度学习在小数据集的表现 深度学习在小数据集情况下获得好效果,可以从两个角度去解决: 1.降低偏差,图像平移等操作 2.降低方差,dropout.随机梯度下降 先来看看深度学习在小数据集上表现的具 ...

  8. Active Learning主动学习

    Active Learning主动学习 我们使用一些传统的监督学习方法做分类的时候,往往是训练样本规模越大,分类的效果就越好.但是在现实生活的很多场景中,标记样本的获取是比较困难的,这需要领域内的专家 ...

  9. 机器学习分支:active learning、incremental learning、online machine learning

    1. active learning Active learning 是一种特殊形式的半监督机器学习方法,该方法允许交互式地询问用户(或者其他形式的信息源 information source)以获取 ...

随机推荐

  1. HDU 5839 Special Tetrahedron 计算几何

    Special Tetrahedron 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5839 Description Given n points ...

  2. spring-boot parent变更为依赖方式

    原parent继承方式 <parent> <groupId>org.springframework.boot</groupId> <artifactId> ...

  3. RX库中的IDisposable对象

    IDisposable是.net中的主动资源释放接口,它是在编程过程中经常使用到的一个接口,本文介绍一下微软在Rx.NET中提供的一系列常用的Disposable类,通过它们可以简化我们的程序代码,提 ...

  4. Maven具体解释之------maven版本号管理

    本文同意转载,但请标明出处:http://blog.csdn.net/wanghantong/article/38424065, 版权全部 如今所说的maven版本号不同于SVN的版本号控制哦!!! ...

  5. TVS二极管和稳压二极管的区别

    TVS二极管和稳压二极管的区别 TVS管超过它的耐压值后,会瞬间导通短路,反应速度在ns级, 而稳压管是稳压作用的,超过它的稳压值,只要功率不超过它的耐受值,就会稳定在它的稳压值范围内. TVS是瞬态 ...

  6. 荣耀 6 安装 SD 卡,提示:SD卡已安全移除

    先前买了个 荣耀6(购买链接),自带存储只有 16G,用来一段时间后,老是提示存储不足.后来发现是 微信 等软件占用了好多存储(缓存),, 好吧,在京东上买了个 64G 扩展卡(购买链接),安装过程如 ...

  7. JAVA BigDecimal的相加

    之前很少使用这样的一个对象BigDecimal,今天在改需求的时候遇到了,结果坑爹的怎么相加最后都为零. 代码如下: BigDecimal totalAmount = new BigDecimal(0 ...

  8. iOS用全局宏的概念理解xcode中的设置 preprocessor macros

    ios有没有全局宏,或者在工程属性里设置宏? 比如我设置了一个宏叫IOS, 在所有/整个工程的代码里这个宏都是有效的. ------解决方案-------------------- 在工程的设置属性里 ...

  9. FieldExists

    import arcpy import os import sys def FieldExists(TableName,FieldName): desc = arcpy.Describe(TableN ...

  10. 【python】python读写文件,都不乱码

    读是按照文本的编码方式读取,写是按照文本的编码方式追加 import chardet fileName = 'E:/2/采集数据_pswf12_180大0小35750_20181206.txt' # ...