首页  

向量数据库相关的核心概念和术语     所属分类 AI 浏览量 15
一、基础概念

向量(Vector)
由多个数值组成的有序数组,可用于表示文本、图像、音频等非结构化数据的特征 ;
例如,一张图片可转化为一个包含 512 个数值的向量,每个数值代表颜色、纹理等特征 ;


向量数据库(Vector Database)
专门用于存储、索引和查询向量数据的数据库 ;
与传统数据库(存储结构化数据)不同,它通过向量间的 “相似度” 而非精确匹配来检索信息 ;



二、核心技术术语
嵌入(Embedding)
将非结构化数据(文本、图像等)转化为向量的过程 ;
例如,用 BERT 模型将句子转化为向量,这个向量就是 “嵌入向量” ;

相似度度量(Similarity Metric)
衡量两个向量相似程度的指标,常用的有:
欧氏距离(Euclidean Distance):向量在空间中的直线距离,值越小越相似 ;
余弦相似度(Cosine Similarity):向量夹角的余弦值,范围 [-1,1],越接近 1 越相似(适用于高维数据) ;
内积(Dot Product):向量对应元素乘积的和,值越大越相似(需向量长度归一化) ;


近似最近邻搜索(Approximate Nearest Neighbor, ANN)
为解决高维向量 “精确搜索” 效率低的问题,通过牺牲少量精度换取速度的搜索方式 ;
实际应用中,ANN 比精确搜索快成百上千倍 ;


索引(Indexing)
向量数据库中用于加速查询的结构,类似传统数据库的索引,但针对向量优化 ;
常见索引算法有:
KD 树(KD-Tree):适用于低维向量,通过递归划分空间实现快速搜索 ;
球树(Ball Tree):比 KD 树更适合高维数据,将向量划分为嵌套的 “球” 形区域 ;
HNSW(Hierarchical Navigable Small World):当前主流算法,通过构建多层 “小世界网络”,实现高效的 ANN 搜索 ;
IVF(Inverted File):将向量聚类,查询时先找目标聚类,再在聚类内搜索 ;

维度(Dimension)
向量中数值的数量(如 128 维、768 维) ;
高维向量(如超过 1000 维)可能导致 “维度灾难”(搜索效率下降),需通过降维技术优化 ;

降维(Dimensionality Reduction)
减少向量维度的过程(如从 1024 维降到 256 维),常用方法有 PCA(主成分分析)、t-SNE(适用于可视化) ;


三、应用相关术语
语义搜索(Semantic Search)
基于向量相似度的搜索,能理解数据的 “语义” 而非关键词 ;
例如,搜索 “如何煮奶茶”,会返回包含 “牛奶 + 茶叶 + 熬制” 的内容,即使没有完全匹配的词 ;

向量召回(Vector Retrieval)
从数据库中找到与查询向量最相似的一批向量(如前 100 个),是推荐系统、图像检索的核心步骤 ;

混合搜索(Hybrid Search)
结合向量搜索(语义匹配)和传统关键词搜索(精确匹配)的查询方式 ;
例如,电商搜索中,既用向量匹配 “风格相似的衣服”,又用关键词过滤 “红色” ;


聚类(Clustering)
将相似向量归为一类的过程,用于数据分组(如把相似的用户评论聚类) ;
常用算法有 K-Means、DBSCAN ;

四、工具与系统术语
向量数据库产品
主流工具包括:Milvus、Pinecone、Weaviate、Qdrant、Chroma(轻量级)等 ;

向量数据库服务(Vector DBaaS)
云端托管的向量数据库服务(如 Pinecone、AWS OpenSearch Service 的向量功能),无需本地部署 ;

批处理(Batch Processing)
批量插入或更新向量数据的操作,向量数据库通常优化了批处理性能以应对大规模数据 ;


五、进阶技术术语
量化(Quantization)
将高维向量的浮点数值(如 32 位 float)压缩为低精度格式(如 8 位整数、二进制)的技术,目的是减少存储空间和加速计算 ;
例如,“标量量化” 将向量值映射到有限范围的整数,“乘积量化(PQ)” 将向量拆分后分别量化 ;

倒排文件索引(Inverted File Index, IVF)
一种经典的向量索引方法:
先通过聚类算法(如 K-Means)将所有向量分为多个 “桶”(聚类中心),每个桶存储属于该聚类的向量 ;
查询时,先找到与查询向量最接近的几个桶,再在桶内搜索,大幅缩小搜索范围 ;

小世界网络(Small World Network)
HNSW 索引的核心思想:
构建类似社交网络的结构,每个向量(节点)与少量近距离节点(同层)和个别远距离节点(上层)连接,
使查询能快速 “跳跃” 到目标区域,兼顾效率和精度 ;

