当前位置: 首页 > news >正文

RAG学习总结2--向量数据库

一、向量数据库基础

向量表示:将自然语言、图像等非结构化数据通过嵌入模型转化为高维向量。向量的距离和方向能体现语义上的相似性。

向量数据库:专门存储高维向量及其元数据的数据库。核心能力是高效执行近似最近邻搜索,实现语义检索。

与传统数据库的区别:传统数据库依赖精确匹配或关键词索引,难以捕捉语义;向量数据库通过向量相似度实现“语义=向量距离近”的检索。

混合检索:实际项目中常将向量语义检索与标量过滤、全文检索等结合,先通过元数据过滤候选集,再进行向量相似度排序,或融合多种得分做最终排序。这样既能做语义理解,又能保证精确条件的匹配。


二、向量的核心概念

概念说明
向量维度向量的特征数量,如 384、768、1024。维度越高,表达能力越强,但计算与存储开销也越大。
向量长度(模)向量到原点的欧氏距离。如向量(3,4)的长度为 √(3²+4²)=5。长度有时蕴含文本长度、词频等信息。
向量方向向量的指向,是判断语义相似度的主要依据。常用度量有余弦相似度、内积、欧氏距离。

三、相似度度量与对比

余弦相似度

关心什么:只关心两个向量之间的夹角,完全忽略长度。

公式:cos(θ) = (A·B) / (||A|| ||B||),值域 [-1, 1]。

直观理解:两束从原点发出的射线,夹角越小越相似。哪怕一束长一束短,只要指向一致就是 1。

示例:A = [1,0], B = [2,0] 方向完全相同,余弦相似度为 1;A = [1,0], B = [0,1] 垂直,为 0。

内积

关心什么:方向 + 长度。公式为A·B = ||A|| ||B|| cos(θ)

直观理解:若两个向量同向且都很长,内积会非常大;若方向相似但都很短,内积较小。所以它偏爱“方向一致且信息强度高”的项。

适用场景:推荐系统中,热门物品的向量可能模长较大,内积会自然给它们更高打分,可以作为一种“热度加权”。

欧氏距离

关心什么:向量在空间中端点之间的直线距离,公式为√(Σ(Ai - Bi)²)

直观理解:两点越靠近越相似。它同时受方向和长度的影响,而且对绝对位置的差异敏感。

度量方式关心内容数值含义归一化后的等价形式适用场景
余弦相似度只关心方向,忽略长度越接近 1 越相似,取值 [-1,1]等于内积文本语义相似,长度差异无意义时
内积方向+长度数值越大越相似,无上界等于余弦相似度需同时考虑方向和强度时(如推荐系统中的打分)
欧氏距离方向+长度(绝对位置)数值越小越相似,≥0单调相关于余弦相似度(距离=2-2cosθ)向量空间绝对位置敏感的场景

归一化影响:将向量长度映射为 1,消除长度差异。此时欧氏距离、余弦相似度、内积可互相推导,选择哪个度量本质上等价。务必在存储和检索时使用相同的归一化方式。


四、近似最近邻搜索

4.1 为什么需要 ANN

在全量向量上逐个计算相似度的暴力检索(FLAT)虽然精确,但延迟高、资源消耗大。ANN 利用索引结构先快速缩小候选范围,再在小范围内精细比较,在可控质量损失下大幅提升速度。

4.2 常见 ANN 算法对比表

FLAT:即无索引,直接扫描。它提供 100% 精确的结果,是衡量其他 ANN 算法召回率的黄金标准,但只适用于万级以下的小数据量。

IVF(倒排文件)

如何工作:使用 K-Means 将全体向量聚成nlist个簇(桶),每个簇有一个中心点。查询向量到达时,先计算它与哪个桶中心最近,只去最近的nprobe个桶里暴力搜索。

参数含义:增大nlist,桶更细碎,检索时需探测更多桶才能维持召回率;增大nprobe,探测桶数增多,召回率上升但延迟也增加。它是最基础且广泛使用的加速结构。

HNSW(分层可导航小世界图)

如何工作:类似“高速公路+普通公路”的导航。构建多层图,最上层只有少数节点,边很长,供快速跳转;最下层包含所有节点,边稠密,负责精细定位。搜索时从上层随机点出发,贪婪地向最近邻居移动,逐层下钻,直到最底层。

关键参数:M(每个节点最大连接数)影响图密度和内存;efConstruction控制构建时搜索宽度,越大图质量越好;efSearch控制查询时搜索宽度,越大召回率越高。它无需训练,支持实时插入,但内存占用较高。

PQ(乘积量化)

如何压缩:将高维向量切成m段短向量,每段用独立的聚类算法生成k个代表向量(码本)。存储时,用每段最近的码本编号(整数)代替原始浮点数。例如,768 维切 96 段,每段用 256 个中心量化,存储从 768×32bit 变为 96×8bit,压缩 32 倍。

近似距离计算:查询时,预计算查询向量每段与对应码本所有中心点的距离,查表组合近似得出全向量的距离,速度快且无需解压。精度损失源于量化误差,可通过增加段数或码本大小缓解。

SQ(标量量化)

如何压缩:独立将每个维度的浮点值均匀映射到低位整数,例如 float32 转换为 int8,直接用数值范围缩放。

优点:简单,计算仍为整数运算,精度损失温和均匀。常作为快速降低内存的基础手段,或与 IVF/HNSW 结合。

