背景:
直接用BERT句向量做无监督语义相似度计算效果会很差,任意两个句子的BERT句向量的相似度都相当高,其中一个原因是向量分布的非线性和奇异性(分布不均匀)。
指导原则:
通过自动构造相似实例和不相似实例,要求习得一个表示学习模型,通过这个模型,使得相似的实例在投影空间中比较接近,而不相似的实例在投影空间中距离比较远。
无监督simcse:
一个句子通过encoder得到sentence embedding,而其他句子得到的sentence embedding是作为负例,而正例就很巧妙了,是同一个句子输入两遍,通过不同的drop mask机制得到的sentence embedding,注意不同的drop mask机制不用我们自己去搞,是指dropout层在训练时是会随机drop一些输入的,因为具有一定的随机性,所以同一个句子输入两遍就行。