Ultralytics YOLO27:
获取 YOLO 许可
返回 Ultralytics 术语表

Embeddings

嵌入是经过学习的向量,可将相似的文本、图像或项目放置在彼此附近。涵盖嵌入的生成、比较和大规模检索方式。

嵌入是一组学习得到的数值向量,用于表示单词、图像、商品或用户等条目,因此含义或内容相似的条目会对应彼此接近的向量。向量空间中的距离可以衡量相似度,因此软件能够通过比较向量,而不是原始像素或字符串,来进行聚类、搜索、推荐和分类。嵌入也是神经网络内部使用的表示形式:大语言模型 (LLM)会在第一个 Transformer 层之前将每个词元转换为嵌入,而视觉模型会通过骨干网络将图像转换为特征向量。用于搜索的嵌入通常有几百到几千个维度,远少于原始输入的数值数量。

嵌入是如何创建的#

嵌入来自两类通过学习得到的组件:

  • 查找表:对于 token、产品 ID 或用户 ID 等离散项,嵌入层会为每一项存储一个可学习的行,查找某一项时会返回对应的行。PyTorch 的 nn.Embedding 就是这样一种表。表中的行起初是随机值,然后会与模型的其他部分一起通过反向传播更新,因此在训练任务中作用相似的项会逐渐形成相似的向量。
  • 编码器:对于图像、音频和自由文本,网络会将整个输入映射为一个向量,通常通过池化 CNN 的特征图,或读取 Transformer 的输出 token 来实现。针对分类等任务训练的编码器会顺带产生有用的嵌入,而通过对比学习训练的编码器则会直接塑造嵌入空间,CLIP 就是通过将图像及其说明放在同一个共享空间中来实现这一点的。

Word2vec 由 Tomas Mikolov 及其 Google 同事于 2013 年发布,展示了这类训练能捕捉到多丰富的结构。在其词向量中,vector("King") − vector("Man") + vector("Woman") 的结果最接近 vector("Queen");它发布的预训练 Google News 向量包含 300 万个词和短语,每个向量有 300 个维度。

比较嵌入#

余弦相似度比较两个向量的方向,取值范围为 −1 到 1。点积还会考虑向量的长度,而欧氏距离则衡量它们之间的直线距离。许多系统会将嵌入归一化为单位长度,这样余弦相似度和点积就相同,且邻居的排序与欧氏距离一致。YOLO26 模型通过 embed() 生成图像嵌入:该方法会跳过预测头,对模型倒数第二层的输出进行平均池化,为每张图像返回一个向量:

import torch.nn.functional as F
from ultralytics import YOLO
from ultralytics.utils import ASSETS

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

# embed() returns one pooled feature vector per image instead of predictions
bus, zidane = model.embed([ASSETS / "bus.jpg", ASSETS / "zidane.jpg"])
print(f"Embedding length: {bus.shape[0]}")

# Higher cosine similarity means the model sees more similar content
print(f"Cosine similarity: {F.cosine_similarity(bus, zidane, dim=0).item():.3f}")

对于 YOLO26n-cls,嵌入是一个 256 维向量,也就是其骨干网络末端注意力模块的池化输出;第二行则会打印两张随附示例照片的余弦相似度。将相同的比较方法用于整个集合的已存储嵌入,就能通过图像相似度搜索对结果进行排序。

大规模搜索嵌入#

逐个将查询与数百万个已存储向量进行比较,速度太慢,因此向量数据库会构建近似最近邻索引,例如基于图的 HNSW 索引或倒排文件索引,只需检查集合中的一小部分,就能找到相近的匹配项。集合只需嵌入一次;每次搜索时,系统会使用同一个编码器对查询进行嵌入,如果要用文本搜索图像,则使用配对的文本编码器:

存储方式对设计的影响不亚于准确率。套娃式表示学习训练出的嵌入,其前几个维度单独使用也有效,因此可以截断向量以节省空间;向量量化则会将每个向量压缩为几个字节。混合搜索将嵌入相似度与关键词匹配结合起来。

应用场景#

  • 语义搜索和检索增强生成(RAG):文本嵌入按含义检索段落,因此查询“汽车保险理赔”时,也能找到写着“机动车保单”的文档;RAG 会将检索到的段落作为上下文传给 LLM。
  • 推荐系统:用户和物品会嵌入同一个空间中,距离用户向量最近的物品会成为推荐候选项。
  • 零样本分类:具有共享图文空间的模型会将图像嵌入与以文本形式写出的类别名称嵌入进行比较,从而对图像分类。
  • 目标重识别:外观嵌入可以跨摄像头、跨轨迹间断关联同一个人或车辆。
  • 数据集探索:使用 t-SNE 或 UMAP 将嵌入投影到二维空间,可以揭示数据集中的聚类、近似重复项和离群点。
  • 潜在空间:嵌入所在的向量空间。“潜在表示”和“嵌入”通常用作同义词。
  • 特征提取:任何将原始数据转换为特征的过程。嵌入是一种特征向量,它经过学习,使向量之间的距离具有意义。
  • 分词:将文本拆分为 token,并将每个 token 映射为整数 ID。随后,嵌入层会将每个 ID 映射为一个向量。
  • 独热编码:将词汇表中的第 i 项表示为一个向量:所有位置都是 0,只有第 i 个位置为 1,因此任意两项之间的距离都相同,编码也不包含相似性信息。将独热向量乘以嵌入表的权重矩阵会准确选出一行;嵌入查找返回的就是这一结果,无需实际执行乘法。

Explore solutions

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

借助 Ultralytics YOLO,将无人机和航空影像转化为实时洞察,应用于农业、水产养殖、环境监测、自然保护和地理空间分析。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 应用于航空监测。借助计算机视觉解决方案,赋能无人机、航空航天工作流、环境保护和地理空间行业。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情
体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

借助 Ultralytics YOLO,将无人机和航空影像转化为实时洞察,应用于农业、水产养殖、环境监测、自然保护和地理空间分析。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 应用于航空监测。借助计算机视觉解决方案,赋能无人机、航空航天工作流、环境保护和地理空间行业。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情
体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

借助 Ultralytics YOLO,将无人机和航空影像转化为实时洞察,应用于农业、水产养殖、环境监测、自然保护和地理空间分析。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 模型将视觉 AI 应用于航空监测。借助计算机视觉解决方案,赋能无人机、航空航天工作流、环境保护和地理空间行业。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来