算法原理精确度速度内存占用关键参数备注
FLAT暴力计算所有向量100% 精确低(仅存原始向量)基线算法,小数据或要求绝对精确时用
IVF聚类分桶,查询时只搜索最近的 nprobe 个桶近似(可调)中–快中(需存储聚类中心)nlist(桶数),nprobe(探测桶数)需训练,适合中等规模,常与其他技术组合
HNSW多层图结构,上层稀疏快速跳转,下层稠密精细搜索高(近似)极快较高(图连接开销)M(每层连接数),efConstruction(构建搜索宽度),efSearch(查询搜索宽度)无需训练,增量插入友好,内存占用较大
PQ (乘积量化)将向量分段,每段独立聚类量化,用短编码表示有损压缩,精度可调快(查表算距离)极低(压缩比高)子空间数m,每段码本大小k常与 IVF 结合为 IVF_PQ,大幅减少内存
SQ (标量量化)将每个浮点维度转换为低位整数轻微精度损失快(整数计算)低(如 float32→int8)量化位数简单有效,常作快速压缩手段

补充说明

IVF需要预先训练,生成桶中心;检索时增大nprobe可提高召回率,但增加延迟。

HNSW构建时efConstruction越大图质量越高但慢,查询时efSearch越大召回率越高。

PQ/SQ属于向量压缩技术,往往与 IVF 或 HNSW 结合使用,减少存储空间并加速距离估计。

PQ 与 SQ 对比

量化方式压缩原理压缩率距离计算精度影响典型应用
PQ分子空间聚类编码极高(可几十倍)预计算距离表查表有结构性误差大规模向量库,内存受限
SQ逐维度标量量化中等(2-4倍)直接整数运算均匀轻微降低需要保留较高精度的压缩场景

五、混合检索的实际形态

常见混合检索模式:

过滤+向量搜索:先根据标签、时间等标量条件过滤候选,再在过滤集合上执行 ANN,保证结果满足硬性约束。

多路召回+融合排序:同时进行向量语义召回和全文检索召回,将两路结果通过融合公式(如加权求和、互惠排名融合 RRF)合并排序。

向量与稀疏向量组合:使用稠密向量做语义,稀疏向量做关键词匹配,结合 BM25 等分数,实现语义和字面兼顾的检索。

这解决了纯语义检索可能遗漏精确词汇匹配的缺陷,是生产环境的标配。


六、检测指标速览

指标含义关注点
召回率 (Recall@k)前 k 个结果中相关项占所有相关项的比例是否找得全
准确率 (Precision@k)前 k 个结果中相关项的比例找得是否准
延迟 (Latency)查询响应时间(平均/分位数)用户体验与吞吐
成本 (Cost)内存/磁盘占用、计算资源消耗系统可扩展性
MRR (平均倒数排名)第一个相关结果排名的倒数,对所有查询取平均关注首个正确答案的位置
nDCG (归一化折损累计增益)考虑排序位置和相关度等级,对排序质量评价多级相关性下的排序质量

在实际项目中,常常需要根据业务需求在召回率与延迟、成本间取得平衡(例如调整nprobeefSearch等参数)。

http://www.jsqmd.com/news/1145493/

相关文章:

  • AI文档翻译版面还原技术:从OCR到排版重建全解析
  • 2026实测:宁波3大暑假语文小升初机构横评
  • 黑箱API微调:基于进化策略的提示优化技术解析
  • 甘肃正规的民事案件律所哪家靠谱
  • 如何用Obsidian Local REST API彻底解放你的笔记自动化潜力
  • 小程序商城制作一个需要多少钱?2026全球5款AI/SAAS小程序商城制作工具推荐:餐宝盈/BBWEYY/比文云/Framer/NocoBase,含零代码SAAS、AI编程、源码定制交付
  • 配电站房环境监控系统:适配箱变环网,覆盖全类型配电场景
  • Java毕业设计-基于 SpringBoot + 微信小程序的线上租房平台的设计与实现 基于 SpringBoot 的房屋租赁小程序系统(源码+LW+部署文档+全bao+远程调试+代码讲解等)
  • KAB三甲平台:信息透明度与外汇行情信息呈现如何影响体验,给出一套方法
  • 通过API接口一键采购淘宝商品操作指南
  • 2025年中国第三方普惠智算云市场专题报告(华南篇)
  • 终极指南:构建专业级实时音频分析系统 [特殊字符]
  • 2026年月北京AI智能体软件定制开发头部企业综合实力测评报告
  • 商住楼项目施工组织设计与工程管理分析
  • 夏天给孩子喝“降火汤”?不如这瓶“中药汽水”,清热不伤脾
  • 没有域名怎么安装 SSL 证书?公网 IP 证书方案
  • 2026高端双叠自锁垫圈怎么选
  • AI算力基建动态简报(2026.07.07)
  • 中小企怎么做私域?诺云SCRM轻量化功能全解
  • BOKBO:面向K样本的VLA模型可验证拒判方法
  • 本地干货:南京组织效能培训收费与机构筛选指南
  • JDK系列16:一文彻底弄懂双亲委派与打破委派原理|自定义类加载器实战(面试 / 生产通用)
  • 优必选U1仿生机器人1.3万台爆单+续航争议+GPT-5.6 Sol内测碾压Opus+高盛7.6万亿美元AI资本开支+至简动力百台交付:具身智能落地与AI商业化加速的“双引擎“
  • Classifier-free guidance 和Classifier Guidance
  • 腾讯混元HY-MT1.5B/1.8B私有云一键部署实战指南
  • 照着用就行:高效论文写作全流程AI论文平台推荐(2026 最新)
  • USB转CAN协议转换器
  • VADP 备份需要哪些端口?443 与 902 端口完整通信说明
  • YOLOv8实现16类水果目标检测实战指南
  • 智慧校园后勤革新:智能锁人证核验与通断电联动管控落地方案