理解向量

vector 2d coordinates

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

向量 的头部位于点 x 坐标值为 y 坐标值为 。这些坐标也被称为向量的分量。

相似性

可以使用几种数学公式来确定两个向量是否相似。其中最直观、最容易理解的是余弦相似度。请看下面显示三组图的图片

vector similarity

向量 在彼此方向接近时被认为是相似的,如第一个图所示。当向量彼此垂直时被认为是无关的,当它们彼此指向相反方向时被认为是相反的。

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

pythagorean triangle

我们都熟悉 勾股定理

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

请看 余弦定理

余弦定理

下图显示了这种方法作为向量图:lawofcosines

此向量的大小根据其分量定义为

大小

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

点积

将余弦定理用向量大小和点积重写,得到以下内容

向量形式的余弦定理

替换 得到以下内容

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

展开此式 即可得到 余弦相似度 的公式。

余弦相似度

这个公式适用于高于 2 或 3 的维度,尽管很难可视化。然而,它可以在一定程度上可视化。在 AI/ML 应用程序中,向量通常具有数百甚至数千个维度。

使用向量分量在更高维度中的相似性函数如下所示。它通过使用 求和数学语法,将先前给出的二维大小和点积定义扩展到 N 维度。

带向量分量的余弦相似度

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

© . This site is unofficial and not affiliated with VMware.