核心任务
提出了一个基于描述的文本分类框架,即每个类别标签与一个类别描述相关联。
实验表明,这种方法能够在单标签分类、多标签分类和多方面情感分析任务上取得显著的效果,尤其是对复杂的标签(如多方面情感分析)体系,该方法具有突出的优势。
动机
文本分类的任务通常分为文本特征提取和分类两个阶段。标准形式下的缺陷:类别标签仅被表示为索引(如:1,2等),忽视了标签本身的语义,对模型而言,没有明确指出需要分类的内容。
模型应先学会将相关文本与目标方面关联起来,再确定情感(即先了解分类什么,再分类)。因此,将类标签和类描述结合起来,输入“类描述+文本”直接告诉模型要分什么。
实现
基于描述的文本分类
- N个二元分类器
迭代qy,将{[CLS];qy;[SEP];x}输入BERT→输出h[CLS]→两层前馈网络(sigmoid函数)→输出概率,其中h[CLS]编码了文本和描述之间的交互作用。
多标签分类任务
单标签分类任务
- 一个N元分类器
{[CLS1];q1; [CLS2];q2;…; [CLSN];qn; [SEP];x}输入BERT→输出上下文表示h[CLS1], h[CLS2],…,h[CLSN]→映射为标量,输入softmax函数→得到把第i个类分给文本x的概率
注:不能处理多标签分类的情况。
类描述生成方法
类描述的使用将NLP任务形式化为QA任务,生成的描述的适当性应该直接与最终的分类性能相关
-
模板策略
采用已有的、人工注释好的模板作为类别描述,如Wikipedia定义。 -
抽取策略
从输入文本中选择一个子字符串作为描述。
通过BERT将输入文本x中的每一个单词xk映射为hk,用softmax函数计算每一个单词作为字符串开始和结束下标的概率:
将二者相乘得到取某一段字符串作为类描述的概率:
将“类描述+文本”输入分类模型,输出分配正确标签给文本的概率值,作为更新分类模型和提取模型的奖励。
对于N元分类器:
对于N个二元分类器:
对于每个生成的描述qyx和对应的x,我们定义其损失如下:
强化近似式9中的期望,使用来自策略分布的抽样描述。更新参数的梯度如下
其中,b为基线值,设为之前所有奖励的平均值。 -
抽象策略
采用生成模型,输入一段序列得到另一段序列。
使用预先训练的编码器-解码器初始化,输入为x,输出为模板描述,原理是从词库中为描述选取多个词。
词库很大导致方差很大,在标准的强化训练中,相同的奖励被用来更新描述中所有单词的概率,采用REGS-reward能够分配奖励给部分解码序列,以此来减小方差。梯度为: