向量数据库的几个核心概念

目录

    • 核心概念解析
      • [1. 向量嵌入(Vector Embeddings)](#1. 向量嵌入(Vector Embeddings))
      • [2. 相似性搜索(Similarity Search)](#2. 相似性搜索(Similarity Search))
      • [3. 距离度量(Distance Metrics)](#3. 距离度量(Distance Metrics))
      • [4. 索引(Indexing)](#4. 索引(Indexing))
      • [5. 最近邻搜索(k-NN Search)](#5. 最近邻搜索(k-NN Search))
      • [6. 元数据过滤](#6. 元数据过滤)
      • 7.混合搜索
    • 综合应用场景
    • 核心要点

核心概念解析

1. 向量嵌入(Vector Embeddings)

将非结构化数据(如文本、图像)转换为数值向量的过程,这些向量在数学空间中保留了原始数据的语义关系。

应用示例:

  • 电商搜索:将"轻薄笔记本电脑"转换为[0.8, -0.2, 0.6,...]等高维向量
  • 相似商品:"便携式电脑"的向量位置相近,"重型机械"的向量相距较远

2. 相似性搜索(Similarity Search)

在向量空间中查找与查询向量最相似的向量,而非精确匹配。

python 复制代码
# 用户搜索"适合商务人士的轻薄笔记本"
query_vector = embed("商务轻薄笔记本")
# 返回结果:MateBook X Pro, ThinkPad X1, MacBook Air等相似产品
# 即使商品标题中不含完全相同的词汇

3. 距离度量(Distance Metrics)

衡量向量间相似度的数学方法:

  • 余弦相似度:关注向量方向
  • 欧几里得距离:向量间的直线距离
  • 内积相似度:向量点积运算
python 复制代码
# 音乐推荐系统示例
用户A喜欢歌曲X → [0.9, 0.1, 0.8]
歌曲Y → [0.85, 0.15, 0.75] (相似度0.95⭐)
歌曲Z → [0.2, 0.9, 0.1] (相似度0.25❌)

4. 索引(Indexing)

高效搜索的数据结构,避免暴力检索:

  • HNSW:分层导航网络
  • IVF:先粗分组再精细搜索
  • PQ:向量压缩技术
python 复制代码
# 十亿级图片搜索对比
无索引:遍历10亿张 → 数小时
HNSW索引:检查数千张 → 毫秒级

5. 最近邻搜索(k-NN Search)

查找与查询向量最相似的k个向量。

python 复制代码
# 智能客服示例
用户问:"订单为什么没发货?"
返回:
1. "订单发货查询"(0.95)
2. "物流延迟通知"(0.89)
3. "取消订单流程"(0.76)

6. 元数据过滤

python 复制代码
# 电商搜索示例
向量数据库.搜索(
    查询向量=embed("红色连衣裙"),
    过滤条件={
        "价格": [100,500],
        "品牌": ["ZARA","H&M"],
        "评分": ">=4.0"
    }
)

7.混合搜索

python 复制代码
# 知识库搜索
混合搜索(
    向量查询=embed("数据库连接配置"),
    关键词查询="MySQL 连接池",
    权重=[0.7, 0.3]
)

综合应用场景

法律文档检索系统

python 复制代码
# 1. 向量嵌入
法律条文 = {
    "合同法第107条": embed("不履行合同义务..."),
    "刑法第264条": embed("盗窃公私财物...")
}

# 2. 处理查询
查询向量 = embed("租客不交租金怎么办?")

# 3. 搜索
结果 = 向量数据库.搜索(
    查询向量=查询向量,
    距离度量="余弦相似度",
    k=3,
    索引类型="HNSW"
)

# 4. 返回
["租赁合同纠纷处理", "违约责任条款", "民事诉讼法第119条"]

跨模态搜索

python 复制代码
# 文字搜图片
查询向量 = 文本编码器("夕阳下的海滩椰子树")

图片结果 = 向量数据库.搜索(
    查询向量=查询向量,
    k=10,
    过滤条件={"类型": "图片", "版权": "可商用"}
)

核心要点

  1. 向量嵌入是语义转换的基础
  2. 相似性搜索实现意思匹配
  3. 高效索引支撑海量数据检索
  4. 距离度量定义相似标准
  5. 元数据过滤提升搜索精准度

这些特性使向量数据库成为处理AI和非结构化数据的理想解决方案。

相关推荐
金仓拾光集1 分钟前
筑牢风控生命线:金仓数据库替代MongoDB,重构证券融资融券业务的数据基石
数据库·mongodb·信创·1024程序员节·kingbasees·国产化替代
那我掉的头发算什么11 分钟前
【数据库】navicat的下载以及数据库约束
android·数据库·数据仓库·sql·mysql·数据库开发·数据库架构
纪伊路上盛名在16 分钟前
如何批量获取蛋白质序列的所有结构域(domain)数据-2
数据库·人工智能·机器学习·统计·计算生物学·蛋白质
2301_772093562 小时前
高并发webserver_interview
运维·服务器·数据库·后端·网络协议·mysql·wireshark
大G的笔记本3 小时前
MySQL 大表查询优化、超大分页处理、SQL 慢查询优化、主键选择
数据库·sql·mysql
Lear3 小时前
Redis 持久化机制
数据库
儒道易行4 小时前
【攻防实战】Redis未授权RCE联动metasploit打穿三层内网(上)
数据库·redis·网络安全·缓存
小宁爱Python4 小时前
从零搭建 RAG 智能问答系统 6:Text2SQL 与工作流实现数据库查询
数据库·人工智能·python·django
yjsstar4 小时前
数据库MySQL基础
数据库·mysql
云边有个稻草人4 小时前
KingbaseES数据库性能调优指南:从理论到实践的全链路解析
数据库·金仓数据库