Advertisement

ESimCSE: Enhanced Sample Building Method for Contrastive Learning of Unsupervised Sentence Embedding

阅读量:

论文目的

SimCSE 使用dropout作为数据增强的最小方法,因为transformer使用位置embedding,句子的长度信息会被编码到句子embedding中,所以unsup-SimCSE的正对包含相同的长度信息。所以unsup-SimCSE训练的正样本对估计是有偏的,会倾向于将有相同或类似长度的句子是相似的,通过统计观察,发现unsup-SimCSE的确有这个问题。为了缓解它,使用一个简单的重复操作来修改句子,然后将句子和修改后的句子输入transformer来得到正对,且从CV中引入momentum contrast在不增加计算量的情况下来扩大负样本的数量,提出的两个方法分别用于政府样本,称为 E nhanced Unsup-SimCSE (ESimCSE)。

相关工作

通过在STS数据集上对unsup-SimCSE进行训练后发现该模型存在偏差。该模型能够学习到这两个句子之间的长度差异,并且在长度差异不超过3的情况下表现出了显著的优势,在这种情况下其性能将显著优于其他情况下的结果。

在这里插入图片描述

为调整句子长度常用的方法包括随机插入和随机删除两种方式。然而这些方法都可能影响句子的意义为了避免影响其意义我们选择采用单词重复的方式具体可见下图所示

修改句子长度方法比较

对比学习中的负样本方面而言,在unsupSimCSE-BERT_base模型中设置batch_size=64时能够取得最佳效果。为此我们需要探究如何有效扩展负样本的数量。Momentum Contrast通过维护一个队列来重复利用之前计算好的embedding向量,并在新批次数据进入时删除最久未使用的批次数据。此外,在采用Momentum Encoder时,则会关闭Dropout层以防止梯度消失问题,并最终缩小了训练与预测之间的差距

在这里插入图片描述
在这里插入图片描述

Proposed ESimCSE: Enhanced unsup-SimCSE

Word Repetition

举例说明sub-word的重复使用情况。给定一个序列x=[x_1,\dots,x_N]其中x_i表示第i个元素,在子单词层面上进行重复编码时需要考虑最大长度参数dup\_len其取值范围为从0到\max(2,\text{int}(dup\_rate * N))随后通过均匀分布生成随机索引集dup\_set=\text{uniform}(range=[1,N],num=dup\_len)最终得到重编码后的序列x^+形式为x^+=[x_1,x_1,x_2,\dots,x_N]

Momentum Contrast

MoCo

Experiment

Evaluation Setup

1-million sentences randomly drawn from English Wikipedia
7个STS任务上

Main Results

在STS-B development sets上获得的最好结果

在这里插入图片描述

在STS7个任务上的两相比较结果,均有提升啊

在这里插入图片描述

消融试验,两种提升方法融合在一起,大力出奇迹了

在这里插入图片描述
在这里插入图片描述

Ablation Study

对dropout rates、repetition rates、基于句子长度扩展的方法以及动量对比队列尺寸分别进行实验研究,在观察ESimCSE效果变化的同时建议深入分析相关文献。

在这里插入图片描述

阅读感官

对于ESimCSE系统而言,是否有类似的初始设置或参数值得探讨?通过引入额外的重复词是否能够缓解序列长度相关的影响?随后调整策略为在生成文本时增加词项重复度。这种修改后的新模型是否会表现出在序列长度差异不超过k时具有更好的性能?

https://arxiv.org/pdf/2109.04380.pdf

全部评论 (0)

还没有任何评论哟~