Abstract
学习出高质量的句子表示是有利于广泛的自然语言处理任务,尽管bert-base在很多的下游任务当中达到了很好的效果,但是bert-base直接导出的句子表示被证明了具有坍塌现象,因此在语义相似度的任务(STS)上会导致比较差的效果,本篇文章的Consert利用对比学习进行无监督微调bert,他解决了bert导出的句子表示的坍塌问题,并使得句子表示更好的应用在下游任务中。
1 Introduction
-
bert 的不足
近年来,bert-based预训练语言模型在很多有监督下游任务当中获得了很好的表现,然而直接获取的bert的句子表示被证明低质量表现,当直接应用bert的句子表示的时候,几乎所有的句子对之间的相似度得分都比较高在0.6-1之间,即使是在人类标注者看来,两个完全没有关系的句子,换句话说,bert直接得出的句子表示出现了某种程度的坍塌现象,意味着所有的句子都被映射到一个小的空间区域,所以会展现出高的相似性。 bert-base的词表示具有各向异性,高频词聚集在一起,靠近原始词;低频词分散稀疏,当平均词向量的表示的时候,这些高频词会在句子表示中占有优势,导致真实语义偏差,所以直接利用bert的native句子表示进行语义匹配和文本检索是不恰当的。传统的方法通常会使用额外的有监督进行fine-tune,但是在真实世界的场景中,标注数据是昂贵的并且难以获得的。 为了缓解bert的这种坍塌问题,同时降低标注数据的要求,提出了对比学习的新的句子级训练目标,通过鼓励来自同一个句子的两个增强表示更加接近,而和其他句子的表示保持句子,我们改造了bert直接得到的句子表示空间,并且成功的解决了坍塌的问题。 而且,本文建议了多种数据增强的策略,包括adversarial attack,cutoff和dropout,有效的传递句子表示到下游的任务当中。本文的这个方法叫做consert(a **Con**trastive Framework for **SE**ntence **R**epresentation **T**ransfer) -
consert的优点
consert有很多以前的方法没有的优势。首先,在推断的时候他没有而为的结构和专业的操作,它的参数大小和原bert一样,使得它更加容易去使用。第二,相比较预训练方法,consert效率更高,仅仅需要一千个从目标分布中提取的无标签文本,与bert相比,实现了35%的相对性能的提升,在一个v100gpu上仅仅需要几分钟。最终,他包含了集中有效并且方便的造成最小语义冲突的数据增强方法。 贡献总结如下: (1)基于对比学习提出一个简单有效的句子级训练方法,它缓解了bert-derived 表达的坍塌现象,而且传递给下游任务。 (2)探索出多种有效的文本增强策略去生成对比学习的视图,并且在无监督句子表示迁移上分析它们的影响。 (3)仅仅在无监督目标数据集上进行fine-tune,此方法在STS任务上实现了有效的提升。
2 Related Work
2.1 句子表示学习
- 有监督方法
- 无监督
- 半监督
2.2 对比学习
对比学习应用在视觉表示
-
对比学习应用在文本表示
对比学习被广泛的应用在NLP领域任务上,很多工作都利用它进行语言模型的预训练