深圳Yolo 视觉
深圳
立即加入
词汇表

向量搜索

探索向量搜索如何利用嵌入来查找相似数据。学习如何使用Ultralytics YOLO26生成高质量向量以实现精确信息检索。

向量搜索是一种复杂的信息检索方法,它根据数据集中的数学特征而非精确的关键词匹配来识别相似项。与依赖查找特定字符的传统关键词搜索不同,向量搜索分析数据的底层语义含义。这种技术是现代人工智能 (AI)应用的基础,因为它允许计算机理解抽象概念之间的关系,以惊人的准确性处理图像、音频文件和自然语言文本等非结构化数据

矢量搜索的工作原理

向量搜索的核心是将原始数据转换为高维数值向量,即嵌入。这个过程将项目映射到多维空间中的点,在这个空间中,概念上相似的项目彼此靠近。

  1. 向量化深度学习 (DL)模型处理输入数据(例如,一张狗的图像),并输出一个特征向量。像YOLO26这样的先进模型经常用于高效生成这些丰富的特征表示。
  2. 索引:为了快速执行搜索,这些向量使用专门的算法进行组织,通常存储在专用的向量数据库中。
  3. 相似度计算:当用户提交查询时,系统会将该查询转换为向量,并使用余弦相似度欧氏距离等度量来测量与存储向量的距离。
  4. 检索:系统返回“最近邻”,这些“最近邻”代表了最具上下文相关性的结果。

Python 示例:生成嵌入

为了实现向量搜索,您必须首先将数据转换为向量。以下代码片段演示了如何生成 特征图 和嵌入,通过 ultralytics 包和预训练的YOLO26模型。

from ultralytics import YOLO

# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")

# Generate feature embeddings for an image URL
# The 'embed' method returns the high-dimensional vector representation
results = model.embed("https://ultralytics.com/images/bus.jpg")

# Print the shape of the resulting embedding vector
print(f"Embedding vector shape: {results[0].shape}")

实际应用

向量搜索是当今软件生态系统中许多直观功能背后的引擎,弥合了计算机视觉 (CV)与用户意图之间的鸿沟。

  • 视觉推荐系统:在零售AI领域,向量搜索为“搭配购物”功能提供支持。如果顾客喜欢某个手提包,系统会找到具有相似视觉向量(匹配形状、纹理和风格)的商品,从而创建个性化的推荐系统
  • 检索增强生成 (RAG):为了增强大型语言模型 (LLM),开发人员使用向量搜索从知识库中检索相关文档。这为AI提供了上下文,减少了幻觉并提高了聊天机器人交互的准确性。
  • 异常检测:通过对“正常”操作向量进行聚类,系统可以识别出偏离聚类中心的异常值。这对于制造质量控制中的异常检测数据安全至关重要。

区分相关概念

区分向量搜索与类似术语有助于理解完整的机器学习 (ML)流程。

  • 向量搜索 vs. 语义搜索:语义搜索是理解用户意图(“是什么”)的更广泛应用。向量搜索是实现此目的的特定算法方法,通过计算向量邻近度(“如何实现”)来完成。
  • 向量搜索 vs. 向量数据库:向量数据库是旨在大规模存储和管理嵌入的基础设施。向量搜索是查询该数据库以检索信息的过程
  • 向量搜索 vs. 关键词搜索:关键词搜索匹配精确的文本字符串(例如,“apple”匹配“apple”)。向量搜索匹配含义,因此“apple”可能匹配“fruit”或“red”,即使词语不同。

与 Ultralytics 平台的集成

对于构建相似性搜索系统的团队而言,管理数据集和训练嵌入模型是至关重要的第一步。Ultralytics 平台通过提供数据管理、云训练和模型部署工具来简化此工作流。通过确保您的基础模型(无论是用于目标检测还是分类)具有高性能,您可以确保生成的向量提供准确且有意义的搜索结果。

让我们一起共建AI的未来!

开启您的机器学习未来之旅