PairSupCon:用于句子表示的成对监督对比学习 《Pairwise Supervised Contrastive Learning of Sentence Representations》
oders的数据增强方法【自然语言处理】【向量表示】PairSupCon:用于句子表示的成对监督对比学习
一、简介
学习高质量的句子嵌入是中的基础任务。目标是在表示空间中将相似句子映射在相近的位置,将不相似的句子映射至较远的位置。近期的研究通过在数据集上训练取得了成功,该数据集上的任务是将句子对分类为三种类别中的一种:entailment
、contradiction
或者neutral
。
尽管结果还不错,但先前的工作都有一个缺点:构成contradiction
对的句子可能并需要属于不同的语义类别。因此,通过优化模型来区分entailment
和contradiction
,对于模型编码高级类别概念是不足够的。此外,标准的siamese(triplet)
损失函数仅能从独立的句子对中学习,其需要大量的训练样本来实现有竞争力的效果。siamese
损失函数有时能够将模型带入糟糕的局部最优解,其在高级语义概念编码上的效果会退化。
在本文中,受到自监督对比学习的启发,并提出了联合优化具有实例判别的成对语义推理目标函数。作者将该方法称为。正如最近的一些研究工作所提及的,instance discrimination learning
能够在没有任何明确指导的情况下将相似实例在表示空间中分组在附近。利用这种隐含的分组作用,将同一类别的表示集合在一起,同时增强模型的语义entailment
和contradiction
推理能力。
虽然先前的工作主要专注在语义相似度的两两评估上。在本文中,作者认为将高级语义概念编码至向量表示中也是一种重要的评估方面。先前在语义文本相似度任务上表现最好的模型会导致类别语义结构嵌入的退化。另一方面,更好的捕获高层次的语义概念能够反过来促进在低级别语义entailment
和contradiction
推理的效果。这个假设与人类从上至下进行分类相一致。在8个短文本聚类任务中实现了平均10%-13%的改善,并且在任务上实现了5%-6%的改善。
二、方法
遵循,采用和作为训练数据,并且为了方便将合并的数据称为。数据由标注的句子对组成,并且每个样本的形式为:。每个句子都是从现有的文本源中选择的,并且每个都会个各种人工标注的句子组成一对。每个都表示的类型以及分类关联的和句子对的语义关系为三个类型:、和。
先前的工作会在上独立优化siamese loss
或者triplet loss
。作者的目标是利用判别学习中的隐式分组效应来更好的捕获数据的高级类别语义结构,同时促进在低级别语义文本entailment
和contradiction
推荐目标的更好收敛。
1. 实例判别()
作者利用的正样本对来优化实例级判别目标函数,其尝试将每个正样本对与其他的句子拉远。令表示随机采样的minibatch
,其中表示entailment
或者contradiction
。对于正样本对中的premise
句子,这里的目标是将hypothesis
句子与同一个batch
中的个句子分开。具体来说,令表示中的样本对应的索引,最小化下面的损失函数:
在上面的等式中,表示实体判断头的输出,表示温度参数,是cosine
相似的,即。等式(1)能够被解释了用于分类和的分类损失函数的softmax
。
类似地,对于hypothesis
句子,这里尝试从中所有其他句子中判别premise
句子。因此,定义对应的损失函数为等式(1)中交换实例和的角色。总的来说,最终的损失函数为平均中的所有正样本。
这里,表示指示函数,是中的正样本数量。优化上面的损失函数不但有助于将类别语义信息隐含编码至向量表示中,也能够更好的促进成对语义推理能力。
2. 难负样本学习
等式(1)可以被重写为
其可以被看作是对标准triplet loss
的扩展,通过将minibatch
内的个样本作为负样本。然而,负样本是从训练数据中均匀采样的,其忽视了这些样本包含的信息量。理想情况下,应该将那些来自不同语义组但是映射接近的难负样本分开。虽然在中没有类别级的监督,但是可以通过下面的方法近似负样本的重要度。
这里,,其能够被解释为针对,在所有个负样本的相对重要度。该重要度是基于假设:难负样本是那些在表示空间上与更接近的样本。
3. Entailment and Contradiction Reasoning
实例判别损失函数主要是用于将正样本对从其他样本对中分离出来,但并没有明确的强制来判别contradiction
和entailment
。为了这个目的,联合优化成对entailment
和contradiction
推理目标函数。这里采用基于softmax
的交叉熵损失函数来形成成对分类目标函数。令代表句子的向量表示,对于每个标注的句子对,最小化下面的损失函数
这里表示线性分类头,是交叉熵损失函数。不同于先前的工作,本工作将neural
样本对从原始训练集中移除,并专注在语义entailment
和contradiction
的二分类问题上。这样做的动机是:neural
可以通过实例判别损失函数来捕获。因此,这里移除了neural
样本对来的两种损失函数的复杂性,并改善学习效率。
- 总的损失函数
其中,和,由等式(4)和等式(3)定义。在等式(5)中,是一个平衡超参。
三、实验