这些嵌入是如何被计算出来的?
与使用静态向量表示每个词元或单词不同,语言模型会动态地生成上下文关联的词嵌入 ------ 即根据不同的语境,用不同的向量来表征单词 / 句子 / 文本块。这些向量随后可被其他系统用于各类任务。
生成文本嵌入向量的方法有多种。最常见的一种是对模型生成的所有词元嵌入值取平均值。但高质量的文本嵌入模型往往是专门针对文本嵌入任务训练的。
我们可以使用 sentence-transformers [1](一个被广泛使用的预训练嵌入模型工具包)来生成文本嵌入。
from sentence_transformers import SentenceTransformer
# Load model
model = SentenceTransformer("sentence-transformers/all-mpnet-base-v2")
# Convert text to text embeddings
vector = model.encode("Best movie ever!")
嵌入向量所含的数值数量(即维度)取决于底层嵌入模型。可通过 vector.shape 方法获取嵌入向量的维度信息。
03 为何在 RAG 系统中嵌入非常重要?
嵌入在检索增强生成(RAG)系统中发挥着非常关键的作用,原因如下:
语义理解:嵌入将词语、句子或文档转化为向量(数字序列),并使语义相近的内容在向量空间中彼此靠近。这使系统能够理解上下文和语义,而非仅仅进行字面匹配。
高效检索:RAG 需要快速定位最相关的文本段落或文档。嵌入能通过 k 近邻(k-NN)等算法实现高效检索,让检索过程更快速便捷。
让回答更精准且切题:借助嵌入技术,模型能够识别与问题语义相关的信息,即使表述用语完全不同。这意味着用户能获得更精准且切题的回答。
04 嵌入的类型
嵌入具有多种形式,具体取决于系统需要处理的信息类型。

嵌入的类型 ------ 由原文作者供图
1. 基于系统需理解的信息类型划分:
1.1 词嵌入
词嵌入将每个词语表示为多维空间中的一个点。含义相近的词语(如 "dog" 和 "cat")在空间中的位置会彼此靠近。这有助于计算机理解词语之间的语义关联,而不仅是拼写形式。
流行的词嵌入模型包括:
- Word2Vec:从大量文本中学习词语关系。
- GloVe:重点关注词语共同出现的频率。
- FastText:将词语分解为更小的组成部分,能更有效处理生僻词或拼写错误的词语。

向量嵌入空间 ------ 由原文作者供图
1.2 句嵌入
有时,需要从整个句子而不仅是单个单词来理解完整语义。句嵌入将一个句子的整体语义捕获为一个向量。
知名的生成句嵌入的模型有:
- Universal Sentence Encoder(USE) :适用于各种类型的句子,包括疑问句和陈述句。
- SkipThought:通过学习预测前面和后面可能出现的句子,来理解语境和用户意图。
1.3 文档嵌入
文档可以是一个段落乃至整本书。文档嵌入将所有文本转化为单个向量,便于在大型文档库中进行搜索,并查找与查询相关的内容。
主流的文档嵌入模型包括:
- Doc2Vec:基于 Word2Vec 构建,但专为较长文本设计。
- Paragraph Vectors:与 Doc2Vec 类似,但侧重于段落等较短文本。
1.4 图像嵌入
RAG 系统不仅能处理文本,也能处理图像。图像嵌入将图片转换为描述颜色、形状和图案的数字序列。
常用的生成图像嵌入的模型是卷积神经网络(CNNs),它特别擅长识别图像中的模式。
2. 基于嵌入的特性划分:
嵌入可以具有不同的特性,这些特性会影响其工作方式和适用场景。以下通过简单示例说明这些特性:
2.1 稠密嵌入
稠密嵌入使用的向量中,几乎每个位置都填充了有效数值。每个数值都承载着关于词语、句子、图像或文档的一点信息。稠密向量紧凑且高效,能在较小空间内存储大量细节内容,使计算机能更轻松地进行比对并快速发现相似性。
2.2 稀疏嵌入
稀疏嵌入与稠密嵌入相反。向量中大多数数值为零,仅有少数位置有实际数值。零值不携带任何信息。稀疏嵌入有助于突出最关键的特征,易于识别事物的独特之处。

稠密嵌入与稀疏嵌入 ------ 由原文作者供图
2.3 长上下文嵌入
有时需要理解整个文档或长对话,而不仅仅是短句。长上下文嵌入就是专为一次性处理大量文本而设计的。
旧模型只能处理短文本。如若输入长文章,需将它们先切分成小块,这可能导致旧模型遗漏重要的上下文关联,或者偏离文章的核心主旨。新模型(如 BGE-M3)可一次性处理数千词(最高达 8,192 个词元),有助于计算机把握整体语境。
2.4 多向量嵌入
通常,一个项目(如一个单词或一篇文档)仅对应一个向量。而多向量嵌入则为每个项目使用多个向量,每个向量可捕获不同的特征。
通过多个向量,计算机能识别更多的细节和更复杂的关系,从而产生更丰富、更准确的结果。
更多推荐

所有评论(0)