Sentence Transformers 利用预训练的语义嵌入来实现零样本和少样本学习,这些嵌入能够捕获通用文本理解。这些模型将句子转换为密集的向量表示(嵌入),其中相似的含义在向量空间中更接近。这使得像检索或分类这样的任务可以通过比较输入文本的嵌入与潜在目标(例如,标签、文档)的嵌入来执行,即使没有任务特定的训练。例如,在零样本设置中,开发人员可以将用户查询的嵌入与预定义的类别描述的嵌入进行比较,从而对查询进行分类,而无需对标记的示例进行训练。
关键机制是该模型使用诸如对比学习之类的目标在大型数据集上进行预训练,这教会了模型区分语义相似和不相似的句子对。 这种训练产生可以在各个领域推广的嵌入。 当应用于新任务时,开发人员可以计算输入和任务特定参考文本的嵌入之间的相似度分数(例如,余弦相似度)。 在少样本情景中,少量标记的示例可以微调模型的相似度阈值或提示模型更准确地对候选输出进行排序。 例如,支持票证系统可以使用 10 个标记的示例来调整嵌入如何映射到优先级,从而在无需大量重新训练的情况下提高准确性。
实际实现通常使用像 sentence-transformers
这样的库,它提供了预训练的模型(例如,all-MiniLM-L6-v2
)以及用于编码文本和计算相似度的工具。 构建文档检索系统的开发人员可能会将搜索查询和文档语料库编码为嵌入,然后使用余弦相似度返回前 K 个最相似的文档。 另一个示例是零样本文本分类:嵌入类描述(例如,“体育”、“政治”),并将它们与新闻文章的嵌入进行比较以预测其类别。 通过依赖于语义相似性而不是任务特定的训练,Sentence Transformers 减少了对标记数据的需求,同时保持了强大的性能。