Wang R, Dai X. Contrastive Learning-Enhanced Nearest Neighbor Mechanism for Multi-Label Text Classification[C]//Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers). 2022: 672-679.
摘要导读
多标签文本分类(MLTC,Multi-Label Text Classification)是自然语言处理中的一项基本且具有挑战性的任务。以往的研究主要集中在学习文本表示和建模标签相关性上。然而,在预测特定文本的标签时,这些方法忽略了现有的类似实例中的丰富知识。为了解决这一问题,本文提出了一个k最近邻(kNN)机制,该机制检索几个邻居实例并用它们的标签插值模型输出。此外,本文还设计了一个多标签对比学习目标,使模型了解kNN的分类过程,并提高了在推理过程中检索到的邻居的质量。大量的实验表明,提出的方法可以为多个MLTC模型带来一致的和可观的性能改进,包括最先进的预训练和非预训练模型。
模型浅析
如图所示,本文为MLTC设计了一个k个最近邻机制(步骤2,3),并通过使用多标签对比学习目标训练模型(步骤1)对其进行增强。总体思路是通过设计一个多标签对比学习的目标函数来辅助KNN的选取。
问题形式化
给定多标签分类任务数据集,是待分类的文本,是对应的multi-hot标签向量。其目标是学习到到的映射关系。-
nearest neighbor MLTC
本文的主要思路是在标签的推断阶段充分利用现有样本的相似表示,主要对应于(2)(3)两个步骤,其中(2)用于构建训练样本的存储,(3)在此基础上进行KNN预测。
Datastore Construction - 首先产生对应的文本表示,生成对应的offline datastore: -
Multi-label Contrastive Learning
在MLTC中,模型通常是通过二元交叉熵(BCE)损失的监督学习训练,而没有关注到kNN检索过程。因此,检索到的邻居可能没有与测试实例相似的标签,并且对预测几乎没有帮助。为解决这个问题,本文提出利用多标签对比学习目标来训练模型。
为了建模多标签实例之间的复杂相关性,本文设计了一个基于标签相似度的动态系数。
给定batch_size=b,定义了一个函数来输出一个特定实例的所有其他实例。样本对对应的对比损失为:
这里关于的计算其实是在统计样本对对应的multi-hot标签中common label的个数,然后进行归一化处理。可能在聚类任务中就直接可以转化为对soft assignments的内积。
整个batch的损失函数为所有样本对损失函数之和:。根据此损失函数,可以得出,当标签相似度较高时,会被优化的更近。同时,如果两个样本无共享标签,即时,。其距离仅会出现在其他项计算的分母中。这样就导致其距离会被优化的越大。 -
Total Loss
总损失可以表示为:
实验结果
可以看出,对于多标签分类任务,在特征空间检索更多相似的样本辅助标签样本的标签预测是会有效果提升的。而单纯使用基于标签的对比学习甚至会影响分类的性能,这一点。。笔者不太能理解。同时使用kNN+CL使得kNN检索的准确性进一步增强,提升了多标签分类结果。
这种方式在不需要确定正例的情况下,引入标签语义之间的相似性,约束标签空间中相似样本的特征相似度增大,同时不相似样本距离增大。