使用生成式AI改进极端多标签分类

通过强制对语义相关标签进行层次聚类,可以提升罕见"长尾"分类类别的性能。

会议:EACL 2023

相关出版物:极端多标签分类中的聚类引导标签生成

多年来,某中心的研究人员一直在探索极端多标签分类(XMC)主题,即在可能的分类类别空间很大(例如数百万个标签)时对输入进行分类。在此过程中,我们多次推动了技术发展。

但先前的工作是在经典分类问题设置中进行的,其中模型计算空间中每个标签的概率。在一篇新论文中,我们团队在欧洲计算语言学协会分会(EACL)双年会上提出将XMC作为生成问题来处理,即对于每个输入词序列,模型生成标签的输出序列。这使我们能够利用大型语言模型的力量来完成XMC任务。

然而,在这种设置中,与经典设置一样,困难在于XMC标签空间中的大多数标签属于长尾,训练数据中代表性示例很少。过去的工作通过将标签空间组织成层次结构来解决这个问题:首先对输入进行粗分类,然后通过连续细化遍历层次树,到达语义相关概念的聚类。这有助于模型从相关但具有不同标签的示例中学习通用分类原则,并降低模型完全错误标记的可能性。

在我们的论文中,我们做了类似的工作,使用辅助网络将标签分组为聚类,并使用聚类信息指导生成模型的输出。我们在训练期间尝试了两种不同的指导方式。一种是将指示哪些聚类适用于文本输入的位向量直接馈送到生成模型中。另一种是在多任务目标上微调模型:模型学习从聚类名称预测标签,并从文本预测聚类名称。

在测试中,我们将这两种方法与最先进的XMC分类器以及在分类任务上微调但没有标签聚类优势的生成模型进行了比较。总的来说,带有聚类的生成模型优于传统分类器。在八项实验中的六项中,至少一种类型的聚类引导模型在整个数据集上匹配或改进了基线生成模型的性能。在六项关于长尾(罕见)标签的实验中,至少一种聚类引导模型优于生成基线。

架构

我们考虑模型接收文档(例如维基百科条目)作为输入并输出一组表征其内容的标签的任务。为了微调生成模型,我们使用包含样本文本和人工标注者应用的标签的数据集。

作为基线生成模型,我们使用T5语言模型。BERT是仅编码器语言模型,GPT-3是仅解码器语言模型,而T5是编码器-解码器模型,意味着它使用双向而非单向编码:当预测标签时,它可以访问整个输入序列。这非常适合我们的设置,其中标签的顺序不如其准确性重要,我们希望标签最好地表征整个文档,而不仅仅是其子部分。

为了创建标签聚类,我们使用预训练模型为训练集中每个文档的单词生成嵌入——即将它们映射到表示空间,其中接近度表示语义相似性。给定标签的嵌入是包含它的所有文档的平均嵌入。一旦标签被嵌入,我们使用k-means聚类将它们组织成聚类。

在第一个架构XLGen-BCL中,给定文档的真实标签聚类在位数组中表示为1;所有其他聚类表示为0。在训练期间,数组作为附加输入传递给模型,但在推理时,模型仅接收文本。

在另一个架构XLGen-MCG中,聚类被分配编号。模型在多任务目标上训练,同时学习将聚类编号映射到标签并将文本映射到聚类编号。在推理时,模型仅接收文本。首先,它为文本分配一组聚类编号,然后将聚类编号映射到标签。

实验

我们使用四个数据集评估了两种聚类引导生成模型和四个基线,并在每个数据集上评估了整体性能和罕见(长尾)标签的性能。在评估整体性能时,我们使用了F1分数(综合考虑假阳性和假阴性),并使用了两种不同的方法来平均每个标签的F1分数。宏平均简单地平均所有标签的F1分数。微平均汇总所有标签的所有真阳性、假阳性和假阴性,并计算全局F1分数。

在评估长尾标签性能时,我们考虑了在训练数据中仅出现一次或未出现的标签。

我们还使用正和无标签(PU)数据进行了一组实验。即,对于每个训练示例,我们移除了一半的真实标签。由于从一个示例中移除的标签可能仍出现在不同示例中,它仍可能作为输出标签出现。因此,实验评估了模型在标签上的泛化能力。

在PU数据上,生成模型显著优于传统分类器,而XLGen-MCG模型显著优于生成基线。 更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)