向量理解

vector 2d coordinates

向量具有维度和方向。例如,下图描绘了在笛卡尔坐标系中用箭头表示的二维向量

向量 的头部位于点 。**x** 坐标值为 ,**y** 坐标值为 。坐标也称为向量的分量。

相似度

可以使用几种数学公式来确定两个向量是否相似。其中一个最直观且易于理解的是余弦相似度。请考虑以下显示三组图表的图像

vector similarity

当向量

它们之间的夹角, ,是衡量它们相似度的良好指标。如何计算夹角

pythagorean triangle

我们都熟悉勾股定理

ab之间的夹角不是90度时会怎样?

引入余弦定理

余弦定理

下图将此方法显示为矢量图:lawofcosines

此向量的模长根据其分量定义为

模长

两个向量 之间的点积根据其分量定义为

点积

用向量模长和点积改写余弦定理得到以下结果

向量形式的余弦定理

替换为 给出以下内容。

向量形式的余弦定理,仅用 \$\vec{A}\$ 和 \$\vec{B}\$ 表示

展开此公式 给出了 余弦相似度 的公式。

余弦相似度

此公式适用于大于 2 或 3 维的空间,尽管难以可视化。但是,可以在一定程度上进行可视化。在 AI/ML 应用中,向量通常具有数百甚至数千个维度。

下面显示了使用向量分量在高维空间中的相似度函数。它通过使用 求和数学语法,将之前给出的二维大小和点积定义扩展到 **N** 维。

使用向量分量的余弦相似度

这是向量存储简单实现中使用的关键公式,可以在 SimpleVectorStore 实现中找到。