向量概念
2026/2/16大约 2 分钟
向量概念
基础概念
在计算机科学和人工智能领域,向量(Vector) 是一个由数值组成的有序数组(例如 [0.1, 0.5, -0.3])。
在自然语言处理(NLP)中,我们无法直接计算文本之间的“相似度”(比如“苹果”和“水果”在字面上完全不同)。为了解决这个问题,我们需要将文本(文字、句子、段落)转化为计算机能理解的数学形式,这就是向量。
嵌入 (Embedding)
将文本转换为向量的过程称为嵌入(Embedding)。
- 这个过程由专门的 Embedding 模型完成(如
text-embedding-3-small,bge-m3等)。 - 转化后的向量通常是高维空间中的一个点(例如 768 维或 1536 维)。
- 核心特性:语义相近的词,在向量空间中的距离也会更近。
相似度计算
当文本变成向量后,判断两段文本是否相似,就变成了计算两个向量在空间中的“距离”。最常用的方法是余弦相似度。
余弦相似度 (Cosine Similarity)
余弦相似度通过计算两个向量夹角的余弦值来评估它们的相似度。
公式:
其中 是点积, 是向量的模。
取值范围:[-1, 1]
- 1:完全相同(夹角 0 度,方向一致)。
- 0:毫无关系(夹角 90 度,正交)。
- -1:完全相反(夹角 180 度,方向相反)。
在 RAG(检索增强生成)中,我们通常只关注 0 到 1 之间的正值。值越接近 1,表示用户的提问(Query)与知识库中的文档片段(Chunk)语义越匹配。