动态索引(Dynamic Indexing)
支持向量数据实时插入、删除和更新的索引机制 ;
部分索引(如 HNSW)原生支持动态操作,而 KD 树等静态索引需重建才能更新,适合数据固定的场景 ;

维度灾难(Curse of Dimensionality)
当向量维度极高(如超过 1000 维)时,向量间的距离趋于相似,传统索引和相似度度量效率大幅下降的现象 ;
解决方式包括降维、量化或使用专为高维设计的索引(如 HNSW) ;


精确最近邻搜索(Exact Nearest Neighbor, ENN)
遍历所有向量计算相似度,返回绝对最相似结果的搜索方式 ;
优点是精度 100%,但高维或大规模数据下速度极慢,仅适用于小规模数据集 ;

召回率(Recall)
衡量 ANN 搜索效果的指标:实际返回的 “真正相似向量” 占所有 “应该返回的相似向量” 的比例 ;
例如,召回率 95% 表示漏检的相似向量仅 5%


六、系统特性术语
吞吐量(Throughput)
向量数据库单位时间内能处理的查询或插入请求数量(通常以 QPS,即每秒查询数衡量),是系统性能的核心指标之一 ;


延迟(Latency)
从发起查询到返回结果的时间,低延迟是实时应用(如聊天机器人、实时推荐)的关键需求,通常要求在毫秒级(如 < 100ms) ;

持久性(Persistence)
向量数据在数据库重启或故障后不丢失的特性 ;
部分轻量级向量数据库(如 Chroma)默认使用内存存储,需手动配置持久化;
企业级产品(如 Milvus)通常支持自动持久化 ;

分片(Sharding)
将大规模向量数据拆分到多个节点存储的技术,通过分布式架构提升存储容量和并发处理能力 ;
例如,按向量 ID 范围或哈希值分片,每个节点处理部分数据 ;

副本(Replica)
向量数据的冗余备份,用于提高系统可用性(某节点故障时,副本节点可接替服务)和分担查询压力(读请求分流到副本) ;

向量过滤(Vector Filtering)
在向量相似度搜索的基础上,结合结构化条件(如时间、标签、类别)筛选结果 ;
例如,搜索 “与这张猫图相似的图片” 时,同时过滤出 “2023 年以后拍摄” 的结果 ;


七、应用与场景术语
多模态搜索(Multimodal Search)
支持跨类型数据检索的能力,
例如用文本向量查询相似的图像向量(如输入 “红色夕阳”,返回包含红色夕阳的图片) ;
需确保不同模态数据的向量在同一特征空间中可比 ;


向量召回 + 重排序(Retrieval + Reranking)
工业界常用的两阶段查询流程:
第一阶段(召回):用向量数据库快速返回 Top N(如 1000 个)相似结果;
第二阶段(重排序):
用更复杂的模型(如精排模型)对这 1000 个结果重新打分,返回 Top K(如 10 个)最优结果 ;
兼顾效率和精度 ;


嵌入模型(Embedding Model)
用于将原始数据转化为向量的 AI 模型,不同数据类型对应不同模型:

文本:BERT、Sentence-BERT、GPT(的中间层输出);
图像:ResNet、CLIP、VGG;
音频:MFCC 特征 + 神经网络、Wav2Vec ;


语义缓存(Semantic Caching)
缓存查询向量及其结果,当新查询向量与缓存中的向量高度相似时,直接返回缓存结果,减少重复计算 ;
适用于高频相似查询场景(如推荐系统) ;

向量数据库中间件(Vector Database Middleware)
连接应用与向量数据库的工具,提供统一接口、负载均衡、数据转换等功能 ;
例如,LangChain 中的向量存储集成层,可兼容多种向量数据库产品 ;


八、产品与生态术语
Milvus
开源向量数据库,支持多模态数据、动态索引和分布式部署,广泛用于 AI 应用(如大模型知识库、图像检索) ;

Pinecone
云端向量数据库服务(DBaaS),无需关注底层架构,提供高可用性和自动扩缩容,适合快速部署的场景 ;

Weaviate
开源向量数据库,支持 “向量 + 属性” 混合存储,内置多种嵌入模型集成,适合需要结合结构化数据的应用 ;

Chroma
轻量级开源向量数据库,部署简单(可嵌入 Python 应用),适合原型开发和小规模场景 ;

向量搜索即服务(Vector Search as a Service, VSaaS)
提供向量搜索能力的云服务,除存储和查询外,
可包含嵌入模型调用、自动索引优化等功能(如 Pinecone、Google Vertex AI Vector Search) ;

上一篇     下一篇
python3 实用代码

Python3 列表(list) 元组(tuple)字典(dict)集合(set)使用

向量数据库在 RAG 检索增强生成中的应用

向量数据库选型

大模型基础笔记

java后端程序员转大模型应用开发