Label prompt for multi-label text classification笔记

这篇文章是使用Prompt在多标签文本分类上的一篇发在Springer Nature上的文章,模型名称LP-MTC

  1. 在摘要部分,文章主要是提到对于文本进行多标签分类是十分具有应用价值的一个任务,同时一个非常重要的点就是利用好标签的相关性以及提取标签的重要信息,这对于实现文本的多标签分类任务是十分重要的;
  2. 但是对于上面的这种思路的实现是十分困难的;由于最近预训练语言模型的大火,同时再加上Prompt技术的加持,所以本文中的模型使用的Prompt加Masked预训练语言模型的方法来实现多标签的文本分类任务;
  3. 通过文中作者的叙述不难发现,文中使用的Prompt是通过人工构建模版的方式来使用Prompt技术,所以这种方式属于使用的“离散型的Prompt”,但是通过后期的作者的描述来看,引入的Prompt前缀是没有意义的token,这些token是可学习的,这是等于使用的连续型的Prompt;通过使用Prompt+MLM的方式,再加上使用Self-Attention来捕获标签之间相关性以及标签之间丰富语义信息,最终实现多标签文本分类任务的处理;

文中再引言部分简单介绍了多标签文本分类的发展,同时一些处理这类任务的方法,并且指出了之前的这些方法的难度和缺陷:

  1. 文中指出随着时代的发展以及人们需求的增加,对于文本具有不确定数量的标签数,这种任务需求是存在,对于这种多标签文本分类任务,学者们将对于这方面的研究划分成了三个方面:

    1. how to fully capture semantic patterns from original documents ,即如何从文本中提取出丰富的语义模式;
    2. how to extract discriminant information related to corresponding labels from each document, 即如何从文本中提取出具有辨别对应标签的信息;
    3. how to accurately mine the correlation between labels,即如果准确的发掘出标签之间的相关性信息;
  2. 文中提到一种处理这种多标签任务的方法就是将多标签任务转化为多个二分类任务,有的是使用传统的ML方法来实现的,还有的是使用神经网络的一些模型来实现的,有一种方法是使用CNN的方法来实现这种目标函数,但是这一类方法完全忽略了标签之间的相关性问题,因此可能性能没有达到最好;

    • 对于多标签文本分类任务考虑标签相关性这对于任务的处理是十分有帮助的,文中使用了一个例子,如果对于两个不同的标签0和1,如果他们之间的相关性correlation系数为1,那么就证明他们将会同时出现在sample的groundtruth label set中;
  3. 同时,也有处理标签相关性的模型,

    • 有的模型使用的是将文本分类打标签这种任务,当成是标签的生成式任务;
    • 还有的模型是学习得到标签的表示信息从而进一步的实现文本分类打上标签;
    • 还有的模型对于test set中的text数据预测标签的时候使用的是train set中text的相关性信息,来预测test set中的标签信息;

    但是,上面的这些处理标签相关性的方法都没有考虑到label missing的情况,同时也没有考虑模型在一个未知的并且复杂标签空间中构建标签的相关性,这种方式的难度;

  4. 文中提出的LP-MTC模型

    1. 文中提到的这种LP-MTC模型收到Prompt Learning和PLM的启示,使用Prompt 模版从PLM中学习得到label和sample之间的相关关系;
    2. 将不同的label对应成不同的token,然后构建前缀token序列作为Prompt temple,用作Prompt temple的token可以是没有任何相关信息的token,就是一些简单的标志token序列;
    3. 通过输入到PLM中的带有前缀Prompt序列,在自注意力机制的帮助下就可以捕捉到包含在temple中的标签相关性信息;
    4. 模型在预测标签的时候,通过mask掉所有的标签,然后使用LM去预测这些位置的标签;
    5. 同时,为了发挥Bert模型的能力,使用了多任务机制,随机的在text中mask掉一些位置的token,然后使用MLM去预测这些位置的token,从而来优化处理多标签文本分类任务的模型;
  5. 文章的贡献点:

    1. 本文中的模型是将多标签文本分类任务转入到Prompt Learning任务中,并且设计了一个通用的Prompt模版,这个模版可以用在不同的数据集中,通过在PLM的帮助下,可以捕捉到labels和text相关关系;
    2. 文中通过使用MLM来构建额外的语言模型学习任务从而进行联合训练最终提升LP-MTC的性能;
    3. 最终通过对比实验证明了文中提出的模型的性能强大;

Related Work

  1. 文中在多标签文本分类这个模块中,一开始就是使用之前ML时期一开始对于多标签进行处理的模型实例进行说明有效的使用标签相关性对于多标签文本分类任务是十分高效的;
    1. 文中举了在ML时期的两个实例: Classifier Chains (CC) 这个模型通过将多个二分类器串起来的方式来实现实例标签相关性的信息、还有K-labelsets (RAkEL)这个模型是将总体的标签空间中生成多个子标签组,进而将多标签分类任务转换成单标签分类任务,看看当前的实例应该被划分到哪个子标签组中;
    2. 紧接着文中就提到了多标签分类在DL时期应用的实例是序列生成模型;通过RNN解码器生成一个多标签的序列,但是序列模型需要在潜在空间中寻找最优的解决方案,如果在标签较多的情况下这种方式明显是较为耗时的;
    3. 除了对于在特定的标签之间捕捉标签相关性这种方式之外,还有一种方式是构建标签之间联合概率的这种方式;
    4. 文中提出的方法是利用Prompt Learning在PLM的加持下实现捕捉标签之间相关性的这种目的,文中的模型中并不是显式的捕捉或者是表示出标签之间的相关性信息而是通过将通过temple加工之后的输入数据输入到PLM之BERT中,通过Self-Attention机制自动捕捉得到他们之间的相关性信息;
  2. 文中在Prompt Learning 这个模块中,重点介绍了Prompt Learning对于减少PLM跟特定的下游任务的之间的客观差异性,之前使用的是Fine-tuning的方式来缩小这种客观差异性;但是,明显表明的是使用Prompt Learning这种方式明显是更加高效的,尤其是对于大规模的预训练语言模型;
    1. 同时Prompt Learning对于Few-shot任务的处理也是十分有效的;
    2. 但是手动设计针对于不同任务的模版这种方式明显是十分耗时费力的,所以连续型的Prompt诞生了这种Prompt temple使用的是可训练的token序列,在多种不同的task中进行训练最终得到一个效果较好的prompt temple;
    3. 文中使用的就是就是这种定义了一系列的token,用来去表示标签的prompt;

Preliminaries

  1. 文中先对于Multi-label text classification进行进一步的形式化定义;

  2. 文中在又针对于Prompt Learning又做了进一步的具体分析,并且提出Prompt Learning分为下面的几个步骤:

    1. 第一步,针对于不同的任务设计不同的Prompt temple,将原始的输入文本数据 x x x 经过prompt Learning处理之后,得到了新的具有prompt的文本数据 x ′ x' x ;这个模版可以是针对于文本数据的前缀prompt,也可以是后缀prompt;

      • 具体的形式化定义为 x ′ = τ ∣ ∣ x x'=τ||x x=τ∣∣x , 其中 τ τ τ 为模版,|| 为连接符号;
    2. 第二步,通过PLM将输入进来的经过prompt处理之后的输入数据 x ′ x' x ,通过预测PLM中的词表V中的词作为mask 位置的内容的概率,通过计算词表中的每一个词在这个输入文本 x ′ x' x 中的概率最终得到整体V中词到了概率分布;

      • 形式化定义为: p M m ( w ∣ x ′ ) ∈ R ∣ V ∣ p^m_M(w|x')∈R^{|V|} pMm(wx
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值