Active-learning 学习(一)——Random-Walker-Based Collaborative learning

来源:互联网 发布:淘宝刷客论坛 编辑:程序博客网 时间:2024/06/17 00:16

  本文系原创博文,转载请注明出处http://blog.csdn.net/JYZhang_CVML/article/details/56326202
  作为Active Learning的入门小菜鸟,最近学习了Bin Sun在TGRS上的一篇文章”Random-Walker-Based Collaborative Learning for Hyperspectral Image Classification”。随手记录,便于大家交流学习和之后备忘查阅。高手绕道~
  ps 本人并不是做遥感图像,本文解释不到位的地方还望交流指正。
  

引言

  Active Learning 和 Semi-supervised Learning 结合是目前Active Learning 领域研究方向之一。首先,有少部分已经标注好的样本用来初始化分类器,然后在未标注的样本集中,使用AL来挑选出待查询的样本,SSL来挑选出伪标注样本,这两者联合之前小部分标注好的样本来重新训练分类器,提高分类效果。
  本文的主要创新点在于:
  1. 首先同时使用基于随机游走Random Walker的图像分割算法和基于Extend RW的光谱-空间位置分类方法(卫星遥感图像中使用光谱和空间位置有助于准确分类每个像素点,注:卫星遥感图像中像素点相当于图像分类问题中的每张图像,该像素点有较大深度并非传统图像中只有RGB三个通道)。将其两者结果相比较,将未标注样本分成两类。如何分成两类?耐心点下面即将慢慢介绍
  2. 对于高置信度的未标记样本,伪标记工作会在其中进行,在高置信度未标记样本集中挑选伪标记样本的方法会保证伪标记样本的正确性和具有高信息性。对于低置信度的未标记样本,AL算法采用主动选择策略查询样本,交给砖家进行标注。
  总的来说,不管是伪标记还是主动查询标注工作,这些样本通过新标注都能够有效提高分类器效果。
  3. 最后,上述过程不断迭代,标注好的样本集(原始标注样本集+伪标注样本集+主动查询标注样本集)不断增大,ERW分类器能够得到相对准确的分类结果。

Introduction

  通俗来说,联合使用AL和SSL和联合学习方法,标注样本由砖家和分类器自动标注来实现,是目前研究很多的方法。
  对于本文适用的遥感图像,采用合适的分类器准确分类样本是很重要的。根据遥感图像的特点,光谱-空间分类器spectral-spatial融合遥感图像的光谱信息和空间位置信息,因此相比于仅仅考虑光谱信息的监督分类器更有助于准确分类。但是由于这类spectral-spatial分类器严重依赖于标注样本的数量,因此将AL的思想引入其中成了理所应当的事情。
  算法的大致思想流程上面引言部分,自我觉着应该说清楚了。

Random-Walker & Extend RW

Random-Walker算法

  简单的说一下我的理解,对于遥感图像而言,图像分割问题基本等同于分类问题(分割问题本质上是对像素的分类,而遥感图像的分类也就是对其中像素的分类分割)。RW算法仅仅考虑像素的空间信息而没有考虑像素光谱信息,所以造成分类准确度很差。所以需要ERW算法。

Extend RW算法

  基于ERW算法的分类器能够结合像素空间信息和光谱信息,因此可以得到每个未标注样本到某个已标注样本的游走概率。考虑游走概率最大时,就可以得到未标注样本对应的类别。
  从本质上来说,ERW算法就是一种适用于遥感光谱的分类器,只不过这种分类器并不是传统的分类器而已。正是因为上面提到的ERW算法的优势,本文将ERW算法作为AL和SSL联合学习算法框架的basic 分类器
  具体RW用于图像分割的算法可以参考博客http://blog.csdn.net/hjimce/article/details/45201263?locationNum=3

算法具体流程

算法流程

