多标记学习

来源:互联网 发布:webp转换jpg软件 编辑:程序博客网 时间:2024/06/10 18:54

   1.什么是多标记学习

      对于传统的分类器,分类器的工作是把新来的数据实例根据它的特征贴上一个类标记,如果说这个类标记的取值空间只有两个,那么它就是二元分类,如果是多个就是多元分类。而多标记学习呢,则是给数据实例贴上许多个不同的类标记。然后多标记学习应用也很广泛,比如说一篇文章,它可能属于言情呀,武侠呀等等多个主题。再比如说一种蛋白质对人体而言会有很多种作用等等,这些都是多标记学习的应用。还有一点,我们这里举的例子它们的类标记都是同一个体系的,比如说,言情,武侠都属于文章主题。但是虽然我没有找到明确的说法,但我认为多标记学习不仅限于此,它同样可以预测一篇文章是哪几个主题外加哪几种风格甚至作者是谁。

 2.怎么解决多标记学习

       根据这个思想,我们多标记学习第一大解决模型就是通过问题,转换,具体有三种问题转换的模式:BR,PW,以及LC。什么是问题转换呢?首先我们回忆下我们是如何从二元分类问题怎么扩展到多元分类呢?有一种解决的模式是把多元分类问题转化为几个我们已经解决的二元分类问题求解。

        具体来讲,有两种方式,第一是one vs  rest方法:

我们要对下面左图中的菱形,方形,五角星,三角形做分类,那么我们会分别针对这4类数据做一个二元分类器,比如说正方形,我们就会把原始的训练集由左图转化为右图的形式,把正方形当做一类数据,而把菱形五角星三角形合起来当做另一类数据,然后把转化后的训练集用二元分类算法训练,就得到啦判断新数据是不是正方形的分类器。


第二种是,one vs one 的方法

分别抽出每两个类的数据,一共就6(C42) 个数据集,根据这些训练集得出6个分类器。然后根据这些分类器进行投票决定最后的分类。


我认为这种把未知的复杂问题转为几个已求解的简单问题在计算机领域是非常重要的思想,比如说分治算法,分层思想等等。

 

回到我们的多标记问题,我们同样可以把一个多标记问题转化为一个传统的分类问题,假设我们的多标签的数据集如下图所示,一共有4个文本,它们的 类标签可能是,体育,宗教,科学,政治。而BR模型的思想就是我分别对体育,宗教。。。这几个类分别建立一个二元分类器分类器,判断这个文本是不是体育,或者是不是宗教,所以我们开始的数据集就可以转化为4个数据集。然后分别根据这4个数据集进行学习。当有新的数据实例来的时候,我就可以用4个分类器去判断是不是体育的,是不是宗教的。。。


分析可知,这个框架下,我可以用任意的分类算法,只要它能进行二元分类。下面我介绍一种在BR的基础上扩展的一种方法,ML-knn,大家都知道knn算法就是找到最近的K个邻居,根据它们的标签,服从多数原则的进行分类。但是这里不这么做,它找到k个邻居后,通过最大化后验概率的方式,刚开始看的时候感觉这个后验概率非常奇怪,假设我们要判断一篇文本,那么它代表的意义是在测试点周围的K个邻居中有c个是体育的条件下,最大化测试点本身是体育,还是不是体育的概率。我很不明白为什么要把这个概率和这个c紧紧耦合在一起????



大家可以想想如果不做扩展,直接在BR模型下用knn会有什么问题?那时knn还应该遵守服从多数的原则吗?

我认为这是不平衡类的问题。如果说被贴上体育这个标签的数据很少很少,那么对判别是不是体育的分类器而言,就是一个不平衡类的问题,当然如果体育数据相对数据集大小而言很多,同样也是不平衡类问题。如果出现啦,不平衡类,那么knn就不能根据周围数据哪类数据的标签多就是哪个啦。举个例子,如果体育类的占数据集的99%,那么那些不是体育类的数据周围有很大可能有很多是体育类的数据。所以它需要一个阈值去判定周围有多少个体育类的数据的前提下它本身是体育类,我认为MLKnn就是用后验概率的方式做啦这件事情。

BR模型有很多优点,比如说简单,直观,计算复杂度低。还有个比较扯的优点是它不会过度拟合标签之间的联系。为什么说它扯呢,因为它本来就是各个标签独立的去看,独立的去学习,既然都没有学习标签之间的联系,怎么可能会发生过度拟合,相反如果数据标签之间存在联系,它一定会发生欠拟合。而这也是BR模型最根本的问题。那么什么是标签之间的联系呢,如果说体育的文章都喜欢升华下自己的思想,和党和人民扯下关系,是不是会发生,是体育的文章就一定是政治的文章呢?针对这个问题有同志通过classifer chain 的方法 改进br模型。有兴趣的可以阅读下参考资料

  至于其他两个模型我简单介绍下它们的思想:pw模型呢,它是对每两个类别都建立一个二元分类器,对于我们之前的数据就是c42 就是6个分类器啦,然后通过这个6个分类器投票的方式,决定最后的分类。LC模型则是把每个数据的多标记当做一个简单的类标记,也就是说它可能有2的L次幂那么多种类标记(L为类标签集合的个数)

参考资料 

 MLKnn: http://140.123.102.14:8080/reportSys/file/paper/joji/joji_5_paper.pdf

classifer chain:classifer:http://www.cs.waikato.ac.nz/~eibe/pubs/chains.pdf

multi-Label reveiw:http://talos.csd.auth.gr/tsoumakas/publications/J6.pdf

 

 

 

 

 

 

 

 

 

classifer chain
1 0