Yan Y, Li R, Wang S, et al. ConSERT: A Contrastive Framework for Self-Supervised Sentence Representation Transfer[J]. arXiv preprint arXiv:2105.11741, 2021.
摘要粗读
学习高质量的句子表征有利于广泛的自然语言处理任务。虽然基于BERT的预训练语言模型在许多下游任务上都取得了很高的性能,但the native
derived sentence 的表示被证明是collapsed的,因此在语义文本相似性(STS)任务上产生了较差的性能。在本文中,我们提出了ConSERT,一个自监督的矩阵表示转移的对比框架,它采用对比学习,以无监督和有效的方式微调BERT。通过使用未标记的文本,ConSERT解决了BERT派生的句子表示法的崩溃问题,并使它们更适用于下游任务。实验结果展示了较好的实验性能。
In this paper, we present ConSERT, a Contrastive Framework for Self-Supervised SEntence Representation Transfer, that adopts contrastive learning to fine-tune BERT in an unsupervised and effective way.
论文贡献点
- 论文提出了一个简单而有效的基于对比学习的句子级训练目标。它减轻了BERT衍生出来的句子表示的崩溃,并将它们转移到下游任务中。(总的概括自己的论文的整体模型概况)
- 探索了各种有效的文本增强策略来生成对比学习的视图(模型重点部分使用的方法作为亮点提出),并分析了它们对无监督句子表示转移的影响。
- 仅使用无监督的方式,实现了性能的明显提高。
对比学习
的相关工作
对比学习作为一项无监督任务中的技术。其主要的思想是:良好的表示应该能够识别同一物体,同时区别于其他物体。使用数据增强使得每个样本会产生不同的增强版本,并使得这些样本在表示空间中接近。这种方法可以看作是对输入样本的不变性建模。
ConSERT方法浅析
给定一个类似BERT的预训练语言模型和一个从目标分布中提取的无监督数据集,我们的目标是对上的进行微调,使句子表示更与任务相关,并适用于下游任务。
General Framework
模型包含3个主要的模块:
(1)首先是一个数据增强模块,它为输入样本生成不同的视图表示作为token embedding layer的输入。
(2)其次是一个共享的BERT编码器,用来计算每个输入文本的句子表示。在训练过程中,使用最后一层的token embedding的平均池化来获得句子表示。
(3)BERT编码器上的对比损失层。它最大限度地提高了同一个句子的表示与其对应的增强版本之间的一致性,同时保持它与同一batch中的其他句子表示的距离。
详细流程:(1)对于每个输入文本,首先将其传递给数据增强模块,其中应用两个转换和来生成两个版本的token embedding,分别表示为: 。(2)然后,和都将由BERT中的多层transformer块进行编码,并通过平均池化生成句子表示和。(3)对于句子表示的输出对,模型采用了经典的 the normalized temperature-scaled cross-entropy loss (NT-Xent)作为对比学习的目标。在每个训练步骤中,从中随机抽取个文本,构建一个mini-batch进行处理,在增强后得到个文本句子表示。每个数据样本点需要从2(N-1)个负样本中找出自己对应的增强样本。
Data Augmentation Strategies
模型的数据增强模块使用了四种不同的策略,如下:- Adversarial Attack
该方法通过在输入样本中添加最坏情况的扰动来生成对抗性样本。请注意,该策略只适用于与监督下的联合训练,因为它依赖于监督损失来计算对抗性扰动。 - Token Shuffling
该策略目标是随机打乱输入序列中的token的顺序。由于transformer体系结构中的bag-of-words性质,位置编码是关于顺序信息的唯一因素。因此,根据( Slm: Learning a discourse language representation with sentence unshuffling.)论文,论文通过将打乱的位置id传递给嵌入层,同时保持标记id的顺序不变来实现这个策略。 - Cutoff
( A simple but tough-to-beat data augmentation approach for natural language understanding and generation)提出了一种简单而有效的数据增强策略,称为截止。它们随机删除特征矩阵中的一些标记(用于标记截止)、特征维度(用于特征截止)或标记跨度(用于跨度截止)。作者指出在实验中只使用标记截止和特征截止,并将它们应用于token embedding以生成视图。 - Dropout
Dropout是一种广泛使用的避免过拟合的正则化方法。在实验中,作者也展示了它作为一种对比学习的增强策略的有效性。对于这种设置,我们以特定的概率随机删除标记嵌入层中的元素,并将它们的值设置为零。与前一种增强策略不同,该策略中每个元素都是单独考虑的。
Incorporating Supervision Signals
除了无监督转移外,该方法也可以与监督学习相结合。以NLI数据集的监督任务为例:当然没有使用标签信息的无监督方法可以很好的和监督目标相结合以很好的支持下游任务。作者在论文中也给出了不同的结合方式:
- Joint training (joint)
将两种监督方式相加,使用一个超参数进行调节。通常这种方法也比较常见。
- Supervised training then unsupervised transfer (sup-unsup)
采用先使用顺序执行的方法。先对模型进行训练然后使用对比学习进行微调。 - Joint training then unsupervised transfer (joint-unsup)
结合前两种方式,使用先联合训练(Joint training)再使用对比学习进行微调的方式。
实验结果展示的分析
-
Effect of Data Augmentation Strategy
在这一部分,作者巧妙的使用了热力图的方式,很明确的展示了不同的策略组合方式对性能的影响。
请注意,这里不考虑对抗性攻击策略,因为它需要额外的监督来生成对抗性样本。
- Influence of Temperature
在涉及到某些超参数的情况下,如中temperayure参数的变化对模型性能的影响。
-以及batch size的设置
该模型从结构设计上来讲,形式较为简单,但按照论文实验中所讲的一样,它以无监督的方法解决了句子表示在BERT中存在 collapsed的状况,以对比学习的方法探讨了再不增加标记数据的情况下如何对句子表示进行微调,没有额外的数据代价,并且展示出了良好的性能。
该论文中谈到了不同的数据增强的策略对性能的增强,具有很高的参考价值。并且继续思考对比学习在无监督多视图聚类中的扩展。https://github.com/yym6472/ConSERT.