【向量数据库】搜索算法
最近几年,一种叫做向量数据库的产品,正趁着AI的高潮开始崭露头角。陪同着AI时代的到来,向量将成为一种重要的数据情势,而传统数据库并不适合用来存储和检索向量数据,因此我们大约必要一种专门计划的数据库来处理这些问题。和存储数据表,然后用查询语句进行精准搜索的传统数据库不同,向量数据库存储的是向量数据,而查询过程则是从库中搜索出和查询向量最为相似的一些向量,具有肯定的模糊性。
相似度计算
计算向量相似度的方法有很多,常用的有余弦相似度、欧几里得距离等
余弦相似度 (Cosine Similarity)
[*]二维示意图
测量两个向量之间角度的余弦值。它的值范围从 -1 到 1,其中 1 表现向量完全相同,0 表现向量正交,-1 表现向量完全相反,当拥有的数据中向量的模长很重要,余弦相似度就不符合。
https://i-blog.csdnimg.cn/direct/434b23a1a91548c6b6c45e9581b0e453.png
[*]计算公式
余弦相似度指两个向量之间夹角的余弦值,反映了它们的方向相似性。余弦相似度的取值范围是[-1, 1],1表现方向完全相同,-1表现方向完全相反。
sim ( a , b ) = a ⋅ b ∥ a ∥ ∥ b ∥ \text{sim}(a, b) = \frac{a \cdot b}{\|a\| \|b\|} sim(a,b)=∥a∥∥b∥a⋅b
欧式距离 (Euclidean Distance)
[*]二维示意图
测量两个向量之间的直线距离。它的值范围从 0 到无穷大,其中 0 表现向量完全相同,较大的值表现向量越来越不相似。欧氏距离对大小敏感,向量包含与计数或度量有关的信息时,它非常有用。
https://i-blog.csdnimg.cn/direct/58d1353e458745448f49c9f68c10cfe5.png
[*]计算公式
欧几里得距离表现两个向量在空间中的直线距离,距离越小,则表现两个向量之间越相似。
d ( a , b ) = ( a 1 − b 1 ) 2 + ( a 2 − b 2 ) 2
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]