基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
向量检索的概念、原理与应用
什么是向量检索
简单来说,向量检索通过计算向量之间的“距离”(比如欧氏距离、余弦相似度等),找到那些看起来“最像”的数据。
传统的信息检索方法(如关键词检索)通常依赖于精确的字符串匹配或符号操作,然而,当面对非结构化数据(如长文本、图像、音频等)时,直接使用关键词可能无法捕捉到语义或内容上的相似性。而向量检索利用了现代深度学习等机器学习技术,将非结构化数据(如自然语言、图片等)映射到向量空间,捕获数据中的语义关系或其他特征,从而实现高效的相似性搜索。
数据经过向量化处理后,可被表示为高维向量(例如,文本转为词嵌入向量,图像转为视觉特征向量)。当用户进行检索时,查询输入的内容(如一段文本、一张图片)同样被转化为向量,系统通过计算查询向量与数据库中存储的向量之间的“距离”(如欧几里得距离或余弦相似度)来衡量其相似性。相似度越高,说明数据与查询结果越相关。
向量检索的应用方向广泛,涵盖智能问答、图像识别、推荐系统、自然语言处理等众多领域,成为人工智能时代不可或缺的数据处理技术。
向量检索的基本原理
● 文本可以通过预训练的词嵌入模型(如Word2Vec、GloVe、BERT等)或句子嵌入模型生成向量。
● 图像可以通过卷积神经网络(CNN)提取特征向量。
● 音频信号可以通过声学模型生成向量。
将这些非结构化数据转换为向量形式,为后续的相似度计算和检索奠定了基础。
● 欧氏距离(Euclidean Distance,也称为欧几里得距离):计算两个向量之间的直线距离,值越小,相似度越高。
● 余弦相似度(Cosine Similarity):计算两个向量之间的夹角余弦值,值越接近1,相似度越高。
● 曼哈顿距离(Manhattan Distance):计算两个向量在各个维度上的绝对差之和。
● 内积(Dot Product):直接计算两个向量的点积,适用于归一化后的向量。
在实际应用中,为了平衡精度和效率,通常采用近似最近邻算法(ANN, Approximate Nearest Neighbor),而不是精确计算每个向量的距离。这种方法可以显著减少计算时间,同时保证结果的准确性在可接受范围内。
HNSW(Hierarchical Navigable Small World Graph)是一种基于图结构的索引。它通过构建多层的图结构来实现高效检索。在HNSW中,每个向量被表示为图中的一个节点,节点之间通过边连接,形成一个层次化的网络。在检索时,从顶层开始,通过节点间的边进行导航,逐步向下层搜索,直到找到与查询向量最相似的向量。这种结构能够利用图的特性,快速定位到可能包含相似向量的区域,减少需要比较的向量数量,从而提高检索速度。
IVF(Inverted File)是一种倒排索引技术。它将向量空间划分为多个子空间,每个子空间包含一部分向量。在检索时,首先通过计算查询向量与每个子空间的中心向量的距离,确定最有可能包含相似向量的子空间,然后在选定的子空间内进行精确搜索。IVF通过减少需要搜索的向量范围,加速了检索过程。
这些索引结构通过不同的方式优化了向量检索的效率,使得在大规模数据集中进行快速相似向量查找成为可能,为向量检索在各种场景中的应用提供了有力支持。
向量检索的典型应用场景
文本检索
图像检索
智能推荐
文本检索:企业智能知识库和问答助手
OceanBase 的向量检索能力
支持稀疏向量数据存储。
● 支持 L2 距离、内积和余弦相似度计算。
● 支持 HNSW/HNSW_SQ/HNSW_BQ 索引,索引列最大维度为 4096。
● 支持 IVF 索引/IVF_SQ 索引/IVF_PQ 索引(实验特性),索引列最大维度为 4096。
除了向量索引,还支持标量索引、半结构化索引(如多值索引、空间索引),以及全文索引,并且支持同时访问多路索引,为复杂的数据检索需求提供了坚实保障。
集成 VSAG 索引算法库,在 ANN-Benchmarks 测试中,960 维 GIST 数据集上性能优异,无惧超高吞吐。
OceanBase 一体化数据底座与独立向量数据库的区别
相较于单独选择向量数据库,OceanBase 一体化架构具备以下优势:
OceanBase 不仅原生支持关系型数据,兼容 KV 文档及向量数据,还支持 JSON、GIS、Bitmap 等多种数据类型。企业可以将所有的多模数据集中整合至单一的 OceanBase 数据库中,避免因不同类型数据存储于不同数据库而产生的数据孤岛问题。同时,OceanBase能同时支持向量索引、空间索引、全文索引等多种索引类型,为多模数据混合检索提供了强大支撑。
当面临复杂查询,如同时涉及文本、图像和位置信息的检索时,OceanBase能迅速调用相应的索引进行混合检索。例如在零售场景中,用户输入“在我家附近售卖、价格合理且外观好看的手机”,OceanBase就能综合空间数据、标量数据和图像向量数据,快速返回符合要求的商品信息。混合检索能力打破了传统向量数据库仅能处理单一模态数据的局限,为用户提供更全面、精准的检索结果,极大地提升了AI应用的实用性和用户体验。
OceanBase 可实现内存+磁盘分布式处理,支持不同类型企业的千万级、亿级、十亿+级不同规模向量数据的存储,同时,OceanBase 的原生分布式架构,可支持更灵活的横向扩缩容,满足 AI 应用快速增长的海量数据存储需求。
此外,OceanBase 凭借领先的压缩算法,可以从内存与磁盘多层面显著降低存储成本。支持二进制量化算法,同等向量性能下,内存成本可降低 95%;支持半结构化(JSON)数据压缩,从而助力 AI 应用中的半结构化数据存储成本降低超 40%。
同时,OceanBase 数据库已经支持比较完整的企业级安全特性,包括身份鉴别和认证、访问控制、数据加密、监控告警、安全审计,可以有效保证向量检索场景下的数据安全。
OceanBase 向量检索能力在 AI 应用中的实践
结语
在 AI 应用方面,向量检索为图像识别、语音识别、自然语言处理等提供了核心支持,让 AI 应用能更好地理解和处理复杂多样的数据。无论是构建智能推荐系统,还是打造高效的智能客服,都离不开向量检索的助力。