论文笔记:Scaling Sentence Embeddings with Large Language Models
2024 ACL findings
1 intro
- 直接利用LLMs生成句子嵌入面临两个主要挑战
- LLMs作为自回归模型生成的是文本而非向量,因此需要将输出向量化
- 如何有效地将上下文学习的能力融入句子嵌入中也是一个关键问题
- 论文调查了当前LLMs在句子嵌入中的能力
- 如何使用LLMs表示句子嵌入,并且提示工程是否有效?
- 设计了一套prompt
- 上下文学习是否能提升句子嵌入的质量?
- ——>通过添加定义句子和相应的词作为示例进行上下文学习,性能可以进一步提高
- 当模型参数超过数十亿时,参数规模是否依然有效?
- 从数百万个参数到数十亿个参数的过渡,能够提高STS任务的表现。
- 然而,继续扩大参数规模可能不会带来更多的改善。
- 即使是上下文学习,66B的OPT在STS任务上仍然不如6.7B的OPT
- 尽管如此,扩大模型规模能提高迁移任务的性能。
- 具有数十亿参数的LLMs在没有任何微调的情况下,仍展现出强大的性能,甚至达到了最新的状态。
- 将当前对比学习框架融入LLMs后能取得哪些改进?
- 通过采用对比学习可以进一步提高性能。
- 通过采用高效的微调技术,LLMs即使在有限计算资源下,也能够在STS任务上取得最先进的成果
- 如何使用LLMs表示句子嵌入,并且提示工程是否有效?
- 通过评估LLaMA和OPT在语义文本相似度(STS)任务和迁移任务上的表现,进行系统性研究
2 方法
2.1 使用LLMs表示句子
- 提取最后一个token的隐藏向量作为句子嵌入
- 把bert风格的prompt(“This sentence: “ [text] ” means [MASK]”)改成OPT风格的(This sentence: “ [text] ” means in one word: “)
2.2 使用高效微调的对比学习
- 还利用对比学习来提升LLMs的句子嵌入能力,已被证明是一种高效的学习方法
- 这里使用了有监督对比学习
- 每个句子
都有对应的正面句子
和硬负面句子
- l是sequence length
- 每个句子
- 这里使用了有监督对比学习