当前位置:   article > 正文

大规模标签、层级标签分类问题简单调研_层次标签分类

层次标签分类

Extreme Multi Label Classification

整合自知乎三篇文章:

大规模多标签分类,作者:Cppowboy
层级性多元标签文本分类,作者:烛之文
层次多标签意图分类综述,作者:斯多歌

方法综述

大规模多标签分类大致有以下几类解决办法:

  • 1 VS. All classifier

把多标签分类看成多个二分类,为每一个label训练一个二分类模型,其缺点是,各个标签之间相互无关,当标签数量非常非常多的时候,难以训练与标签数量相同的模型。

  • Label Tree based

其思想类似决策树,把所有的标签按树状结构组织起来,从上到下分类,每层只需要训练一个小的分类器,最终分类的叶子节点。这样的缺点是,从上到下的分类过程中,误差可能会累积,导致性能较差。这种方法经常会用到ensemble的模型。

  • Embedding based

假设最后的特征维度是 h h h,类别标签数量是 C C C,当 C C C非常大的时候,网络最后一层的参数数量 h × C h \times C h×C会非常大。这种方法的思想是,把 h h h映射到一个比较小的维度 d ≪ h d \ll h dh,再映射到标签,这样参数量 h × d + d × C h \times d + d \times C h×d+d×C会减少很多。当然这种方法也会用到模型ensemble。

  • Deep Learning based

又分为两类:

第一类:把多标签分类看成Seq2Seq任务,把生成多个标签看成一个序列生成的过程,一步一步地生成标签,直到生成end为止;

第二类:Discriminative Learning based方法,用某种特征提取结构(CNN、LSTM、Transformer Encoder等)把文本处理成一个向量,再用概率标签树(Probalistic Label Tree)得到最终的概率。(为什么叫Discriminative Learning based?)

参考文献

Local approaches

显式利用层次信息,对每个节点或层次构造一个分类器,最终标签由多个分类器组合而成:

  • Local Classifier per Node: The LCN strategy trains one binary classifier for each class of the hierarchy.

即最简单的对每个标签做二分类,具体也有分Binary Relevance和Classifier Chains方法。

  • Local Classifier per Parent Node (LCPN): The LCPN strategy trains, for each internal class, a multi-class classifier to distinguish between its subclasses.

对每个非叶子节点构造多分类器,识别子类。
感觉目前这种方法在工程上可行性最高,但难点在于:a)每层的错误会叠加;b)随着层数加深,底层的模型训练数据可能不足。解决方法可以尝试:a)参考类似GBDT的方法,构造ensemble模型拟合误差(已经有人提出了,就是HFT-CNN);b)底层的模型使用Few-Shot Learning的方法。

  • Local Classifier per Level (LCL): The LCL strategy trains one multi-class classifier for each hierarchical level, where each classifier is responsible for the prediction in its associated level.

对每一层构造多分类器。

一些参考文献:

HFT-CNN: Learning Hierarchical Category Structure for Multi-label Short Text Categorization

思路:1)输入的是样本一段短文本sentence,将sentence转换成词序列embedding,文中使用FastText;2)接着先训练样本的顶层label(A, B),具体是在embedding层后加一个卷积层(convoluational layer),最大池化层(maxpooling layer),全连接层+dropout,最后加个sigmoid,使用二元交叉熵(binary cross-entorpy loss)进行A, B标签预测训练;3)在预测下一层标签(A1, A2, B1, B2)时,采用的仍是CNN结构,只是embedding layer和convoluational layer不重新生成,而是继承上一层学习的结果,然后在这个基础上进行微调学习;4)按照2、3步骤,遍历整个层级标签;——层级性多元标签文本分类

Hierarchical transfer learning for multi-label text classification

Global approaches

把层次信息编码进网络结构,单模型输出所有分类标签:

Large-Scale Hierarchical Text Classification with Recursively Regularized Deep Graph-CNN
Hierarchical multi-label classification networks
Hierarchical Taxonomy-Aware and Attentional Graph Capsule RCNNs for Large-Scale Multi-Label Text Classification
Hierarchical Multi-label Text Classification: An Attention-based Recurrent Network Approach
Hierarchy-Aware Global Model for Hierarchical Text Classification

数据集

The Extreme Classification Repository: Multi-label Datasets & Code

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/447941
推荐阅读
相关标签
  

闽ICP备14008679号