算法大体是这么做的:

  *对于一幅多光谱的遥感图像里面已有的标记好的样本集Training Set,进行基于随机游走的verification,得到高置信度的样本集(像素)和低置信度的样本集(像素)。
  *都采用主动查询策略,以保证算法查询样本的有效性和高信息性。其中对于低置信度的样本集采用人工标记的方法,对于高置信度的样本集采用伪标记的方法(也就是机器自动标注)。无论是对于人工标注的样本还是伪标注的样本,更新原先的Training Set。注意,上述第一步和第二步是算法训练过程,迭代完成的。这样的话,标注好的训练集不断增大。
  *测试过程,利用上面最后更新的Training Set,得到最终的ERW分类器。(正是因为ERW上面讨论的优势,将其作为本文联合学习算法的基本分类器。)最后得到整幅图像所有样本(像素)的准确分类结果,完成分类任务。
  对本算法的理解,其实本算法利用RW图像分割方法(也就是一种粗糙的分类方法)和ERW分类方法来进行verification操作,所以从本质上来说RW和ERW方法就是经典算法QBC中的Committe。然后利用AL和SSL不断挑选可以标注的样本(人工标注的样本从AL中得到),扩大Training Set,最后用于最后分类的分类器ERW在最终的Training Set上完成整个训练集的分类问题。
  ps,QBC算法最后的basic classifier可以是Committe中的一员,也可以不是~

基于RW的verification算法

第一步 

  使用加权的graph来最大程度利用图像的空间信息。

第二步

  根据上面利用多光谱图像构建出来的graph信息,用RW算法和ERW算法进行分割和分类操作(本质上都是分类器)。

对于基于RW的分割算法

  其中关键在于计算RW游走概率pm^,根据RW概率得到对应分类结果。给定l个标记好的样本{y1,y2,,yl},通过最小化能量方程:
  Enspatial(pm^)=pTm^LpTm^
  因此分割结果对于每个像素点 i 选择对应最大概率的类别:
  si=argmaxmpi,m^ 对应segmentation map。

对于基于ERW的分类器

  给定 l 个已经标记好的样本 这里写图片描述 和对应所有样本集(原始多光谱图像)这里写图片描述 。利用multinomial logistic regression(LORSAL)分类器,对样本(像素)的光谱信息建模,得到每个样本属于 m原始概率映射为 这里写图片描述 。然后最终概率映射 pm 通过优化下面的能量方程:
  这里写图片描述
  其中第一项代表空间信息,第二项代表光谱信息(利用上面LORSAL分类器所得到的 rm 结果)。得到 classification map这里写图片描述
  读者们看到这儿可能表示疑问了,为啥分类器采用RW算法和ERW算法呢?本文的解释大概意思是这样的:
  1. RW和ERW算法存在互补关系,RW分割算法分类标准基于样本的空间信息,ERW分类器基于样本的空间信息和光谱信息。是否可以理解为multi-view的QBC算法?  
  2. ERW算法能够在较少样本时依然保持良好的分类效果,在整体算法框架起始阶段有相对稳定的表现。
  3. RW算法和ERW在优化阶段能够被有效实现。…这也算是理由…

第三步

  已经得到RW算法分割结果 c 和ERW分类结果 s ,将其两者结合起来完成置信度投票结果,将未标注样本分成高置信度低置信度两类。如何区分置信度高低?其实本质上和QBC算法的disagreement voting是类似的。
  这里写图片描述
  这里写图片描述
  其中 U^U˘ 相当于高置信度未标注样本和低置信度样本。其实说到底就是QBC算法Committe中两个分类器投票结果,投票结果相同认为置信度高,投票结果不同认为置信度低。

本文算法具体细节

这里写图片描述
  我在看这个算法的时候觉得有几个地方需要注意:
  

  • 每次迭代的时候,都要用标注好的样本集(原始标注好的样本集+查询人工标注的样本集+伪标注的样本集),来训练multi_view QBC算法中的RW分类器和ERW分类器,得到新的分类结果,分别表示为 sc ,再根据 sc 得到投票结果 U^U˘
  • 最后很容易理解我们在 U^U˘ 分别采集查询的人工标注样本伪标注样本。要注意的是一定要采用主动查询策略保证我们采集的样本一定是具有信息量和有效的。本文这里采用的是MBT查询策略。
  • 伪标注样本的标注问题,直接给 最有可能的标签。
  • 最后返回的是ERW分类器,它本身也是Committe的一员。(用最后更新的标记好的样本训练的)

总结

  总的来讲,本文本质上是multi_view的基于QBC的AL+SSL算法。Committe内的分类器并没有使用传统的分类器,而是使用的适用于多光谱遥感图像的分类器(遥感图像的segmentation算法就是分类器),而且这两种分类器相互之间互补,可以认为multi-view。然后从技术理解的层面上,相比于传统的AL算法,本文所说的联合学习SSL算法用于在高置信度的样本中获取伪标注样本,从而进一步降低样本标注量。

本人所做的方向并非遥感图像处理,博文中解释不到位的地方还请广大网友批评指正。交流可email 1459416934@qq.com。

0 0
原创粉丝点击