清华大学计算机科学与技术系的研究人员发布论文,论文的主题是探讨如何通过对比性微调(contrastive fine-tuning)来提升小型语言模型的文本嵌入(text embeddings)质量。文本嵌入是一种将文本转换为向量表示的技术,这些向量能够捕捉文本的语义信息,使得机器能够更好地理解自然语言。
- GitHub:https://github.com/trapoom555/Language-Model-STS-CFT
- 模型地址:https://huggingface.co/collections/trapoom555/small-lms-text-embedding-663b3ec87527788a577f6852
例如,我们想让计算机理解不同句子之间有多相似。这就像我们玩“找不同”的游戏,需要找出两幅画中有多少地方是相同的或不同的。这篇论文里,研究者们教计算机做类似的工作,但用的是句子而不是图片。他们用了一些技巧让计算机更好地学会这项技能,特别是针对那些不是很大的语言模型,这样计算机就可以在资源有限的情况下也能理解句子的意思。
主要功能:
- 提升小型语言模型生成的文本嵌入的质量。
- 通过微调提高模型在语义文本相似性(Semantic Textual Similarity, STS)任务上的表现。
主要特点:
- 对比性微调:这是一种训练方法,通过比较文本对的相似性和差异性来优化模型。
- 参数高效:使用LoRA(Low-Rank Adaptation)技术,即使在计算资源有限的情况下也能进行微调。
- 公开代码:研究者们提供了公开的代码,方便其他研究者或开发者复现和利用这些技术。
工作原理:
- 数据集:使用处理过的自然语言推理(NLI)数据集进行训练。
- 语言模型选择:选择了几个参数较少的语言模型,如MiniCPM、Phi-2和Gemma。
- 嵌入向量提取:通过在预训练的语言模型中输入经过修改的提示(prompt),并提取最后一层的特定标记(如EOS)对应的向量。
- 训练目标:使用InfoNCE目标函数,通过最小化损失来训练模型,使其能够区分相似和不相似的文本对。
具体应用场景:
- 文档分类:自动将文档分配到不同的类别。
- 语义相似性匹配:在信息检索系统中,找出与查询最相关的文档或句子。
- 信息检索:帮助用户快速找到包含相似信息的文本资料。
论文的实验结果表明,通过对比性微调,这些小型语言模型在多个基准测试上的性能得到了显著提升,尤其是MiniCPM模型,平均性能提升了56.33%,显示出在资源受限的应用中是一个可行的选择。
0条评论